tree 883796207355b95159a27fcb4aa381774f809bb3
parent cf58b04097ad53151f4c456d0fef27dd5cecd966
author Dan Polivy <dan@cellartracker.com> 1537476232 -0700
committer Jan Piotrowski <piotrowski+github@gmail.com> 1537476232 +0200

[CB-10795] Exclude current app from external intent list (#154)

On Android, if the app defines an intent-filter for a given URL, and
then tries to use inappbrowser to launch that URL via the _system
target, the default handler for that intent is the app itself.

That behavior can lead to circular loops, and ultimately is not what the
developer wants -- the link should be launched in a browser.

Because there is no easy way to find the "default" system browser on a
device, this solution will do two things:
1) Check if the app is one of the targets for this intent
2) If so, create a custom chooser with all other targets, excluding the
current app.

If the app is not a target, then the current (existing) behavior is
preserved.

The only real "downside" to this approach is that a default handler can no longer be set for these URLs within the app, and a chooser will be shown each time the user taps a link that opens in a new browser.

Fixes https://issues.apache.org/jira/browse/CB-10795
