uno icon indicating copy to clipboard operation
uno copied to clipboard

fix(droid): workaround for ItemsControl's ObjectDisposedException

Open Xiaoy312 opened this issue 1 year ago • 10 comments
trafficstars

GitHub Issue (If applicable): (linked from private issue)

PR Type

What kind of change does this PR introduce?

  • Bugfix

What is the current behavior?

Leaked ItemsControl.ItemsSource subscription can cause ObjectDisposedException to be thrown when the said source is updated.

What is the new behavior?

The exception is prevented.

PR Checklist

Please check if your PR fulfills the following requirements:

Other information

Xiaoy312 avatar May 08 '24 17:05 Xiaoy312

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16631/index.html

unodevops avatar May 08 '24 18:05 unodevops

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16631/index.html

unodevops avatar May 09 '24 14:05 unodevops

@mergifyio backport release/stable/5.2

jeromelaban avatar May 09 '24 15:05 jeromelaban

backport release/stable/5.2

✅ Backports have been created

mergify[bot] avatar May 09 '24 15:05 mergify[bot]

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16631/index.html

unodevops avatar May 09 '24 16:05 unodevops

/azp run

jeromelaban avatar May 10 '24 17:05 jeromelaban

Azure Pipelines successfully started running 2 pipeline(s).

azure-pipelines[bot] avatar May 10 '24 17:05 azure-pipelines[bot]

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16631/index.html

unodevops avatar May 10 '24 19:05 unodevops

fixme:

  • [ ] When_XBind_TargetDisposed_Test: Assert.Fail failed. Timed out on waiting the view to be disposed

Xiaoy312 avatar May 10 '24 19:05 Xiaoy312

🤖 Your WebAssembly Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-16631/index.html

unodevops avatar May 10 '24 19:05 unodevops

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16631/index.html

unodevops avatar May 15 '24 02:05 unodevops

🤖 Your WebAssembly Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-16631/index.html

unodevops avatar May 15 '24 02:05 unodevops

🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-16631/index.html

unodevops avatar May 15 '24 08:05 unodevops

🤖 Your WebAssembly Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-16631/index.html

unodevops avatar May 15 '24 08:05 unodevops

The build 125134 found UI Test snapshots differences: android-28-net7: 19, android-28-net7-Snap: 51, ios: 6, ios-Snap: 24, skia-gtk-screenshots: 20, skia-linux-screenshots: 32, skia-windows-screenshots: 20, wasm: 315, wasm-automated-net7.0-UWP-Default-automated: 21, wasm-automated-net7.0-UWP-RuntimeTests-0: 0, wasm-automated-net7.0-UWP-RuntimeTests-1: 0, wasm-automated-net7.0-UWP-RuntimeTests-2: 0, wasm-automated-net7.0-WinUI-Benchmarks-automated: 0, wasm-automated-net7.0-WinUI-RuntimeTests-0: 0, wasm-automated-net7.0-WinUI-RuntimeTests-1: 0, wasm-automated-net7.0-WinUI-RuntimeTests-2: 0

Details
  • android-28-net7: 19 changed over 829

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ListView_SelectedItems_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewSelectedItems
    • NavigateBackAndForthBetweenMenuItemsAndSettings_Fluent_SamplesApp_Samples_Microsoft_UI_Xaml_Controls_NavigationViewTests_FluentStyle_FluentStyle_NavigationViewSample
    • UpDownTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage
    • DecimalFormatterTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage
    • When_InListView_after_scroll
    • WebView_NavigateToAnchor_Initial
    • When_InScrollViewer_after_scroll
    • Detereminate_ProgressRing_Validation50_[#FF0000_#008000_#008000_#FF0000]_Progress-Ring-Value-50
    • ProgressRing_IsEnabled_Running_UITests_Windows_UI_Xaml_Controls_ProgressRing_WindowsProgressRing_GH1220
    • When_Parent_PointerMoved_After_drag_on_non-scrolling_ScrollViewer
    • When_Parent_PointerMoved_After_drag_on_ScrollViewer_-_touch
    • Detereminate_ProgressRing_Validation75_[#FF0000_#008000_#008000_#008000]_Progress-Ring-Value-75
    • ProgressRing_Visibility_Collapsed_UITests_Windows_UI_Xaml_Controls_ProgressRing_WindowsProgressRing_GH1220
    • UpDownEnabledTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage
    • WebView_NavigateToLongString_AfterSuccess
    • DatePicker_PickerFlyout_PlacementsbottomLeft_True_False_True_UITests_Windows_UI_Xaml_Controls_DatePicker_DatePicker_Placement
    • Detereminate_ProgressRing_Validation25_[#FF0000_#008000_#FF0000_#FF0000]_Progress-Ring-Value-25
    • SelectionTest_UITests_Microsoft_UI_Xaml_Controls_RadioButtonsTests_RadioButtonsPage
    • SequentialAnimations_SamplesApp_Windows_UI_Xaml_Media_Animation_SequentialAnimationsPage
  • android-28-net7-Snap: 51 changed over 1059

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ListView_ListView_With_ListViews_Count_Measure_UITests_Shared_Windows_UI_Xaml_Controls_ListView_ListView_With_ListViews_Count_Measure
    • MUX_NumberBox_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage
    • MUX_UITests_Microsoft_UI_Xaml_Controls_SplitButtonTests_SplitButtonTestsPage_UITests_Microsoft_UI_Xaml_Controls_SplitButtonTests_SplitButtonTestsPage
    • MUX_UITests_Shared_Microsoft_UI_Xaml_Controls_TreeViewTests_TreeViewPage_UITests_Shared_Microsoft_UI_Xaml_Controls_TreeViewTests_TreeViewPage
    • Brushes_BorderImageBrush_Uno_UI_Samples_UITests_ImageBrushTestControl_BorderImageBrush
    • Buttons_RadioButton_IsEnabled_Automated_Uno_UI_Samples_Content_UITests_ButtonTestsControl_RadioButton_IsEnabled_Automated
    • Buttons_RadioButton_Multiple_Unnamed_Groups_Uno_UI_Samples_Content_UITests_ButtonTestsControl_RadioButton_Multiple_Unnamed_Groups
    • ColorPicker_ColorPickerSample_UITests_Microsoft_UI_Xaml_Controls_ColorPickerTests_ColorPickerSample
    • Gesture_Recognizer_Pointer_Events_test_bench_UITests_Shared_Windows_UI_Input_GestureRecognizer_PointersEvents
    • MediaPlayerElement_Using_3gp_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_3gp_Extension
    • MediaPlayerElement_Using_mp3_Audio_only_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Mp3_Extension
    • MediaPlayerElement_Using_ogg_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Ogg_Extension
    • Image_UITests_Windows_UI_Xaml_Controls_ImageTests_SvgImageSource_Icons_UITests_Windows_UI_Xaml_Controls_ImageTests_SvgImageSource_Icons
    • ListView_ListViewLarge_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewLarge
    • MediaPlayerElement_Mini_player_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Minimal
    • TextBox_TextBox_Foreground_Uno_UI_Samples_Content_UITests_TextBoxControl_TextBox_Foreground
    • TextBox_TextBox_Formatting_Flicker_UITests_Shared_Windows_UI_Xaml_Controls_TextBoxTests_TextBox_Formatting_Flicker
    • TextBox_TextBox_Header_Uno_UI_Samples_Content_UITests_TextBoxControl_TextBox_Header
    • RatingControl_UITests_Microsoft_UI_Xaml_Controls_RatingControlTests_RatingControlPage_UITests_Microsoft_UI_Xaml_Controls_RatingControlTests_RatingControlPage
    • SwipeControl_UITests_Windows_UI_Xaml_Controls_SwipeControlTests_SwipeControl_ScrollViewer_UITests_Windows_UI_Xaml_Controls_SwipeControlTests_SwipeControl_ScrollViewer
  • ios: 6 changed over 269

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ProgressRing_IsEnabled_Running_UITests_Windows_UI_Xaml_Controls_ProgressRing_WindowsProgressRing_GH1220
    • SequentialAnimations_SamplesApp_Windows_UI_Xaml_Media_Animation_SequentialAnimationsPage
    • Check_ListView_Swallows_Measure_UITests_Shared_Windows_UI_Xaml_Controls_ListView_ListView_With_ListViews_Count_Measure
    • ProgressRing_Visibility_Collapsed_UITests_Windows_UI_Xaml_Controls_ProgressRing_WindowsProgressRing_GH1220
    • TextBox_UpdatedBinding_On_OneWay_Mode_UITests_Windows_UI_Xaml_Controls_TextBox_TextBox_Bindings
    • When_NoSelection_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
  • ios-Snap: 24 changed over 1050

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • Image_UITests_Windows_UI_Xaml_Controls_ImageTests_Image_Formats_UITests_Windows_UI_Xaml_Controls_ImageTests_Image_Formats
    • Grid_CenteredGridinGridwiththreefixedsizechildren_Uno_UI_Samples_Content_UITests_GridTestsControl_CenteredGridinGridwiththreefixedsizechildren
    • Brushes_ImageBrushStretch_Uno_UI_Samples_UITests_ImageBrushTestControl_ImageBrushStretch
    • Image_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Equal_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Equal
    • Image_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Smaller_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Smaller
    • Brushes_GenericApp_Views_Content_UITests_ImageBrushTestControl_BorderImageBrushRelativeTransform_GenericApp_Views_Content_UITests_ImageBrushTestControl_BorderImageBrushRelativeTransform
    • Default_Uno_UI_Samples_Content_UITests_WebView_WebView_AnchorNavigation_Uno_UI_Samples_Content_UITests_WebView_WebView_AnchorNavigation
    • ListView_ListView_With_ListViews_Count_Measure_UITests_Shared_Windows_UI_Xaml_Controls_ListView_ListView_With_ListViews_Count_Measure
    • NavigationView_MUXControlsTestApp_NavigationViewMinimalPage_MUXControlsTestApp_NavigationViewMinimalPage
    • WebView_WebView2_ChromeClient_SamplesApp_Microsoft_UI_Xaml_Controls_WebView2Tests_WebView2_ChromeClient
    • WebView_WebView2_Javascript_AlertConfirmPrompt_SamplesApp_Microsoft_UI_Xaml_Controls_WebView2Tests_WebView2ControlJavaScriptAlertConfirmPrompt
    • Image_ImageSourceStream_Uno_UI_Samples_UITests_ImageTestsControl_ImageSourceStream
    • Brushes_GenericApp_Views_Content_UITests_ImageBrushTestControl_ImageBrush_UniformToFill_GenericApp_Views_Content_UITests_ImageBrushTestControl_ImageBrush_UniformToFill
    • Image_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Taller_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Taller
    • Image_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Wider_Uno_UI_Samples_UITests_Image_Image_Stretch_Alignment_Wider
    • WebView_UITests_Microsoft_UI_Xaml_Controls_WebView2Tests_WebView2_NavigationProperties_UITests_Microsoft_UI_Xaml_Controls_WebView2Tests_WebView2_NavigationProperties
    • WebView_UITests_Microsoft_UI_Xaml_Controls_WebViewTests_WebView_InvokeScriptAsync_UITests_Microsoft_UI_Xaml_Controls_WebViewTests_WebView_InvokeScriptAsync
    • Brushes_Uno_UI_Samples_Samples_Shared_Content_UITests_ImageBrushInList_Uno_UI_Samples_Samples_Shared_Content_UITests_ImageBrushInList
    • WebView_UITests_Microsoft_UI_Xaml_Controls_WebView2Tests_WebView2_Basic_UITests_Microsoft_UI_Xaml_Controls_WebView2Tests_WebView2_Basic
    • Transform_Basics_UITests_Shared_Windows_UI_Xaml_Media_Transform_Basics
  • skia-gtk-screenshots: 20 changed over 2190

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • Using .ogg.png-dark
    • Using .ogg.png
    • Window_SetBackground.png-dark
    • Window_SetBackground.png
    • ImageSourceUrlMsAppDataScheme.png-dark
    • ImageSourceUrlMsAppDataScheme.png
    • UIElement_ContextFlyout.png-dark
    • UIElement_ContextFlyout.png
    • ImageInStackPanel.png-dark
    • ImageInStackPanel.png
    • BorderImageBrushRelativeTransform.png-dark
    • BorderImageBrushRelativeTransform.png
    • Mini player.png-dark
    • Mini player.png
    • Rectangle.png-dark
    • Rectangle.png
    • StretchNoneBoundingBoxInDoubleStackPanel.png-dark
    • StretchNoneBoundingBoxInDoubleStackPanel.png
    • Native.png-dark
    • Native.png
  • skia-linux-screenshots: 32 changed over 2190

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • AutomationProperties_Name.png
    • DragDrop_TestPage.png-dark
    • DragDrop_TestPage.png
    • AutomationProperties_Name.png-dark
    • ImageBrushAlignmentXY2.png-dark
    • ImageBrushAlignmentXY2.png
    • BorderImageBrushRelativeTransform.png-dark
    • CompositionEffectBrush.png-dark
    • CompositionEffectBrush.png
    • ImageBrush_UniformToFill.png-dark
    • ImageBrush_UniformToFill.png
    • BorderImageBrushRelativeTransform.png
    • ImageWithLateSourceUniformToFill.png-dark
    • ImageWithLateSourceUniformToFill.png
    • ListViewIncrementalLoading.png-dark
    • ListViewIncrementalLoading.png
    • ImageBrushStretch.png-dark
    • ImageBrushStretch.png
    • PanelImageBrush.png-dark
    • PanelImageBrush.png
  • skia-windows-screenshots: 20 changed over 2190

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • BorderImageBrush.png-dark
    • BorderImageBrush.png
    • Ellipse.png-dark
    • Ellipse.png
    • ImageBrushInList.png-dark
    • ImageBrushInList.png
    • Image_UseTargetSize.png-dark
    • Image_UseTargetSize.png
    • ImageIconPage.png-dark
    • ImageIconPage.png
    • ImagesInlineInFlipView.png-dark
    • ImagesInlineInFlipView.png
    • Mini player.png-dark
    • Mini player.png
    • StretchNoneBoundingBoxInDoubleStackPanel.png-dark
    • StretchNoneBoundingBoxInDoubleStackPanel.png
    • Uniform100x100.png-dark
    • Uniform100x100.png
    • UniformAlignmentCenterInDoubleStackPanelWebUri.png-dark
    • UniformAlignmentCenterInDoubleStackPanelWebUri.png
  • wasm: 315 changed over 1040

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • Benchmarks.Shared.Controls.BenchmarkDotNetTestsPage
    • MUXControlsTestApp.NavigationViewBlankPage1
    • MUXControlsTestApp.NavigationViewItemTemplatePage
    • MUXControlsTestApp.NavigationViewRS3Page
    • SamplesApp.Windows_UI_Xaml_Shapes.PathTestsControl.PathVerticalOffset
    • UITests.Microsoft_UI_Xaml_Controls.NavigationViewTests.NavigationViewBasicPage
    • UITests.Microsoft_UI_Xaml_Controls.NumberBoxTests.NumberBox_Description
    • UITests.Microsoft_UI_Xaml_Controls.NumberBoxTests.NumberBox_ExpressionTest
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ColorPickerTests.WinUIColorPickerPage
    • UITests.Shared.Microsoft_UI_Xaml_Controls.ExpanderTests.WinUIExpanderPage
    • UITests.Shared.Windows_UI_Xaml_Controls.NavigationViewTests.NavigationView_TopNavigation
    • UITests.Shared.Windows_UI_Xaml_Shapes.PathTestsControl.SVG_Path
    • UITests.Windows_UI_ViewManagement.ApplicationViewSizing
    • UITests.Windows_UI_ViewManagement.UISettingsTests
    • UITests.Windows_UI_Xaml_Controls.ComboBox.ComboBox_Dropdown_Background_4418
    • UITests.Windows_UI_Xaml_Controls.ItemsControl.ItemsControl_AppendItem
    • UITests.Windows_UI_Xaml_Controls.TextBox.TextBox_WithPadding_Focus
    • UITests.Windows_UI_Xaml_Controls.TextBox.TextBox_Wrapping
    • UITests.Windows_UI_Xaml_Controls.ThumbTests.Thumb_DragEvents
    • UITests.Windows_UI_Xaml_Controls.TimePicker.TimePicker_TimePickerFlyoutStyle
  • wasm-automated-net7.0-UWP-Default-automated: 21 changed over 1958

    🚨🚨 Comparison Details (first 20) 🚨🚨
    • ListView_SelectedItems_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewSelectedItems
    • Border_NonUniformThicknessandRadius_Uno_UI_Samples_UITests_BorderTestsControl_NonUniformThicknessandRadius
    • Check_ListView_Swallows_Measure_after_scroll
    • MinMaxTest_UITests_Shared_Microsoft_UI_Xaml_Controls_NumberBoxTests_NumberBoxPage
    • MediaPlayerElement_Using_3gp_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_3gp_Extension
    • MediaPlayerElement_Using_mp3_Audio_only_UITests_Shared_Windows_UI_Xaml_Controls_MediaPlayerElement_MediaPlayerElement_Mp3_Extension
    • Default_SamplesApp_Wasm_Windows_UI_Xaml_Controls_ListView_ListView_IsSelected_SamplesApp_Wasm_Windows_UI_Xaml_Controls_ListView_ListView_IsSelected
    • SequentialAnimations_SamplesApp_Windows_UI_Xaml_Media_Animation_SequentialAnimationsPage
    • When_ExtendedSelectionWithoutItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
    • ListView_ListViewSelectedItems_SamplesApp_Windows_UI_Xaml_Controls_ListView_ListViewSelectedItems
    • TestProgressRing_InitialState_UITests_Microsoft_UI_Xaml_Controls_ProgressRing_WinUIProgressRing_Features
    • When_MultipleSelectionWithoutItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
    • When_NoSelectionWithItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
    • TextBlock_TextBlock_LineHeight_TextTrimming_Uno_UI_Samples_Content_UITests_TextBlockControl_TextBlock_LineHeight_TextTrimming
    • When_SingleSelectionWithItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
    • When_SingleSelectionWithoutItemClick_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
    • Path_UITests_Windows_UI_Xaml_Shapes_PathTestsControl_Path_Dynamic_Geometries_UITests_Windows_UI_Xaml_Shapes_PathTestsControl_Path_Dynamic_Geometries
    • Path_UITests_Windows_UI_Xaml_Shapes_PathTestsControl_Path_EllipseGeometry_UITests_Windows_UI_Xaml_Shapes_PathTestsControl_Path_EllipseGeometry
    • Path_UITests_Windows_UI_Xaml_Shapes_PathTestsControl_Path_FillRule_UITests_Windows_UI_Xaml_Shapes_PathTestsControl_Path_FillRule
    • When_NoSelection_Then_PointersEvents_UITests_Windows_UI_Xaml_Controls_ListView_ListView_Selection_Pointers
  • wasm-automated-net7.0-UWP-RuntimeTests-0: 0 changed over 1

  • wasm-automated-net7.0-UWP-RuntimeTests-1: 0 changed over 1

  • wasm-automated-net7.0-UWP-RuntimeTests-2: 0 changed over 1

  • wasm-automated-net7.0-WinUI-Benchmarks-automated: 0 changed over 1

  • wasm-automated-net7.0-WinUI-RuntimeTests-0: 0 changed over 1

  • wasm-automated-net7.0-WinUI-RuntimeTests-1: 0 changed over 1

  • wasm-automated-net7.0-WinUI-RuntimeTests-2: 0 changed over 1

nventive-devops avatar May 15 '24 13:05 nventive-devops