react-native-share-menu icon indicating copy to clipboard operation
react-native-share-menu copied to clipboard

Support "No Share Extension UI" flow on iOS

Open lindboe opened this issue 6 months ago • 4 comments

In this ticket, we'll add support for the option to make iOS behave like Android: navigate immediately into the main app to share, without any visible share extension UI. (The share extension will still exist and run; it will just immediately link to the main app without showing any UI, using the linking logic already present in the library).

Scope:

  • [ ] Add another view controller, like ShareViewController or ReactShareViewController, that library users can link to.
    • [ ] In this view controller, we'll instead inherit from UIViewController (we don't want to display the compose view from SLComposeServiceViewController), and we'll immediately call the logic that currently lives in handlePost on ShareViewController.
    • [ ] Make sure this file is excluded from the pod, like with the other view controllers: https://github.com/Expensify/react-native-share-menu/blame/master/RNShareMenu.podspec#L20
  • [ ] Refactor business logic where necessary so it can be shared across the view controllers.
  • [ ] Add documentation explaining how to set this new view controller up. Include instructions on how to configure the podfile so that react-native-share-menu is the only pod linked to the project in this case (i.e., don't auto-link all your native RN dependencies in the share extension)
  • [ ] Add an entry to the Changelog for this
  • [ ] Add an example to the repo that uses this "No Share Extension UI" flow on iOS (blocked by #284).

lindboe avatar Dec 06 '23 00:12 lindboe