2023-05-25 11:10:52 +02:00
<Page
x:Class="Microsoft.PowerToys.Settings.UI.Views.MouseWithoutBordersPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
2023-09-14 18:41:31 +02:00
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
xmlns:converters="using:CommunityToolkit.WinUI.UI.Converters"
xmlns:custom="using:Microsoft.PowerToys.Settings.UI.Controls"
2023-05-25 11:10:52 +02:00
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
2023-09-14 18:41:31 +02:00
xmlns:ui="using:CommunityToolkit.WinUI"
2023-05-25 11:10:52 +02:00
AutomationProperties.LandmarkType="Main"
mc:Ignorable="d">
2023-05-15 23:32:26 +01:00
<Page.Resources>
2023-09-14 18:41:31 +02:00
<converters:BoolToVisibilityConverter x:Key="negativeBoolToVisibilityConverter" />
<converters:BoolToObjectConverter
2023-05-25 11:10:52 +02:00
x:Key="OneRowMatrixBoolToNumberOfRowsConverter"
FalseValue="2"
TrueValue="4" />
2023-05-15 23:32:26 +01:00
</Page.Resources>
2023-09-14 18:41:31 +02:00
<custom:SettingsPageControl x:Uid="MouseWithoutBorders" ModuleImageSource="ms-appx:///Assets/Settings/Modules/MouseWithoutBorders.png">
<custom:SettingsPageControl.ModuleContent>
2023-05-15 23:32:26 +01:00
<StackPanel Orientation="Vertical">
2023-09-14 18:41:31 +02:00
<custom:SettingsGroup x:Uid="MouseWithoutBorders_ActivationSettings">
<controls:SettingsCard
2023-05-25 11:10:52 +02:00
x:Uid="MouseWithoutBorders_Toggle_Enable"
2023-07-20 00:12:46 +01:00
HeaderIcon="{ui:BitmapIcon Source=/Assets/Settings/FluentIcons/FluentIconsMouseWithoutBorders.png}"
2023-05-25 11:10:52 +02:00
IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabledGpoConfigured, Converter={StaticResource BoolNegationConverter}}">
<ToggleSwitch
x:Uid="ToggleSwitch"
IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.CanBeEnabled}"
IsOn="{x:Bind Mode=TwoWay, Path=ViewModel.IsEnabled}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
2023-05-25 11:10:52 +02:00
<InfoBar
x:Uid="GPO_IsSettingForced"
IsClosable="False"
IsOpen="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabledGpoConfigured}"
IsTabStop="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabledGpoConfigured}"
Severity="Informational" />
2023-09-14 18:41:31 +02:00
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_KeySettings" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}">
<controls:SettingsExpander
2023-05-25 11:10:52 +02:00
x:Name="MouseWithoutBorders_ConnectSettings"
x:Uid="MouseWithoutBorders_SecurityKey"
2023-09-14 18:41:31 +02:00
HeaderIcon="{ui:FontIcon Glyph=}"
2023-05-25 11:10:52 +02:00
IsExpanded="{x:Bind Mode=TwoWay, Path=ViewModel.ConnectFieldsVisible}">
2023-09-14 18:41:31 +02:00
<controls:SettingsExpander.Items>
<controls:SettingsCard ContentAlignment="Right">
2023-05-25 11:10:52 +02:00
<StackPanel Orientation="Horizontal" Spacing="8">
<TextBox
x:Name="ConnectSecurityKeyTextBox"
2023-09-14 18:41:31 +02:00
x:Uid="MWB_SecurityKeyLabel"
Width="248" />
2023-05-25 11:10:52 +02:00
<TextBox
x:Name="ConnectPCNameTextBox"
x:Uid="MWB_PCNameLabel"
Width="248" />
<Button
x:Uid="MouseWithoutBorders_Connect"
Command="{x:Bind Mode=OneTime, Path=ConnectCommand}"
Style="{StaticResource AccentButtonStyle}" />
2023-05-15 23:32:26 +01:00
</StackPanel>
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
</controls:SettingsExpander.Items>
2023-05-25 11:10:52 +02:00
<StackPanel Orientation="Horizontal" Spacing="8">
<TextBox IsReadOnly="True" Text="{x:Bind Mode=TwoWay, Path=ViewModel.SecurityKey}" />
<Button
x:Uid="MouseWithoutBorders_NewKey"
Command="{x:Bind Mode=OneTime, Path=GenerateNewKeyCommand}"
Style="{StaticResource AccentButtonStyle}" />
<Button
x:Uid="MouseWithoutBorders_Connect"
Command="{x:Bind Mode=OneTime, Path=ShowConnectFieldsCommand}"
Style="{StaticResource AccentButtonStyle}"
2023-09-14 18:41:31 +02:00
Visibility="{x:Bind Path=ViewModel.ConnectFieldsVisible, Mode=OneWay, Converter={StaticResource negativeBoolToVisibilityConverter}, ConverterParameter=True}" />
2023-05-15 23:32:26 +01:00
</StackPanel>
2023-09-14 18:41:31 +02:00
</controls:SettingsExpander>
2023-05-25 11:10:52 +02:00
2023-09-14 18:41:31 +02:00
<controls:SettingsCard x:Uid="MouseWithoutBorders_ThisMachineNameLabel">
2023-05-25 11:10:52 +02:00
<StackPanel Orientation="Horizontal" Spacing="8">
2023-05-15 23:32:26 +01:00
<TextBlock
2023-05-25 11:10:52 +02:00
VerticalAlignment="Center"
Foreground="{ThemeResource TextFillColorSecondaryBrush}"
IsTextSelectionEnabled="True"
2023-05-15 23:32:26 +01:00
Text="{x:Bind Mode=OneTime, Path=ViewModel.MachineHostName}" />
2023-05-25 11:10:52 +02:00
<Button
Width="32"
Height="32"
Padding="4"
Command="{x:Bind Mode=OneTime, Path=CopyPCNameCommand}"
Content=""
FontFamily="{StaticResource SymbolThemeFontFamily}">
<ToolTipService.ToolTip>
2023-05-31 16:59:15 +01:00
<TextBlock x:Uid="MouseWithoutBorders_CopyMachineName" TextWrapping="Wrap" />
2023-05-25 11:10:52 +02:00
</ToolTipService.ToolTip>
</Button>
</StackPanel>
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_DeviceLayoutSettings" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}">
<controls:SettingsCard
2023-05-25 11:10:52 +02:00
HorizontalContentAlignment="Stretch"
Background="{ThemeResource CardBackgroundFillColorSecondaryBrush}"
ContentAlignment="Vertical">
<StackPanel Orientation="Vertical" Spacing="8">
<ItemsControl
x:Name="DevicesItemsControl"
HorizontalAlignment="Center"
ItemsSource="{Binding MachineMatrixString, Mode=TwoWay}">
2023-05-15 23:32:26 +01:00
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
2023-05-25 11:10:52 +02:00
<WrapGrid MaximumRowsOrColumns="{Binding MatrixOneRow, Mode=OneWay, Converter={StaticResource OneRowMatrixBoolToNumberOfRowsConverter}}" Orientation="Horizontal" />
2023-05-15 23:32:26 +01:00
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
2023-05-25 11:10:52 +02:00
<!-- TODO: colors? -->
<!--
BorderBrush="#DFDFDF"
Background="#d4d4d4"
-->
<!-- Dragging while elevated crashes on WinUI3: https://github.com/microsoft/microsoft-ui-xaml/issues/7690 -->
2023-05-15 23:32:26 +01:00
<Border
2023-05-25 11:10:52 +02:00
Width="136"
Height="90"
Margin="4"
AllowDrop="{Binding Mode=OneWay, Path=Item.CanDragDrop}"
Background="{ThemeResource SolidBackgroundFillColorBaseAltBrush}"
BorderBrush="{Binding Item.StatusBrush}"
2023-09-14 18:41:31 +02:00
BorderThickness="2"
2023-05-25 11:10:52 +02:00
CanDrag="{Binding Mode=OneWay, Path=Item.CanDragDrop}"
CornerRadius="4"
DataContext="{Binding}"
DragOver="Device_DragOver"
DragStarting="Device_DragStarting"
Drop="Device_Drop"
ToolTipService.ToolTip="{Binding Item.Name, Mode=OneWay}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<FontIcon
Margin="0,12,0,0"
2023-05-15 23:32:26 +01:00
VerticalAlignment="Center"
2023-05-25 11:10:52 +02:00
FontSize="32"
Glyph="" />
<TextBlock
Grid.Row="1"
Margin="12"
HorizontalAlignment="Center"
Style="{StaticResource CaptionTextBlockStyle}"
Tag="DeviceName"
Text="{Binding Item.Name}" />
</Grid>
2023-05-15 23:32:26 +01:00
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
2023-05-25 11:10:52 +02:00
<Button HorizontalAlignment="Right" Command="{x:Bind Mode=OneTime, Path=ReconnectCommand}">
<ToolTipService.ToolTip>
2023-09-14 18:41:31 +02:00
<TextBlock x:Uid="MouseWithoutBorders_ReconnectTooltip" TextWrapping="Wrap" />
2023-05-25 11:10:52 +02:00
</ToolTipService.ToolTip>
<TextBlock x:Uid="MouseWithoutBorders_ReconnectButton" />
</Button>
2023-05-15 23:32:26 +01:00
</StackPanel>
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
2023-05-25 11:10:52 +02:00
<InfoBar
x:Uid="MouseWithoutBorders_CannotDragDropAsAdmin"
IsClosable="True"
IsOpen="{x:Bind Mode=OneWay, Path=ViewModel.IsElevated}"
IsTabStop="True"
Severity="Informational" />
2023-09-14 18:41:31 +02:00
<controls:SettingsCard x:Uid="MouseWithoutBorders_MatrixOneRow">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_MatrixOneRow_ToggleSwitch" IsOn="{x:Bind ViewModel.MatrixOneRow, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_ServiceSettings" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.CanToggleUseService}">
<controls:SettingsCard x:Uid="MouseWithoutBorders_UseService">
2023-05-15 23:32:26 +01:00
<ToggleSwitch
2023-05-25 11:10:52 +02:00
x:Uid="MouseWithoutBorders_UseService_ToggleSwitch"
IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}"
IsOn="{x:Bind ViewModel.UseService, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
2023-05-15 23:32:26 +01:00
<InfoBar
2023-05-25 11:10:52 +02:00
x:Uid="MouseWithoutBorders_RunAsAdminText"
IsClosable="False"
IsOpen="{x:Bind Mode=OneWay, Path=ViewModel.CanToggleUseService, Converter={StaticResource BoolNegationConverter}}"
IsTabStop="True"
Severity="Informational" />
<InfoBar
x:Uid="MouseWithoutBorders_ServiceUserUninstallWarning"
IsClosable="True"
IsOpen="True"
IsTabStop="True"
Severity="Warning" />
2023-09-14 18:41:31 +02:00
<controls:SettingsCard
2023-05-25 11:10:52 +02:00
x:Uid="MouseWithoutBorders_UninstallService"
2023-09-14 18:41:31 +02:00
ActionIcon="{ui:FontIcon Glyph=}"
2023-05-25 11:10:52 +02:00
Command="{x:Bind ViewModel.UninstallServiceEventHandler}"
2023-09-14 18:41:31 +02:00
IsClickEnabled="{x:Bind Mode=OneWay, Path=ViewModel.CanUninstallService}"
IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.CanUninstallService}" />
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_Settings" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}">
<controls:SettingsCard x:Uid="MouseWithoutBorders_WrapMouse">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_WrapMouse_ToggleSwitch" IsOn="{x:Bind ViewModel.WrapMouse, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_ShareClipboard">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_ShareClipboard_ToggleSwitch" IsOn="{x:Bind ViewModel.ShareClipboard, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_TransferFile">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_TransferFile_ToggleSwitch" IsOn="{x:Bind ViewModel.TransferFile, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_HideMouseAtScreenEdge">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_HideMouseAtScreenEdge_ToggleSwitch" IsOn="{x:Bind ViewModel.HideMouseAtScreenEdge, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_DrawMouseCursor">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_DrawMouseCursor_ToggleSwitch" IsOn="{x:Bind ViewModel.DrawMouseCursor, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_ValidateRemoteMachineIP">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_ValidateRemoteMachineIP_ToggleSwitch" IsOn="{x:Bind ViewModel.ValidateRemoteMachineIP, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_SameSubnetOnly">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_SameSubnetOnly_ToggleSwitch" IsOn="{x:Bind ViewModel.SameSubnetOnly, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_BlockScreenSaverOnOtherMachines">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_BlockScreenSaverOnOtherMachines_ToggleSwitch" IsOn="{x:Bind ViewModel.BlockScreenSaverOnOtherMachines, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_MoveMouseRelatively">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_MoveMouseRelatively_ToggleSwitch" IsOn="{x:Bind ViewModel.MoveMouseRelatively, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_BlockMouseAtScreenCorners">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_BlockMouseAtScreenCorners_ToggleSwitch" IsOn="{x:Bind ViewModel.BlockMouseAtScreenCorners, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_ShowClipboardAndNetworkStatusMessages">
2023-05-25 11:10:52 +02:00
<ToggleSwitch x:Uid="MouseWithoutBorders_ShowClipboardAndNetworkStatusMessages_ToggleSwitch" IsOn="{x:Bind ViewModel.ShowClipboardAndNetworkStatusMessages, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_KeyboardShortcuts_Group" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}">
<controls:SettingsCard x:Uid="MouseWithoutBorders_EasyMouseOption">
2023-05-25 11:10:52 +02:00
<ComboBox MinWidth="{StaticResource SettingActionControlMinWidth}" SelectedIndex="{x:Bind Path=ViewModel.EasyMouseOptionIndex, Mode=TwoWay}">
<ComboBoxItem x:Uid="MouseWithoutBorders_EasyMouseOption_Disabled" />
<ComboBoxItem x:Uid="MouseWithoutBorders_EasyMouseOption_Enabled" />
<ComboBoxItem x:Uid="MouseWithoutBorders_EasyMouseOption_Ctrl" />
<ComboBoxItem x:Uid="MouseWithoutBorders_EasyMouseOption_Shift" />
2023-05-15 23:32:26 +01:00
</ComboBox>
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_ToggleEasyMouseShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
<custom:ShortcutControl
MinWidth="{StaticResource SettingActionControlMinWidth}"
AllowDisable="True"
HotkeySettings="{x:Bind Path=ViewModel.ToggleEasyMouseShortcut, Mode=TwoWay}" />
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_LockMachinesShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
<custom:ShortcutControl
MinWidth="{StaticResource SettingActionControlMinWidth}"
AllowDisable="True"
HotkeySettings="{x:Bind Path=ViewModel.LockMachinesShortcut, Mode=TwoWay}" />
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_Switch2AllPcShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
<custom:ShortcutControl
MinWidth="{StaticResource SettingActionControlMinWidth}"
AllowDisable="True"
HotkeySettings="{x:Bind Path=ViewModel.HotKeySwitch2AllPC, Mode=TwoWay}" />
</controls:SettingsCard>
<controls:SettingsCard x:Uid="MouseWithoutBorders_ReconnectShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
<custom:ShortcutControl
MinWidth="{StaticResource SettingActionControlMinWidth}"
AllowDisable="True"
HotkeySettings="{x:Bind Path=ViewModel.ReconnectShortcut, Mode=TwoWay}" />
</controls:SettingsCard>
2023-07-26 13:46:41 +02:00
2023-09-14 18:41:31 +02:00
<controls:SettingsCard x:Uid="MouseWithoutBorders_SwitchBetweenMachineShortcut" HeaderIcon="{ui:FontIcon Glyph=}">
2023-05-25 11:10:52 +02:00
<ComboBox MinWidth="{StaticResource SettingActionControlMinWidth}" SelectedIndex="{x:Bind Path=ViewModel.SelectedSwitchBetweenMachineShortcutOptionsIndex, Mode=TwoWay}">
2023-05-15 23:32:26 +01:00
<!-- These should be in the same order as the array items in MouseWithoutBordersViewModel.cs -->
<ComboBoxItem x:Uid="MouseWithoutBorders_SwitchBetweenMachineShortcut_F1" />
2023-05-25 11:10:52 +02:00
<ComboBoxItem x:Uid="MouseWithoutBorders_SwitchBetweenMachineShortcut_1" />
2023-05-15 23:32:26 +01:00
<ComboBoxItem x:Uid="MouseWithoutBorders_SwitchBetweenMachineShortcut_Disabled" />
</ComboBox>
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_AdvancedSettings_Group" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}">
<controls:SettingsExpander x:Uid="MouseWithoutBorders_IPAddressMapping" IsExpanded="True">
<controls:SettingsExpander.Items>
<controls:SettingsCard HorizontalContentAlignment="Stretch" ContentAlignment="Vertical">
2023-05-25 16:55:11 +02:00
<TextBox
2023-09-14 18:41:31 +02:00
x:Uid="MouseWithoutBorders_IPAddressMapping_TextBoxControl"
MinWidth="240"
MinHeight="160"
AcceptsReturn="True"
ScrollViewer.IsVerticalRailEnabled="True"
ScrollViewer.VerticalScrollBarVisibility="Visible"
ScrollViewer.VerticalScrollMode="Enabled"
Text="{x:Bind Mode=TwoWay, Path=ViewModel.Name2IP, UpdateSourceTrigger=PropertyChanged}"
TextWrapping="Wrap" />
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
</custom:SettingsGroup>
<custom:SettingsGroup x:Uid="MouseWithoutBorders_TroubleShooting" IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}">
<controls:SettingsCard
2023-05-25 11:10:52 +02:00
x:Uid="MouseWithoutBorders_AddFirewallRuleButtonControl"
2023-09-14 18:41:31 +02:00
ActionIcon="{ui:FontIcon Glyph=}"
2023-05-25 11:10:52 +02:00
Command="{x:Bind ViewModel.AddFirewallRuleEventHandler}"
IsClickEnabled="True" />
2023-09-14 18:41:31 +02:00
<controls:SettingsCard x:Uid="MouseWithoutBorders_ShowOriginalUI">
2023-05-15 23:32:26 +01:00
<ToggleSwitch
2023-05-25 11:10:52 +02:00
x:Uid="MouseWithoutBorders_ShowOriginalUI_ToggleSwitch"
IsEnabled="{x:Bind Mode=OneWay, Path=ViewModel.IsEnabled}"
IsOn="{x:Bind ViewModel.ShowOriginalUI, Mode=TwoWay}" />
2023-09-14 18:41:31 +02:00
</controls:SettingsCard>
</custom:SettingsGroup>
2023-05-15 23:32:26 +01:00
</StackPanel>
2023-09-14 18:41:31 +02:00
</custom:SettingsPageControl.ModuleContent>
<custom:SettingsPageControl.PrimaryLinks>
<custom:PageLink x:Uid="LearnMore_MouseWithoutBorders" Link="https://aka.ms/PowerToysOverview_MouseWithoutBorders" />
</custom:SettingsPageControl.PrimaryLinks>
<custom:SettingsPageControl.SecondaryLinks>
<custom:PageLink Link="http://aka.ms/mm" Text="Mouse without Borders" />
<custom:PageLink Link="https://github.com/microsoft/PowerToys/blob/main/COMMUNITY.md#mouse-without-borders-original-contributors" Text="Truong Do (Đỗ Đức Trường) and other original contributors" />
</custom:SettingsPageControl.SecondaryLinks>
</custom:SettingsPageControl>
2023-05-15 23:32:26 +01:00
</Page>