Skip to content

Commit 30f7ae0

Browse files
Use Localization for Explorer plugin
1 parent e116668 commit 30f7ae0

File tree

12 files changed

+93
-108
lines changed

12 files changed

+93
-108
lines changed

Plugins/Flow.Launcher.Plugin.Explorer/Helper/SortOptionTranslationHelper.cs

Lines changed: 0 additions & 25 deletions
This file was deleted.

Plugins/Flow.Launcher.Plugin.Explorer/Languages/en.xaml

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -143,20 +143,33 @@
143143
<system:String x:Key="flowlauncher_plugin_everything_is_not_running">Warning: Everything service is not running</system:String>
144144
<system:String x:Key="flowlauncher_plugin_everything_query_error">Error while querying Everything</system:String>
145145
<system:String x:Key="flowlauncher_plugin_everything_sort_by">Sort By</system:String>
146-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_name">Name</system:String>
147-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_path">Path</system:String>
148-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_size">Size</system:String>
149-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_extension">Extension</system:String>
150-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_type_name">Type Name</system:String>
151-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_created">Date Created</system:String>
152-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_modified">Date Modified</system:String>
153-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_attributes">Attributes</system:String>
154-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_file_list_filename">File List FileName</system:String>
155-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_run_count">Run Count</system:String>
156-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_recently_changed">Date Recently Changed</system:String>
157-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_accessed">Date Accessed</system:String>
158-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_run">Date Run</system:String>
159-
<system:String x:Key="flowlauncher_plugin_everything_sort_by_ascending">&#x2191;</system:String>
146+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_name_ascending">Name &#x2191;</system:String>
147+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_name_descending">Name &#x2193;</system:String>
148+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_path_ascending">Path &#x2191;</system:String>
149+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_path_descending">Path &#x2193;</system:String>
150+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_size_ascending">Size &#x2191;</system:String>
151+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_size_descending">Size &#x2193;</system:String>
152+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_extension_ascending">Extension &#x2191;</system:String>
153+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_extension_descending">Extension &#x2193;</system:String>
154+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_type_name_ascending">Type Name &#x2191;</system:String>
155+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_type_name_descending">Type Name &#x2193;</system:String>
156+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_created_ascending">Date Created &#x2191;</system:String>
157+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_created_descending">Date Created &#x2193;</system:String>
158+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_modified_ascending">Date Modified &#x2191;</system:String>
159+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_modified_descending">Date Modified &#x2193;</system:String>
160+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_attributes_ascending">Attributes &#x2191;</system:String>
161+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_attributes_descending">Attributes &#x2193;</system:String>
162+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_file_list_filename_ascending">File List FileName &#x2191;</system:String>
163+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_file_list_filename_descending">File List FileName &#x2193;</system:String>
164+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_run_count_ascending">Run Count &#x2191;</system:String>
165+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_run_count_descending">Run Count &#x2193;</system:String>
166+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_recently_changed_ascending">Date Recently Changed &#x2191;</system:String>
167+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_recently_changed_descending">Date Recently Changed &#x2193;</system:String>
168+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_accessed_ascending">Date Accessed &#x2191;</system:String>
169+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_accessed_descending">Date Accessed &#x2193;</system:String>
170+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_run_ascending">Date Run &#x2191;</system:String>
171+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_date_run_descending">Date Run &#x2193;</system:String>
172+
<system:String x:Key="flowlauncher_plugin_everything_sort_by_ascending">¡ü</system:String>
160173
<system:String x:Key="flowlauncher_plugin_everything_sort_by_descending">&#x2193;</system:String>
161174
<system:String x:Key="flowlauncher_plugin_everything_nonfastsort_warning">Warning: This is not a Fast Sort option, searches may be slow</system:String>
162175

Plugins/Flow.Launcher.Plugin.Explorer/Main.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,6 @@ public Task InitAsync(PluginInitContext context)
4242
contextMenu = new ContextMenu(Context, Settings, viewModel);
4343
searchManager = new SearchManager(Settings, Context);
4444
ResultManager.Init(Context, Settings);
45-
46-
SortOptionTranslationHelper.API = context.API;
4745

4846
EverythingApiDllImport.Load(Path.Combine(Context.CurrentPluginMetadata.PluginDirectory, "EverythingSDK",
4947
Environment.Is64BitProcess ? "x64" : "x86"));

Plugins/Flow.Launcher.Plugin.Explorer/Search/Everything/EverythingAPI.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using Flow.Launcher.Plugin.Everything.Everything;
2-
using Flow.Launcher.Plugin.Explorer.Search.Everything.Exceptions;
1+
using Flow.Launcher.Plugin.Explorer.Search.Everything.Exceptions;
32
using System;
43
using System.Collections.Generic;
54
using System.Runtime.CompilerServices;
@@ -36,7 +35,7 @@ public enum StateCode
3635
/// <summary>
3736
/// Checks whether the sort option is Fast Sort.
3837
/// </summary>
39-
public static bool IsFastSortOption(SortOption sortOption)
38+
public static bool IsFastSortOption(EverythingSortOption sortOption)
4039
{
4140
var fastSortOptionEnabled = EverythingApiDllImport.Everything_IsFastSort(sortOption);
4241

@@ -112,7 +111,7 @@ public static async IAsyncEnumerable<SearchResult> SearchAsync(EverythingSearchO
112111
EverythingApiDllImport.Everything_SetSort(option.SortOption);
113112
EverythingApiDllImport.Everything_SetMatchPath(option.IsFullPathSearch);
114113

115-
if (option.SortOption == SortOption.RUN_COUNT_DESCENDING)
114+
if (option.SortOption == EverythingSortOption.RUN_COUNT_DESCENDING)
116115
{
117116
EverythingApiDllImport.Everything_SetRequestFlags(EVERYTHING_REQUEST_FULL_PATH_AND_FILE_NAME | EVERYTHING_REQUEST_RUN_COUNT);
118117
}

Plugins/Flow.Launcher.Plugin.Explorer/Search/Everything/EverythingApiDllImport.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using Flow.Launcher.Plugin.Everything.Everything;
2-
using System;
1+
using System;
32
using System.IO;
43
using System.Runtime.InteropServices;
54
using System.Text;
@@ -114,11 +113,11 @@ public static void Load(string directory)
114113
// Everything 1.4
115114

116115
[DllImport(DLL)]
117-
public static extern void Everything_SetSort(SortOption dwSortType);
116+
public static extern void Everything_SetSort(EverythingSortOption dwSortType);
118117
[DllImport(DLL)]
119-
public static extern bool Everything_IsFastSort(SortOption dwSortType);
118+
public static extern bool Everything_IsFastSort(EverythingSortOption dwSortType);
120119
[DllImport(DLL)]
121-
public static extern SortOption Everything_GetSort();
120+
public static extern EverythingSortOption Everything_GetSort();
122121
[DllImport(DLL)]
123122
public static extern uint Everything_GetResultListSort();
124123
[DllImport(DLL)]

Plugins/Flow.Launcher.Plugin.Explorer/Search/Everything/EverythingSearchOption.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
using Flow.Launcher.Plugin.Everything.Everything;
2-
3-
namespace Flow.Launcher.Plugin.Explorer.Search.Everything
1+
namespace Flow.Launcher.Plugin.Explorer.Search.Everything
42
{
53
public record struct EverythingSearchOption(
64
string Keyword,
7-
SortOption SortOption,
5+
EverythingSortOption SortOption,
86
bool IsContentSearch = false,
97
string ContentSearchKeyword = default,
108
string ParentPath = default,
Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,59 @@
1-
namespace Flow.Launcher.Plugin.Everything.Everything
1+
using Flow.Launcher.Localization.Attributes;
2+
3+
namespace Flow.Launcher.Plugin.Explorer.Search.Everything
24
{
3-
public enum SortOption : uint
5+
[EnumLocalize]
6+
public enum EverythingSortOption : uint
47
{
8+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_name_ascending))]
59
NAME_ASCENDING = 1u,
10+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_name_descending))]
611
NAME_DESCENDING = 2u,
12+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_path_ascending))]
713
PATH_ASCENDING = 3u,
14+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_path_descending))]
815
PATH_DESCENDING = 4u,
16+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_size_ascending))]
917
SIZE_ASCENDING = 5u,
18+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_size_descending))]
1019
SIZE_DESCENDING = 6u,
20+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_extension_ascending))]
1121
EXTENSION_ASCENDING = 7u,
22+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_extension_descending))]
1223
EXTENSION_DESCENDING = 8u,
24+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_type_name_ascending))]
1325
TYPE_NAME_ASCENDING = 9u,
26+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_type_name_descending))]
1427
TYPE_NAME_DESCENDING = 10u,
28+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_created_ascending))]
1529
DATE_CREATED_ASCENDING = 11u,
30+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_created_descending))]
1631
DATE_CREATED_DESCENDING = 12u,
32+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_modified_ascending))]
1733
DATE_MODIFIED_ASCENDING = 13u,
34+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_modified_descending))]
1835
DATE_MODIFIED_DESCENDING = 14u,
36+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_attributes_ascending))]
1937
ATTRIBUTES_ASCENDING = 15u,
38+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_attributes_descending))]
2039
ATTRIBUTES_DESCENDING = 16u,
40+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_file_list_filename_ascending))]
2141
FILE_LIST_FILENAME_ASCENDING = 17u,
42+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_file_list_filename_descending))]
2243
FILE_LIST_FILENAME_DESCENDING = 18u,
44+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_run_count_descending))]
2345
RUN_COUNT_DESCENDING = 20u,
46+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_recently_changed_ascending))]
2447
DATE_RECENTLY_CHANGED_ASCENDING = 21u,
48+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_recently_changed_descending))]
2549
DATE_RECENTLY_CHANGED_DESCENDING = 22u,
50+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_accessed_ascending))]
2651
DATE_ACCESSED_ASCENDING = 23u,
52+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_accessed_descending))]
2753
DATE_ACCESSED_DESCENDING = 24u,
54+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_run_ascending))]
2855
DATE_RUN_ASCENDING = 25u,
56+
[EnumLocalizeKey(nameof(Localize.flowlauncher_plugin_everything_sort_by_date_run_descending))]
2957
DATE_RUN_DESCENDING = 26u
3058
}
3159
}

Plugins/Flow.Launcher.Plugin.Explorer/Settings.cs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using Flow.Launcher.Plugin.Everything.Everything;
2-
using Flow.Launcher.Plugin.Explorer.Search;
1+
using Flow.Launcher.Plugin.Explorer.Search;
32
using Flow.Launcher.Plugin.Explorer.Search.Everything;
43
using Flow.Launcher.Plugin.Explorer.Search.QuickAccessLinks;
54
using Flow.Launcher.Plugin.Explorer.Search.WindowsIndex;
@@ -145,10 +144,7 @@ public enum ContentIndexSearchEngineOption
145144

146145
public string EverythingInstalledPath { get; set; }
147146

148-
[JsonIgnore]
149-
public SortOption[] SortOptions { get; set; } = Enum.GetValues<SortOption>();
150-
151-
public SortOption SortOption { get; set; } = SortOption.NAME_ASCENDING;
147+
public EverythingSortOption SortOption { get; set; } = EverythingSortOption.NAME_ASCENDING;
152148

153149
public bool EnableEverythingContentSearch { get; set; } = false;
154150

Plugins/Flow.Launcher.Plugin.Explorer/ViewModels/SettingsViewModel.cs

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ public SettingsViewModel(PluginInitContext context, Settings settings)
3535

3636
InitializeEngineSelection();
3737
InitializeActionKeywordModels();
38+
EverythingSortOptionLocalized.UpdateLabels(AllEverythingSortOptions);
3839
}
3940

4041
public void Save()
@@ -578,6 +579,20 @@ public int MaxResult
578579

579580
#region Everything FastSortWarning
580581

582+
public List<EverythingSortOptionLocalized> AllEverythingSortOptions { get; } = EverythingSortOptionLocalized.GetValues();
583+
584+
public EverythingSortOption SelectedEverythingSortOption
585+
{
586+
get => Settings.SortOption;
587+
set
588+
{
589+
Settings.SortOption = value;
590+
OnPropertyChanged(nameof(SelectedEverythingSortOption));
591+
OnPropertyChanged(nameof(FastSortWarningVisibility));
592+
OnPropertyChanged(nameof(SortOptionWarningMessage));
593+
}
594+
}
595+
581596
public Visibility FastSortWarningVisibility
582597
{
583598
get
@@ -607,15 +622,15 @@ public string SortOptionWarningMessage
607622
// this method is used to determine if Everything service is running because as at Everything v1.4.1
608623
// the sdk does not provide a dedicated interface to determine if it is running.
609624
return EverythingApi.IsFastSortOption(Settings.SortOption) ? string.Empty
610-
: Context.API.GetTranslation("flowlauncher_plugin_everything_nonfastsort_warning");
625+
: Localize.flowlauncher_plugin_everything_nonfastsort_warning();
611626
}
612627
catch (IPCErrorException)
613628
{
614-
return Context.API.GetTranslation("flowlauncher_plugin_everything_is_not_running");
629+
return Localize.flowlauncher_plugin_everything_is_not_running();
615630
}
616631
catch (DllNotFoundException)
617632
{
618-
return Context.API.GetTranslation("flowlauncher_plugin_everything_sdk_issue");
633+
return Localize.flowlauncher_plugin_everything_sdk_issue();
619634
}
620635
}
621636
}

Plugins/Flow.Launcher.Plugin.Explorer/Views/Converters/EverythingEnumNameConverter.cs

Lines changed: 0 additions & 20 deletions
This file was deleted.

0 commit comments

Comments
 (0)