Inject vr controller events into Android Native UI.
Generalizes the MotionEventSynthesizer to support input into arbitrary Java views, and connects VR controller/gesture output to the MotionEventSynthesizer.
This also fixes some rendering bugs where onDraw was not being called after scrolling preventing the texture from updating correctly.
BUG=661609
Review-Url: https://codereview.chromium.org/2694103006
Cr-Commit-Position: refs/heads/master@{#453004}
Committed: https://chromium.googlesource.com/chromium/src/+/8ba7911391a74da0f186b82801d3d6279a197589
On 2017/02/16 03:29:17, aelias wrote: > Hmm, we're in the middle of redesigning input dispatching ...
3 years, 10 months ago
(2017-02-16 04:14:48 UTC)
#7
On 2017/02/16 03:29:17, aelias wrote:
> Hmm, we're in the middle of redesigning input dispatching on Android, and this
> might sit strangely in the new design. +jinsukkim who wrote
>
https://docs.google.com/document/d/1Fpvv6aaNwVDTsvHKhgEXZjyEoEgQoKvtBxM-SiDnQ...
> (not final design yet). Thoughts?
Well VrShell is not the only thing that uses ContentView[Core] so I don't have a
concern at this moment. Looks like it is being extended to support not only
WebContents but also native pages.
On 2017/02/16 04:14:48, Jinsuk Kim wrote: > On 2017/02/16 03:29:17, aelias wrote: > > Hmm, ...
3 years, 10 months ago
(2017-02-16 15:53:32 UTC)
#10
On 2017/02/16 04:14:48, Jinsuk Kim wrote:
> On 2017/02/16 03:29:17, aelias wrote:
> > Hmm, we're in the middle of redesigning input dispatching on Android, and
this
> > might sit strangely in the new design. +jinsukkim who wrote
> >
>
https://docs.google.com/document/d/1Fpvv6aaNwVDTsvHKhgEXZjyEoEgQoKvtBxM-SiDnQ...
> > (not final design yet). Thoughts?
>
> Well VrShell is not the only thing that uses ContentView[Core] so I don't have
a
> concern at this moment. Looks like it is being extended to support not only
> WebContents but also native pages.
That's right, we're extending it to support both WebContents and native pages.
I'm not sure how this will shake out in the future, but I doubt the change here
will impact things much either way.
It would be nice though if in the future native pages were also wrapped in a
ViewAndroid so we could unify input paths.
https://codereview.chromium.org/2694103006/diff/40001/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java File content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java (right): https://codereview.chromium.org/2694103006/diff/40001/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java#newcode2000 content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java:2000: return new MotionEventSynthesizer(getContainerView(), getWindowAndroid()); when is this created/lifetime? the ...
3 years, 10 months ago
(2017-02-17 05:30:07 UTC)
#14
https://codereview.chromium.org/2694103006/diff/40001/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java File content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java (right): https://codereview.chromium.org/2694103006/diff/40001/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java#newcode2000 content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java:2000: return new MotionEventSynthesizer(getContainerView(), getWindowAndroid()); On 2017/02/17 05:30:07, Ted C ...
3 years, 10 months ago
(2017-02-21 21:44:55 UTC)
#15
https://codereview.chromium.org/2694103006/diff/40001/content/public/android/...
File
content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
(right):
https://codereview.chromium.org/2694103006/diff/40001/content/public/android/...
content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java:2000:
return new MotionEventSynthesizer(getContainerView(), getWindowAndroid());
On 2017/02/17 05:30:07, Ted C wrote:
> when is this created/lifetime? the window android can change for a
> contentviewcore via tab reparenting. We should make sure this doesn't hold
onto
> a stale one and gets recreated on window moves.
Ah, good point. There are two options here, we can either store a reference to
the MotionEventSynthesizer here in CVC and add an updateWindowAndroid function
to it, or in RenderWidgetHostViewAndroid::OnDetachedFromWindow() we can call
RenderWidgetHostImpl::SetView() which resets the MotionEventSynthesizer.
Any opinions on which is the better solution?
Ted C
https://codereview.chromium.org/2694103006/diff/40001/content/public/android/java/src/org/chromium/content/browser/MotionEventSynthesizer.java File content/public/android/java/src/org/chromium/content/browser/MotionEventSynthesizer.java (right): https://codereview.chromium.org/2694103006/diff/40001/content/public/android/java/src/org/chromium/content/browser/MotionEventSynthesizer.java#newcode39 content/public/android/java/src/org/chromium/content/browser/MotionEventSynthesizer.java:39: public MotionEventSynthesizer(View target, WindowAndroid window) { actually, could this ...
3 years, 10 months ago
(2017-02-22 05:21:25 UTC)
#16
Try jobs failed on following builders: ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device-xcode-clang/builds/45246)
3 years, 10 months ago
(2017-02-24 17:02:13 UTC)
#23
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/372554)
3 years, 10 months ago
(2017-02-24 19:15:05 UTC)
#28
CQ is committing da patch. Bot data: {"patchset_id": 100001, "attempt_start_ts": 1487967779436850, "parent_rev": "93dc0c3c948d14b5b11f45408e5af9cbd1a5ddd1", "commit_rev": "8ba7911391a74da0f186b82801d3d6279a197589"}
3 years, 10 months ago
(2017-02-24 23:58:38 UTC)
#32
CQ is committing da patch.
Bot data: {"patchset_id": 100001, "attempt_start_ts": 1487967779436850,
"parent_rev": "93dc0c3c948d14b5b11f45408e5af9cbd1a5ddd1", "commit_rev":
"8ba7911391a74da0f186b82801d3d6279a197589"}
commit-bot: I haz the power
Description was changed from ========== Inject vr controller events into Android Native UI. Generalizes the ...
3 years, 10 months ago
(2017-02-25 00:00:11 UTC)
#33
Message was sent while issue was closed.
Description was changed from
==========
Inject vr controller events into Android Native UI.
Generalizes the MotionEventSynthesizer to support input into arbitrary Java
views, and connects VR controller/gesture output to the MotionEventSynthesizer.
This also fixes some rendering bugs where onDraw was not being called after
scrolling preventing the texture from updating correctly.
BUG=661609
==========
to
==========
Inject vr controller events into Android Native UI.
Generalizes the MotionEventSynthesizer to support input into arbitrary Java
views, and connects VR controller/gesture output to the MotionEventSynthesizer.
This also fixes some rendering bugs where onDraw was not being called after
scrolling preventing the texture from updating correctly.
BUG=661609
Review-Url: https://codereview.chromium.org/2694103006
Cr-Commit-Position: refs/heads/master@{#453004}
Committed:
https://chromium.googlesource.com/chromium/src/+/8ba7911391a74da0f186b82801d3...
==========
commit-bot: I haz the power
Committed patchset #6 (id:100001) as https://chromium.googlesource.com/chromium/src/+/8ba7911391a74da0f186b82801d3d6279a197589
3 years, 10 months ago
(2017-02-25 00:00:13 UTC)
#34
Issue 2694103006: Inject vr controller events into Android Native UI.
(Closed)
Created 3 years, 10 months ago by mthiesse
Modified 3 years, 10 months ago
Reviewers: aelias_OOO_until_Jul13, asimjour1, bshe, cjgrant, Jinsuk Kim, Ted C
Base URL:
Comments: 10