Update Avalonia to v11.0.0-preview8

This commit is contained in:
Mbucari 2023-05-15 10:54:56 -06:00
parent 429367d21c
commit 98bb06378a
15 changed files with 41 additions and 49 deletions

View File

@ -24,7 +24,7 @@
<ItemsRepeater IsVisible="True" <ItemsRepeater IsVisible="True"
VerticalCacheLength="1.2" VerticalCacheLength="1.2"
HorizontalCacheLength="1" HorizontalCacheLength="1"
Items="{Binding CheckboxItems}" ItemsSource="{Binding CheckboxItems}"
ItemTemplate="{StaticResource elementFactory}" /> ItemTemplate="{StaticResource elementFactory}" />
</ScrollViewer> </ScrollViewer>
</UserControl> </UserControl>

View File

@ -23,7 +23,7 @@
CanUserSortColumns="False" CanUserSortColumns="False"
AutoGenerateColumns="False" AutoGenerateColumns="False"
IsReadOnly="False" IsReadOnly="False"
Items="{Binding Accounts}" ItemsSource="{Binding Accounts}"
GridLinesVisibility="All"> GridLinesVisibility="All">
<DataGrid.Columns> <DataGrid.Columns>
@ -65,13 +65,10 @@
Binding="{Binding LibraryScan, Mode=TwoWay}" Binding="{Binding LibraryScan, Mode=TwoWay}"
Header="Include in&#xa;library scan?"/> Header="Include in&#xa;library scan?"/>
<DataGridTemplateColumn Width="2*" Header="Audible&#xa;email/login"> <DataGridTextColumn
<DataGridTemplateColumn.CellTemplate> Width="2*"
<DataTemplate> Binding="{Binding AccountId, Mode=TwoWay}"
<TextBox Text="{Binding AccountId, Mode=TwoWay}" /> Header="Audible&#xa;email/login"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="Auto" Header="Locale"> <DataGridTemplateColumn Width="Auto" Header="Locale">
<DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellTemplate>
@ -96,13 +93,10 @@
</DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn> </DataGridTemplateColumn>
<DataGridTemplateColumn Width="3*" Header="Account Nickname&#xa;(optional)"> <DataGridTextColumn
<DataGridTemplateColumn.CellTemplate> Width="Auto"
<DataTemplate> Binding="{Binding AccountName, Mode=TwoWay}"
<TextBox Text="{Binding AccountName, Mode=TwoWay}" /> Header="Account Nickname&#xa;(optional)"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>

View File

@ -24,7 +24,7 @@
CanUserSortColumns="True" CanUserSortColumns="True"
AutoGenerateColumns="False" AutoGenerateColumns="False"
IsReadOnly="False" IsReadOnly="False"
Items="{Binding DataGridCollectionView}" ItemsSource="{Binding DataGridCollectionView}"
GridLinesVisibility="All"> GridLinesVisibility="All">
<DataGrid.Styles> <DataGrid.Styles>

View File

@ -41,9 +41,9 @@ namespace LibationAvalonia.Dialogs
} }
protected virtual void SaveAndClose() => Close(DialogResult.OK); protected virtual void SaveAndClose() => Close(DialogResult.OK);
protected virtual Task SaveAndCloseAsync() => Avalonia.Threading.Dispatcher.UIThread.InvokeAsync(SaveAndClose); protected virtual async Task SaveAndCloseAsync() => await Avalonia.Threading.Dispatcher.UIThread.InvokeAsync(SaveAndClose);
protected virtual void CancelAndClose() => Close(DialogResult.Cancel); protected virtual void CancelAndClose() => Close(DialogResult.Cancel);
protected virtual Task CancelAndCloseAsync() => Avalonia.Threading.Dispatcher.UIThread.InvokeAsync(CancelAndClose); protected virtual async Task CancelAndCloseAsync() => await Avalonia.Threading.Dispatcher.UIThread.InvokeAsync(CancelAndClose);
private async void DialogWindow_KeyDown(object sender, Avalonia.Input.KeyEventArgs e) private async void DialogWindow_KeyDown(object sender, Avalonia.Input.KeyEventArgs e)
{ {

View File

@ -23,7 +23,7 @@
CanUserSortColumns="False" CanUserSortColumns="False"
AutoGenerateColumns="False" AutoGenerateColumns="False"
IsReadOnly="False" IsReadOnly="False"
Items="{Binding Filters}" ItemsSource="{Binding Filters}"
GridLinesVisibility="All"> GridLinesVisibility="All">
<DataGrid.Columns> <DataGrid.Columns>
@ -44,14 +44,11 @@
</DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn> </DataGridTemplateColumn>
<DataGridTemplateColumn Width="*" Header="Filter"> <DataGridTextColumn
<DataGridTemplateColumn.CellTemplate> Width="*"
<DataTemplate> IsReadOnly="False"
<TextBox Text="{Binding FilterString, Mode=TwoWay}" /> Binding="{Binding FilterString, Mode=TwoWay}"
</DataTemplate> Header="Filter"/>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Header="Move&#xa;Up"> <DataGridTemplateColumn Header="Move&#xa;Up">
<DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellTemplate>

View File

@ -24,7 +24,7 @@
BeginningEdit="ReplacementGrid_BeginningEdit" BeginningEdit="ReplacementGrid_BeginningEdit"
CellEditEnding="ReplacementGrid_CellEditEnding" CellEditEnding="ReplacementGrid_CellEditEnding"
KeyDown="ReplacementGrid_KeyDown" KeyDown="ReplacementGrid_KeyDown"
Items="{Binding replacements}"> ItemsSource="{Binding replacements}">
<DataGrid.Columns> <DataGrid.Columns>

View File

@ -45,7 +45,7 @@
GridLinesVisibility="All" GridLinesVisibility="All"
AutoGenerateColumns="False" AutoGenerateColumns="False"
DoubleTapped="EditTemplateViewModel_DoubleTapped" DoubleTapped="EditTemplateViewModel_DoubleTapped"
Items="{Binding ListItems}" > ItemsSource="{Binding ListItems}" >
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTemplateColumn Width="Auto" Header="Tag"> <DataGridTemplateColumn Width="Auto" Header="Tag">

View File

@ -53,7 +53,7 @@ namespace LibationAvalonia.Dialogs.Login
public async void CopyUrlToClipboard_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e) public async void CopyUrlToClipboard_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e)
=> await Application.Current.Clipboard.SetTextAsync(ExternalLoginUrl); => await App.MainWindow.Clipboard.SetTextAsync(ExternalLoginUrl);
public void LaunchInBrowser_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e) public void LaunchInBrowser_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e)
=> Go.To.Url(ExternalLoginUrl); => Go.To.Url(ExternalLoginUrl);

View File

@ -1,6 +1,7 @@
using Avalonia; using Avalonia;
using Avalonia.Controls; using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Platform;
using LibationFileManager; using LibationFileManager;
using System; using System;
using System.Linq; using System.Linq;
@ -111,12 +112,12 @@ namespace LibationAvalonia
public static void HideMinMaxBtns(this Window form) public static void HideMinMaxBtns(this Window form)
{ {
if (Design.IsDesignMode || !Configuration.IsWindows) if (Design.IsDesignMode || !Configuration.IsWindows || form.TryGetPlatformHandle() is not IPlatformHandle handle)
return; return;
var handle = form.PlatformImpl.Handle.Handle;
var currentStyle = GetWindowLong(handle, GWL_STYLE);
SetWindowLong(handle, GWL_STYLE, currentStyle & ~WS_MAXIMIZEBOX & ~WS_MINIMIZEBOX); var currentStyle = GetWindowLong(handle.Handle, GWL_STYLE);
SetWindowLong(handle.Handle, GWL_STYLE, currentStyle & ~WS_MAXIMIZEBOX & ~WS_MINIMIZEBOX);
} }
const long WS_MINIMIZEBOX = 0x00020000L; const long WS_MINIMIZEBOX = 0x00020000L;

View File

@ -70,13 +70,13 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Avalonia.Diagnostics" Version="11.0.0-preview6" Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'" /> <PackageReference Include="Avalonia.Diagnostics" Version="11.0.0-preview8" Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'" />
<PackageReference Include="Avalonia" Version="11.0.0-preview6" /> <PackageReference Include="Avalonia" Version="11.0.0-preview8" />
<PackageReference Include="Avalonia.Controls.DataGrid" Version="11.0.0-preview6" /> <PackageReference Include="Avalonia.Controls.DataGrid" Version="11.0.0-preview8" />
<PackageReference Include="Avalonia.Controls.ItemsRepeater" Version="11.0.0-preview6" /> <PackageReference Include="Avalonia.Controls.ItemsRepeater" Version="11.0.0-preview8" />
<PackageReference Include="Avalonia.Desktop" Version="11.0.0-preview6" /> <PackageReference Include="Avalonia.Desktop" Version="11.0.0-preview8" />
<PackageReference Include="Avalonia.ReactiveUI" Version="11.0.0-preview6" /> <PackageReference Include="Avalonia.ReactiveUI" Version="11.0.0-preview8" />
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.0.0-preview6" /> <PackageReference Include="Avalonia.Themes.Fluent" Version="11.0.0-preview8" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@ -46,7 +46,7 @@
VerticalCacheLength="1.2" VerticalCacheLength="1.2"
HorizontalCacheLength="1" HorizontalCacheLength="1"
Background="Transparent" Background="Transparent"
Items="{Binding Items}" ItemsSource="{Binding Items}"
ItemTemplate="{StaticResource elementFactory}" /> ItemTemplate="{StaticResource elementFactory}" />
</ScrollViewer> </ScrollViewer>
</Border> </Border>
@ -81,7 +81,7 @@
</TabItem.Header> </TabItem.Header>
<Grid ColumnDefinitions="*" RowDefinitions="*,40"> <Grid ColumnDefinitions="*" RowDefinitions="*,40">
<Border Grid.Column="0" Grid.Row="0" BorderThickness="1" BorderBrush="{DynamicResource SystemBaseMediumColor}" Background="{DynamicResource SystemChromeMediumLowColor}"> <Border Grid.Column="0" Grid.Row="0" BorderThickness="1" BorderBrush="{DynamicResource SystemBaseMediumColor}" Background="{DynamicResource SystemChromeMediumLowColor}">
<DataGrid AutoGenerateColumns="False" Items="{Binding LogEntries}"> <DataGrid AutoGenerateColumns="False" ItemsSource="{Binding LogEntries}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn SortMemberPath="LogDate" Header="Timestamp" CanUserSort="True" Binding="{Binding LogDateString}" Width="90"/> <DataGridTextColumn SortMemberPath="LogDate" Header="Timestamp" CanUserSort="True" Binding="{Binding LogDateString}" Width="90"/>
<DataGridTemplateColumn SortMemberPath="LogMessage" Width="*" Header="Message" CanUserSort="True"> <DataGridTemplateColumn SortMemberPath="LogMessage" Width="*" Header="Message" CanUserSort="True">

View File

@ -130,7 +130,7 @@ namespace LibationAvalonia.Views
private async void LogCopyBtn_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e) private async void LogCopyBtn_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e)
{ {
string logText = string.Join("\r\n", _viewModel.LogEntries.Select(r => $"{r.LogDate.ToShortDateString()} {r.LogDate.ToShortTimeString()}\t{r.LogMessage}")); string logText = string.Join("\r\n", _viewModel.LogEntries.Select(r => $"{r.LogDate.ToShortDateString()} {r.LogDate.ToShortTimeString()}\t{r.LogMessage}"));
await Application.Current.Clipboard.SetTextAsync(logText); await App.MainWindow.Clipboard.SetTextAsync(logText);
} }
private async void cancelAllBtn_Click(object sender, EventArgs e) private async void cancelAllBtn_Click(object sender, EventArgs e)

View File

@ -15,7 +15,7 @@
ClipboardCopyMode="IncludeHeader" ClipboardCopyMode="IncludeHeader"
GridLinesVisibility="All" GridLinesVisibility="All"
AutoGenerateColumns="False" AutoGenerateColumns="False"
Items="{Binding GridEntries}" ItemsSource="{Binding GridEntries}"
CanUserSortColumns="True" BorderThickness="3" CanUserSortColumns="True" BorderThickness="3"
CanUserReorderColumns="True"> CanUserReorderColumns="True">

View File

@ -231,7 +231,7 @@ namespace LibationAvalonia.Views
var menuItem = new MenuItem { Header = "_Copy Cell Contents" }; var menuItem = new MenuItem { Header = "_Copy Cell Contents" };
menuItem.Click += async (s, e) menuItem.Click += async (s, e)
=> await Application.Current.Clipboard.SetTextAsync(args.CellClipboardContents); => await App.MainWindow.Clipboard.SetTextAsync(args.CellClipboardContents);
args.ContextMenuItems.Add(menuItem); args.ContextMenuItems.Add(menuItem);
} }

View File

@ -11,7 +11,7 @@
ClipboardCopyMode="IncludeHeader" ClipboardCopyMode="IncludeHeader"
GridLinesVisibility="All" GridLinesVisibility="All"
AutoGenerateColumns="False" AutoGenerateColumns="False"
Items="{Binding SeriesEntries}" ItemsSource="{Binding SeriesEntries}"
CanUserSortColumns="True" CanUserSortColumns="True"
CanUserReorderColumns="True" CanUserReorderColumns="True"
BorderThickness="3"> BorderThickness="3">