Commit Graph
1080 Commits
Author SHA1 Message Date
Hiroyuki Ikezoe 29265bc3fa Bug 1831649 - Propagate the software keyboard height change into nsPresContext. r=botond,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D204166
2024-08-06 07:46:21 +00:00
Stanca Serban b74d1bcd26 Backed out 12 changesets (bug 1831649) for causing multiple failures.
Backed out changeset 501dc3134ae1 (bug 1831649)
Backed out changeset 21235ab42839 (bug 1831649)
Backed out changeset 279fdf36aac1 (bug 1831649)
Backed out changeset 17fb50534fae (bug 1831649)
Backed out changeset b2718b2f730d (bug 1831649)
Backed out changeset a05aa1c75ece (bug 1831649)
Backed out changeset becfb23cd6b4 (bug 1831649)
Backed out changeset 2d0e7e662530 (bug 1831649)
Backed out changeset 22538f7bdc88 (bug 1831649)
Backed out changeset 4ddecb37950f (bug 1831649)
Backed out changeset 1e6ed8b78e8f (bug 1831649)
Backed out changeset 6e96a1a01c24 (bug 1831649)
2024-07-18 06:13:43 +03:00
Hiroyuki Ikezoe 56a2fb332d Bug 1831649 - Propagate the software keyboard height change into nsPresContext. r=botond,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D204166
2024-07-18 00:31:12 +00:00
David P 48b66f76d5 Bug 1893119: Part 22 - Make nsIDragService::StartDragSession return the nsIDragSession r=rkraesig,win-reviewers,gstoll,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D212298
2024-07-04 07:48:12 +00:00
David P e844cdeed5 Bug 1893119: Part 21 - Separate nsIDragService and nsIDragSession implementations r=gstoll,geckoview-reviewers,rkraesig,win-reviewers,m_kato
Split the class inheritance trees for nsIDragService and nsIDragSession.
Remember that, before the start of this patch series, the inheritance
diagram was:

nsDragService -> nsBaseDragService -> nsIDragService + nsIDragSession

and the only instance was a singleton.  We switched it to:

nsDragService -> nsDragSession -> nsBaseDragService -> nsIDragService + nsBaseDragSession -> nsIDragSession

and maintained the singleton.  This allowed us to allow us to move things to
the new classes without breaking behavior.  We are done with that,
so we can now change the inheritance to its final form:

nsDragService -> nsBaseDragService -> nsIDragService

nsDragSession -> nsBaseDragSession -> nsIDragSession

Of course, we also need to properly construct and release the
nsIDragSessions (formerly part of the singleton), so that is done here as
well.  That happens in nsBaseDrag[Service|Session] for parent process drags
and in nsDrag[Service|Session]Proxy for content.  This is all fairly
straightforward, except in the case of gtk, where we need to change
some callback behavior.

Differential Revision: https://phabricator.services.mozilla.com/D211084
2024-07-04 07:48:11 +00:00
David P 5c77b63f65 Bug 1893119: Part 20 - Move EndDragSession from nsIDragService to nsIDragSession r=gstoll,rkraesig,win-reviewers,geckoview-reviewers,m_kato
This is a straightforward move.  It does take the liberty of breaking out an
EndDragSessionImpl method, which will be needed later.

Differential Revision: https://phabricator.services.mozilla.com/D211083
2024-07-04 07:48:11 +00:00
David P 19861d5e8d Bug 1893119: Part 17 - Pass the widget to StartDragSession r=gstoll,rkraesig,win-reviewers,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D211080
2024-07-04 07:48:10 +00:00
David Parks f62a3a2577 Bug 1893119: Part 14 - Move SetDragEndPoint from nsBaseDragService to nsIDragSession r=gstoll,rkraesig,win-reviewers,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D211078
2024-07-04 07:48:08 +00:00
David Parks 88e30b7141 Bug 1893119: Part 13 - Move FireDragEventAtSource from nsIDragService to nsIDragSession r=gstoll,rkraesig,win-reviewers,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D211077
2024-07-04 07:48:08 +00:00
David Parks 6755e73ac9 Bug 1893119: Part 2 - Make C++ callers of nsIDragService::GetCurrentSession pass a widget r=gstoll,win-reviewers,geckoview-reviewers,m_kato
Content process callers must call nsIDragService::GetCurrentSession with the
correct widget under the drag.  For all callers, it is a sanity check.

Differential Revision: https://phabricator.services.mozilla.com/D211065
2024-07-04 07:48:03 +00:00
Alex Jakobi e165d7eec9 Bug 1855990 - Hide dynamic toolbar r=botond,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D209844
2024-06-28 01:10:40 +00:00
Emilio Cobos Álvarez e5de6363a8 Bug 1902315 - Remove other widget z-level fiction. r=win-reviewers,rkraesig,geckoview-reviewers,spohl,m_kato
This comes back to bug 42557 and co. It only does something
half-reasonable on Windows (on macOS we just lie and make z-order
tracking be latest-active tracking), and given we don't use the special
zorder flags elsewhere I'm pretty sure we should be able to just rip
this off... On some DEs like Wayland we can't re-stack toplevel windows.

Differential Revision: https://phabricator.services.mozilla.com/D213602
2024-06-19 07:47:36 +00:00
Masayuki Nakano b3c5045ec1 Bug 1675847 - part 5: Make contextmenu event dispatchers use WidgetPointerEvent or PointerEvent r=smaug,pip-reviewers,devtools-reviewers,nchevobbe,mconley
`eContextMenu` event may be fired from `widget`.  Therefore, different from
`ePointerClick` and `ePointerAuxClick`, they may cross the process boundary,
may be handled by APZ and may be dispatched into the DOM after a delay.
Therefore, this patch is complicated than the previous patch.  This adds
* New IPC message handlers for sending/receiving a `WidgetPointerEvent`
* New `DelayedPointerEvent` class and templated `MouseInput::ToWidgetEvent`
* `PresShell::EventHandler` handles `eContextMenu` as same as `WidgetMouseEvent`

Differential Revision: https://phabricator.services.mozilla.com/D213003
2024-06-14 00:18:48 +00:00
kycn e72d9e1640 Bug 1677190 - Use shared code for updating the session state on Android when SHIP is enabled. r=geckoview-reviewers,sessionstore-reviewers,farre,owlish
Differential Revision: https://phabricator.services.mozilla.com/D210757
2024-05-23 06:45:36 +00:00
Makoto Kato e553448717 Bug 1837119 - Support double click event on GeckoView. r=geckoview-reviewers,owlish
When using mouse on GeckoView, dblclick event isn't fired. Android doesn't
have a state of double click for mouse, so we have to emulate it like
Windows widget.

The default of timeout values are from android.view.GestureDetector's double
tap.

Differential Revision: https://phabricator.services.mozilla.com/D209654
2024-05-15 01:43:46 +00:00
Jamie Nicol dd6fbeeb91 Bug 1880503 - Ensure compositor reinitialization respects intended paused/resumed state. r=geckoview-reviewers,m_kato
When the Android frontend attempts to pause or resume the compositor
there is a chance this may fail. When this happens, the compositor
will automatically be reinitialized. However, it will currently be
reinitialized in the previous state, not the state the frontend
intended. For example, if the compositor fails to resume then it will
be reinitialized but remain in a paused state, displaying a blank
screen to the user.

To avoid this, we update the value of mCompositorPaused prior to
attempting to pause or resume the compositor. This means when
NotifyCompositorCreated eventually gets called, it knows the correct
state in which to initialize the compositor.

Differential Revision: https://phabricator.services.mozilla.com/D202165
2024-05-14 12:58:35 +00:00
Stanca Serban a160adf466 Backed out 3 changesets (bug 1880503) for causing build bustages in nsCOMPtr.h. CLOSED TREE
Backed out changeset 437063345a7b (bug 1880503)
Backed out changeset 9665aa5e821d (bug 1880503)
Backed out changeset 44d08ce97ae6 (bug 1880503)
2024-05-13 21:08:49 +03:00
Jamie Nicol ff568f9e02 Bug 1880503 - Ensure compositor reinitialization respects intended paused/resumed state. r=geckoview-reviewers,m_kato
When the Android frontend attempts to pause or resume the compositor
there is a chance this may fail. When this happens, the compositor
will automatically be reinitialized. However, it will currently be
reinitialized in the previous state, not the state the frontend
intended. For example, if the compositor fails to resume then it will
be reinitialized but remain in a paused state, displaying a blank
screen to the user.

To avoid this, we update the value of mCompositorPaused prior to
attempting to pause or resume the compositor. This means when
NotifyCompositorCreated eventually gets called, it knows the correct
state in which to initialize the compositor.

Differential Revision: https://phabricator.services.mozilla.com/D202165
2024-05-13 16:52:12 +00:00
Natalia Csoregi f3ec5febcc Backed out 3 changesets (bug 1880503) for causing bustage on CrashReporterHost.h. CLOSED TREE
Backed out changeset 296455072556 (bug 1880503)
Backed out changeset 842611b8fcbc (bug 1880503)
Backed out changeset eae32f6ab26c (bug 1880503)
2024-04-30 18:26:00 +03:00
Jamie Nicol f4195b3022 Bug 1880503 - Ensure compositor reinitialization respects intended paused/resumed state. r=geckoview-reviewers,m_kato
When the Android frontend attempts to pause or resume the compositor
there is a chance this may fail. When this happens, the compositor
will automatically be reinitialized. However, it will currently be
reinitialized in the previous state, not the state the frontend
intended. For example, if the compositor fails to resume then it will
be reinitialized but remain in a paused state, displaying a blank
screen to the user.

To avoid this, we update the value of mCompositorPaused prior to
attempting to pause or resume the compositor. This means when
NotifyCompositorCreated eventually gets called, it knows the correct
state in which to initialize the compositor.

Differential Revision: https://phabricator.services.mozilla.com/D202165
2024-04-30 15:06:20 +00:00
jackyzy823 94a7d247eb Bug 1757352 - Dispatch contextMenu event when right-clicking. r=geckoview-reviewers,m_kato,botond
Differential Revision: https://phabricator.services.mozilla.com/D200462
2024-03-23 07:24:24 +00:00
Makoto Kato 46414f7d37 Bug 1878599 - Allow to insert text on text control from dropping external application on Geckoview. r=masayuki,geckoview-reviewers,owlish
Android's drag and drop API will set a dropped item on `drop` event. But other
platforms will be set during `dragstart` event.

Editor's drag and drop event listener checks current dropped item on some
events such as `dragover` event in
`EditorEventListener::DragEventHasSupportingData`. Since there is no way to
set dropped item on `dragover` event, GeckoView will set temporary dropped
item with MIME type.

Differential Revision: https://phabricator.services.mozilla.com/D200618
2024-02-14 00:58:48 +00:00
Makoto Kato aa4499c788 Bug 1586471 - Part 2. Implement nsDragService on GeckoView. r=geckoview-reviewers,amejiamarmol
This implementation supports
- HTML drag & drop API.
- Drop and drop for text/plain or text/html from/to external application.

Differential Revision: https://phabricator.services.mozilla.com/D197330
2024-01-28 07:49:53 +00:00
Jamie Nicol df0fc96b6a Bug 1869353 - Add a pref to disable Android SurfaceControl rendering path. r=geckoview-reviewers,jonalmeida
Differential Revision: https://phabricator.services.mozilla.com/D196069
2023-12-11 18:15:34 +00:00
Makoto Kato d1069dac5f Bug 1858843 - Remove pre-Lollipop code from C/C++. r=geckoview-reviewers,media-playback-reviewers,padenot,owlish,jnicol
Differential Revision: https://phabricator.services.mozilla.com/D191602
2023-11-09 17:39:59 +00:00
Botond Ballo 350f9a2a21 Bug 1837679 - Fix include-what-you-use errors in widget/android/nsWindow.cpp. r=ohall
Differential Revision: https://phabricator.services.mozilla.com/D180484
2023-06-09 20:17:36 +00:00
Emilio Cobos Álvarez a486d481f3 Bug 1834042 - Make nsWindow::ConstrainPosition account for decorations. r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D178545
2023-05-23 10:30:05 +00:00
Hiroyuki Ikezoe 4681f64670 Bug 1817330 - Inform a reasonable APZHandledResult to GeckoView even if the APZ's result is nsEventStatus_eConsumeNoDefault. r=botond,geckoview-reviewers,owlish
Note that for touch events there are two possibilities where
InputQueue::ReceiveInputEvent() returns nsEventStatus_eConsumeNoDefault, a) the
touch input block is in a state of fast fling or b) the touch input block is in
a state of internal slop.

In the case of b) the nsEventStatus_eConsumeNoDefault status will never be used
since
 1) In cases of delayed results we just use the APZHandledResult we don't refer
    the nsEventStatus at all [1]
 2) In cases of non-delayed results even if the initial touch-start event gets
    into slop, TouchBlockState::UpdateSlopState returns false [2], thus APZ
    immediately reports one of the other nsEventStatuses and any subsequent
    statuses will never be used [3]

In the case of a) nsEventStatus_eConsumeNoDefault means the event doesn't need
to be sent to content, it doesn't mean any APZC didn't scroll by the event.

Also note that there's an automated test exercising the scenario a). It was
flaky before (bug 1687842), but now it appears to be stable.

[1] https://searchfox.org/mozilla-central/rev/32c74afbb24dce4b5dd6b33be71197e615631d71/gfx/layers/apz/src/InputQueue.cpp#986
[2] https://searchfox.org/mozilla-central/rev/32c74afbb24dce4b5dd6b33be71197e615631d71/gfx/layers/apz/src/InputBlockState.cpp#774-784
[3] https://searchfox.org/mozilla-mobile/rev/9fd115db1da9958a32c2cb2943fef79c1a0cac4a/firefox-android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/NestedGeckoView.kt#85,122-132

Differential Revision: https://phabricator.services.mozilla.com/D177456
2023-05-15 23:21:54 +00:00
Ray Kraesig c71062c0a8 Bug 1832168 - [3/3] Remove nsIWidget::SetNativeData() r=emilio,geckoview-reviewers,m_kato
Remove `nsIWidget::SetNativeData()` and all implementations thereof, as
none of them have had any functionality or use since bug 1338172.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D177568
2023-05-11 01:13:06 +00:00
Jamie Nicol a486159bc2 Bug 1824083 - Request new Surface from application when resuming compositor fails on Android. r=gfx-reviewers,geckoview-reviewers,nical,m_kato
We see a fair number of crashes caused by failing to create an EGL
surface when resuming the compositor on Android. We believe that in
the vast majority of these cases the Surface we have been provided by
the OS is in an invalid state, and therefore we will never succeed in
creating an EGL surface from it.

Currently when creating the EGL surface fails we raise a NEW_SURFACE
webrender error. This causes us to fall back through webrender
configurations, reinitialize the compositors, and eventually crash
when we are still unable to resume. None of this will help when the
Android Surface we have been provided is in this invalid state.

This patch therefore avoids raising the webrender error initially, and
instead gives the widget an opportunity to handle the failure. The
widget uses the new GeckoView API added in the previous patch in this
series to request a new Surface from the application. This will cause
another resume event immediately afterwards with a new - and hopefully
valid - surface, allowing the EGL surface to be created and the
compositor to be successfully resumed. If we are still unable to
create an EGL surface after this, then we will raise the webrender
error as before, likely eventually resulting in a crash.

Differential Revision: https://phabricator.services.mozilla.com/D176721
2023-05-10 15:50:22 +00:00
Jamie Nicol 329cb92b40 Bug 1824083 - Remove previous attempts to detect and work around invalid Surface bug. r=gfx-reviewers,geckoview-reviewers,nical,m_kato
The detection is inadequate and the workaround does not work on all
versions of Android. Later patches in this series will replace this
with something better.

Differential Revision: https://phabricator.services.mozilla.com/D176719
2023-05-10 15:50:21 +00:00
Sandor Molnar 62ec74fbb0 Backed out 4 changesets (bug 1824083) for causing build bustages in include/mozilla/webrender/RenderCompositorOGLSWGL.h CLOSED TREE
Backed out changeset 7c1be037e345 (bug 1824083)
Backed out changeset bf5c5929ef7b (bug 1824083)
Backed out changeset 6fad491b84be (bug 1824083)
Backed out changeset 57ae9c87c467 (bug 1824083)
2023-05-10 18:01:13 +03:00
Jamie Nicol 94390d3957 Bug 1824083 - Request new Surface from application when resuming compositor fails on Android. r=gfx-reviewers,geckoview-reviewers,nical,m_kato
We see a fair number of crashes caused by failing to create an EGL
surface when resuming the compositor on Android. We believe that in
the vast majority of these cases the Surface we have been provided by
the OS is in an invalid state, and therefore we will never succeed in
creating an EGL surface from it.

Currently when creating the EGL surface fails we raise a NEW_SURFACE
webrender error. This causes us to fall back through webrender
configurations, reinitialize the compositors, and eventually crash
when we are still unable to resume. None of this will help when the
Android Surface we have been provided is in this invalid state.

This patch therefore avoids raising the webrender error initially, and
instead gives the widget an opportunity to handle the failure. The
widget uses the new GeckoView API added in the previous patch in this
series to request a new Surface from the application. This will cause
another resume event immediately afterwards with a new - and hopefully
valid - surface, allowing the EGL surface to be created and the
compositor to be successfully resumed. If we are still unable to
create an EGL surface after this, then we will raise the webrender
error as before, likely eventually resulting in a crash.

Differential Revision: https://phabricator.services.mozilla.com/D176721
2023-05-10 14:44:50 +00:00
Jamie Nicol 56d69e9b99 Bug 1824083 - Remove previous attempts to detect and work around invalid Surface bug. r=gfx-reviewers,geckoview-reviewers,nical,m_kato
The detection is inadequate and the workaround does not work on all
versions of Android. Later patches in this series will replace this
with something better.

Differential Revision: https://phabricator.services.mozilla.com/D176719
2023-05-10 14:44:50 +00:00
Makoto Kato 311fa063cd Bug 1827386 - Part 2. Don't re-attach SessionAccessibility until Detach is completely finished. r=geckoview-reviewers,owlish
Although `GeckoViewSupport::Transfer` will re-attach `SessionAccessibility`,
it doesn't wait for previous `SessionAccessibility` is disposed completely
since `SessionAccessibility::OnWeakNonIntrusiveDetach` makes tasks only.

When worst case,

1. Create a task for calling SessionAccessilibity::SetAttached(false) on Android UI thread.
2. Create a task for calling SessionAccessilibity::SetAttached(true) on Android UI thread.
3. Attach new JNI object to SeessionAccessibility
4. Run 1's task on Android UI thread, then create a task for disposing JNI object on Gecko thread.
5. Run 2's task on Android UI thread.
6. Run 4's task on Gecko thread. JNI object is detached incorrectly if JNI object is recycled.

If reattaching same JNI object, we detach new object unfortunately. Since I add
MozPromise By Part 1, we can wait for it to use this API.

Depends on D175335

Differential Revision: https://phabricator.services.mozilla.com/D175336
2023-05-09 05:13:32 +00:00
Makoto Kato bc53997204 Bug 1827386 - Part 1. NativeWeakPtr::Detach returns MozPromise to detect whether dispoer is finished. r=geckoview-reviewers,owlish
Actually, `NativeWeakPtr::Detach` may not release JNI ojbect immediately because
it depends on JNI object's `OnWeakNonIntrusiveDetach`i implementation.
`SessionAccessibility`'s `OnWeakNonIntrusiveDetach` implementation uses the
runnable to run on Android UI thread then disposer runs on main thread, so
if Detach is finished, JNI object isn't detached yet.

If calling `NativeWeakPtrHolder::Attach` immediately with same/recycled Java
object after `NettiveWeakPtr::Detach`, it is possible to run disposer for JNI
object by `OnWeakNonIntrusiveDetach` after Attach is finished. So it may
release newer attached object unfortunately.

So I would like to add a way to waiting for detach JNI object using
`MozPromise`.

Also, `MozPromise.h` includes `Natives.h` header (for `GeckoResult` support).
So I cannot modify inline method to use `MozPromise` due to recursive. So I
split implementation with `NativesInlines.h` as workaround.

Differential Revision: https://phabricator.services.mozilla.com/D175335
2023-05-09 05:13:32 +00:00
Olivia Hall 57e879a6f1 Bug 1823082 - GeckoView PDF Stream Adjustment r=geckoview-reviewers,jonalmeida,amejiamarmol
If an issue occurs when generating the PDF stream, we should be able to
send an error. The prior function (SendError()) was for stream readers
to use. The error state here can occur during writing.

Created a WriteError() option to set an error state that will cause
an IOException when reading to indicate the stream is in an inconclusive
state and to stop reading from it.

Differential Revision: https://phabricator.services.mozilla.com/D175918
2023-04-24 13:15:30 +00:00
Edgar Chen ffa8737e58 Bug 1823284 - Use SizeModeChanged notification to handle fullscreen change; r=geckoview-reviewers,rkraesig,stransky,bradwerth,smaug,m_kato
Depends on D175213

Differential Revision: https://phabricator.services.mozilla.com/D175215
2023-04-23 21:28:43 +00:00
Norisz Fay 4d8a85cafd Backed out 2 changesets (bug 1823284) for causing failures on element-request-fullscreen-timing.html, test_fullscreen-api.html CLOSED TREE
Backed out changeset 54bce7b5d558 (bug 1823284)
Backed out changeset 65747f283949 (bug 1823284)
2023-04-20 17:14:12 +03:00
Edgar Chen 27e887869f Bug 1823284 - Use SizeModeChanged notification to handle fullscreen change; r=geckoview-reviewers,rkraesig,stransky,bradwerth,smaug,m_kato
Depends on D175213

Differential Revision: https://phabricator.services.mozilla.com/D175215
2023-04-20 08:17:57 +00:00
Makoto Kato 8e23c1d959 Bug 1826027 - Check whether window is destroyed during starting touch event. r=geckoview-reviewers,calu
`HandleMotionEvent` have a race condition of destroying `nsWindow` (in Gecko
main thread) and dispatching touch event (Android UI thread). When destroying
the window, it can accept motion event.

So we should check whether window is destroyed.

Differential Revision: https://phabricator.services.mozilla.com/D174390
2023-04-04 04:00:09 +00:00
stransky 7662474364 Bug 1825010 Remove NS_NATIVE_DISPLAY as it's not used r=emilio,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D173841
2023-03-29 06:32:21 +00:00
Olivia Hall 64ebaac420 Bug 1659818 - Android window.print Implemented for Nightly r=emilio,m_kato,geckoview-reviewers
This bug implements and opens window.print() for Android in Nightly.
Adds "GeckoView:DotPrintRequest" and "GeckoView:DotPrintFinish" events.
GeckoView:DotPrintRequest requests a PDF of the current window.print
page for Android to print. GeckoView:DotPrintFinish releases the static
browser clone created by window.print. PDF generation was additionally
adjusted to get the expected canonical browser context when printing
iframes.

Differential Revision: https://phabricator.services.mozilla.com/D171159
2023-03-15 21:23:12 +00:00
Makoto Kato b05e6c0ce4 Bug 1812938 - Part 1. GetWidgetScreen returns Screen instead of nsIScreen. r=emilio,geckoview-reviewers,owlish
`nsIWidget` isn't scriptable, so it is unnecessary to return `nsIScreen` for
`GetWidgetScreen`.

Differential Revision: https://phabricator.services.mozilla.com/D168029
2023-02-06 04:51:26 +00:00
Emilio Cobos Álvarez e3921efc1e Bug 1811834 - Clean up nsWidgetInitData. r=cmartin,geckoview-reviewers,calu
Move it to the mozilla::widget namespace.

Use enum classes for transparency, popup type, popup level, etc.

Mostly automated with sed, but there were a few manual changes required
as well in windows code because they relied on Atomic<TransparencyMode>
working (which now doesn't because TransparencyMode is 1 byte instead of
4 bytes).

Differential Revision: https://phabricator.services.mozilla.com/D167537
2023-01-23 23:58:41 +00:00
Olli Pettay f18298c006 Bug 1807812 - Remove WidgetEventTime::mTime, r=masayuki,geckoview-reviewers,m_kato
HTMLSelectEventListener changes are needed, since currently that code works somewhat by accident given that
mTime often contains totally bogus values, like PR_IntervalNow(). Those changes then reveal issues also in
browser_editAddressDialog.js.

Differential Revision: https://phabricator.services.mozilla.com/D165618
2023-01-02 12:31:40 +00:00
Razvan Cojocaru 4547bc007d Bug 1702504 - Fix crash in [@ mozilla::widget::TouchResampler::NotifyFrame]. r=botond,geckoview-reviewers,m_kato
Give Observer a virtual destructor while at it.

Differential Revision: https://phabricator.services.mozilla.com/D164550
2022-12-19 21:05:44 +00:00
Botond Ballo c5a8909a25 Bug 1785754 - Simplify Android widget code for handling the eIgnore status. r=dlrobertson,hiro,geckoview-reviewers,m_kato
APZ now ensures that GetHandledResult() is Unhandled when appropriate,
so the widget code doesn't need to special-case eIgnore any more.

Differential Revision: https://phabricator.services.mozilla.com/D164585
2022-12-19 05:16:54 +00:00
Botond Ballo 91542b421e Bug 1785754 - Report HANDLED_CONTENT on pages with a preventDefault()-ing event listener even if the page is not scrollable. r=geckoview-reviewers,hiro,dlrobertson,m_kato
This effectively backs out the fix for bug 1746336, while keeping the test
added in that bug (PanZoomControllerTest#touchActionWithWheelListener)
passing using a different fix approach (remembering the eager status
and using it in the computation of the delayed result).

Differential Revision: https://phabricator.services.mozilla.com/D164114
2022-12-19 05:16:52 +00:00
Botond Ballo bcf265578a Bug 1802225 - Remove Layers.{h,cpp}. r=tnikkel,geckoview-reviewers,jgilbert,media-playback-reviewers,padenot,m_kato
Where appropriate, `#include "Layers.h"` is replaced with
more specific inclusions.

Differential Revision: https://phabricator.services.mozilla.com/D162934
2022-11-29 01:52:03 +00:00