Otherwise open flags are not defined in some build configurations (or in
non-unified builds, for that matter).
Differential Revision: https://phabricator.services.mozilla.com/D55363
--HG--
extra : moz-landing-system : lando
Lets Wayland sessions run vsync off wayland surface frame callbacks by creating
an interface for widgets to return a local VsyncSource, if applicable.
This interface is currently used for the compositor, and for refresh drivers
in the parent process. It is not yet used for vsync in content processes.
Differential Revision: https://phabricator.services.mozilla.com/D28430
--HG--
extra : moz-landing-system : lando
Items in overflow-widget which belongs to addons cannot have
the overflow-widget panel set as a popup parent because the
overflow-widget is replaced by them.
We also need to close the addon panel before we return back
to overflow-widget to avoid simillar problem.
Differential Revision: https://phabricator.services.mozilla.com/D53011
--HG--
extra : moz-landing-system : lando
Items in overflow-widget which belongs to addons cannot have
the overflow-widget panel set as a popup parent because the
overflow-widget is replaced by them.
We also need to close the addon panel before we return back
to overflow-widget to avoid simillar problem.
Differential Revision: https://phabricator.services.mozilla.com/D53011
--HG--
extra : moz-landing-system : lando
The absolute position of the window under Wayland is unknown
and using monitor offset to adjust popups position shown
on content (like <select) is therefore broken on Wayland.
Differential Revision: https://phabricator.services.mozilla.com/D53965
--HG--
extra : moz-landing-system : lando
These are single-fd polls of the X server socket, which in practice will
be much smaller than FD_SETSIZE, but it's cleaner to just not have the
fixed-size array in the first place.
Differential Revision: https://phabricator.services.mozilla.com/D52744
--HG--
extra : moz-landing-system : lando
These identifiers can be compared with messages from logging from nsWindow.
Also clarify that this log is not intended to indicate each draw.
Differential Revision: https://phabricator.services.mozilla.com/D53387
--HG--
extra : moz-landing-system : lando
This stores the clipboard even if it was set in a GTK dialog.
Depends on D50764
Differential Revision: https://phabricator.services.mozilla.com/D50765
--HG--
extra : moz-landing-system : lando
The formatting change presumably happens because clang-format treats
include guards differently.
Differential Revision: https://phabricator.services.mozilla.com/D52698
--HG--
extra : moz-landing-system : lando
This notifies GTK that the data is no longer available for clipboard_get_cb(),
so that GTK will no longer advertise nor attempt to store the data.
The clipboard is not cleared immediately before it is set in case that might
trigger a system clipboard manager to take ownership of the selection, which
could lead to gtk_clipboard_set_with_data() failing to take ownership back due
to an older timestamp.
This also fixes a GtkTargetList leak.
Differential Revision: https://phabricator.services.mozilla.com/D50764
--HG--
extra : moz-landing-system : lando
The reason of the crash is, the window may have already been destroyed and
`PuppetWidget::mBrowserChild` was set to `nullptr` when synthesizing key event.
This patch makes `PuppetWidget::GetEditCommands()` check whether it's `nullptr`
and returns whether it's succeeded or not. Therefore, `TextInputProcessor`
can throw exception in such case.
Differential Revision: https://phabricator.services.mozilla.com/D52308
--HG--
extra : moz-landing-system : lando
WebRender does not call moz_container_get_wl_egl_window() before each frame so mozcontainer
is not positioned properly here.
As a fix position mozcontainer directly at moz_container_move() if there are resources
for it.
Also always call moz_container_get_wl_surface() at moz_container_get_wl_egl_window()
to make sure an underlying mozcontainer surface is properly positioned.
Differential Revision: https://phabricator.services.mozilla.com/D52362
--HG--
extra : moz-landing-system : lando
Also rename surface_position_update to surface_position_needs_update to make it more clear.
Differential Revision: https://phabricator.services.mozilla.com/D52171
--HG--
extra : moz-landing-system : lando
This patch fixes activation of the :-moz-window-inactive pseudoclass in client side decoration during drag operations. It depends on and complements the fixes provided in support of Bug 1491808.
Obsoletes D50445
Differential Revision: https://phabricator.services.mozilla.com/D51307
--HG--
extra : moz-landing-system : lando
Remove moz_container_get_scale() and use only nsWindow::GdkScaleFactor() to get scale factor for wl_surface and wl_egl_window.
Always set the scale factor when wl_surface / wl_egl_window is queued for rendering.
Differential Revision: https://phabricator.services.mozilla.com/D51252
--HG--
extra : moz-landing-system : lando
Split off of Bug 1590894
Rename these to support unprefixed version
Also add alias to keep compatibility
Differential Revision: https://phabricator.services.mozilla.com/D50989
--HG--
extra : moz-landing-system : lando
Add IsDMABufBuffer identification to WindowBackBuffer
Use two sets of wayland buffers (shm and dmabuf) and use dmabuf for fullscreen updates only
when dmabuf is enabled.
Split GetWaylandBufferToDraw() to GetWaylandBufferRecent() and GetWaylandBufferWithSwitch()
to better reflect actual function.
Add CreateWaylandBuffer() to create and store Wayland buffer and use it at SetNewWaylandBuffer()
to change an active wayland buffer or create a new one.
When CACHE_MISSING image cache is selected we draw directly to wayland buffer if it's available
and cache drawing when wayland buffer is missing only. That produces flickering when small buffer parts are
sent to compositor early and the buffer is blocked for further rendering.
This patch enables direct rendering of bigger screen parts only (like page scrolling) to eliminate small
buffer updates.
Differential Revision: https://phabricator.services.mozilla.com/D50055
--HG--
extra : moz-landing-system : lando
This stores the clipboard even if it was set in a GTK dialog.
Depends on D50764
Differential Revision: https://phabricator.services.mozilla.com/D50765
--HG--
extra : moz-landing-system : lando
This notifies GTK that the data is no longer available for clipboard_get_cb(),
so that GTK will no longer advertise nor attempt to store the data.
Differential Revision: https://phabricator.services.mozilla.com/D50764
--HG--
extra : moz-landing-system : lando
Split off of Bug 1590894
Rename these to support unprefixed version
Also add alias to keep compatibility
Differential Revision: https://phabricator.services.mozilla.com/D50989
--HG--
extra : moz-landing-system : lando