mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
Update Translation Mechamism in Flow
This commit is contained in:
parent
02bb75fac4
commit
582e29658b
3 changed files with 26 additions and 21 deletions
|
|
@ -71,7 +71,7 @@ namespace Flow.Plugin.WindowsSettings.Helper
|
|||
|
||||
if (result is null && entry.Keywords is not null)
|
||||
{
|
||||
string[] searchKeywords = query.Terms[(string.IsNullOrEmpty(query.ActionKeyword) ? 0 : 1)..];
|
||||
string[] searchKeywords = query.SearchTerms;
|
||||
|
||||
if (searchKeywords
|
||||
.All(x => entry
|
||||
|
|
|
|||
|
|
@ -19,12 +19,12 @@ namespace Flow.Plugin.WindowsSettings.Helper
|
|||
/// Translate all settings of the given list with <see cref="WindowsSetting"/>.
|
||||
/// </summary>
|
||||
/// <param name="settingsList">The list that contains <see cref="WindowsSetting"/> to translate.</param>
|
||||
internal static void TranslateAllSettings(in IEnumerable<WindowsSetting>? settingsList)
|
||||
internal static IEnumerable<WindowsSetting> TranslateAllSettings(in IEnumerable<WindowsSetting>? settingsList)
|
||||
{
|
||||
var translatedSettings = new List<WindowsSetting>();
|
||||
|
||||
if (settingsList is null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
return new List<WindowsSetting>();
|
||||
|
||||
foreach (var settings in settingsList)
|
||||
{
|
||||
|
|
@ -47,9 +47,7 @@ namespace Flow.Plugin.WindowsSettings.Helper
|
|||
Log.Warn($"Resource string for [{settings.Name}] not found", typeof(Main));
|
||||
}
|
||||
|
||||
settings.Area = area ?? settings.Area ?? string.Empty;
|
||||
settings.Name = name ?? settings.Name ?? string.Empty;
|
||||
settings.Type = type ?? settings.Type ?? string.Empty;
|
||||
|
||||
|
||||
if (!string.IsNullOrEmpty(settings.Note))
|
||||
{
|
||||
|
|
@ -61,11 +59,10 @@ namespace Flow.Plugin.WindowsSettings.Helper
|
|||
|
||||
settings.Note = note ?? settings.Note ?? string.Empty;
|
||||
}
|
||||
|
||||
if (!(settings.AltNames is null) && settings.AltNames.Any())
|
||||
List<string>? translatedAltNames = null;
|
||||
if (settings.AltNames is not null && settings.AltNames.Any())
|
||||
{
|
||||
var translatedAltNames = new Collection<string>();
|
||||
|
||||
translatedAltNames = new List<string>();
|
||||
foreach (var altName in settings.AltNames)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(altName))
|
||||
|
|
@ -82,9 +79,18 @@ namespace Flow.Plugin.WindowsSettings.Helper
|
|||
translatedAltNames.Add(translatedAltName ?? altName);
|
||||
}
|
||||
|
||||
settings.AltNames = translatedAltNames;
|
||||
}
|
||||
var translatedSetting = new WindowsSetting
|
||||
{
|
||||
Area = area ?? settings.Area,
|
||||
Name = name ?? settings.Name,
|
||||
Type = type ?? settings.Type,
|
||||
AltNames = translatedAltNames
|
||||
};
|
||||
|
||||
translatedSettings.Add(translatedSetting);
|
||||
}
|
||||
return translatedSettings;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,6 +52,11 @@ namespace Flow.Plugin.WindowsSettings
|
|||
/// </summary>
|
||||
private IEnumerable<WindowsSetting>? _settingsList;
|
||||
|
||||
/// <summary>
|
||||
/// List that contains translated string
|
||||
/// </summary>
|
||||
private IEnumerable<WindowsSetting> _translatedSettingList = new List<WindowsSetting>();
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="Main"/> class.
|
||||
/// </summary>
|
||||
|
|
@ -85,7 +90,7 @@ namespace Flow.Plugin.WindowsSettings
|
|||
Log.Init(_context.API);
|
||||
ResultHelper.Init(_context.API);
|
||||
|
||||
TranslationHelper.TranslateAllSettings(_settingsList);
|
||||
_translatedSettingList = TranslationHelper.TranslateAllSettings(_settingsList);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -95,13 +100,7 @@ namespace Flow.Plugin.WindowsSettings
|
|||
/// <returns>A filtered list, can be empty when nothing was found.</returns>
|
||||
public List<Result> Query(Query query)
|
||||
{
|
||||
if (_settingsList is null)
|
||||
{
|
||||
return new List<Result>(0);
|
||||
}
|
||||
|
||||
|
||||
var newList = ResultHelper.GetResultList(_settingsList, query, _defaultIconPath);
|
||||
var newList = ResultHelper.GetResultList(_translatedSettingList, query, _defaultIconPath);
|
||||
return newList;
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue