diff --git a/Flow.Launcher.Infrastructure/KeyConstant.cs b/Flow.Launcher.Infrastructure/KeyConstant.cs new file mode 100644 index 000000000..317485176 --- /dev/null +++ b/Flow.Launcher.Infrastructure/KeyConstant.cs @@ -0,0 +1,9 @@ +namespace Flow.Launcher.Infrastructure +{ + public static class KeyConstant + { + public const string Ctrl = nameof(Ctrl); + public const string Alt = nameof(Alt); + public const string Space = nameof(Space); + } +} \ No newline at end of file diff --git a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs index dbb47fd8e..84b0a7990 100644 --- a/Flow.Launcher.Infrastructure/UserSettings/Settings.cs +++ b/Flow.Launcher.Infrastructure/UserSettings/Settings.cs @@ -9,7 +9,9 @@ namespace Flow.Launcher.Infrastructure.UserSettings { public class Settings : BaseModel { - public string Hotkey { get; set; } = "Alt + Space"; + public string Hotkey { get; set; } = $"{KeyConstant.Alt} + {KeyConstant.Space}"; + public string OpenResultModifiers { get; set; } = KeyConstant.Alt; + public bool ShowOpenResultHotkey { get; set; } = true; public string Language { get; set; } = "en"; public string Theme { get; set; } = "Dark"; public string QueryBoxFont { get; set; } = FontFamily.GenericSansSerif.Name; diff --git a/Flow.Launcher/Converters/OpenResultHotkeyVisibilityConverter.cs b/Flow.Launcher/Converters/OpenResultHotkeyVisibilityConverter.cs new file mode 100644 index 000000000..7de5af79a --- /dev/null +++ b/Flow.Launcher/Converters/OpenResultHotkeyVisibilityConverter.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; + +namespace Flow.Launcher.Converters +{ + [ValueConversion(typeof(bool), typeof(Visibility))] + public class OpenResultHotkeyVisibilityConverter : IValueConverter + { + private const int MaxVisibleHotkeys = 9; + + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + var hotkeyNumber = int.MaxValue; + + if (value is ListBoxItem listBoxItem) + { + ListBox listBox = ItemsControl.ItemsControlFromItemContainer(listBoxItem) as ListBox; + hotkeyNumber = listBox.ItemContainerGenerator.IndexFromContainer(listBoxItem) + 1; + } + + return hotkeyNumber <= MaxVisibleHotkeys ? Visibility.Visible : Visibility.Collapsed; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) => throw new System.InvalidOperationException(); + } +} diff --git a/Flow.Launcher/Converters/OrdinalConverter.cs b/Flow.Launcher/Converters/OrdinalConverter.cs new file mode 100644 index 000000000..970ed183c --- /dev/null +++ b/Flow.Launcher/Converters/OrdinalConverter.cs @@ -0,0 +1,22 @@ +using System.Globalization; +using System.Windows.Controls; +using System.Windows.Data; + +namespace Flow.Launcher.Converters +{ + public class OrdinalConverter : IValueConverter + { + public object Convert(object value, System.Type targetType, object parameter, CultureInfo culture) + { + if (value is ListBoxItem listBoxItem) + { + ListBox listBox = ItemsControl.ItemsControlFromItemContainer(listBoxItem) as ListBox; + return listBox.ItemContainerGenerator.IndexFromContainer(listBoxItem) + 1; + } + + return 0; + } + + public object ConvertBack(object value, System.Type targetType, object parameter, CultureInfo culture) => throw new System.InvalidOperationException(); + } +} diff --git a/Flow.Launcher/Languages/da.xaml b/Flow.Launcher/Languages/da.xaml index 4c3d4bd85..e8ec05ef9 100644 --- a/Flow.Launcher/Languages/da.xaml +++ b/Flow.Launcher/Languages/da.xaml @@ -51,7 +51,9 @@ Genvejstast Flow Launcher genvejstast + Åbn resultatmodifikatorer Tilpasset søgegenvejstast + Vis hotkey Slet Rediger Tilføj diff --git a/Flow.Launcher/Languages/de.xaml b/Flow.Launcher/Languages/de.xaml index d1eae3124..c2e77cc47 100644 --- a/Flow.Launcher/Languages/de.xaml +++ b/Flow.Launcher/Languages/de.xaml @@ -51,7 +51,9 @@ Tastenkombination Flow Launcher Tastenkombination + Öffnen Sie die Ergebnismodifikatoren Benutzerdefinierte Abfrage Tastenkombination + Hotkey anzeigen Löschen Bearbeiten Hinzufügen diff --git a/Flow.Launcher/Languages/en.xaml b/Flow.Launcher/Languages/en.xaml index 46519f058..c33093cab 100644 --- a/Flow.Launcher/Languages/en.xaml +++ b/Flow.Launcher/Languages/en.xaml @@ -60,6 +60,8 @@ Hotkey Flow Launcher Hotkey + Open Result Modifiers + Show Hotkey Custom Query Hotkey Delete Edit diff --git a/Flow.Launcher/Languages/fr.xaml b/Flow.Launcher/Languages/fr.xaml index 4ceb06249..753ccfdfa 100644 --- a/Flow.Launcher/Languages/fr.xaml +++ b/Flow.Launcher/Languages/fr.xaml @@ -55,7 +55,9 @@ Raccourcis Ouvrir Flow Launcher + Modificateurs de résultats ouverts Requêtes personnalisées + Afficher le raccourci clavier Supprimer Modifier Ajouter diff --git a/Flow.Launcher/Languages/it.xaml b/Flow.Launcher/Languages/it.xaml index 381864f8a..f01b96bcc 100644 --- a/Flow.Launcher/Languages/it.xaml +++ b/Flow.Launcher/Languages/it.xaml @@ -55,7 +55,9 @@ Tasti scelta rapida Tasto scelta rapida Flow Launcher + Apri modificatori di risultato Tasti scelta rapida per ricerche personalizzate + Mostra tasto di scelta rapida Cancella Modifica Aggiungi diff --git a/Flow.Launcher/Languages/ja.xaml b/Flow.Launcher/Languages/ja.xaml index 0fd5e3e79..c6cabdce9 100644 --- a/Flow.Launcher/Languages/ja.xaml +++ b/Flow.Launcher/Languages/ja.xaml @@ -58,7 +58,9 @@ ホットキー Flow Launcher ホットキー + 結果修飾子を開く カスタムクエリ ホットキー + ホットキーを表示 削除 編集 追加 diff --git a/Flow.Launcher/Languages/ko.xaml b/Flow.Launcher/Languages/ko.xaml index 2f7d538dc..c52e1cb23 100644 --- a/Flow.Launcher/Languages/ko.xaml +++ b/Flow.Launcher/Languages/ko.xaml @@ -55,7 +55,9 @@ 핫키 Flow Launcher 핫키 + 결과 수정 자 열기 사용자지정 쿼리 핫키 + 단축키 표시 삭제 편집 추가 diff --git a/Flow.Launcher/Languages/nb-NO.xaml b/Flow.Launcher/Languages/nb-NO.xaml index 035b0cbdf..453203b4d 100644 --- a/Flow.Launcher/Languages/nb-NO.xaml +++ b/Flow.Launcher/Languages/nb-NO.xaml @@ -55,7 +55,9 @@ Hurtigtast Flow Launcher-hurtigtast + Åpne resultatmodifiserere Egendefinerd spørringshurtigtast + Vis hurtigtast Slett Rediger Legg til diff --git a/Flow.Launcher/Languages/nl.xaml b/Flow.Launcher/Languages/nl.xaml index be18beb9c..492ea5a8c 100644 --- a/Flow.Launcher/Languages/nl.xaml +++ b/Flow.Launcher/Languages/nl.xaml @@ -51,7 +51,9 @@ Sneltoets Flow Launcher Sneltoets + Open resultaatmodificatoren Custom Query Sneltoets + Sneltoets weergeven Verwijder Bewerken Toevoegen diff --git a/Flow.Launcher/Languages/pl.xaml b/Flow.Launcher/Languages/pl.xaml index 249878ed3..95fa57bd2 100644 --- a/Flow.Launcher/Languages/pl.xaml +++ b/Flow.Launcher/Languages/pl.xaml @@ -51,7 +51,9 @@ Skrót klawiszowy Skrót klawiszowy Flow Launcher + Modyfikatory klawiszów otwierających wyniki Skrót klawiszowy niestandardowych zapytań + Pokaż skrót klawiszowy Usuń Edytuj Dodaj diff --git a/Flow.Launcher/Languages/pt-br.xaml b/Flow.Launcher/Languages/pt-br.xaml index 2036744e8..d5d2bf76d 100644 --- a/Flow.Launcher/Languages/pt-br.xaml +++ b/Flow.Launcher/Languages/pt-br.xaml @@ -55,7 +55,9 @@ Atalho Atalho do Flow Launcher + Modificadores de resultado aberto Atalho de Consulta Personalizada + Mostrar tecla de atalho Apagar Editar Adicionar diff --git a/Flow.Launcher/Languages/ru.xaml b/Flow.Launcher/Languages/ru.xaml index 66a463dcb..1855a210c 100644 --- a/Flow.Launcher/Languages/ru.xaml +++ b/Flow.Launcher/Languages/ru.xaml @@ -51,7 +51,9 @@ Горячие клавиши Горячая клавиша Flow Launcher + Модификаторы открытого результата Задаваемые горячие клавиши для запросов + Показать Hotkey Удалить Изменить Добавить diff --git a/Flow.Launcher/Languages/sk.xaml b/Flow.Launcher/Languages/sk.xaml index 824096c4c..deb79cde4 100644 --- a/Flow.Launcher/Languages/sk.xaml +++ b/Flow.Launcher/Languages/sk.xaml @@ -56,7 +56,9 @@ Klávesová skratka Klávesová skratka pre Flow Launcher + Otvorte modifikátory výsledkov Vlastná klávesová skratka pre dopyt + Zobraziť klávesovú skratku Odstrániť Upraviť Pridať diff --git a/Flow.Launcher/Languages/sr.xaml b/Flow.Launcher/Languages/sr.xaml index 22aabb37f..1afff3fcf 100644 --- a/Flow.Launcher/Languages/sr.xaml +++ b/Flow.Launcher/Languages/sr.xaml @@ -55,6 +55,8 @@ Prečica Flow Launcher prečica + Отворите модификаторе резултата + покажи хоткеи prečica za ručno dodat upit Obriši Izmeni diff --git a/Flow.Launcher/Languages/tr.xaml b/Flow.Launcher/Languages/tr.xaml index cc287f372..04256d6b0 100644 --- a/Flow.Launcher/Languages/tr.xaml +++ b/Flow.Launcher/Languages/tr.xaml @@ -59,7 +59,9 @@ Kısayol Tuşu Flow Launcher Kısayolu + Açık Sonuç Değiştiricileri Özel Sorgu Kısayolları + Kısayol Tuşunu Göster Sil Düzenle Ekle diff --git a/Flow.Launcher/Languages/uk-UA.xaml b/Flow.Launcher/Languages/uk-UA.xaml index c7e84c231..af65e0e63 100644 --- a/Flow.Launcher/Languages/uk-UA.xaml +++ b/Flow.Launcher/Languages/uk-UA.xaml @@ -51,7 +51,9 @@ Гарячі клавіші Гаряча клавіша Flow Launcher + Відкриті модифікатори результатів Задані гарячі клавіші для запитів + Показати клавішу швидкого доступу Видалити Змінити Додати diff --git a/Flow.Launcher/Languages/zh-cn.xaml b/Flow.Launcher/Languages/zh-cn.xaml index 5801b678a..7367de366 100644 --- a/Flow.Launcher/Languages/zh-cn.xaml +++ b/Flow.Launcher/Languages/zh-cn.xaml @@ -58,6 +58,8 @@ 热键 Flow Launcher激活热键 + 开放结果修饰符 + 显示热键 自定义查询热键 删除 编辑 diff --git a/Flow.Launcher/Languages/zh-tw.xaml b/Flow.Launcher/Languages/zh-tw.xaml index f1df1a6d5..8cd3bbe8c 100644 --- a/Flow.Launcher/Languages/zh-tw.xaml +++ b/Flow.Launcher/Languages/zh-tw.xaml @@ -51,7 +51,9 @@ 熱鍵 Flow Launcher 執行熱鍵 + 開放結果修飾符 自定義熱鍵查詢 + 顯示熱鍵 刪除 編輯 新增 diff --git a/Flow.Launcher/MainWindow.xaml b/Flow.Launcher/MainWindow.xaml index 74185fcbd..485f58b47 100644 --- a/Flow.Launcher/MainWindow.xaml +++ b/Flow.Launcher/MainWindow.xaml @@ -48,15 +48,15 @@ - - - - - - - - - + + + + + + + + + diff --git a/Flow.Launcher/ResultListBox.xaml b/Flow.Launcher/ResultListBox.xaml index c9ca658f2..d21c014d6 100644 --- a/Flow.Launcher/ResultListBox.xaml +++ b/Flow.Launcher/ResultListBox.xaml @@ -33,6 +33,8 @@ Cursor="Hand" UseLayoutRounding="False"> + + @@ -46,6 +48,19 @@ + + + + + + + + + + + + + diff --git a/Flow.Launcher/SettingWindow.xaml b/Flow.Launcher/SettingWindow.xaml index be87e4f52..c8463f59a 100644 --- a/Flow.Launcher/SettingWindow.xaml +++ b/Flow.Launcher/SettingWindow.xaml @@ -287,9 +287,10 @@ + - + - + + + + + + + + Margin="0 5 0 0" Grid.Row="3"> @@ -322,7 +333,7 @@ -