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))]
|
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||||
public SearchWindowAligns SearchWindowAlign { get; set; } = SearchWindowAligns.Center;
|
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; }
|
public bool IgnoreHotkeysOnFullscreen { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -550,7 +550,10 @@ namespace Flow.Launcher
|
||||||
screen = Screen.FromHandle(foregroundWindowHandle);
|
screen = Screen.FromHandle(foregroundWindowHandle);
|
||||||
break;
|
break;
|
||||||
case SearchWindowScreens.Custom:
|
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;
|
break;
|
||||||
default:
|
default:
|
||||||
screen = Screen.AllScreens[0];
|
screen = Screen.AllScreens[0];
|
||||||
|
|
|
||||||
|
|
@ -719,11 +719,9 @@
|
||||||
MinWidth="160"
|
MinWidth="160"
|
||||||
Margin="0,0,18,0"
|
Margin="0,0,18,0"
|
||||||
VerticalAlignment="Center"
|
VerticalAlignment="Center"
|
||||||
DisplayMemberPath="Display"
|
|
||||||
FontSize="14"
|
FontSize="14"
|
||||||
ItemsSource="{Binding SearchWindowAligns}"
|
ItemsSource="{Binding ScreenNumbers}"
|
||||||
SelectedValue="{Binding Settings.SearchWindowAlign}"
|
SelectedValue="{Binding Settings.CustomScreenNumber}">
|
||||||
SelectedValuePath="Value">
|
|
||||||
<ComboBox.Style>
|
<ComboBox.Style>
|
||||||
<Style BasedOn="{StaticResource DefaultComboBoxStyle}" TargetType="ComboBox">
|
<Style BasedOn="{StaticResource DefaultComboBoxStyle}" TargetType="ComboBox">
|
||||||
<Setter Property="Visibility" Value="Collapsed" />
|
<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()
|
public List<string> TimeFormatList { get; } = new()
|
||||||
{
|
{
|
||||||
"h:mm",
|
"h:mm",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue