Fix #1745 crash on scroll of grouped collection view on iOS 15.4 beta (#1842)

This commit is contained in:
Federico Maccaroni 2022-03-14 13:49:57 -03:00 committed by GitHub
parent 612e458071
commit 4d4e246a47
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 9 deletions

View file

@ -125,8 +125,7 @@
Spacing="0" Padding="0" VerticalOptions="FillAndExpand" Spacing="0" Padding="0" VerticalOptions="FillAndExpand"
StyleClass="list-row-header-container, list-row-header-container-platform"> StyleClass="list-row-header-container, list-row-header-container-platform">
<BoxView <BoxView
StyleClass="list-section-separator-top, list-section-separator-top-platform" StyleClass="list-section-separator-top, list-section-separator-top-platform" />
IsVisible="{Binding First, Converter={StaticResource inverseBool}}" />
<StackLayout StyleClass="list-row-header, list-row-header-platform"> <StackLayout StyleClass="list-row-header, list-row-header-platform">
<Label <Label
Text="{Binding Name}" Text="{Binding Name}"

View file

@ -104,8 +104,7 @@
Padding="0" Spacing="0" VerticalOptions="FillAndExpand" Padding="0" Spacing="0" VerticalOptions="FillAndExpand"
StyleClass="list-row-header-container, list-row-header-container-platform"> StyleClass="list-row-header-container, list-row-header-container-platform">
<BoxView <BoxView
StyleClass="list-section-separator-top, list-section-separator-top-platform" StyleClass="list-section-separator-top, list-section-separator-top-platform" />
IsVisible="{Binding First, Converter={StaticResource inverseBool}}" />
<StackLayout StyleClass="list-row-header, list-row-header-platform"> <StackLayout StyleClass="list-row-header, list-row-header-platform">
<Label <Label
Text="{Binding Name}" Text="{Binding Name}"

View file

@ -10,6 +10,7 @@ using Bit.Core.Enums;
using Bit.Core.Models.Domain; using Bit.Core.Models.Domain;
using Xamarin.Forms; using Xamarin.Forms;
using ZXing.Client.Result; using ZXing.Client.Result;
using Xamarin.CommunityToolkit.ObjectModel;
namespace Bit.App.Pages namespace Bit.App.Pages
{ {
@ -79,11 +80,11 @@ namespace Bit.App.Pages
_keyConnectorService = ServiceContainer.Resolve<IKeyConnectorService>("keyConnectorService"); _keyConnectorService = ServiceContainer.Resolve<IKeyConnectorService>("keyConnectorService");
_clipboardService = ServiceContainer.Resolve<IClipboardService>("clipboardService"); _clipboardService = ServiceContainer.Resolve<IClipboardService>("clipboardService");
GroupedItems = new ExtendedObservableCollection<SettingsPageListGroup>(); GroupedItems = new ObservableRangeCollection<SettingsPageListGroup>();
PageTitle = AppResources.Settings; PageTitle = AppResources.Settings;
} }
public ExtendedObservableCollection<SettingsPageListGroup> GroupedItems { get; set; } public ObservableRangeCollection<SettingsPageListGroup> GroupedItems { get; set; }
public async Task InitAsync() public async Task InitAsync()
{ {
@ -400,6 +401,8 @@ namespace Bit.App.Pages
public void BuildList() public void BuildList()
{ {
GroupedItems.Clear();
var doUpper = Device.RuntimePlatform != Device.Android; var doUpper = Device.RuntimePlatform != Device.Android;
var autofillItems = new List<SettingsPageListItem>(); var autofillItems = new List<SettingsPageListItem>();
if (Device.RuntimePlatform == Device.Android) if (Device.RuntimePlatform == Device.Android)
@ -501,7 +504,7 @@ namespace Bit.App.Pages
new SettingsPageListItem { Name = AppResources.RateTheApp }, new SettingsPageListItem { Name = AppResources.RateTheApp },
new SettingsPageListItem { Name = AppResources.DeleteAccount } new SettingsPageListItem { Name = AppResources.DeleteAccount }
}; };
GroupedItems.ResetWithRange(new List<SettingsPageListGroup> GroupedItems.AddRange(new List<SettingsPageListGroup>
{ {
new SettingsPageListGroup(autofillItems, AppResources.Autofill, doUpper, true), new SettingsPageListGroup(autofillItems, AppResources.Autofill, doUpper, true),
new SettingsPageListGroup(manageItems, AppResources.Manage, doUpper), new SettingsPageListGroup(manageItems, AppResources.Manage, doUpper),

View file

@ -116,8 +116,7 @@
Spacing="0" Padding="0" VerticalOptions="FillAndExpand" Spacing="0" Padding="0" VerticalOptions="FillAndExpand"
StyleClass="list-row-header-container, list-row-header-container-platform"> StyleClass="list-row-header-container, list-row-header-container-platform">
<BoxView <BoxView
StyleClass="list-section-separator-top, list-section-separator-top-platform" StyleClass="list-section-separator-top, list-section-separator-top-platform" />
IsVisible="{Binding First, Converter={StaticResource inverseBool}}" />
<StackLayout StyleClass="list-row-header, list-row-header-platform"> <StackLayout StyleClass="list-row-header, list-row-header-platform">
<Label <Label
Text="{Binding Name}" Text="{Binding Name}"