-
Notifications
You must be signed in to change notification settings - Fork 29.7k
bind missing add icon in platform_view example #132028
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
3e686e8 to
3a047ce
Compare
|
Thanks for the patch and apologies for the delays in getting to it. I've rebased to tip of tree and reduced the diffs to the minimum required to get the add button displaying correctly in the right colour. I'd initially thought this might be a reasonable candidate for a test exemption on the basis that we don't have any tests for the native bits of the app and that the primary purpose of the app is really to demonstrate the interaction between Flutter and non-Flutter parts of the app, so adding a test for a cosmetic issue might reduce the signal-to-noise ratio of what we actually want to test... but thinking about it, we do have native XCTests for this, so I suspect it's possible to add one without too much difficulty. The tests are here: Let me know if you run into difficulty adding the test code! Happy to answer any questions you may have. |
cbracken
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've rebased and minimised the diff to just what's required. We'll want a test in order to ensure that no one re-breaks this without realising. Once that's landed, this looks good to me.
|
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie or stuartmorgan on the #hackers channel in Chat (don't just cc them here, they won't see it! Use Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
|
@TJRoger Do you still have plans to come back to this one and address the feedback given above about adding a test? |
Sorry for late reply. I don't think it's necessary for adding test. I even don't know how to add such a test for icon binding. |
Bind the button to an outlet by adding something like this line in the storyboard: --- i/examples/platform_view/ios/Runner/Base.lproj/Main.storyboard
+++ w/examples/platform_view/ios/Runner/Base.lproj/Main.storyboard
@@ -130,6 +130,7 @@
</view>
<connections>
<outlet property="incrementLabel" destination="qaB-rs-mWp" id="bFY-of-WoI"/>
+ <outlet property="incrementButton" destination="6yL-sX-bUL" id="aQR-ap-BrT"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="7qW-nP-WZA" userLabel="First Responder" sceneMemberID="firstResponder"/>and the outlet in the platformview header: --- i/examples/platform_view/ios/Runner/PlatformViewController.h
+++ w/examples/platform_view/ios/Runner/PlatformViewController.h
@@ -9,6 +9,7 @@
@end
@interface PlatformViewController : UIViewController
+@property(weak, nonatomic) IBOutlet UIButton* incrementButton;
@property(strong, nonatomic) id<PlatformViewControllerDelegate> delegate;
@property int counter;
@endthen in a test case check: UIImage* image = [incrementButton imageForState:UIControlStateNormal];
XCTAssertNotNil(image);
Without a test, there's no guarantee this won't regress back to how it was. Generally speaking, if it's worth fixing, it's worth having a test to ensure it stays fixed. We make occasional exceptions for this -- e.g. variable renames or minor refactoring that results in no change to the external behaviour of the code. I've added a unit test to this patch that catches the issue; I'll send another patch that wires this into our CI. |
cbracken
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This reverts some changes that were unnecessary to fix the display of the "+" icon in the native iOS view.
Adds a test that verifies that an icon was loaded for the incrementButton.
|
auto label is removed for flutter/flutter/132028, due to This PR has not met approval requirements for merging. The PR author is not a member of flutter-hackers and needs 1 more review(s) in order to merge this PR.
|
gspencergoog
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This applies minor cosmetic cleanups noticed while landing fix/tests in another patch. Renames `incrementLabel` to `countLabel` and `setIncrementLabel` to `updateCountLabel`, since it's not setting it to a specific value but rather updating itself based on the current state of the `count` ivar. Related: flutter#132028
This applies minor cosmetic cleanups noticed while landing fix/tests in another patch. Renames `incrementLabel` to `countLabel` and `setIncrementLabel` to `updateCountLabel`, since it's not setting it to a specific value but rather updating itself based on the current state of the `count` ivar. Related: flutter#132028
This applies minor cosmetic cleanups noticed while landing fix/tests in another patch. Renames `incrementLabel` to `countLabel` and `setIncrementLabel` to `updateCountLabel`, since it's not setting it to a specific value but rather updating itself based on the current state of the `count` ivar. No tests since this patch introduces no semantic changes. Related: #132028
Manual roll Flutter from c30f998 to d00bfe8 (32 revisions) Manual roll requested by [email protected] flutter/flutter@c30f998...d00bfe8 2024-02-28 [email protected] Roll Flutter Engine from c9381fb8ef4c to 455c814fe5de (1 revision) (flutter/flutter#144340) 2024-02-28 [email protected] Roll Flutter Engine from 91898e397261 to c9381fb8ef4c (11 revisions) (flutter/flutter#144338) 2024-02-28 [email protected] Reland "Add FlutterMacOS.xcframework artifact (#143244)" (flutter/flutter#144275) 2024-02-28 [email protected] [flutter_tools] Catch rpc error in render frame with raster stats (flutter/flutter#144190) 2024-02-28 [email protected] �� Guard Flutter Android app by disallow task affinity by default (flutter/flutter#144018) 2024-02-28 [email protected] Manual roll Flutter Engine 8acc96d405d0 to 91898e397261 (flutter/flutter#144316) 2024-02-28 [email protected] Manual roll Flutter Engine 64a375de9c8f to 8acc96d405d0 (flutter/flutter#144296) 2024-02-28 [email protected] Manual roll Flutter Engine c79117b706e9 to 64a375de9c8f (flutter/flutter#144293) 2024-02-28 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Cache `FocusNode.enclosingScope`, clean up `descendantsAreFocusable` (#144207)" (flutter/flutter#144292) 2024-02-28 [email protected] Manual roll Flutter Engine 2461280c38b7 to c79117b706e9 (flutter/flutter#144290) 2024-02-28 [email protected] Manual roll Flutter Engine 5e0d9ba35dd5 to 2461280c38b7 (flutter/flutter#144288) 2024-02-28 [email protected] Manual roll Flutter Engine fe7ea6d9c34f to 5e0d9ba35dd5 (flutter/flutter#144285) 2024-02-28 [email protected] Manual roll Flutter Engine 0bc21ea7bc92 to fe7ea6d9c34f (flutter/flutter#144283) 2024-02-28 [email protected] Use const route for notAnnounced. (flutter/flutter#144050) 2024-02-28 [email protected] Add `tabs_utils.dart` class (flutter/flutter#143937) 2024-02-28 [email protected] Remove `bottomAppBarColor` from `ThemeData` (flutter/flutter#144080) 2024-02-27 [email protected] fix: unexpected chinese punctuation (flutter/flutter#143678) 2024-02-27 [email protected] Clean up lint ignores (flutter/flutter#144229) 2024-02-27 [email protected] Reland [a11y] Add isEnabled semantics flag to text field (flutter/flutter#143601) 2024-02-27 [email protected] Remove deprecated `CupertinoContextMenu.previewBuilder` (flutter/flutter#143990) 2024-02-27 [email protected] [iOS] Fix naming in platform_view example (flutter/flutter#144247) 2024-02-27 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Reland - Introduce tone-based surfaces and accent color add-ons - Part 2 (#144001)" (flutter/flutter#144262) 2024-02-27 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Add FlutterMacOS.xcframework artifact (#143244)" (flutter/flutter#144253) 2024-02-27 [email protected] [web] Make flutter web profile builds always keep wasm symbols (flutter/flutter#144130) 2024-02-27 [email protected] Reland - Introduce tone-based surfaces and accent color add-ons - Part 2 (flutter/flutter#144001) 2024-02-27 [email protected] bind missing add icon in platform_view example (flutter/flutter#132028) 2024-02-27 [email protected] Cache `FocusNode.enclosingScope`, clean up `descendantsAreFocusable` (flutter/flutter#144207) 2024-02-27 [email protected] Remove strut migration flag from `TextPainter` (flutter/flutter#144242) 2024-02-27 [email protected] Remove force Xcode debug workflow (flutter/flutter#144185) 2024-02-27 [email protected] Mark two other firebase targets as bringup: true (flutter/flutter#144234) 2024-02-27 [email protected] Add FlutterMacOS.xcframework artifact (flutter/flutter#143244) 2024-02-27 [email protected] Re-enable Impeller goldens blocking. (flutter/flutter#144210) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 ...
) Manual roll Flutter from c30f998 to d00bfe8 (32 revisions) Manual roll requested by [email protected] flutter/flutter@c30f998...d00bfe8 2024-02-28 [email protected] Roll Flutter Engine from c9381fb8ef4c to 455c814fe5de (1 revision) (flutter/flutter#144340) 2024-02-28 [email protected] Roll Flutter Engine from 91898e397261 to c9381fb8ef4c (11 revisions) (flutter/flutter#144338) 2024-02-28 [email protected] Reland "Add FlutterMacOS.xcframework artifact (#143244)" (flutter/flutter#144275) 2024-02-28 [email protected] [flutter_tools] Catch rpc error in render frame with raster stats (flutter/flutter#144190) 2024-02-28 [email protected] �� Guard Flutter Android app by disallow task affinity by default (flutter/flutter#144018) 2024-02-28 [email protected] Manual roll Flutter Engine 8acc96d405d0 to 91898e397261 (flutter/flutter#144316) 2024-02-28 [email protected] Manual roll Flutter Engine 64a375de9c8f to 8acc96d405d0 (flutter/flutter#144296) 2024-02-28 [email protected] Manual roll Flutter Engine c79117b706e9 to 64a375de9c8f (flutter/flutter#144293) 2024-02-28 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Cache `FocusNode.enclosingScope`, clean up `descendantsAreFocusable` (#144207)" (flutter/flutter#144292) 2024-02-28 [email protected] Manual roll Flutter Engine 2461280c38b7 to c79117b706e9 (flutter/flutter#144290) 2024-02-28 [email protected] Manual roll Flutter Engine 5e0d9ba35dd5 to 2461280c38b7 (flutter/flutter#144288) 2024-02-28 [email protected] Manual roll Flutter Engine fe7ea6d9c34f to 5e0d9ba35dd5 (flutter/flutter#144285) 2024-02-28 [email protected] Manual roll Flutter Engine 0bc21ea7bc92 to fe7ea6d9c34f (flutter/flutter#144283) 2024-02-28 [email protected] Use const route for notAnnounced. (flutter/flutter#144050) 2024-02-28 [email protected] Add `tabs_utils.dart` class (flutter/flutter#143937) 2024-02-28 [email protected] Remove `bottomAppBarColor` from `ThemeData` (flutter/flutter#144080) 2024-02-27 [email protected] fix: unexpected chinese punctuation (flutter/flutter#143678) 2024-02-27 [email protected] Clean up lint ignores (flutter/flutter#144229) 2024-02-27 [email protected] Reland [a11y] Add isEnabled semantics flag to text field (flutter/flutter#143601) 2024-02-27 [email protected] Remove deprecated `CupertinoContextMenu.previewBuilder` (flutter/flutter#143990) 2024-02-27 [email protected] [iOS] Fix naming in platform_view example (flutter/flutter#144247) 2024-02-27 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Reland - Introduce tone-based surfaces and accent color add-ons - Part 2 (#144001)" (flutter/flutter#144262) 2024-02-27 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Add FlutterMacOS.xcframework artifact (#143244)" (flutter/flutter#144253) 2024-02-27 [email protected] [web] Make flutter web profile builds always keep wasm symbols (flutter/flutter#144130) 2024-02-27 [email protected] Reland - Introduce tone-based surfaces and accent color add-ons - Part 2 (flutter/flutter#144001) 2024-02-27 [email protected] bind missing add icon in platform_view example (flutter/flutter#132028) 2024-02-27 [email protected] Cache `FocusNode.enclosingScope`, clean up `descendantsAreFocusable` (flutter/flutter#144207) 2024-02-27 [email protected] Remove strut migration flag from `TextPainter` (flutter/flutter#144242) 2024-02-27 [email protected] Remove force Xcode debug workflow (flutter/flutter#144185) 2024-02-27 [email protected] Mark two other firebase targets as bringup: true (flutter/flutter#144234) 2024-02-27 [email protected] Add FlutterMacOS.xcframework artifact (flutter/flutter#143244) 2024-02-27 [email protected] Re-enable Impeller goldens blocking. (flutter/flutter#144210) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 ...


In the
examples/platform_viewexample, which demonstrates transitioning from a Flutter view to a general iOS UIView and back, as well as using channels to communicate between the two, the Flutter view renders correctly, but in the iOS UIView, the FAB equivalent button in the lower-right corner is rendered without the '+' icon. This is because no binding as declared for the add icon in the storyboard. This adds the missing binding.Further, this eliminates the use of the deprecated UIButtonTypeRoundedRect, falling back to the default instead.