2025-06-23 04:38:27 +00:00
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
using Flow.Launcher.Localization.Attributes;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Flow.Launcher.Plugin.BrowserBookmark.Models;
|
2024-04-16 07:00:19 +00:00
|
|
|
|
|
|
|
|
|
|
public class CustomBrowser : BaseModel
|
2021-09-22 23:09:30 +00:00
|
|
|
|
{
|
2024-04-16 07:00:19 +00:00
|
|
|
|
private string _name;
|
|
|
|
|
|
private string _dataDirectoryPath;
|
|
|
|
|
|
private BrowserType _browserType = BrowserType.Chromium;
|
2023-02-03 05:07:46 +00:00
|
|
|
|
|
2024-04-16 07:00:19 +00:00
|
|
|
|
public string Name
|
|
|
|
|
|
{
|
|
|
|
|
|
get => _name;
|
|
|
|
|
|
set
|
2021-09-23 18:32:10 +00:00
|
|
|
|
{
|
2025-06-23 04:38:27 +00:00
|
|
|
|
if (_name != value)
|
|
|
|
|
|
{
|
|
|
|
|
|
_name = value;
|
|
|
|
|
|
OnPropertyChanged();
|
|
|
|
|
|
}
|
2021-09-23 18:32:10 +00:00
|
|
|
|
}
|
2024-04-16 07:00:19 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public string DataDirectoryPath
|
|
|
|
|
|
{
|
|
|
|
|
|
get => _dataDirectoryPath;
|
|
|
|
|
|
set
|
2023-02-03 05:07:46 +00:00
|
|
|
|
{
|
2025-06-23 04:38:27 +00:00
|
|
|
|
if (_dataDirectoryPath != value)
|
|
|
|
|
|
{
|
|
|
|
|
|
_dataDirectoryPath = value;
|
|
|
|
|
|
OnPropertyChanged();
|
|
|
|
|
|
}
|
2023-02-03 05:07:46 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-06-23 04:38:27 +00:00
|
|
|
|
public List<BrowserTypeLocalized> AllBrowserTypes { get; } = BrowserTypeLocalized.GetValues();
|
|
|
|
|
|
|
2024-04-16 07:00:19 +00:00
|
|
|
|
public BrowserType BrowserType
|
2023-02-03 05:07:46 +00:00
|
|
|
|
{
|
2024-04-16 07:00:19 +00:00
|
|
|
|
get => _browserType;
|
|
|
|
|
|
set
|
|
|
|
|
|
{
|
2025-06-23 04:38:27 +00:00
|
|
|
|
if (_browserType != value)
|
|
|
|
|
|
{
|
|
|
|
|
|
_browserType = value;
|
|
|
|
|
|
OnPropertyChanged();
|
|
|
|
|
|
}
|
2024-04-16 07:00:19 +00:00
|
|
|
|
}
|
2021-09-22 23:09:30 +00:00
|
|
|
|
}
|
2023-02-03 05:07:46 +00:00
|
|
|
|
}
|
2024-04-16 07:00:19 +00:00
|
|
|
|
|
2025-06-23 04:38:27 +00:00
|
|
|
|
[EnumLocalize]
|
2024-04-16 07:00:19 +00:00
|
|
|
|
public enum BrowserType
|
|
|
|
|
|
{
|
2025-06-23 04:38:27 +00:00
|
|
|
|
[EnumLocalizeValue("Chromium")]
|
2024-04-16 07:00:19 +00:00
|
|
|
|
Chromium,
|
2025-06-23 04:38:27 +00:00
|
|
|
|
|
|
|
|
|
|
[EnumLocalizeValue("Firefox")]
|
2024-04-16 07:00:19 +00:00
|
|
|
|
Firefox,
|
|
|
|
|
|
}
|