mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
Add custom monitor number selection combobox
This commit is contained in:
parent
278f0eba30
commit
115d3a58f4
4 changed files with 21 additions and 6 deletions
|
|
@ -245,7 +245,7 @@ namespace Flow.Launcher.Infrastructure.UserSettings
|
|||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public SearchWindowAligns SearchWindowAlign { get; set; } = SearchWindowAligns.Center;
|
||||
|
||||
public string CustomScreenDeviceName { get; set; } = string.Empty;
|
||||
public int CustomScreenNumber { get; set; } = 1;
|
||||
|
||||
public bool IgnoreHotkeysOnFullscreen { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -550,7 +550,10 @@ namespace Flow.Launcher
|
|||
screen = Screen.FromHandle(foregroundWindowHandle);
|
||||
break;
|
||||
case SearchWindowScreens.Custom:
|
||||
screen = Screen.AllScreens.FirstOrDefault(s => s.DeviceName == _settings.CustomScreenDeviceName);
|
||||
if (_settings.CustomScreenNumber <= Screen.AllScreens.Length)
|
||||
screen = Screen.AllScreens[_settings.CustomScreenNumber - 1];
|
||||
else
|
||||
screen = Screen.AllScreens[0];
|
||||
break;
|
||||
default:
|
||||
screen = Screen.AllScreens[0];
|
||||
|
|
|
|||
|
|
@ -719,11 +719,9 @@
|
|||
MinWidth="160"
|
||||
Margin="0,0,18,0"
|
||||
VerticalAlignment="Center"
|
||||
DisplayMemberPath="Display"
|
||||
FontSize="14"
|
||||
ItemsSource="{Binding SearchWindowAligns}"
|
||||
SelectedValue="{Binding Settings.SearchWindowAlign}"
|
||||
SelectedValuePath="Value">
|
||||
ItemsSource="{Binding ScreenNumbers}"
|
||||
SelectedValue="{Binding Settings.CustomScreenNumber}">
|
||||
<ComboBox.Style>
|
||||
<Style BasedOn="{StaticResource DefaultComboBoxStyle}" TargetType="ComboBox">
|
||||
<Setter Property="Visibility" Value="Collapsed" />
|
||||
|
|
|
|||
|
|
@ -517,6 +517,20 @@ namespace Flow.Launcher.ViewModel
|
|||
}
|
||||
}
|
||||
|
||||
public List<int> ScreenNumbers
|
||||
{
|
||||
get
|
||||
{
|
||||
var screens = System.Windows.Forms.Screen.AllScreens;
|
||||
var screenNumbers = new List<int>();
|
||||
for (int i = 1; i <= screens.Length; i++)
|
||||
{
|
||||
screenNumbers.Add(i);
|
||||
}
|
||||
return screenNumbers;
|
||||
}
|
||||
}
|
||||
|
||||
public List<string> TimeFormatList { get; } = new()
|
||||
{
|
||||
"h:mm",
|
||||
|
|
|
|||
Loading…
Reference in a new issue