Граф коммитов

29203 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez d10188f9b4 Bug 1731678 - Add some generic dark system colors for Windows/Android/standins. r=dholbert
Eventually we should support all of them, but for now they are only used
by native code (unless you enable the color-scheme pref) and these will
be enough.

Differential Revision: https://phabricator.services.mozilla.com/D126737
2021-09-29 10:20:56 +00:00
stransky ac3b9d1e54 Bug 1729656 [Wayland] Don't use gfxPlatform to configure DMABuf, r=rmader
Differential Revision: https://phabricator.services.mozilla.com/D126821
2021-09-28 20:16:17 +00:00
stransky 6ccf78faa4 Bug 1731125 [Linux/EGL] Render popups by SW-WR on X11/EGL due to missing transparency, r=rmader
Differential Revision: https://phabricator.services.mozilla.com/D126823
2021-09-28 18:56:38 +00:00
Sandor Molnar 40c775840b Backed out changeset 92aee7fde9a1 (bug 1696132) for causing bc failures in browser_parsable_css. 2021-09-28 23:25:29 +03:00
Robert Mader 1c74c86d3c Bug 1732002 - Disable EGL on Nvidia on X11 in beta and release, r=jrmuizel
The Nvidia driver does not yet support `EGL_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV`,
triggering bug 1731172 (see bug 1731172 comment 13).
In Wayland sessions, however, setups currently need to have the alternative
(and more involved) solution around `NVreg_PreserveVideoMemoryAllocations`
configured to not run into similar issues for the whole desktop.

This is not the case for most Xorg setups, thus don't ship EGL there for now.
We can enable it again once either `EGL_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV`
is supported or `NVreg_PreserveVideoMemoryAllocations` is the default (and
detectable).

While on it, also allow HW-WR on Nvidia on native Wayland again. The
issue why this blocklist entry was added was solved soon afterwards and
was reported to work now. Also, native Wayland is still not the default,
so this does not affect default configuration.

Differential Revision: https://phabricator.services.mozilla.com/D126344
2021-09-28 17:52:32 +00:00
Tim Giles 229ab96b68 Bug 1696132 - Fix visibility of 'Form Autofill Options' footer on all platforms. r=sfoster,desktop-theme-reviewers,harry,mstange
Fixes the visibility issues of Form Autofill footer when using different system themes on Windows, Mac, and Linux.

Differential Revision: https://phabricator.services.mozilla.com/D125107
2021-09-28 17:16:45 +00:00
Emilio Cobos Álvarez 63a33c5d0c Bug 1730867 - Use native scrollbars on Android. r=mstange
We only draw a scrollbar thumb, so it's easy enough (fair amount of
boilerplate, though).

For now I've done the trivial thing (keep painting a round thumb without
other fancy things), as that's what we were doing, but in the future we
should consider drawing a stroke around the thumb like cocoa does to add
more contrast.

This patch does change behavior in some cases. For example dark websites
now get a lighter, easier to distinguish scrollbar, thanks to the
scrollbar darkening code in nsNativeBasicTheme.cpp.

Differential Revision: https://phabricator.services.mozilla.com/D125826
2021-09-28 17:04:34 +00:00
Csoregi Natalia 58cdf74c34 Backed out 3 changesets (bug 1730867) for multiple reftest failures. CLOSED TREE
Backed out changeset aed4ce969bb6 (bug 1730867)
Backed out changeset 84abb450636b (bug 1730867)
Backed out changeset bbd4d5126a19 (bug 1730867)
2021-09-28 19:47:49 +03:00
Emilio Cobos Álvarez 5510570ab7 Bug 1730867 - Use native scrollbars on Android. r=mstange
We only draw a scrollbar thumb, so it's easy enough (fair amount of
boilerplate, though).

For now I've done the trivial thing (keep painting a round thumb without
other fancy things), as that's what we were doing, but in the future we
should consider drawing a stroke around the thumb like cocoa does to add
more contrast.

This patch does change behavior in some cases. For example dark websites
now get a lighter, easier to distinguish scrollbar, thanks to the
scrollbar darkening code in nsNativeBasicTheme.cpp.

Differential Revision: https://phabricator.services.mozilla.com/D125826
2021-09-28 12:52:42 +00:00
criss b7aa1288e9 Backed out 5 changesets (bug 1730867) for causing multiple reftest failures. CLOSED TREE
Backed out changeset 3a0215aefdf5 (bug 1730867)
Backed out changeset 6d0aac048440 (bug 1730867)
Backed out changeset 12f9678771c8 (bug 1730867)
Backed out changeset 315dd0b76f3f (bug 1730867)
Backed out changeset 894f76b91190 (bug 1730867)
2021-09-28 06:41:46 +03:00
Mike Hommey b386a9ea29 Bug 1732208 - Silence the unused-but-set-variable warning in widget. r=cmartin
widget/windows/nsAppShell.cpp(685,10): error: variable 'uiMessage' set but not used [-Werror,-Wunused-but-set-variable]
    bool uiMessage = false;
         ^
widget/windows/TaskbarPreview.cpp(370,11): error: variable 'hr' set but not used [-Werror,-Wunused-but-set-variable]
  HRESULT hr;
          ^

Differential Revision: https://phabricator.services.mozilla.com/D126461
2021-09-28 00:02:48 +00:00
Tom Schuster b5992bd6fa Bug 1732526 - Convert image data from DnD to nsIInputStream. r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D126617
2021-09-27 14:37:16 +00:00
Emilio Cobos Álvarez 8696d678e8 Bug 1730867 - Use native scrollbars on Android. r=mstange
We only draw a scrollbar thumb, so it's easy enough (fair amount of
boilerplate, though).

For now I've done the trivial thing (keep painting a round thumb without
other fancy things), as that's what we were doing, but in the future we
should consider drawing a stroke around the thumb like cocoa does to add
more contrast.

This patch does change behavior in some cases. For example dark websites
now get a lighter, easier to distinguish scrollbar, thanks to the
scrollbar darkening code in nsNativeBasicTheme.cpp.

Differential Revision: https://phabricator.services.mozilla.com/D125826
2021-09-27 13:56:49 +00:00
Makoto Kato ef0c6ca163 Bug 1731931 - Set correct input type for <input type=date>. r=masayuki
Actually, date, datetime-local and time won't set correct `mHTMLInputType`
in `InputContext` since focused `aContent` isn't input element on UAWidget.

Another attribute (`inputmode`) is still correct value since `IMEState` isn't
editable, even if this isn't fixed.

Differential Revision: https://phabricator.services.mozilla.com/D126576
2021-09-27 12:41:40 +00:00
Makoto Kato ae1c3269db Bug 1731931 - Add some form control test cases to test_imestate.html etc. r=masayuki
Add date, time and datetime-local that Gecko supports now.

Differential Revision: https://phabricator.services.mozilla.com/D126574
2021-09-27 12:41:39 +00:00
stransky 68da8494ea Bug 1732116 [Linux] Use gdk_drag_context_get_actions() to get drop action, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D126501
2021-09-24 08:08:34 +00:00
stransky 29997ae6ee Bug 1730203 [Wayland] Reply to drag_motion from Gtk handler, r=emilio
Wayland/Gtk sets drag state right after drag_motion event only.

While we're reading data for child process we're getting 'drag_motion' events from nested loop.
We don't know the final D&D state yet as we need reply from the child process.
When we set the D&D state latter, it's ignored by Gtk and D&D is considered as
canceled by client.

Right now we explicitly state 'drag denied' after D&D start until we have a reply from child process.
We're changing it to 'drag accepted' on Wayland until we have a reply from child process
and we also send the reply in WindowDragMotionHandler() to fulfill Wayland protocol needs.

It does not change final D&D state - we get the data only when child process requests it.

Differential Revision: https://phabricator.services.mozilla.com/D126226
2021-09-24 08:02:16 +00:00
stransky bf8c88b7d8 Bug 1731197 [Linux] Make D&D operations more reliable and transfer only available D&D data types, r=emilio
Right now we query all MIME data types during D&D operation and rely on Gtk to filter out
missing ones. It leads to possible D&D failures as we can't process D&D events
from Gtk during it.

This patch does:

- Query MIME types available for D&D transfer by nsDragService::GetDragFlavors().
- Quit early at nsDragService::GetTargetDragData() when requested MIME can't be transferred by D&D.
- Use gdk_drag_context_get_suggested_action() instead of gdk_drag_context_get_actions().
- Check mTargetWindow before we use it.

Differential Revision: https://phabricator.services.mozilla.com/D126200
2021-09-24 07:55:46 +00:00
Csoregi Natalia 46d2db1fb4 Backed out 2 changesets (bug 1730203, bug 1731197) for drag and drop of tabs causing duplicates (bug 1732116). a=backout
Backed out changeset 11250511cdb8 (bug 1730203)
Backed out changeset f213f078a6d2 (bug 1731197)
2021-09-23 17:47:22 +03:00
Stephen A Pohl 87f63ab1b8 Bug 1633860: Place window control buttons on the right side on macOS when using an RTL system locale, regardless of the Firefox locale. r=mstange,emilio,harry
Differential Revision: https://phabricator.services.mozilla.com/D116921
2021-09-22 18:51:20 +00:00
Stephen A Pohl a3dbfef293 Bug 1419375: Ensure that window control buttons on macOS appear correctly when the system locale is RTL since the fullscreen and close buttons are reversed in RTL. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D120109
2021-09-22 18:51:20 +00:00
stransky 001a514564 Bug 1730203 [Wayland] Reply to drag_motion from Gtk handler, r=emilio
Wayland/Gtk sets drag state right after drag_motion event only.

While we're reading data for child process we're getting 'drag_motion' events from nested loop.
We don't know the final D&D state yet as we need reply from the child process.
When we set the D&D state latter, it's ignored by Gtk and D&D is considered as
canceled by client.

Right now we explicitly state 'drag denied' after D&D start until we have a reply from child process.
We're changing it to 'drag accepted' on Wayland until we have a reply from child process
and we also send the reply in WindowDragMotionHandler() to fulfill Wayland protocol needs.

It does not change final D&D state - we get the data only when child process requests it.

Differential Revision: https://phabricator.services.mozilla.com/D126226
2021-09-22 11:30:15 +00:00
Makoto Kato 1e81a82fdd Bug 1731517 - Add fallible version of primitive type array allocation. r=geckoview-reviewers,agi
If current exception is `OutOfMemoryError`, return null. Others, GV will be
crashed even if fallible allocation.

Differential Revision: https://phabricator.services.mozilla.com/D126058
2021-09-22 09:47:57 +00:00
Robert Mader e70dcd8a59 Bug 1730671 - Enable HW-WR on Xwayland in sync with EGL, r=aosmond
With EGL enabled by default (bug 1695933) and the biggest blocker,
bug 1635186, apparently not being reproducible anymore on recent
distributions, lets finally enable HW-WR on Xwayland by default.

Differential Revision: https://phabricator.services.mozilla.com/D125530
2021-09-22 08:50:33 +00:00
stransky d8cb8fea8e Bug 1731752 [Linux] Keep D&D data cache until GdkDragContext change, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D126220
2021-09-22 07:52:39 +00:00
Robert Mader 8b739e8722 Bug 1710400 - Blocklist HW-WR on Intel DDX driver, r=aosmond
The Intel DDX driver is known to cause troubles with HW-WR and
has been deprecated by most distributions, in favor of the glamor
based "modesetting" driver.

Lets blocklist it. This will mostly affect older/legacy setups.

Note: the xrandr boilerplate code in glxtest will be useful for
better multi-screen detection in a follow up patch. The current
legacy X11 screen detection does not work in composited environments,
always reporting one single big screen with the combined size.
Xrandr allows for correct detection in such setups.

Differential Revision: https://phabricator.services.mozilla.com/D126221
2021-09-21 18:34:35 +00:00
Cosmin Sabou d7779c5d2f Backed out changeset b0abd344cf28 (bug 1730203) for causing linux bustages on nsWindow.cpp. CLOSED TREE 2021-09-21 18:56:14 +03:00
stransky 15b8030e79 Bug 1730203 [Linux] Call WindowDragMotionHandler() from nsWindow::OnDragDataReceivedEvent, r=emilio
When we get data from D&D operation by nsWindow::OnDragDataReceivedEvent, speed up data transfer to child process by
WindowDragMotionHandler() call.

Differential Revision: https://phabricator.services.mozilla.com/D126211
2021-09-21 13:42:25 +00:00
stransky d71b1c5791 Bug 1731197 [Linux] Make D&D operations more reliable and transfer only available D&D data types, r=emilio
Right now we query all MIME data types during D&D operation and rely on Gtk to filter out
missing ones. It leads to possible D&D failures as we can't process D&D events
from Gtk during it.

This patch does:

- Query MIME types available for D&D transfer by nsDragService::GetDragFlavors().
- Quit early at nsDragService::GetTargetDragData() when requested MIME can't be transferred by D&D.
- Use gdk_drag_context_get_suggested_action() instead of gdk_drag_context_get_actions().
- Check mTargetWindow before we use it.

Differential Revision: https://phabricator.services.mozilla.com/D126200
2021-09-21 13:41:36 +00:00
stransky 9ba7352e64 Bug 1731737 [Linux] Call nsDragService::RunScheduledTask() event handler faster and disable its re-entrance r=emilio
We sometimes miss reply to D&D motion event due to delayed DnsDragService::RunScheduledTask() call.
We can't call D&D handler directly from drag-motion event as it causes nested recursions and re-entrance
in glib loop so use higher priority for the delayed handler call at least.

Disable re-entrance of nsDragService::RunScheduledTask() which may happen when
we get D&D data from drag_drop event.

Provide more loggig to D&D code.

Differential Revision: https://phabricator.services.mozilla.com/D126182
2021-09-21 13:30:44 +00:00
Mirko Brodesser 50b41fceeb Bug 1726269: part 3) Repeatedly call `IDataObject::GetData` in Windows-specific clipboard code. r=smaug
`IDataObject::GetData` may fail with `CLIPBRD_E_CANT_OPEN`, too. See
part 1 of this bug.

Differential Revision: https://phabricator.services.mozilla.com/D125806
2021-09-21 12:03:19 +00:00
Mirko Brodesser 8b7cdce83a Bug 1726269: part 2) Repeatedly call `::OleGetClipboard` for the Windows-specific clipboard. r=smaug
`::OleGetClipboard` may fail too, therefore call it repeatedely. See
also part 1).

Differential Revision: https://phabricator.services.mozilla.com/D125662
2021-09-21 12:03:19 +00:00
Mirko Brodesser 92c9b60c16 Bug 1726269: part 1) Repeatedly call `::OleSetClipboard` for the Windows-specific clipboard. r=smaug
Other apps might block the clipboard. There's no clean fix for this,
because Windows doesn't provide a reasonable clipboard API. But this
should solve the problem in practice. That's based on the assumption
that other apps cooperate and access the clipboard only for a short
duration.

Differential Revision: https://phabricator.services.mozilla.com/D125661
2021-09-21 12:03:19 +00:00
stransky 91a022938e Bug 1731155 [Wayland] Check popupFrame at nsWindow::WaylandPopupSetDirectPosition(), r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D126183
2021-09-21 08:53:45 +00:00
Butkovits Atila 4b46b9b45b Backed out 3 changesets (bug 1719939, bug 1726437, bug 1730262) for causing failures on test_browserGlue_migration_ctrltab_recently_used_order.js.
Backed out changeset ea1653e9644f (bug 1719939)
Backed out changeset 01f90db715a7 (bug 1726437)
Backed out changeset c0e23b2acfbb (bug 1730262)
2021-09-21 05:15:31 +03:00
Junjie Ying 9b3839d3ba Bug 1719939 - Remove last fragments of code manually checking the browser.proton.enabled pref. r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D125345
2021-09-21 00:03:49 +00:00
Csoregi Natalia 5232f16dc4 Backed out changeset 5523334143d9 (bug 1719938) for failures on browser_parsable_css.js. CLOSED TREE 2021-09-21 02:39:55 +03:00
lamoure6 5c23ae0374 Bug 1719938 - Removed remaining (non-negated) -moz-proton media queries. r=mhowell,mtigley,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125328
2021-09-20 22:40:42 +00:00
Csoregi Natalia 592741b7e0 Backed out changeset 0711ae54877b (bug 1719938) for bustages on media_features.rs. CLOSED TREE 2021-09-20 23:29:05 +03:00
lamoure6 a4e720c69d Bug 1719938 - Removed remaining (non-negated) -moz-proton media queries. r=mhowell,mtigley,emilio
Differential Revision: https://phabricator.services.mozilla.com/D125328
2021-09-20 19:21:50 +00:00
Brad Werth fb11266988 Bug 1653417 Part 6: Make NativeLayerRootCA attempt to isolate video layers. r=gfx-reviewers,jrmuizel
This is another requirement for the video display layer to be detached and use
less power: the layer must be topmost and have only a black layer behind it.

Differential Revision: https://phabricator.services.mozilla.com/D124150
2021-09-20 19:19:28 +00:00
Brad Werth 1a1a751ea1 Bug 1653417 Part 2: Make nsCocoaWindow notify its native layer when toggling fullscreen. r=gfx-reviewers,mstange
This allows the native layer code to determine when specialized video layers
might be beneficial for reducing power consumption.

Differential Revision: https://phabricator.services.mozilla.com/D124149
2021-09-20 19:19:26 +00:00
Robert Mader b9982073c9 Bug 1731480 - Stop reporting swrast as driver, r=aosmond
`swrast` is reported as fallback software driver. This happens with
unknown sw-drivers (e.g. zink on lavapipe), but also when `glxtest`
incorrectly detects software rendering. This can be confusing and
is basically always wrong - by now it even got removed from Mesa
and for years only has been used on niche setups.

Make this more clear by using "mesa/software-unknown" instead.
No functional change beyond reporting intended here.

Differential Revision: https://phabricator.services.mozilla.com/D126052
2021-09-20 14:38:22 +00:00
David Parks 50cd921be0 Bug 1643936: Fix vtable for Windows IVirtualDesktopManager r=cmartin
Differential Revision: https://phabricator.services.mozilla.com/D125348
2021-09-19 23:27:23 +00:00
Botond Ballo e8ba38bd3e Bug 1695822 - Enable APZ for windows of type eWindowType_dialog with remote content. r=hiro
Depends on D125776

Differential Revision: https://phabricator.services.mozilla.com/D125777
2021-09-17 21:42:15 +00:00
Emilio Cobos Alvarez 8283bf7c6f Bug 1731107 - Use more contrasting colors on windows for inactive selected items. r=cmartin
There's no system color for such thing on Windows, at least according to:

  https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getsyscolor

Using 3DFACE/WINDOWTEXT seems a hack at best. Even windows built-in programs
like Task Manager use darker colors. So use the background that Edge uses, and
black for the color since that's what our <select> listbox and co actually uses
by default.

Differential Revision: https://phabricator.services.mozilla.com/D126007
2021-09-17 18:32:21 +00:00
Mirko Brodesser 0f0462a08a Bug 1728955: part 8) Refactor `DisplayErrCode` in Windows' `nsClipboard`. r=masayuki
It's clearer and when logging is disabled, this is now more efficient.

Differential Revision: https://phabricator.services.mozilla.com/D125525
2021-09-17 07:42:31 +00:00
Emilio Cobos Álvarez c18dd9edcd Bug 1731052 - Consider whether the color is CSS accessible to decide whether to use standins in nsNativeBasicTheme. r=mstange
We need to use standins for CSS-accesible colors in high contrast mode
(when appropriate) so that the CSS color matches the one in forms.css.

But this is not needed for e.g. scrollbar colors, which are not
CSS-accessible. So shuffle around the checks so that we account for
that as we should.

Differential Revision: https://phabricator.services.mozilla.com/D125830
2021-09-16 19:06:09 +00:00
Emilio Cobos Álvarez 6ec411d587 Bug 1730867 - Remove nsNativeThemeAndroid. r=mstange
We now always use the non-native theme, and the Android native theme
never did much anyways, so let's remove it, no point in keeping
around dead code.

Differential Revision: https://phabricator.services.mozilla.com/D125825
2021-09-16 16:39:27 +00:00
Jeff Muizelaar c379002343 Bug 1730905 - Restore the second postEvent when mRunningEventLoop. r=mstange
Bug 1690687 caused xpcshell to spin the event loop without ever waiting.
This was caused by the combination of the DummyEvent inserted by
nsBaseAppShell::OnProcessNextEvent and weird interaction of
nsAppShell::ProcessGeckoEvents, and nsAppShell::ProcessNextNativeEvent.

This is a low risk hack to get things working properly.

Differential Revision: https://phabricator.services.mozilla.com/D125701
2021-09-15 19:45:09 +00:00