@@ -2649,15 +2649,12 @@ - (void)testFlutterClippingMaskViewPoolReuseViewsAfterRecycle {
2649
2649
[[[FlutterClippingMaskViewPool alloc ] initWithCapacity: 2 ] autorelease ];
2650
2650
FlutterClippingMaskView* view1 = [pool getMaskViewWithFrame: CGRectZero ];
2651
2651
FlutterClippingMaskView* view2 = [pool getMaskViewWithFrame: CGRectZero ];
2652
- [pool insertViewToPoolIfNeeded: view1];
2653
- [pool insertViewToPoolIfNeeded: view2];
2652
+ [pool recycleMaskViews ];
2654
2653
CGRect newRect = CGRectMake (0 , 0 , 10 , 10 );
2655
2654
FlutterClippingMaskView* view3 = [pool getMaskViewWithFrame: newRect];
2656
2655
FlutterClippingMaskView* view4 = [pool getMaskViewWithFrame: newRect];
2657
- // view3 and view4 should randomly get either of view1 and view2.
2658
- NSSet * set1 = [NSSet setWithObjects: view1, view2, nil ];
2659
- NSSet * set2 = [NSSet setWithObjects: view3, view4, nil ];
2660
- XCTAssertEqualObjects (set1, set2);
2656
+ XCTAssertEqual (view1, view3);
2657
+ XCTAssertEqual (view2, view4);
2661
2658
XCTAssertTrue (CGRectEqualToRect (view3.frame , newRect));
2662
2659
XCTAssertTrue (CGRectEqualToRect (view4.frame , newRect));
2663
2660
}
@@ -2730,17 +2727,17 @@ - (void)testClipMaskViewIsReused {
2730
2727
auto embeddedViewParams1 = std::make_unique<flutter::EmbeddedViewParams>(
2731
2728
screenScaleMatrix, SkSize::Make (10 , 10 ), stack1);
2732
2729
2730
+ flutter::MutatorsStack stack2;
2731
+ auto embeddedViewParams2 = std::make_unique<flutter::EmbeddedViewParams>(
2732
+ screenScaleMatrix, SkSize::Make (10 , 10 ), stack2);
2733
+
2733
2734
flutterPlatformViewsController->PrerollCompositeEmbeddedView (1 , std::move (embeddedViewParams1));
2734
2735
flutterPlatformViewsController->CompositeEmbeddedView (1 );
2735
2736
UIView* childClippingView1 = gMockPlatformView .superview .superview ;
2736
2737
UIView* maskView1 = childClippingView1.maskView ;
2737
2738
XCTAssertNotNil (maskView1);
2738
2739
2739
2740
// Composite a new frame.
2740
- flutterPlatformViewsController->BeginFrame (SkISize::Make (100 , 100 ));
2741
- flutter::MutatorsStack stack2;
2742
- auto embeddedViewParams2 = std::make_unique<flutter::EmbeddedViewParams>(
2743
- screenScaleMatrix, SkSize::Make (10 , 10 ), stack2);
2744
2741
auto embeddedViewParams3 = std::make_unique<flutter::EmbeddedViewParams>(
2745
2742
screenScaleMatrix, SkSize::Make (10 , 10 ), stack2);
2746
2743
flutterPlatformViewsController->PrerollCompositeEmbeddedView (1 , std::move (embeddedViewParams3));
@@ -2766,77 +2763,6 @@ - (void)testClipMaskViewIsReused {
2766
2763
XCTAssertNil (childClippingView1.maskView );
2767
2764
}
2768
2765
2769
- - (void )testDifferentClipMaskViewIsUsedForEachView {
2770
- flutter::FlutterPlatformViewsTestMockPlatformViewDelegate mock_delegate;
2771
- auto thread_task_runner = CreateNewThread (" FlutterPlatformViewsTest" );
2772
- flutter::TaskRunners runners (/* label=*/ self.name .UTF8String ,
2773
- /* platform=*/ thread_task_runner,
2774
- /* raster=*/ thread_task_runner,
2775
- /* ui=*/ thread_task_runner,
2776
- /* io=*/ thread_task_runner);
2777
- auto flutterPlatformViewsController = std::make_shared<flutter::FlutterPlatformViewsController>();
2778
- auto platform_view = std::make_unique<flutter::PlatformViewIOS>(
2779
- /* delegate=*/ mock_delegate,
2780
- /* rendering_api=*/ flutter::IOSRenderingAPI::kSoftware ,
2781
- /* platform_views_controller=*/ flutterPlatformViewsController,
2782
- /* task_runners=*/ runners);
2783
-
2784
- FlutterPlatformViewsTestMockFlutterPlatformFactory* factory =
2785
- [[FlutterPlatformViewsTestMockFlutterPlatformFactory new ] autorelease ];
2786
- flutterPlatformViewsController->RegisterViewFactory (
2787
- factory, @" MockFlutterPlatformView" ,
2788
- FlutterPlatformViewGestureRecognizersBlockingPolicyEager);
2789
- FlutterResult result = ^(id result) {
2790
- };
2791
-
2792
- flutterPlatformViewsController->OnMethodCall (
2793
- [FlutterMethodCall
2794
- methodCallWithMethodName: @" create"
2795
- arguments: @{@" id" : @1 , @" viewType" : @" MockFlutterPlatformView" }],
2796
- result);
2797
- UIView* view1 = gMockPlatformView ;
2798
-
2799
- // This overwrites `gMockPlatformView` to another view.
2800
- flutterPlatformViewsController->OnMethodCall (
2801
- [FlutterMethodCall
2802
- methodCallWithMethodName: @" create"
2803
- arguments: @{@" id" : @2 , @" viewType" : @" MockFlutterPlatformView" }],
2804
- result);
2805
- UIView* view2 = gMockPlatformView ;
2806
-
2807
- XCTAssertNotNil (gMockPlatformView );
2808
- UIView* mockFlutterView = [[[UIView alloc ] initWithFrame: CGRectMake (0 , 0 , 10 , 10 )] autorelease ];
2809
- flutterPlatformViewsController->SetFlutterView (mockFlutterView);
2810
- // Create embedded view params
2811
- flutter::MutatorsStack stack1;
2812
- // Layer tree always pushes a screen scale factor to the stack
2813
- SkMatrix screenScaleMatrix =
2814
- SkMatrix::Scale ([UIScreen mainScreen ].scale , [UIScreen mainScreen ].scale );
2815
- stack1.PushTransform (screenScaleMatrix);
2816
- // Push a clip rect
2817
- SkRect rect = SkRect::MakeXYWH (2 , 2 , 3 , 3 );
2818
- stack1.PushClipRect (rect);
2819
-
2820
- auto embeddedViewParams1 = std::make_unique<flutter::EmbeddedViewParams>(
2821
- screenScaleMatrix, SkSize::Make (10 , 10 ), stack1);
2822
-
2823
- flutter::MutatorsStack stack2;
2824
- stack2.PushClipRect (rect);
2825
- auto embeddedViewParams2 = std::make_unique<flutter::EmbeddedViewParams>(
2826
- screenScaleMatrix, SkSize::Make (10 , 10 ), stack2);
2827
-
2828
- flutterPlatformViewsController->PrerollCompositeEmbeddedView (1 , std::move (embeddedViewParams1));
2829
- flutterPlatformViewsController->CompositeEmbeddedView (1 );
2830
- UIView* childClippingView1 = view1.superview .superview ;
2831
-
2832
- flutterPlatformViewsController->PrerollCompositeEmbeddedView (2 , std::move (embeddedViewParams2));
2833
- flutterPlatformViewsController->CompositeEmbeddedView (2 );
2834
- UIView* childClippingView2 = view2.superview .superview ;
2835
- UIView* maskView1 = childClippingView1.maskView ;
2836
- UIView* maskView2 = childClippingView2.maskView ;
2837
- XCTAssertNotEqual (maskView1, maskView2);
2838
- }
2839
-
2840
2766
// Return true if a correct visual effect view is found. It also implies all the validation in this
2841
2767
// method passes.
2842
2768
//
0 commit comments