From aafbdebb9b8dcca8bfeffaf80685f760f1dbcb36 Mon Sep 17 00:00:00 2001 From: Garulf <535299+Garulf@users.noreply.github.com> Date: Mon, 20 Dec 2021 02:20:26 -0500 Subject: [PATCH] Allow adjustment of offset in settings file --- Flow.Launcher.Infrastructure/UserSettings/Settings.cs | 1 + Flow.Launcher/Converters/QuerySuggestionBoxConverter.cs | 8 ++++++-- Flow.Launcher/MainWindow.xaml | 1 + Flow.Launcher/ViewModel/MainViewModel.cs | 8 ++++++++ 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index 8ecd6dc4b..b02ef0270 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -15,6 +15,7 @@ namespace Flow.Launcher.Infrastructure.UserSettings private string language = "en"; public string Hotkey { get; set; } = $"{KeyConstant.Alt} + {KeyConstant.Space}"; public string OpenResultModifiers { get; set; } = KeyConstant.Alt; + public int SuggestionTextOffset { get; set; } = 40; public string ColorScheme { get; set; } = "System"; public bool ShowOpenResultHotkey { get; set; } = true; public double WindowSize { get; set; } = 580; diff --git a/Flow.Launcher/Converters/QuerySuggestionBoxConverter.cs b/Flow.Launcher/Converters/QuerySuggestionBoxConverter.cs index 364a17d21..fd1e0de10 100644 --- a/Flow.Launcher/Converters/QuerySuggestionBoxConverter.cs +++ b/Flow.Launcher/Converters/QuerySuggestionBoxConverter.cs @@ -12,7 +12,8 @@ namespace Flow.Launcher.Converters { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { - if (values.Length != 3) + + if (values.Length != 4) { return string.Empty; } @@ -53,7 +54,10 @@ namespace Flow.Launcher.Converters // Check if Text will be larger then our QueryTextBox System.Windows.Media.Typeface typeface = new Typeface(QueryTextBox.FontFamily, QueryTextBox.FontStyle, QueryTextBox.FontWeight, QueryTextBox.FontStretch); System.Windows.Media.FormattedText ft = new FormattedText(QueryTextBox.Text, System.Globalization.CultureInfo.CurrentCulture, System.Windows.FlowDirection.LeftToRight, typeface, QueryTextBox.FontSize, Brushes.Black); - if ((ft.Width + 40) > QueryTextBox.ActualWidth || QueryTextBox.HorizontalOffset != 0) + + var FormatOffset = (int)values[3]; + + if ((ft.Width + FormatOffset) > QueryTextBox.ActualWidth || QueryTextBox.HorizontalOffset != 0) { return string.Empty; }; diff --git a/Flow.Launcher/MainWindow.xaml b/Flow.Launcher/MainWindow.xaml index 75120322f..2c0a17144 100644 --- a/Flow.Launcher/MainWindow.xaml +++ b/Flow.Launcher/MainWindow.xaml @@ -164,6 +164,7 @@ + diff --git a/Flow.Launcher/ViewModel/MainViewModel.cs b/Flow.Launcher/ViewModel/MainViewModel.cs index abf3a1d14..de44c6dd7 100644 --- a/Flow.Launcher/ViewModel/MainViewModel.cs +++ b/Flow.Launcher/ViewModel/MainViewModel.cs @@ -84,6 +84,7 @@ namespace Flow.Launcher.ViewModel InitializeKeyCommands(); RegisterViewUpdate(); RegisterResultsUpdatedEvent(); + SetSuggestionTextOffset(); SetOpenResultModifiers(); } @@ -395,6 +396,8 @@ namespace Flow.Launcher.ViewModel public double MainWindowWidth => _settings.WindowSize; + public int SuggestionTextOffset { get; set; } + public ICommand EscCommand { get; set; } public ICommand SelectNextItemCommand { get; set; } public ICommand SelectPrevItemCommand { get; set; } @@ -720,6 +723,11 @@ namespace Flow.Launcher.ViewModel OpenResultCommandModifiers = _settings.OpenResultModifiers ?? DefaultOpenResultModifiers; } + private void SetSuggestionTextOffset() + { + SuggestionTextOffset = _settings.SuggestionTextOffset; + } + public void ToggleFlowLauncher() { if (!MainWindowVisibilityStatus)