private async Task FetchWindowLocation()
        {
            if (string.IsNullOrEmpty(settings.ApplicationName))
            {
                Logger.Instance.LogMessage(TracingLevel.WARN, $"FetchWindowLocation called with no application selected");
                await Connection.ShowAlert();

                return;
            }
            Logger.Instance.LogMessage(TracingLevel.INFO, $"FetchWindowLocation called");
            var rect = WindowPosition.GetWindowPostion(settings.ApplicationName);

            if (!rect.IsEmpty)
            {
                Logger.Instance.LogMessage(TracingLevel.DEBUG, $"Rect is X: {rect.Top} Height: {rect.Bottom} Y: {rect.Left} Width: {rect.Right}");
                settings.XPosition = rect.Left.ToString();
                settings.YPosition = rect.Top.ToString();
                settings.Height    = rect.Height.ToString();
                settings.Width     = rect.Width.ToString();

                // Reset to first screen
                settings.Screen = null;
                PopulateScreens();
                await SaveSettings();
            }
        }