Tap to select text does not work in OOPIFs |
|||||
Issue descriptionChrome Version: 65.0.3312.0 OS: Android 7.0.0, Nexus 6 What steps will reproduce the problem? (1) Run chrome on android with --site-per-process (2) Visit http://csreis.github.io/tests/cross-site-iframe-simple.html (3) Tap on text in the OOPIF (Note that this is separate from long press to select text.) What is the expected result? The text should be selected. Tapping again on the selected text should bring up the selection handles and menu. What happens instead? The text is not selected.
,
Jan 5 2018
Tap to select is a Contextual Search feature. I believe the selection is triggered in the browser. donnd@ might have more insight.
,
Jan 5 2018
mcnee@ can you clarify? When I tap on the text at the top of the page "Before you may cross..." the word is selected by the tap gesture. Tapping on editable text fields is not supported by Contextual Search, and tapping on the text near those fields is problematic because of tap-gravity (the way taps near links try to select the link).
,
Jan 5 2018
The "Before you may cross..." text at the top cannot be selected for me with --site-per-process, but it can be selected without --site-per-process. As another example, visit http://csreis.github.io/tests/cross-site-iframe.html with --site-per-process Tap the "Go cross-site (simple page)" button. The text cannot be selected with a tap. Compare with the "Go same-site" option where the text can be selected with a tap.
,
Jan 5 2018
To clarify the wording in c#4: Tap the "Go cross-site (simple page)" button. The text inside the iframe "csreis.github.io" cannot be selected with a tap. Compare with the "Go same-site" option where the text inside the iframe "Simple page" can be selected with a tap.
,
Jan 5 2018
Thanks for the clarifications -- I simply didn't read the instructions in #1 well enough! I can repro now. I'm working to track down the failure, but there may be a solution in the pipeline already due to work to convert the messaging for this event to use Mojo. Can you give us some very brief background on what the --site-per-process flag does and when you plan to roll out the feature?
,
Jan 5 2018
See chromium.org/Home/chromium-security/site-isolation for details As it concerns this bug, the cross-site iframe is rendered in a different process, which impacts the handling of input. Notably, a page may have multiple RenderWidgetHosts. In this case, in addition to the top level RenderWidgetHostViewAndroid, this page will have a RenderWidgetHostViewChildFrame. I believe wjmaclean worked on issues related to touch selection with out-of-process iframes and may know more about this.
,
Jan 5 2018
,
Jan 5 2018
RE: when you plan to roll out the feature AFAIK, there are no immediate plans to ship OOPIFs on Android (at least not in Q1 2018). On Desktop (e.g. Windows, MacOs, Linux, CrOS) OOPIFs have shipped in M56 with --isolate-extensions feature and we expect to see an uptick in desktop users because of https://support.google.com/faqs/answer/7622138#chrome
,
Jan 6 2018
Good to know this doesn't need to be fixed right away. My work to use Mojo to communicate between Blink and the Browser should fix this (marking that as blocking this). |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by mcnee@chromium.org
, Jan 5 2018