Fix multiselect and hide sizer

This commit is contained in:
Aleh Khantsevich
2024-08-19 21:16:58 +02:00
parent c087b40d4a
commit 9cc4c33bb1
2 changed files with 6 additions and 4 deletions

View File

@@ -682,6 +682,7 @@
</Grid> </Grid>
</Border> </Border>
<controls1:PropertySizer <controls1:PropertySizer
x:Name="MailListSizer"
Grid.Column="1" Grid.Column="1"
Width="16" Width="16"
HorizontalAlignment="Left" HorizontalAlignment="Left"

View File

@@ -499,14 +499,13 @@ namespace Wino.Views
{ {
bool shouldDisplayNoMessagePanel, shouldDisplayMailingList, shouldDisplayRenderingFrame; bool shouldDisplayNoMessagePanel, shouldDisplayMailingList, shouldDisplayRenderingFrame;
bool isMultiSelectionEnabled = ViewModel.IsMultiSelectionModeEnabled || KeyPressService.IsCtrlKeyPressed();
// This is the smallest state UI can get. // This is the smallest state UI can get.
// Either mailing list or rendering grid is visible. // Either mailing list or rendering grid is visible.
if (StatePersistenceService.IsReaderNarrowed) if (StatePersistenceService.IsReaderNarrowed)
{ {
// Start visibility checks by no message panel. // Start visibility checks by no message panel.
bool isMultiSelectionEnabled = ViewModel.IsMultiSelectionModeEnabled || KeyPressService.IsCtrlKeyPressed();
shouldDisplayMailingList = isMultiSelectionEnabled ? true : (!ViewModel.HasSelectedItems || ViewModel.HasMultipleItemSelections); shouldDisplayMailingList = isMultiSelectionEnabled ? true : (!ViewModel.HasSelectedItems || ViewModel.HasMultipleItemSelections);
shouldDisplayNoMessagePanel = shouldDisplayMailingList ? false : !ViewModel.HasSelectedItems || ViewModel.HasMultipleItemSelections; shouldDisplayNoMessagePanel = shouldDisplayMailingList ? false : !ViewModel.HasSelectedItems || ViewModel.HasMultipleItemSelections;
shouldDisplayRenderingFrame = shouldDisplayMailingList ? false : !shouldDisplayNoMessagePanel; shouldDisplayRenderingFrame = shouldDisplayMailingList ? false : !shouldDisplayNoMessagePanel;
@@ -524,7 +523,7 @@ namespace Wino.Views
if (StatePersistenceService.IsReaderNarrowed == true) if (StatePersistenceService.IsReaderNarrowed == true)
{ {
if (ViewModel.HasSingleItemSelection) if (ViewModel.HasSingleItemSelection && !isMultiSelectionEnabled)
{ {
MailListColumn.Width = new GridLength(0); MailListColumn.Width = new GridLength(0);
RendererColumn.Width = new GridLength(1, GridUnitType.Star); RendererColumn.Width = new GridLength(1, GridUnitType.Star);
@@ -544,6 +543,7 @@ namespace Wino.Views
MailListContainer.Visibility = Visibility.Visible; MailListContainer.Visibility = Visibility.Visible;
RenderingGrid.Visibility = Visibility.Collapsed; RenderingGrid.Visibility = Visibility.Collapsed;
SearchBar.Margin = new Thickness(8, 0, -2, 0); SearchBar.Margin = new Thickness(8, 0, -2, 0);
MailListSizer.Visibility = Visibility.Collapsed;
} }
} }
else else
@@ -561,6 +561,7 @@ namespace Wino.Views
MailListContainer.Visibility = Visibility.Visible; MailListContainer.Visibility = Visibility.Visible;
RenderingGrid.Visibility = Visibility.Visible; RenderingGrid.Visibility = Visibility.Visible;
SearchBar.Margin = new Thickness(2, 0, -2, 0); SearchBar.Margin = new Thickness(2, 0, -2, 0);
MailListSizer.Visibility = Visibility.Visible;
} }
} }
} }