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

31690 Коммитов

Автор SHA1 Сообщение Дата
CanadaHonk 2d520652e0 Bug 1794628 - Implement inverted-colors media feature r=geckoview-reviewers,morgan,emilio,m_kato,cmartin
Implemented the inverted-colors media feature from Media Queries Level 5
for all platforms.
Spec: https://drafts.csswg.org/mediaqueries-5/#inverted

Platform specific implementations:
- Windows: Checks system color filter setting, and if it is inverted
  (note: Windows does not live update due to having to read a reg key)
- Mac: Checks dedicated inverted accessibility system setting
- Android: Checks dedicated inverted system setting
- Linux: No GTK API exposes anything like it so always none

Locked behind new pref `layout.css.inverted-colors.enabled`,
always off by default for now.

Also added new WPT tests (none previously).

Other browsers:
- WebKit: shipped since Safari 9.1 (Jan 2017)
- Blink: no signal

Test page: https://goose.icu/inverted-colors

Differential Revision: https://phabricator.services.mozilla.com/D173201
2023-04-11 13:34:00 +00:00
Emilio Cobos Álvarez 141fa8957a Bug 1827137 - Allow overriding CSD support with GTK_CSD=0, so that gtk3-nocsd keeps working. r=stransky
I don't think there's a particularly nicer/easier way of doing this,
wdyt?

Differential Revision: https://phabricator.services.mozilla.com/D175061
2023-04-11 10:43:44 +00:00
Iulian Moraru 6e2eff1bc5 Backed out 6 changesets (bug 1821512) for causing multiple failures. CLOSED TREE
Backed out changeset 97295a57babe (bug 1821512)
Backed out changeset 698104c7a5d1 (bug 1821512)
Backed out changeset 09aa18e47bf6 (bug 1821512)
Backed out changeset 20b46afb225f (bug 1821512)
Backed out changeset b531f604ea4c (bug 1821512)
Backed out changeset 0a7c0b0773d4 (bug 1821512)
2023-04-11 10:10:41 +03:00
Lee Salzman aea7f2d006 Bug 1821512 - Update fuzz for Skia update. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D173326
2023-04-11 05:00:06 +00:00
Emily McDonough 02b2360a11 Bug 1826872 Part 2 - Move CUPS printer dest into CUPSPrinterInfo for nsPrinterCUPS r=dholbert
This puts all CUPS data into one structure, refactors the locking of this
data, and and simplifies logic for determining the connection to use in
TryEnsurePrinterInfo.

Differential Revision: https://phabricator.services.mozilla.com/D174925
2023-04-10 21:11:28 +00:00
Emily McDonough 60b538473f Bug 1826872 Part 1 - Tiny consistency cleanup in nsPrinterCUPS r=dholbert
Consistently use type name for PrinterInfoLock, and don't place mPrinterInfo
into local variables in nsPrinterCUPS.

Differential Revision: https://phabricator.services.mozilla.com/D174984
2023-04-10 21:11:28 +00:00
Emilio Cobos Álvarez c48719e924 Bug 1826517 - Trivially fix macOS specific mochitest.
MANUAL PUSH: Trivial orange fix CLOSED TREE
2023-04-10 16:15:43 +02:00
Narcis Beleuzu 1615701d47 Backed out 5 changesets (bug 1787182) for bustages on vaapitest.cpp . CLOSED TREE
Backed out changeset f40c90d3ed12 (bug 1787182)
Backed out changeset 0771c006513a (bug 1787182)
Backed out changeset 21e692c2f871 (bug 1787182)
Backed out changeset e084be47c307 (bug 1787182)
Backed out changeset 6a1b9e363c54 (bug 1787182)
2023-04-07 18:11:21 +03:00
stransky b9d3c8c94e Bug 1787182 [Linux] Implement glxtest test as binary r=emilio
glxtest is run later when Firefox already spawns threads. Recently glxtest runs in forked process
which doesn't work correctly in multi-thread environment, so we need to move glxtest to different binary file
and launch it as stand alone code.

Differential Revision: https://phabricator.services.mozilla.com/D173486
2023-04-07 11:51:54 +00:00
stransky 9a6e65770c Bug 1787182 [Linux] Run VA-API tests on supported hardware only r=emilio,gfx-reviewers,jgilbert
- Implement fire_vaapi_process() which launch VA-API test utility on given DRM device.
- Implement GfxInfo::GetDataVAAPI() which gets VA-API test results
- Run VA-API tests when FEATURE_HARDWARE_VIDEO_DECODING is probed and only if it's enabled by GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D171995
2023-04-07 11:51:53 +00:00
stransky 9e0c094c88 Bug 1787182 [Linux] Implement VA-API test as vaapitest binary r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D171994
2023-04-07 11:51:53 +00:00
Greg Stoll d68a388209 no bug - fx doc: update info about blocking DLLs that load via window hook r=yjuglaret DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D174906
2023-04-07 10:54:17 +00:00
mseibert f57e4a82a4 Bug 1680865 - Unfocusing Urlbar after any touchbar input. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D174755
2023-04-06 12:37:54 +00:00
Emilio Cobos Álvarez 641fa20731 Bug 1825825 - Simplify NAC setup. r=smaug
Make all UA widgets also NAC.

Keep the UA widget flag but break at anonymous subtree boundaries, so
that only nodes inside the UA widget directly (and not NAC from those)
get the flag.

This is important because two callers depend on this difference:

 * The style system, since we still want to match content rules from
   stylesheets in the UA widget. We also match user rules, which is a
   bit sketchy, but that was the previous behavior, will file a
   follow-up for that.

 * The reflector code, since we want the scope for UA widgets to not
   include the NAC nodes inside that UA widget. nsINode::IsInUAWidget
   got it wrong.

After this patch, ChromeOnlyAccess is equivalent to
IsInNativeAnonymousSubtree, so we should probably unify the naming.
That's left for a follow-up patch because I don't have a strong
preference.

Differential Revision: https://phabricator.services.mozilla.com/D174310
2023-04-05 09:19:15 +00:00
stransky b10d18f470 Bug 1821256 [Linux] Don't throttle webrender transactions on unmapped windows r=emilio
Based on patch by Emilio Cobos Álvarez (D172786)

Differential Revision: https://phabricator.services.mozilla.com/D173846
2023-04-05 08:26:30 +00:00
Norisz Fay 3d82e172c0 Backed out 5 changesets (bug 1787182) for causing bustage on glxtest.cpp and xpcshell failure on test_gfxBlacklist_Device.js
Backed out changeset 74758d7ccf41 (bug 1787182)
Backed out changeset 6267b0d60a1f (bug 1787182)
Backed out changeset 0fe756b5d74d (bug 1787182)
Backed out changeset e9a220ba6f47 (bug 1787182)
Backed out changeset be1774f1cceb (bug 1787182)
2023-04-05 11:34:32 +03:00
stransky 21ea86344c Bug 1787182 [Linux] Implement glxtest test as binary r=emilio
glxtest is run later when Firefox already spawns threads. Recently glxtest runs in forked process
which doesn't work correctly in multi-thread environment, so we need to move glxtest to different binary file
and launch it as stand alone code.

Differential Revision: https://phabricator.services.mozilla.com/D173486
2023-04-05 06:14:14 +00:00
stransky aa36e08377 Bug 1787182 [Linux] Run VA-API tests on supported hardware only r=emilio,gfx-reviewers,jgilbert
- Implement fire_vaapi_process() which launch VA-API test utility on given DRM device.
- Implement GfxInfo::GetDataVAAPI() which gets VA-API test results
- Run VA-API tests when FEATURE_HARDWARE_VIDEO_DECODING is probed and only if it's enabled by GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D171995
2023-04-05 06:14:14 +00:00
stransky 3a433bcd09 Bug 1787182 [Linux] Implement VA-API test as vaapitest binary r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D171994
2023-04-05 06:14:14 +00:00
Emilio Cobos Álvarez c93f219d2e Bug 1824541 - Synchronously rollup popups when unfocused. r=mac-reviewers,mstange
Otherwise if we become fully occluded we'll throttle the refresh driver,
which means that the panel transition won't end soon enough, and the
popuphidden event won't fire soon enough. This blocks opening other
downloads panels because of this:

  https://searchfox.org/mozilla-central/rev/98397ff4eac3d32b815fbb33bff147297fb972d7/browser/components/downloads/content/downloads.js#308-310,335-340

Alternative fixes could be:

 * On the front-end, remove the popup opening block on popuphiding
   rather than popuphidden.

 * Doing something like this from nsCocoaWindow::DispatchOcclusionEvent,
   when we're fully occluded.

Let me know if you prefer any of those.

Differential Revision: https://phabricator.services.mozilla.com/D174538
2023-04-04 16:27:56 +00:00
Makoto Kato 785a9d72ef 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
Cristian Tuns 0e24a2ef8a Backed out changeset 0846d258566e (bug 1821256) for causing mochitest failures in /test_group_keyboard.html CLOSED TREE 2023-04-03 10:21:04 -04:00
stransky 89dd65ae1e Bug 1821256 [Linux] Don't throttle webrender transactions on unmapped windows r=emilio
Based on patch by Emilio Cobos Álvarez (D172786)

Differential Revision: https://phabricator.services.mozilla.com/D173846
2023-04-03 11:20:38 +00:00
Emilio Cobos Álvarez cd0d1c9898 Bug 1822911 - Ignore bogus leave-notify on pekwm. r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D174368
2023-04-03 09:03:11 +00:00
serge-sans-paille 13e51277df Bug 1825324 - Make widget/* buildable outside of a unified build environment r=andi,geckoview-reviewers,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D173969
2023-04-01 08:31:12 +00:00
Stephen A Pohl 6acadf197b Bug 1825812: Disable the 'Search With Google' service menu entry on macOS, as well as other services that open in Safari. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D174301
2023-03-31 17:42:28 +00:00
Nicholas Rishel b34950be78 Bug 1822817 - Post: Log when Windows native notifications fail. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D173497
2023-03-31 17:30:15 +00:00
Nicholas Rishel 6751fa669e Bug 1822817 - Part 2: Fix Windows 8 notification images not showing. r=nalexander,cmartin
Use PNGs instead of BMPs for Windows toast notification images.

BMPs were isolated as the cause of Windows toasts failing to display images when provided in the `src` attribute of the `<image>` tag for Windows 8. The same was not observed for PNGs.

This issue only affects Windows 8.

Differential Revision: https://phabricator.services.mozilla.com/D173787
2023-03-31 17:30:15 +00:00
Nicholas Rishel 134201c75c Bug 1822817 - Part 1: Fix Windows 8 native notifications failing. r=nalexander
`IToastNotification2` is not available in Windows 8, so querying it caused the toast to fail. When the content was only text, the toast would immediately fail triggering a fallback to XUL style alerts. When it contained an image, the async image load caused the toast to fail after the fallback branch had been decided.

The toast tag assigned and retrieved from `IToastNotification2` is used by Windows to track notifications in the Action Center and is only relevant in the context of Windows 10+.

Differential Revision: https://phabricator.services.mozilla.com/D173496
2023-03-31 17:30:14 +00:00
Cristian Tuns 8e06a7a853 Backed out 12 changesets (bug 1825325, bug 1825336, bug 1825333, bug 1825332, bug 1825324, bug 1824557, bug 1825328, bug 1825335, bug 1825330, bug 1825329, bug 1825327, bug 1825331) for causing build bustages in nsClipboard.cpp CLOSED TREE
Backed out changeset 9de3ed24d3a0 (bug 1825336)
Backed out changeset aef787728f19 (bug 1825335)
Backed out changeset a04c341244c1 (bug 1825333)
Backed out changeset e3ad15f762ba (bug 1825332)
Backed out changeset eed23da92a27 (bug 1825331)
Backed out changeset 8213bb54376e (bug 1825330)
Backed out changeset 747ec5ac4994 (bug 1825329)
Backed out changeset e91ff431f92d (bug 1825328)
Backed out changeset 59c18d13768b (bug 1825327)
Backed out changeset 538096d99e49 (bug 1825325)
Backed out changeset c76eb9d9b095 (bug 1825324)
Backed out changeset 8b81410eb686 (bug 1824557)
2023-03-31 12:58:53 -04:00
serge-sans-paille 0702cdc836 Bug 1825324 - Make widget/* buildable outside of a unified build environment r=andi,geckoview-reviewers,m_kato
Depends on D173637

Differential Revision: https://phabricator.services.mozilla.com/D173969
2023-03-31 13:29:44 +00:00
Nika Layzell d57c9498f6 Bug 1825360 - Remove the NS_DISPATCH_SYNC flag, r=necko-reviewers,geckoview-reviewers,media-playback-reviewers,karlt,jesup,m_kato,emilio
This flag is not supported by most event targets and can have unexpected
side effects (namely spinning a nested event loop). All consumers have
been replaced with a new function which is more explicit about this side
effect.

Differential Revision: https://phabricator.services.mozilla.com/D173985
2023-03-30 16:53:51 +00:00
stransky c7acbaf043 Bug 1803016 [Wayland] Don't commit wl_buffer if buffer scale doesn't match its size r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D173814
2023-03-30 11:49:53 +00:00
Emilio Cobos Álvarez 35becb740f Bug 1825170 - [wayland] Improve access to nsWaylandDisplay. r=stransky
As above, but with a bit more type safety, plus a TLS cache so we don't
need to lock in the common case we have already initialized the wayland
display.

Differential Revision: https://phabricator.services.mozilla.com/D173964
2023-03-30 09:36:31 +00:00
ogiorgis f59f695642 Bug 1621950 - fix some myst ref warnings r=firefox-source-docs-reviewers,devtools-reviewers,sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D173843
2023-03-30 08:01:22 +00:00
Iulian Moraru c3d101c26c Backed out changeset 67a0b67ad8bb (bug 1821256) for causing mochitest-plain failures on test_group_keyboard.html. 2023-03-29 20:52:14 +03:00
stransky f6f208a6c2 Bug 1821256 [Linux] Don't throttle webrender transactions on unmapped windows r=emilio
Based on patch by Emilio Cobos Álvarez (D172786)

Differential Revision: https://phabricator.services.mozilla.com/D173846
2023-03-29 10:21:52 +00:00
stransky 578781f2a3 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
Emilio Cobos Álvarez dd8f9e7791 Bug 1824986 - Fix win build too.
MANUAL PUSH: Trivial fix CLOSED TREE
2023-03-28 17:59:57 +02:00
Emilio Cobos Álvarez cbda0a90db Bug 1824986 - Fix macOS build.
MANUAL PUSH: Trivial fix CLOSED TREE
2023-03-28 17:41:17 +02:00
Emilio Cobos Álvarez 7fd5088695 Bug 1824986 - Use element more in popup manager code. r=mstange
We know these are elements, take advantage of that.

Depends on D173836

Differential Revision: https://phabricator.services.mozilla.com/D173837
2023-03-28 14:33:19 +00:00
Emilio Cobos Álvarez 5c72f63af1 Bug 1822764 - Only do the extra resizer pixel on KDE. r=stransky
It doesn't match the native GNOME behavior, so keep it in that DE only.

Differential Revision: https://phabricator.services.mozilla.com/D173676
2023-03-28 08:21:14 +00:00
Emilio Cobos Álvarez 42747dfd31 Bug 1824304 - Fix PiP window type hint after bug 1823350. r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D173677
2023-03-28 08:20:09 +00:00
Chris Martin 827a052528 Bug 1824644 - Handle IDataObject::GetData returning wrong type r=rkraesig
It appears that we can ask for TYMED_ISTORAGE from an `IDataObject` and
receive something different than we asked for. Since the return is a tagged
union, problems ahoy if we don't check that tag.

Since we have to handle both cases anyway, let's just request both an
IStream and IStorage and just handle whichever gets returned (or fail if
something we didn't expect is returned).

Differential Revision: https://phabricator.services.mozilla.com/D173759
2023-03-27 20:07:37 +00:00
Sandor Molnar 97538a3b8e Bug 1792749 - Disable browser_test_clipboardcache.js on linux for frequent failures. r=#intermittent-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D173750
2023-03-27 18:29:33 +00:00
Andrew Osmond 82828dba9e Bug 1824778 - Block threadsafe GL and DMABUF blocklist on all NVIDIA binary drivers. r=gfx-reviewers,jrmuizel
We can unblock when we have an actual driver version that works.

Differential Revision: https://phabricator.services.mozilla.com/D173741
2023-03-27 17:07:00 +00:00
Ray Kraesig f3d76a51df Bug 1820066 [2/3] - Allow in-process use of the compositor window r=sotaro
The in-process compositor assumes that no compositor window was present.
This is not guaranteed to be true if, for example, the preference
`gfx.webrender.flip-sequential` is set.

Make the in-process compositor more closely mirror the out-of-process
compositor. (At present this effectively just means calling ::SetParent
on the compositor window.)

Differential Revision: https://phabricator.services.mozilla.com/D172733
2023-03-27 16:54:13 +00:00
Cristina Horotan 3de280b975 Backed out 5 changesets (bug 1787182) for causing leaks on linux asan. CLOSED TREE
Backed out changeset c5518abf189e (bug 1787182)
Backed out changeset ade3e3a9ec67 (bug 1787182)
Backed out changeset 10299b2e3a6a (bug 1787182)
Backed out changeset d11d31ec4d81 (bug 1787182)
Backed out changeset bde24058d87c (bug 1787182)
2023-03-27 18:09:38 +03:00
stransky e8643079fd Bug 1787182 [Linux] Implement glxtest test as binary r=emilio
glxtest is run later when Firefox already spawns threads. Recently glxtest runs in forked process
which doesn't work correctly in multi-thread environment, so we need to move glxtest to different binary file
and launch it as stand alone code.

Differential Revision: https://phabricator.services.mozilla.com/D173486
2023-03-27 13:47:21 +00:00
stransky 755cfff2a7 Bug 1787182 [Linux] Run VA-API tests on supported hardware only r=emilio,gfx-reviewers,jgilbert
- Implement fire_vaapi_process() which launch VA-API test utility on given DRM device.
- Implement GfxInfo::GetDataVAAPI() which gets VA-API test results
- Run VA-API tests when FEATURE_HARDWARE_VIDEO_DECODING is probed and only if it's enabled by GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D171995
2023-03-27 13:47:21 +00:00
stransky bdd226ef05 Bug 1787182 [Linux] Implement VA-API test as vaapitest binary r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D171994
2023-03-27 13:47:20 +00:00
stransky 70e16f1549 Bug 1824307 [VAAPI] Disable HW video decoding on AMD R600 r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D173665
2023-03-27 13:00:19 +00:00
Iulian Moraru 5234db201c Backed out 5 changesets (bug 1787182) for causing leaks on linux asan. CLOSED TREE
Backed out changeset 34056df4e1d5 (bug 1787182)
Backed out changeset fea9dc3de652 (bug 1787182)
Backed out changeset 7e710b6500f0 (bug 1787182)
Backed out changeset fe70bf105370 (bug 1787182)
Backed out changeset 70439dbc72fd (bug 1787182)
2023-03-27 14:18:06 +03:00
stransky facf3ee2b4 Bug 1787182 [Linux] Implement glxtest test as binary r=emilio
glxtest is run later when Firefox already spawns threads. Recently glxtest runs in forked process
which doesn't work correctly in multi-thread environment, so we need to move glxtest to different binary file
and launch it as stand alone code.

Differential Revision: https://phabricator.services.mozilla.com/D173486
2023-03-27 10:16:46 +00:00
stransky 08c92637d2 Bug 1787182 [Linux] Run VA-API tests on supported hardware only r=emilio,gfx-reviewers,jgilbert
- Implement fire_vaapi_process() which launch VA-API test utility on given DRM device.
- Implement GfxInfo::GetDataVAAPI() which gets VA-API test results
- Run VA-API tests when FEATURE_HARDWARE_VIDEO_DECODING is probed and only if it's enabled by GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D171995
2023-03-27 10:16:46 +00:00
stransky ce2bf1947c Bug 1787182 [Linux] Implement VA-API test as vaapitest binary r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D171994
2023-03-27 10:16:45 +00:00
stransky 579b6fd6ed Bug 1823333 [VAAPI] Fix FEATURE_HW_DECODED_VIDEO_ZERO_COPY handling as it's allowlisted feature r=gfx-reviewers,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D173573
2023-03-27 07:37:20 +00:00
Andi-Bogdan Postelnicu 4efa1bd0ba Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-27 07:20:25 +00:00
Stephen A Pohl 336ff5573f Bug 660452: Enable services submenu in macOS context menus. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D173635
2023-03-25 18:04:45 +00:00
Sandor Molnar 9db345d4c1 Backed out 2 changesets (bug 1276351) for causing build bustage in image/ClippedImage.cp CLOSED TREE
Backed out changeset e84598eb82c1 (bug 1276351)
Backed out changeset e940b0554484 (bug 1276351)
2023-03-25 14:16:43 +02:00
Andi-Bogdan Postelnicu 447f1e3358 Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-25 06:58:52 +00:00
Iulian Moraru 6d40eee997 Backed out 2 changesets (bug 1276351) for causing multiple failures.
Backed out changeset eeaf4f1e06af (bug 1276351)
Backed out changeset d44cb5704342 (bug 1276351)
2023-03-25 00:08:24 +02:00
Ziran Sun dcf61da9a0 Bug 1823359 - Implement beforetoggle event for popover. r=emilio,smaug
Differential Revision: https://phabricator.services.mozilla.com/D172993
2023-03-24 21:09:11 +00:00
Mark Banner 4a729cf9d7 Bug 1824173 - Automatically fix some ESLint issues raised by the valid-jsdoc configuration. r=mossop,webcompat-reviewers,denschub
Differential Revision: https://phabricator.services.mozilla.com/D173450
2023-03-24 19:35:24 +00:00
Andi-Bogdan Postelnicu a1b827b503 Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-24 18:55:39 +00:00
Iulian Moraru 83bab70928 Backed out changeset 241d9f6e2457 (bug 1823359) for causing wpt failures on popover-light-dismiss.html. CLOSED TREE 2023-03-24 21:11:32 +02:00
Ziran Sun d31e4010ed Bug 1823359 - Implement beforetoggle event for popover. r=emilio,smaug
Differential Revision: https://phabricator.services.mozilla.com/D172993
2023-03-24 16:29:48 +00:00
Brad Werth 17c2d48b8c Bug 1823751: Make macOS pasteboard use NSString for urls, and don't convert to NSData. r=mac-reviewers,spohl
This change makes PasteboardDictFromTransferable use NSString to store the
file url in the NSDictionary, and then when converting to the native
pasteboard, check whether we have an URL and use the setString method
in that case. This complies with the macOS requirement that NSString
content is used for the kUTTypeFileURL key.

There are further opportunities for improving usage of NSPasteboard,
specifically that all URLs should be written using writeContents, that we
shouldn't be using the kUTTypeFileURL key as an NSString, but those issues
are not addressed in this patch.

Differential Revision: https://phabricator.services.mozilla.com/D173359
2023-03-24 15:57:22 +00:00
Cristina Horotan 6d2f4d1811 Backed out 5 changesets (bug 1787182) for causing build bustage at pangofc-font.h CLOSED TREE
Backed out changeset 2fc6b3fd4365 (bug 1787182)
Backed out changeset 0d097f0f6228 (bug 1787182)
Backed out changeset 6a359af2ce38 (bug 1787182)
Backed out changeset 3cd483e237a1 (bug 1787182)
Backed out changeset cb7d83d2253b (bug 1787182)
2023-03-24 15:26:38 +02:00
stransky 845150be4f Bug 1787182 [Linux] Implement glxtest test as binary r=emilio
glxtest is run later when Firefox already spawns threads. Recently glxtest runs in forked process
which doesn't work correctly in multi-thread environment, so we need to move glxtest to different binary file
and launch it as stand alone code.

Differential Revision: https://phabricator.services.mozilla.com/D173486
2023-03-24 12:58:53 +00:00
stransky 7e30c8793d Bug 1787182 [Linux] Run VA-API tests on supported hardware only r=emilio,gfx-reviewers,jgilbert
- Implement fire_vaapi_process() which launch VA-API test utility on given DRM device.
- Implement GfxInfo::GetDataVAAPI() which gets VA-API test results
- Run VA-API tests when FEATURE_HARDWARE_VIDEO_DECODING is probed and only if it's enabled by GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D171995
2023-03-24 12:58:53 +00:00
stransky ed4d9becf7 Bug 1787182 [Linux] Implement VA-API test as vaapitest binary r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D171994
2023-03-24 12:58:52 +00:00
Norisz Fay eb7653efa4 Backed out changeset adc083051939 (bug 1823359) for causing wpt failures on popover-light-dismiss.html 2023-03-24 01:50:20 +02:00
Ziran Sun 02d0389ca0 Bug 1823359 - Implement beforetoggle event for popover. r=emilio,smaug
Differential Revision: https://phabricator.services.mozilla.com/D172993
2023-03-23 19:04:20 +00:00
Calixte 2a71e09bd2 Bug 1811303 - Make a pen usable to draw on a pdf on Windows r=saschanaz
Differential Revision: https://phabricator.services.mozilla.com/D173425
2023-03-23 14:25:36 +00:00
Emilio Cobos Álvarez e40e19b677 Bug 1820203 - Don't consider dialogs with BorderStyle::{Default,All} as undecorated. r=stransky
Bug 1794577 made this visible but the bug was really introduced in
bug 1816436.

Differential Revision: https://phabricator.services.mozilla.com/D173428
2023-03-23 13:07:29 +00:00
stransky f68d52be59 Bug 1817660 [Linux] Sanity cases where GetWidget() returns empty widget r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D173426
2023-03-23 12:51:03 +00:00
Cosmin Sabou 9c4ff4076b Bug 1784772 - Disable browser_test_swipe_gesture.js on linux until a fix in place. r=hiro DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D173370
2023-03-22 23:39:39 +00:00
Tom Schuster 1509ba1c86 Bug 1808146 - When creating a file promise for images, remember the referrer. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D172920
2023-03-22 21:55:08 +00:00
Sandor Molnar 39587cae6b Backed out 3 changesets (bug 1820066) for causing xpc failures in widget/headless/tests/test_headless.js CLOSED TREE
Backed out changeset 501d93d8c9eb (bug 1820066)
Backed out changeset ec623d25b138 (bug 1820066)
Backed out changeset c34dfd018abb (bug 1820066)
2023-03-22 22:54:53 +02:00
Makoto Kato 56258a05fc Bug 1822175 - Clean up dynamic refresh rate support on GeckoView. r=geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D172782
2023-03-22 15:35:16 +00:00
Nicholas Rishel 316e2ff914 Bug 1822842 - Trim down notification server event viewer logging unless `alerts.useSystemBackend.windows.notificationserver.verbose=true`. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D173076
2023-03-22 18:25:55 +00:00
Cathie Chen 0d88e41955 Bug 1822521 - Update UA stylesheet for popover. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D172700
2023-03-22 17:51:09 +00:00
Sandor Molnar 79329846cc Backed out changeset a1261c0eb985 (bug 1822175) for causing xpc failures in widget/headless/tests/test_headless.js 2023-03-22 20:38:42 +02:00
Makoto Kato 7791ea4730 Bug 1822175 - Clean up dynamic refresh rate support on GeckoView. r=geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D172782
2023-03-22 15:35:16 +00:00
Ray Kraesig cfe1fff87e Bug 1820066 [2/3] - Allow in-process use of the compositor window r=sotaro
The in-process compositor assumes that no compositor window was present.
This is not guaranteed to be true if, for example, the preference
`gfx.webrender.flip-sequential` is set.

Make the in-process compositor more closely mirror the out-of-process
compositor. (At present this effectively just means calling ::SetParent
on the compositor window.)

Differential Revision: https://phabricator.services.mozilla.com/D172733
2023-03-22 15:09:24 +00:00
Csoregi Natalia 1c9d6a9d1c Backed out changeset d567ffebf337 (bug 1823359) for causing failures on popover-light-dismiss.html. CLOSED TREE 2023-03-22 18:19:46 +02:00
Ziran Sun e8eeff9a88 Bug 1823359 - Implement beforetoggle event for popover. r=emilio,smaug
Differential Revision: https://phabricator.services.mozilla.com/D172993
2023-03-22 13:18:32 +00:00
Iulian Moraru f98405beb0 Backed out 4 changesets (bug 1787182) for causing multiple failures. CLOSED TREE
Backed out changeset 8e5214ecc91d (bug 1787182)
Backed out changeset 41e45dcc215a (bug 1787182)
Backed out changeset 63710cc6fda4 (bug 1787182)
Backed out changeset e75ee46f3a6f (bug 1787182)
2023-03-22 14:34:34 +02:00
stransky 6c1fdb761e Bug 1787182 [Linux] Run VA-API tests on supported hardware only r=emilio,gfx-reviewers,jgilbert
- Implement fire_vaapi_process() which launch VA-API test utility on given DRM device.
- Implement GfxInfo::GetDataVAAPI() which gets VA-API test results
- Run VA-API tests when FEATURE_HARDWARE_VIDEO_DECODING is probed and only if it's enabled by GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D171995
2023-03-22 08:36:20 +00:00
stransky 60270358dd Bug 1787182 [Linux] Implement VA-API test as vaapitest binary r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D171994
2023-03-22 08:36:19 +00:00
Stephanie Cunnane a67994520d Bug 1823278 - Update consumers of toolkit/components/utils to import ES modules directly. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D172950
2023-03-22 02:02:51 +00:00
Masayuki Nakano 050517a46f Bug 1810663 - Add Gecko specific command to enable new join/split node direction r=smaug,m_kato
This API is temporarily available and useful for web app developers who want to
stop supporting Gecko specific join/split direction handling as soon as possible
and who do not want Mozilla block their release schedule by rescheduling of
shipping the new behavior.  Additionally, adding this command allows web apps
detects whether Gecko supports the new behavior and whether it's enabled.

On the other hand, We don't want to ship opt-out API because it's hard to keep
maintaining the legacy behavior specific paths.  Therefore, the command does
nothing if web app calls
`Document.execCommand("enableCompatibleJoinSplitDirection", false "false")` if
the new behavior is enabled by default.

Differential Revision: https://phabricator.services.mozilla.com/D172351
2023-03-21 23:58:04 +00:00
Stephen A Pohl f534a28b58 Bug 1822845: Partially revert dfd7e060998e1780e50e0a29ea3cfc767a3eadfb (bug 1779478) for causing errors when using macOS Services. r=mac-reviewers,mstange
Differential Revision: https://phabricator.services.mozilla.com/D173153
2023-03-21 18:54:17 +00:00
mspiess a5da97cb7a Bug 580928 - Add support for Drag and Drop with Outlook items. r=cmartin
Differential Revision: https://phabricator.services.mozilla.com/D157587
2023-03-21 13:50:32 +00:00
Emilio Cobos Álvarez eb1c40734b Bug 1823336 - [wayland] For unanchored popups don't read anchor / popup gravity. r=stransky
This matches the nsMenuPopupFrame code.

There are a few places where we want to fix our position, and I unified
how we do this in the regressing bug.

ShouldFollowAnchor() = false popups like this used to just not be repositioned directly:

  https://hg.mozilla.org/mozilla-central/rev/c15f0fb1c92375ea751b3916a4c25a34403f21b2#l9.274

IsNoAutoHide() popups fixed their position once:

  https://hg.mozilla.org/mozilla-central/rev/c15f0fb1c92375ea751b3916a4c25a34403f21b2#l9.867

I unified in the noautohide behavior but in a better place here:

  https://hg.mozilla.org/mozilla-central/rev/c15f0fb1c92375ea751b3916a4c25a34403f21b2#l9.1182

But this trips this Wayland code which wasn't treating AnchorType_Point
popups properly.

The fact that this popup doesn't follow the anchor feels wrong, but is
pre-existing.

Differential Revision: https://phabricator.services.mozilla.com/D173004
2023-03-21 12:32:02 +00:00
Emilio Cobos Álvarez c2a9cc3dc2 Bug 1818517 - Ignore crossing-due-to-grab-start events. r=stransky
An alternative for this could be to just ignore leave-notify during a
drag, but that seemed a bit more hackish.

Differential Revision: https://phabricator.services.mozilla.com/D172914
2023-03-21 11:51:17 +00:00
Gijs Kruitbosch 039b75b9c8 Bug 1823077, r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D173032
2023-03-20 20:55:56 +00:00
Marian-Vasile Laza f078cd0274 Backed out changeset 18595f6364ea (bug 1822521) for wpt failures on popover-focus-child-dialog.html. CLOSED TREE 2023-03-20 21:17:55 +02:00
Stephen A Pohl c5b3821d9f Bug 1819739: Add glean telemetry for startup::is_restored_by_macos. r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D172288
2023-03-20 18:01:39 +00:00
Cathie Chen 1529996e68 Bug 1822521 - Update UA stylesheet for popover. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D172700
2023-03-20 17:01:11 +00:00
Marian-Vasile Laza a8ccc1f226 Backed out changeset 6dc913a054e9 (bug 1822521) for bc failures on browser_parsable_css.js. CLOSED TREE 2023-03-18 16:06:04 +02:00
Cathie Chen c289513d2f Bug 1822521 - Update UA stylesheet for popover. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D172700
2023-03-18 12:56:18 +00:00
Emilio Cobos Álvarez da7fa43d4a Bug 1809084 - Stop using XUL layout for menu popups. r=desktop-theme-reviewers,dao,dshin
The underlying issue here is an invalidation bug with XUL layout. When a
popup opens, we try to lay it out at full size, then post a reflow
callback to constrain it.

There's an intermediate step there where the popup might remain at full
size, and the constraining operates directly on mRect, which isn't quite
sound and doesn't update the scrollport of descendants.

Make nsMenuPopupFrame inherit from nsBlockFrame instead, doing
potentially two layout passes when constrained.

This fixes the issue at hand, and removes XUL layout from menu popups,
so it's a win-win.

To make reasoning about it a bit easier, factor out a bunch of the XUL
positioning code to be const. The mutation of mRect etc which was going
on otherwise was pretty hard to reason about.

Differential Revision: https://phabricator.services.mozilla.com/D170368
2023-03-16 19:09:14 +00:00
Emilio Cobos Álvarez 6c885e916b Bug 1820405 - Ignore bogus enter-leave by default in lg3d/qtile. r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D172656
2023-03-16 14:49:08 +00:00
Emilio Cobos Álvarez 341583af94 Bug 1822315 - Ignore empty env vars in desktop environment detection. r=stransky
At least on my system you can get on an state where XDG_CURRENT_DESKTOP is set
to the empty string (I think this comes from sddm when launching a legacy
WM).

Found this while trying to repro bug 1820542. Unclear if this is enough to fix
the issues in comment 0 but locally it's enough to fix fvwm detection here.

Differential Revision: https://phabricator.services.mozilla.com/D172568
2023-03-16 14:48:39 +00:00
Masayuki Nakano e5f024930b Bug 1820972 - Make `nsBaseDragService::FireDragEventAtSource` update `mSourceNode` if it's disconnected while `HTMLEditor` deletes selection caused by a drag operation r=edgar
The source node is typically a text node, and it may be editable by
`contenteditable` or `designMode`.  In that case, the source node may be removed
during the DnD session even without tricky JS code.  In this case, Blink and
WebKit updates the source node to dispatch `dragend` to the editing host.
This behavior does not conform to the standardized DnD behavior, however,
this is reasonable for editor apps which want to listen to events in editing
host or window/document for footprint and/or performance reason.  Therefore,
we should follow their behavior.

Differential Revision: https://phabricator.services.mozilla.com/D172091
2023-03-16 06:37:18 +00:00
Olivia Hall 41785a703d 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
Nika Layzell 3b40268cc1 Bug 1818305 - Part 2: Add a streamStatus method to nsIInputStream, r=xpcom-reviewers,necko-reviewers,geckoview-reviewers,valentin,jesup,m_kato,mccr8
This is semantically similar to the existing available() method, however will
not block, and doesn't need to do the work to actually determine the number of
available bytes.

As part of this patch, I also fixed one available() implementation which was
incorrectly throwing NS_BASE_STREAM_WOULD_BLOCK.

Differential Revision: https://phabricator.services.mozilla.com/D170697
2023-03-15 19:52:34 +00:00
serge-sans-paille 144eeecbf1 Bug 1820580 - Make toolkit/mozapps/defaultagent buildable outside of a unified build environment r=andi
Differential Revision: https://phabricator.services.mozilla.com/D171738
2023-03-15 07:30:39 +00:00
Hiroyuki Ikezoe be5af8fe49 Bug 1784772 - Preserve APZEventResult.mHandledResult when we set `eConsumeDoDefault` for the APZEventResult in InputQueue::ReceivePanGestureInput(). r=botond
The `mHandledResult` is set in the ctor of APZEventResult based on an incoming
TargetConfirmationFlags, we shouldn't clobber the original `mHandledResult` when
we set `eConsumeDoDefault` for pan events.

Note that we should probably do the same thing for other
SetStatusAsConsumeDoDefault call sites basically, but for now I'd like to make
this change as mimumum as possible.

Differential Revision: https://phabricator.services.mozilla.com/D172525
2023-03-14 21:01:02 +00:00
Hiroyuki Ikezoe d96b738428 Bug 1784772 - Queue SwipeEventQueue only if we don't know whether the pan event wasn't consumed by APZ. r=botond
If we queue the SwipeEventQueue in the case where the corresponding pan-start
event was consumed by the root content APZC, we wait for a response from the
content. And if the consumed pan-start event scrolled to the edge of the scroll
container and if the new scrolled position has been reached to the content
process before we tell whether the scroll position of the scroll container is
at the edge [1], we report it back to the SwipeTracker as the event should be
an event as a start of swipe navigation gestures. Thus, once after we got a
pan-end event, we trigger a swipe navigation. It results timeouts on a test case
waiting for an APZ:TransformEnd notification which never happens due to the page
navigation.

There's also a similar race condition where a pan-start event was consumed by a
non-root content APZC. But I haven't been able to reproduce the similar case
manually so I just filed bug 1821967 for the race and I am not going to handle
the race here. Note that I haven't been able to reproduce the original race
condition manually either though.

[1] https://searchfox.org/mozilla-central/rev/2f9a79d1c4ae7090cf50d93be86ba9dc2767a733/dom/events/EventStateManager.cpp#3727-3728

Differential Revision: https://phabricator.services.mozilla.com/D172391
2023-03-14 21:01:01 +00:00
Ray Kraesig 68184463ff Bug 1815987 - Rewrite data-read loop in OnDataAvailable r=yjuglaret
The read-loop in OnDataAvailable is needlessly baroque and uses a very
strange dialect of Hungarian notation. Factor out the zero-element case
for simplicity (of explication, if nothing else), and add justificatory
comments as appropriate.

Differential Revision: https://phabricator.services.mozilla.com/D171001
2023-03-14 19:54:26 +00:00
Noemi Erli 51cdfe05ee Backed out 6 changesets (bug 1820168) for causing multiple failures CLOSED TREE
Backed out changeset 03bc416d3399 (bug 1820168)
Backed out changeset 8da35371cbdf (bug 1820168)
Backed out changeset ebde44bcb736 (bug 1820168)
Backed out changeset 7b01e0445133 (bug 1820168)
Backed out changeset b32a9cf041fc (bug 1820168)
Backed out changeset e29e5a3349f4 (bug 1820168)
2023-03-14 19:53:58 +02:00
Markus Stange edb2deabbd Bug 1820168 - Let the system re-set the current cursor when needed. r=mac-reviewers,bradwerth
This renames nsMacCursorManager to MOZDynamicCursor and makes it implement NSCursor.

We also install a cursor rect which covers the entire ChildView and which refers
to the MOZDynamicCursor singleton.

With the help of the cursor rect, the -[NSCursor set] implementation is now called
at the right times.

Here's a profile which contains the stacks under which -[MOZDynamicCursor set]
is now called: https://share.firefox.dev/3yEXLsC

Differential Revision: https://phabricator.services.mozilla.com/D172484
2023-03-14 16:30:05 +00:00
Markus Stange edb89e49ae Bug 1820168 - Remove unused method -[nsCursorManager dispose]. r=mac-reviewers,bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D172483
2023-03-14 16:30:05 +00:00
Markus Stange 16d90191d4 Bug 1820168 - Some nsCursorManager cleanup. Tweak method names and return types, and remove excessive doc comments. r=mac-reviewers,bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D172482
2023-03-14 16:30:04 +00:00
Markus Stange 3b8f615944 Bug 1820168 - Remove unnecessary respondsToSelector checks. These cursors have all been supported on 10.6+. r=mac-reviewers,bradwerth
Depends on D172480

Differential Revision: https://phabricator.services.mozilla.com/D172481
2023-03-14 16:30:04 +00:00
Markus Stange 75417dc7bf Bug 1820168 - Stop using nsMacCursor. r=mac-reviewers,bradwerth
Happy code deletion day!

nsMacCursor was used so that animated cursors could be treated like non-animated cursors.
But we don't have animated cursors anymore! Nothing calls -[nsMacCursor cursorWithFrames:type:].

Depends on D172479

Differential Revision: https://phabricator.services.mozilla.com/D172480
2023-03-14 16:30:04 +00:00
Markus Stange 53398b83dc Bug 1820168 - Remove ObjC exception guards in nsCursorManager methods. r=mac-reviewers,bradwerth
These guards are only needed at the boundary to C++, see https://bugzilla.mozilla.org/show_bug.cgi?id=1693392 .

Differential Revision: https://phabricator.services.mozilla.com/D172479
2023-03-14 16:30:03 +00:00
CanadaHonk 3bbca01da2 Bug 1736914 - Implement prefers-reduced-transparency media query r=geckoview-reviewers,emilio,jonalmeida,ohall
Implemented the prefers-reduced-transparency media query for all
platforms.

Windows and Mac have specific settings which are used, others (Android
and Linux/GTK) have it enabled if prefers-reduced-motion is also enabled
as there is no dedicated setting to check.

Locked behind new pref `layout.css.prefers-reduced-transparency.enabled`,
off by default always for now.

Also added new WPT tests (none previously).

Demo video: https://goose.icu/firefox_prt.mp4
Test page: https://goose.icu/prefers-reduced-transparency

Differential Revision: https://phabricator.services.mozilla.com/D172424
2023-03-13 21:30:17 +00:00
Adam Vandolder ff783c3ecb Bug 1818287 - Disabled form-associated custom elements with delegateFocus should receive focus and keyboard events. r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D171416
2023-03-13 18:36:24 +00:00
Brad Werth 49b7d27c66 Bug 1821213: Make CocoaWindow check its maximized state against the screen maximum size. r=mstange
For some reason, the frame passed to windowWillUseStandardFrame:defaultFrame:
is not reliably a frame representing the maximum frame for the window's
screen. This is possibly a bug in Cocoa. To compensate, we return the
frame of the window's screen and rely upon the Cocoa caller to shrink it
enough to fit between the menubar and the dock (which does seem to work).

Differential Revision: https://phabricator.services.mozilla.com/D172167
2023-03-10 16:32:10 +00:00
Hiroyuki Ikezoe 639a2d2d9f Bug 1784772 - Forcibly flush scroll position change. r=botond
The lack of the flush is one of the causes of the test timeouts. Without the
flush, the content in question is not overscrollable, thus a swipe gesture
triggers a navigation back to the previous content rather than overscrolling.

Differential Revision: https://phabricator.services.mozilla.com/D172170
2023-03-10 04:00:07 +00:00
stransky a69939c237 Bug 1802844 [Linux] Disable HW_DECODED_VIDEO_ZERO_COPY on AMD hardware r=aosmond
Depends on D171554

Differential Revision: https://phabricator.services.mozilla.com/D171555
2023-03-09 08:57:42 +00:00
Brad Werth b208a0eb8b Bug 1798360: Once again allow WebRender on Wayland R600 devices with new-enough drivers. r=aosmond
Upstream driver fixes noted in
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17822 imply
that the root cause has been fixed. Bug 1673939 has been closed and it's
not clear we should keep these drivers on the blacklist.

Differential Revision: https://phabricator.services.mozilla.com/D169789
2023-03-08 19:47:16 +00:00
Brad Werth 2c3fa7062f Bug 1820699: Make nsCocoaWindow choose a fallback normal size if it can't unmaximize when requested. r=mstange
Without this change, it is possible for a macOS window in maximized state
to be unable to return to normal state via a SetSizeMode call. This means
that a JS call to "window.restore()" has no effect. This patch fixes that
case by detecting the failure and resizing to  a slightly smaller size
that qualifies for the normal state.

This also implements windowWillUseStandardFrame:defaultFrame: in a trivial
way, which seems to be necessary for the window.zoomed property to return
YES only when the window frame fills the screen.

This is very difficult to test intentionally with a window that is
maximized and has forgotten its Cocoa-tracked "user state". But that state
is reached in our test harness and this will get us out of it. It has the
desirable(?) side effect of making the macOS menu bar action Window->Zoom
do something with a window that is already maximized to the screen.

Differential Revision: https://phabricator.services.mozilla.com/D171831
2023-03-08 17:23:02 +00:00
Hiroyuki Ikezoe 6ad0a4c41b Bug 1820761 - Observe "APZ:TransformEnd" directly rather than using function in apz_test_native_event_utils.js. r=botond
Also use a relatively bigger "apz.overscroll.damping" value to avoid the situation
where the overscroll gutter has been already restored when we observe
"APZ:TransformEnd".

Differential Revision: https://phabricator.services.mozilla.com/D171938
2023-03-08 02:10:53 +00:00
Andrew Osmond d91c1383f9 Bug 1820267 - Unship EGL on Linux for older NVIDIA binary drivers. r=gfx-reviewers,lsalzman
After landing bug 1819466, we started seeing a consistent uptick in
crashes on older drivers using WebGL. Given the limited population on
older drivers on nightly, this is a sign we are unable to ship EGL on
these drivers without further investigation.

Differential Revision: https://phabricator.services.mozilla.com/D171915
2023-03-07 23:05:04 +00:00
Sandor Molnar 5cc178c0e7 Backed out changeset 237c814b5bee (bug 1820699) for causing multiple failures in widget/cocoa/nsCocoaWindow. CLOSED TREE 2023-03-07 23:28:03 +02:00
Brad Werth b20523226d Bug 1820699: Make nsCocoaWindow choose a fallback normal size if it can't unmaximize when requested. r=mstange
Without this change, it is possible for a macOS window in maximized state
to be unable to return to normal state via a SetSizeMode call. This means
that a JS call to "window.restore()" has no effect. This patch fixes that
case by detecting the failure and resizing to  a slightly smaller size
that qualifies for the normal state.

This is very difficult to test intentionally with a window that is
maximized and has forgotten its Cocoa-tracked "user state". But that state
is reached in our test harness and this will get us out of it. It has the
desirable(?) side effect of making the macOS menu bar action Window->Zoom
do something with a window that is already maximized to the screen.

Differential Revision: https://phabricator.services.mozilla.com/D171831
2023-03-07 20:41:51 +00:00
Neil Deakin 1ec0930f6b Bug 1819760, don't modify extensions when trying to create a desktop shortcut, r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D171639
2023-03-07 14:01:04 +00:00
Hiroyuki Ikezoe f6eeba9f7b Bug 1816032 - Schedule a timeout to avoid waiting for the browser gesture responce forever. r=botond
The browser mochitest in this change causes a timeout without this fix since
the overscroll gutter gets stuck thus we will never get "APZ:TransformEnd".

Differential Revision: https://phabricator.services.mozilla.com/D171421
2023-03-07 03:36:07 +00:00
Brad Werth ee9a12ee0d Bug 1631735 Part 3: Update test expectations to note macOS transitions are async. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D170841
2023-03-06 19:38:11 +00:00
Brad Werth c01f7ba390 Bug 1631735 Part 1: Make nsCocoaWindow animated transitions asynchronous and atomic. r=mstange
This patch attempts to make nsCocoaWindow transitions (fullscreen,
windowed, minimize, zoom) atomic operations that can't be disrupted by
user action or by programmatic triggers. To accomplish this, it defines a
transition queue which ensures that when a transition is submitted, it is
always run to completion before another transition is started. Native
transitions execute asynchronously, and emulated ones execute
synchronously.

Additionally, this patch adds intermediary transitions to handle
programmatic transitions which aren't allowed by macOS, which include:

1) Attempting to minimize a fullscreen window will first transition to
windowed state.
2) Any transition on a minimized window will first transition to windowed
state.

A later part of this patch stack tests this behavior.

Differential Revision: https://phabricator.services.mozilla.com/D166450
2023-03-06 19:38:10 +00:00
Emilio Cobos Álvarez f66702754b Bug 1820204 - Simplify some wayland vsync code. r=rmader
That code only runs in the parent process by design. And we use
infallible new so there's no need to release-assert that allocation
succeeded.

Differential Revision: https://phabricator.services.mozilla.com/D171579
2023-03-03 20:47:51 +00:00
Andrew Osmond 0e9a5d22fd Bug 1820181 - Update threadsafe GL and DMABUF blocklist to include NVIDIA 530.30.02. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D171567
2023-03-03 15:31:31 +00:00
Sandor Molnar 5df475dc34 Backed out 3 changesets (bug 1631735) for causing assertion failures in xpfe/appshell/AppWindow.cpp
Backed out changeset 1c7dffec620f (bug 1631735)
Backed out changeset 4a7049e0f50d (bug 1631735)
Backed out changeset 0ae84866d35d (bug 1631735)
2023-03-03 04:27:11 +02:00
Andrew Osmond 9e362622bf Bug 1820055 - Block threadsafe GL and DMABUF on NVIDIA binary drivers older than 530.0. r=gfx-reviewers,gw
We are seeing a large uptick in crashes across all channels with the
NVIDIA binary drivers, including 470, 510, 515, 520, and 525. This
crash is tracked in bug 1788573.

Differential Revision: https://phabricator.services.mozilla.com/D171512
2023-03-03 01:25:23 +00:00
Brad Werth db4fef854b Bug 1631735 Part 3: Update test expectations to note macOS transitions are async. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D170841
2023-03-02 22:26:56 +00:00
Brad Werth 35295e5966 Bug 1631735 Part 1: Make nsCocoaWindow animated transitions asynchronous and atomic. r=mstange
This patch attempts to make nsCocoaWindow transitions (fullscreen,
windowed, minimize, zoom) atomic operations that can't be disrupted by
user action or by programmatic triggers. To accomplish this, it defines a
transition queue which ensures that when a transition is submitted, it is
always run to completion before another transition is started. Native
transitions execute asynchronously, and emulated ones execute
synchronously.

Additionally, this patch adds intermediary transitions to handle
programmatic transitions which aren't allowed by macOS, which include:

1) Attempting to minimize a fullscreen window will first transition to
windowed state.
2) Any transition on a minimized window will first transition to windowed
state.

A later part of this patch stack tests this behavior.

Differential Revision: https://phabricator.services.mozilla.com/D166450
2023-03-02 22:26:56 +00:00
Ray Kraesig 35bd8dac49 Bug 772424 - Reenable TestWinDND.cpp r=handyman
TestWinDND.cpp was disabled when libxul became a separate library which
could no longer be used by cppunittests.

Add a few shims to turn it into a gtest instead, and hook it back up.

Differential Revision: https://phabricator.services.mozilla.com/D171280
2023-03-02 19:09:44 +00:00
filips 20d7c9c0d8 Bug 1747722 - Allow changing window class hints using attributes. r=emilio,stransky
This patch adds two new attributes to the window's `html` element, `windowclass` and `windowname`, to allow directly controlling the window's class hints on Xorg/Wayland (`res_class` and `res_name`) from the chrome/JS code. When they are set, values are used as class hints for their window. When they are not set, the current behavior of determining `res_class` and `res_name` (using `gdk_get_program_class` for `res_class` and parsing `windowtype` for `res_name`) is preserved.

Changes in `widget/nsIWidget.h` and `widget/nsBaseWidget.h` are only interface changes so that `setWindowClass` can accept three attributes. Although this patch does not affect Windows, `widget/windows/nsWindow.h` and `widget/windows/nsWindow.cpp` have been updated to comply with the new interface. `xpfe/appshell/AppWindow.cpp` has been updated to get the additional attributes and call `setWindowClass` with them. The main changes are in `widget/gtk/nsWindow.h` and `widget/gtk/nsWindow.cpp`.

Differential Revision: https://phabricator.services.mozilla.com/D169720
2023-03-02 16:22:05 +00:00
Nika Layzell d9c8a6fcbe Bug 1542802 - Part 1: Replace LazyIdleThread with a thin wrapper around nsThreadPool, r=jesup,gstoll
This does not reduce the number of threads we end up using in these
cases, but simplifies the complex implementation substantially by
relying on the idle thread lifetime management logic from nsThreadPool.

The nsISerialEventTarget implementation is maintained by wrapping the
nsThreadPool with a TaskQueue.

As a result of using these more reliable backing implementations, the
type is now also safe to use from any thread, rather than requiring
dispatches to all occur from the creator thread.

Unfortunately, this required some changes to the
UntrustedModulesProcessor, which was relying on the ability to fetch the
PRThread* (and from that the HANDLE) from the lazy thread in order to
perform priority changes on it. This was fixed by using a
nsIThreadPoolListener to watch the thread being created and destroyed,
and manually record a HANDLE to the thread which can be used for these
priority changes.

Differential Revision: https://phabricator.services.mozilla.com/D168017
2023-03-02 15:52:32 +00:00
Iulian Moraru ee40e40786 Backed out changeset 7ecdee3d9f27 (bug 772424) for causing bp-hybrid build bustages on TestWinDND.cpp. CLOSED TREE 2023-03-02 08:33:20 +02:00
Ray Kraesig 774d379b0b Bug 772424 - Reenable TestWinDND.cpp r=handyman
TestWinDND.cpp was disabled when libxul became a separate library which
could no longer be used by cppunittests.

Add a few shims to turn it into a gtest instead, and hook it back up.

Differential Revision: https://phabricator.services.mozilla.com/D171280
2023-03-02 01:19:12 +00:00
Masayuki Nakano dab48fb890 Bug 1797796 - Make `eSetSelection` event not handled if `Selection` is set to same offset and length r=m_kato
`ContentEventHandler` may not replace open/close tags of inline elements and
close tags of block elements with a line break etc.  Therefore, one offset may
mean multiple points in the DOM tree.  From the DOM tree point of view, every
DOM point may have different meaning and styles.  Therefore, if IME sets
`Selection` to current range, we should not update `Selection` with the log of
`ContentEventHandler`.  Otherwise, new content will appear at different position
in the DOM tree and it may cause different style text, etc.

`IMEContentObserver` has cache of `Selection` while an editor has focus.
Therefore, for avoiding the query cost of `Selection` for each `eSetSelection`
event, `ContentEventHandler` should be used in `IMEContentObserver` instead if
an instance is available.  Therefore, this patch makes `TextComposition`
delegate the handling to `IMEContentObserver` and check `Selection` range only
when `IMEContentObserver` is available.  Note that `eSetSelection` is probably
used only when editable element has focus.  Therefore, it must be fine to skip
selection range check in the other cases.

Differential Revision: https://phabricator.services.mozilla.com/D171179
2023-03-01 05:57:32 +00:00
Makoto Kato 051c921a72 Bug 1813573 - Part 2. Restart vsync when refresh rate is changed. r=geckoview-reviewers,owlish
When refresh rate is changed, `DisplayListener` is called. So we restart vsync
when refresh rate may be changed.

Differential Revision: https://phabricator.services.mozilla.com/D168666
2023-03-01 03:12:32 +00:00
Makoto Kato 9aca857df0 Bug 1813573 - Part 1. Clean up AndroidVsyncSource to get current refresh rate when enabling vsync. r=geckoview-reviewers,owlish
Newer Android supports multiple refresh rate that is dynamically changed.
Actually, GeckoView will always pass the refresh rate value to vsync when
getting it first time.

So this fix changes that GeckoView gets the refresh rate when vsync is started.

Differential Revision: https://phabricator.services.mozilla.com/D168665
2023-03-01 03:12:31 +00:00
Brad Werth eccc3d51b1 Bug 1768495 Part 3: Remove redundant pause-on-minimize in nsCocoaWindow, remove pref. r=gfx-reviewers,ahale
Differential Revision: https://phabricator.services.mozilla.com/D169346
2023-02-28 23:16:57 +00:00
Brad Werth ce9e905fc3 Bug 1768495 Part 1: Add a method nsIWidget::PauseOrResumeCompositor, and override it in nsCocoaWindow. r=gfx-reviewers,emilio,ahale
This change does not affect behavior, it's just prepatory for a later
caller to the newly-defined method.

Differential Revision: https://phabricator.services.mozilla.com/D169344
2023-02-28 23:16:56 +00:00
Andrew Osmond bf1c2d1d90 Bug 1819466 - Ship X11 EGL to NVIDIA 340.108+ users on Linux to early beta and nightly. r=gfx-reviewers,lsalzman
As part of our goal to reduce GLX usage, and our exposure to its known
threading issues, let's try to ship EGL on X11 for NVIDIA binary driver
users with version 340.108 and higher. This lowers the requirement from
470.82 and higher.

Note that this does not impact shipping WebRender support to these
users. We keep the requirement for hardware acceleration at 470.82 and
higher. Thus this should predominantly impact WebGL.

Differential Revision: https://phabricator.services.mozilla.com/D171278
2023-02-28 22:51:07 +00:00
Lee Salzman 8b49232f3b Bug 1819133 - Don't error on unrecognized blocklist features. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D171272
2023-02-28 22:02:32 +00:00
Emilio Cobos Álvarez 18cac670c1 Bug 1794577 - Enable aspect-ratio locking on KDE too. r=stransky
Seems to work nicely.

Differential Revision: https://phabricator.services.mozilla.com/D171077
2023-02-28 14:20:39 +00:00
Emilio Cobos Álvarez 799cf59ddb Bug 1794577 - Set dummy titlebar for always-undecorated windows. r=stransky
This prevents the system titlebar from showing up in Plasma+Wayland.

Differential Revision: https://phabricator.services.mozilla.com/D171076
2023-02-28 14:20:39 +00:00
Emilio Cobos Álvarez 0989a7f163 Bug 1794577 - Clear decorations from PiP window earlier during creation. r=stransky
What is going on here is a bad interaction between the
aspect-ratio-locking that PiP uses and CSD.

The Wayland window starts off with CSD decorations. That adds some
margin to our windows. When we un-decorate the window then eventually
GDK removes those margins, which means that we end up with a different
size, due to the aspect ratio.

PiP is special enough that is probably ok to just do this.

Differential Revision: https://phabricator.services.mozilla.com/D171075
2023-02-28 14:20:39 +00:00
Emilio Cobos Álvarez c548fc1e68 Bug 1794577 - Minor clean-up to CSD code. r=stransky
No behavior change.

Differential Revision: https://phabricator.services.mozilla.com/D171074
2023-02-28 14:20:38 +00:00
Emilio Cobos Álvarez 35d0536284 Bug 1819034 - Reset LookAndFeel only if color scheme is really changed r=stransky
We get sometimes two color-scheme changes on GNOME + Wayland at least,
which do unnecessary work. Avoiding that extra work is rather
straight-forward.

This is a slightly simpler approach than D171065.

Differential Revision: https://phabricator.services.mozilla.com/D171081
2023-02-28 14:08:37 +00:00
Andrew Osmond 14eac2383e Bug 1818992 - Ship X11 EGL on Mesa 17+ to match WebRender. r=webdriver-reviewers,gfx-reviewers,whimboo,lsalzman
When we initially shipped X11 EGL on Mesa 21+, it was chosen
specifically to avoid CI issues. These appear to have mostly been
resolved with minimal annotations required to enable EGL on release.
This will allow the majority of Linux Mesa users to switch away from
GLX.

With this patch, we will match shipping X11 EGL on where we chose to
ship WebRender. Specifically that is Mesa 17+ in general, and 18.2+ for
Nouveau.

Differential Revision: https://phabricator.services.mozilla.com/D171089
2023-02-27 21:33:24 +00:00
Fred Chasen 42c8df00ac Bug 1793220 - Use at-page size rule as paper size when printing to PDF r=dholbert,AlaskanEmily
Adds a usePageRuleSizeAsPaperSize setting to allow overriding the default paper size when printing to a PDF file.

Print preview now checks for at-page size rules and when enabled will use that size for the previewed sheet of paper.

The preview will also return the page width and height (in inches) during its callback for the frontend to use to override the default paper settings.

Differential Revision: https://phabricator.services.mozilla.com/D160303
2023-02-27 20:22:18 +00:00
Molly Howell 4cf1876637 Bug 1817768 - Filter out illegal file extensions. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D170531
2023-02-27 18:01:10 +00:00
Emilio Cobos Álvarez 22b93499fa Bug 1818811 - Make -moz-box-layout: flex default, and clean-up CSS. r=Gijs,extension-reviewers,settings-reviewers,desktop-theme-reviewers,dao
Now it's on by default everywhere, so all this is not needed. No behavior
change effectively since the xul.css bits being removed effectively achieve the
same.

Differential Revision: https://phabricator.services.mozilla.com/D170944
2023-02-27 12:41:13 +00:00
stransky 186789dac5 Bug 1809026 [Linux] Reference DMABufSurface when it's created/imported r=emilio
Recently we add DMABufSurface reference when DMABufSurface is exported over IPC bridge by Serialize().
That no longer works as Serialize() may be called more times due to WebGL integration.

In this patch remove ref add in Serialize() (GlobalRefCountExport) and add global ref when it's
created/imported by IPC bridge.

That better matches DMABufSurface cycle in compositor as DMABufSurface is referenced on create and undef when it's deleted on compositor side.

Also add logging to ref/unref and print warning if surface ref count is already zero (we're trying to unref already 'unused' surface).

Differential Revision: https://phabricator.services.mozilla.com/D170624
2023-02-27 11:20:33 +00:00
Csoregi Natalia 43261efa2b Backed out 2 changesets (bug 1777849) for causing webgl crashes. CLOSED TREE
Backed out changeset af3c076c00d6 (bug 1777849)
Backed out changeset 536f32f1cf47 (bug 1777849)
2023-02-25 15:29:32 +02:00
Lee Salzman 0621e7027b Bug 1777849 - Disable FEATURE_THREADSAFE_GL on libX11 < 1.7. r=gfx-reviewers,ahale
LibX11 versions prior to 1.7 have a race condition that made it unsafe to use
in multiple threads. Since Firefox 104, we created a CanvasRender thread that
is used to service WebGL commands off the Renderer thread so that WebGL does
not block WebRender. If WebGL uses GLX, this can lead us to using GLX on the
two different threads. In combination with an unsafe version of libX11, this
can lead to severe instability.

We already have a FEATURE_THREADSAFE_GL in place to denote this, which was
currently used mainly for Nouveau which is also unsafe to use on multiple
threads. If this feature fails, the CanvasRender thread is not used, and
all WebGL commands go back to being on the Renderer thread as normal, avoiding
the problem.

Thus, this detects the presence of libX11 version 1.7 or greater, and if not
found, we disable FEATURE_THREADSAFE_GL to disable the CanvasRender thread.

Differential Revision: https://phabricator.services.mozilla.com/D170992
2023-02-25 07:27:31 +00:00
Florian Quèze 3540a4910c Bug 834343 - [Windows] reset the idle time of the user idle service for mouse move events only if the mouse moved by at least 1 pixel, r=cmartin.
Differential Revision: https://phabricator.services.mozilla.com/D170904
2023-02-24 15:24:13 +00:00
Jonathan Kew aeec9224a6 Bug 688085 - Remove IDL method nsIFontEnumerator::UpdateFontList; just call gfxPlatform directly from widget/windows code where needed. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D170328
2023-02-23 21:45:12 +00:00
Emilio Cobos Álvarez 9a87a13d7c Bug 1818500 - Try to re-enable test_picker_no_crash.html. r=rkraesig
This seems to consistently leak an nsFilePickerProxy, at least on Linux,
tho...

Differential Revision: https://phabricator.services.mozilla.com/D170758
2023-02-23 20:02:35 +00:00
Kelsey Gilbert b8188c30a3 Bug 1807403 - Blocklist WebGPU on all macOS. r=gfx-reviewers,aosmond
WGPU doesn't have bounds checks on Metal yet, so WebGPU is too unsafe to
expose by default for now.

Differential Revision: https://phabricator.services.mozilla.com/D170702
2023-02-23 19:07:50 +00:00
Cristina Horotan cdf1b4667d Merge mozilla-central to autoland a=merge on a CLOSED TREE 2023-02-23 19:25:58 +02:00
Emilio Cobos Álvarez ddfb394572 Bug 1818500 - Fix serialization of nsIFilePicker::Mode. r=ipc-reviewers,mccr8 a=RyanVM
modeOpenMultiple is the last variant, this reproduces clicking on:

  data:text/html,<input type=file multiple>

Differential Revision: https://phabricator.services.mozilla.com/D170756
2023-02-23 14:33:57 +00:00
stransky c0e0c3d0ea Bug 1813407 [Linux] Remove unused nsWindow::GetMozContainerSize() r=emilio
Depends on D169907

Differential Revision: https://phabricator.services.mozilla.com/D169908
2023-02-23 10:52:15 +00:00
stransky ba4ca0b344 Bug 1813407 [Linux] Get window size from compositor widget if possible in WindowSurfaceWaylandMultiBuffer backend r=emilio
- We want to get window size from compositor widget as it matches window size used by parent RenderCompositorSWGL rendrer.
- For main thread rendering mCompositorWidget is not available so get window size directly from nsWindow.

Depends on D169906

Differential Revision: https://phabricator.services.mozilla.com/D169907
2023-02-23 10:52:15 +00:00
stransky e86924571a Bug 1813407 [Linux] Allow to initialize WindowSurfaceProvider with GtkCompositorWidget for OMTC rendering r=emilio
Depends on D169905

Differential Revision: https://phabricator.services.mozilla.com/D169906
2023-02-23 10:52:14 +00:00
Ray Kraesig 771bdc853e Bug 1816740 [6/6] - remove ManualDealloc from ColorPicker and FilePicker r=ipc-reviewers,nika
The existing manual-deallocation code isn't actually doing anything
interesting. Strip it out.

(No functional changes.)

Differential Revision: https://phabricator.services.mozilla.com/D169855
2023-02-22 21:05:25 +00:00
Ray Kraesig 7b51dc72b7 Bug 1816740 [5/6] - convert nsIFilePicker::capture* to a proper enum r=ipc-reviewers,karlt,mstange,handyman,nika
Convert the various capture* constants in nsIFilePicker into a proper
enum, and perform validation when passing it across IPC.

Additionally, unlike the previous two enums, reduce the size of
CaptureTarget to 8 bits. This is a workaround for its use with
nsAttrValue, which at present very specifically requires that parseable
enums' values fit within an `int16_t` -- and a `uint16_t` does not.

Differential Revision: https://phabricator.services.mozilla.com/D169854
2023-02-22 21:05:24 +00:00
Ray Kraesig fa4832237d Bug 1816740 [4/6] - convert nsIFilePicker::mode* into a proper enum r=ipc-reviewers,karlt,mstange,handyman,nika
Convert the various mode* constants in nsIFilePicker into a proper
enum, and perform validation when passing it across IPC.

Differential Revision: https://phabricator.services.mozilla.com/D169853
2023-02-22 21:05:24 +00:00
Ray Kraesig 8ff42fa236 Bug 1816740 [3/6] - convert nsIFilePicker::result* into a proper enum r=ipc-reviewers,karlt,mstange,handyman,nika
Convert the various result* constants in nsIFilePicker into a proper
enum, and perform validation when passing it across IPC.

Differential Revision: https://phabricator.services.mozilla.com/D169852
2023-02-22 21:05:23 +00:00
Emilio Cobos Álvarez 1afc31ccf4 Bug 1817634 - Remove "show keyboard cues" handling. r=cmartin
Other browsers don't do this, and it might confuse users, see e.g., [1]
and bug 1813684.

Before Firefox 110, we didn't do it consistently, but I fixed that in
bug 1807687. See comments in the patch for context, [2] in particular:

> The code being removed here is intended to implement the Windows
> setting 'Underline access keys' in the Keyboard Accessibility
> control panel, which somewhat confusingly also controls whether
> focus rings appear by default when clicking on controls. The former
> part -- the showing and hiding of the underlines based on the
> setting -- was never yet implemented, this is bug 25894. The focus
> rings part was implemented.

Given:

 * This setting is confusing.
 * Modern windows apps and other browsers don't follow it.
 * We already provide other means of achieving the same behavior
   (browser.display.show_focus_rings=true).

It seems better to remove. I asked Neil in bug 1813684 in case he felt
more strongly about this, and didn't hear back.

[1]: https://www.reddit.com/r/firefox/comments/116n3kp/why_is_firefox_110_now_putting_a_blue_box_around/
[2]: https://phabricator.services.mozilla.com/D165578#5448547

Differential Revision: https://phabricator.services.mozilla.com/D170395
2023-02-22 14:25:38 +00:00
Masayuki Nakano 0dfc1d00f9 Bug 1810406 - Handle asynchronous composition without synthesized `GDK_KEY_PRESS` event r=m_kato
IME for ibus may send composition after filtering `GDK_KEY_PRESS` event
asynchronously.  In that case, IME or ibus usually synthesize `GDK_KEY_PRESS`
again for letting the application know what's being handled.  However, according
to the bug report, IME may send composition without synthesizing the
`GDK_KEY_PRESS` event.

Without this patch, `IMContextWrapper` dispatches only
`eContentCommandInsertText` event.  Then, it'll cause only a set of
`beforeinput` and `input` events.  Therefore, web apps may fail to do something
if they listen only composition and keyboard events only in Gecko.  For avoiding
Gecko only failure in this case, we should make `IMContentWrapper` handle the
composition with `GDK_KEY_PRESS` event in the queue which it has not handled
yet.  Then, web apps can work with `keydown` events whose `key` is `"Process"`.

Differential Revision: https://phabricator.services.mozilla.com/D170031
2023-02-21 22:51:43 +00:00
Stanca Serban 200dca5cfb Backed out 4 changesets (bug 1813407) for causing Linux bp-hybrid bustages in WindowSurfaceProvider.h. CLOSED TREE
Backed out changeset 897b95c7fdad (bug 1813407)
Backed out changeset aba3e370a587 (bug 1813407)
Backed out changeset 61c79624c2ab (bug 1813407)
Backed out changeset f99d85efb04c (bug 1813407)
2023-02-21 12:54:32 +02:00
stransky b2f02e0367 Bug 1813407 [Linux] Remove unused nsWindow::GetMozContainerSize() r=emilio
Depends on D169907

Differential Revision: https://phabricator.services.mozilla.com/D169908
2023-02-21 09:30:12 +00:00
stransky d170405210 Bug 1813407 [Linux] Get window size from compositor widget if possible in WindowSurfaceWaylandMultiBuffer backend r=emilio
- We want to get window size from compositor widget as it matches window size used by parent RenderCompositorSWGL rendrer.
- For main thread rendering mCompositorWidget is not available so get window size directly from nsWindow.

Depends on D169906

Differential Revision: https://phabricator.services.mozilla.com/D169907
2023-02-21 09:30:11 +00:00
stransky 1b56bde4d2 Bug 1813407 [Linux] Allow to initialize WindowSurfaceProvider with GtkCompositorWidget for OMTC rendering r=emilio
Depends on D169905

Differential Revision: https://phabricator.services.mozilla.com/D169906
2023-02-21 09:30:10 +00:00
Jonathan Kew 4594ae314a Bug 1815404 - Replace most uses of gfxContext::CreateOrNull with stack-allocated contexts. r=gfx-reviewers,lsalzman
Depends on D170370

Differential Revision: https://phabricator.services.mozilla.com/D170371
2023-02-21 07:28:25 +00:00
Jonathan Kew 5b9588f1aa Bug 1815404 - Eliminate gfxContext::CreatePreservingTransformOrNull, and replace callers with stack-allocated gfxContext. r=gfx-reviewers,lsalzman
Depends on D170369

Differential Revision: https://phabricator.services.mozilla.com/D170370
2023-02-21 07:28:24 +00:00
Jonathan Kew 1b3e69f8aa Bug 1815404 - Remove refcounting from gfxContext. r=gfx-reviewers,lsalzman
Depends on D170367

Differential Revision: https://phabricator.services.mozilla.com/D170369
2023-02-21 07:28:24 +00:00
Emilio Cobos Álvarez c096b29240 Bug 1817396 - Try to draw the native GTK tooltip a bit harder. r=stransky
If we know that the light and dark foreground colors are the same we can
probably get away with it.

Differential Revision: https://phabricator.services.mozilla.com/D170247
2023-02-20 16:18:26 +00:00
stransky bfffdac75d Bug 1811637 [Linux] Detach accessible from moz_container before it's deleted r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D169197
2023-02-20 12:29:05 +00:00
Emilio Cobos Álvarez 9906d6868c Bug 1817451 - Make auto-style outline always non-native. r=cmartin,stransky,mac-reviewers,bradwerth
The datetime picker uses `outline-style: auto` (no other piece of chrome
UI does yet, afaict), and it looks real bad on Linux because
outline-style: auto is broken.

It's also slow, since we don't support webrender for it.

On Windows it's a 1px black outline, which is also terrible and can be
achieved in other ways.

On macOS the outline looks nice, but it seems better to make it
consistent across platforms, which allows the front-end to use it (I
don't think there's a use for the non-native outline).

Differential Revision: https://phabricator.services.mozilla.com/D170222
2023-02-20 11:58:38 +00:00
Andreas Pehrson 24035fdfb6 Bug 1816139 - In HeadlessWidget don't by default focus alwaysontop windows. r=karlt
webrtcIndicator is an alwaysontop window of type Dialog or TopLevel, but should
not receive focus by default.

Differential Revision: https://phabricator.services.mozilla.com/D169788
2023-02-20 08:05:08 +00:00
Andreas Pehrson dea5671716 Bug 1816139 - In HeadlessWidget for default focus, check WindowType::TopLevel instead of mTopLevel. r=karlt
webrtcLegacyIndicator is a parentless window of type Popup, but should not
receive focus by default.

Differential Revision: https://phabricator.services.mozilla.com/D169787
2023-02-20 08:05:08 +00:00
Emilio Cobos Álvarez 49f269b507 Bug 1812868 - Tweak scrollbar scaling set-up. r=mstange
This is to make GetDPIRatioForScrollbarPart thread-safe for stylo usage.

This was using the widget for bug 1727289, but just looking at the print
preview scale is enough to fix that.

Reviewed in: https://phabricator.services.mozilla.com/D168148
2023-02-20 00:01:12 +01:00
Sandor Molnar 0e3779abe6 Merge autoland to mozilla-central. a=merge 2023-02-18 11:01:10 +02:00
Sandor Molnar 2bc700c04b Backed out 2 changesets (bug 1812868) for causing bug 1817539. CLOSED TREE
Backed out changeset 07c689de250c (bug 1812868)
Backed out changeset e7d370501c50 (bug 1812868)
2023-02-18 09:34:04 +02:00
Emilio Cobos Álvarez f6bc72679b Bug 1817071 - Remove unused image-region support from cocoa code. r=mstange,mac-reviewers
Nobody sets -moz-image-region on macOS anyways, remove the dead code.

Differential Revision: https://phabricator.services.mozilla.com/D170008
2023-02-18 01:16:28 +00:00
Emilio Cobos Álvarez ad4bd6a3ba Bug 1812868 - Expose scrollbar-inline-size as a CSS variable to chrome code. r=mstange
For that we need to:

 * Make GetDPIRatioForScrollbarPart thread-safe: This was using the
   widget for bug 1727289, but just looking at the print preview scale
   is enough to fix that.

 * Make nsPresContext::UseOverlayScrollbars() thread-safe: We store the
   RDM pane stuff in the pres context.

The rest is pretty straight-forward.

Differential Revision: https://phabricator.services.mozilla.com/D168148
2023-02-17 21:15:06 +00:00
sotaro 0561f430e2 Bug 1817269 - Backout Bug 1798245 r=jrmuizel,gfx-reviewers
Bug 1798245 causes Bug 1817269 on Fx 110.

Differential Revision: https://phabricator.services.mozilla.com/D170151
2023-02-17 01:47:02 +00:00
Edgar Chen 3d5bc9089c Bug 1817166 - Remove unused argument from nsContentUtils::TransferableToIPCTransferable; r=nika
After Bug 1781129, aChild is no longer needed to allocate Shmem, but aParent is
still needed to grant access for file in https://searchfox.org/mozilla-central/rev/b579290e6b830d1b3f0a941203b0c0e1e56c42a3/dom/base/nsContentUtils.cpp#8171-8182.

Differential Revision: https://phabricator.services.mozilla.com/D170063
2023-02-16 16:56:53 +00:00
Andreas Pehrson c3c322ea16 Bug 1816436 - On GTK allow window manager menu on all always-on-top windows. r=stransky
This enables the menu so a user can choose to keep also the global webrtc
indicator on top of all workspaces.

Differential Revision: https://phabricator.services.mozilla.com/D169785
2023-02-16 14:50:24 +00:00
Andreas Pehrson 0b16ff8d4f Bug 1816436 - On GTK set decoration when no titlebar and resize handles requested. r=stransky
This avoids drawing border and shadow of a hidden titlebar for the global
webrtc indicator.

Differential Revision: https://phabricator.services.mozilla.com/D169784
2023-02-16 14:50:24 +00:00
stransky c813e487bc Bug 1815712 [Linux] Remove ATK maiRedundantObjectFactory as it's not used any more r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D169206
2023-02-16 10:05:17 +00:00
Ray Kraesig 029c6923c4 Bug 1814532 [4/4] - tweak Windows event logging output r=gstoll
Slightly adjust the aesthetics of the log format for Windows messages:
  * Print the message name first, and its parameters second. (This makes
    reading the sequence of events much simpler.)
  * Only output a separating space between the message name and its
    contents if the contents are nonempty.

Additionally:
  * Add parameter-serializers for some DWM-related messages.
  * Add WM_NCCALCSIZE to the messages whose parameters will be
    serialized twice.

Differential Revision: https://phabricator.services.mozilla.com/D168623
2023-02-16 00:48:09 +00:00
Ray Kraesig 52f66bb482 Bug 1814532 [3/4] - write messages as the correct log level r=gstoll
While adjusting the log level to filter messages _does_ work, the
messages are still all annotated as being at the current log-level,
rather than the minimum necessary log-level. This makes it appear to
readers of logs as though adjusting the log level will have no effect.

Instead of just using the current log level, compute and use an
effective log level.

Differential Revision: https://phabricator.services.mozilla.com/D168876
2023-02-16 00:48:09 +00:00
Ray Kraesig 7973bbec56 Bug 1814532 [2/4] - print wParam and lParam by default r=gstoll
By default, print the wParam and lParam of all messages.

This will not affect messages which have explicitly been marked as not
using their parameters -- only messages which have not yet had their
parameter serialization described at all.

Differential Revision: https://phabricator.services.mozilla.com/D168875
2023-02-16 00:48:09 +00:00
Ray Kraesig ed6362abd2 Bug 1814532 [1/4] - actually record WindowProc return values r=gstoll
The value currently being logged as the WndProc LRESULT is actually
garbage. Log the actual LRESULT after calling ProcessMessageInternal(),
instead.

Differential Revision: https://phabricator.services.mozilla.com/D168874
2023-02-16 00:48:08 +00:00
Tom Ritter 553a141e10 Bug 1815967: Add defines for MinGW in TSFTextStore r=firefox-build-system-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D169377
2023-02-15 19:01:57 +00:00
Tom Ritter c05d527571 Bug 1815964: Remove MinGW ifdefs in Virtual Desktop Manager r=firefox-build-system-reviewers,ahochheiden
It's not clear to me why we define IVirtualDesktopManager when it's
available in headers.  I do know that because we are defining it instead
of getting it from headers, we aren't defining the UUID of it in the
MinGW way (which of course is done in the MinGW headers) so if we
want to continue doing that, we will need to add that.  Although
it would be better if we could remove it entirely and use the headers...

Differential Revision: https://phabricator.services.mozilla.com/D169376
2023-02-15 19:01:57 +00:00
Tom Ritter f80a77c5d7 Bug 1636805: Remove the DirectManipulation hack-arounds r=firefox-build-system-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D169374
2023-02-15 19:01:56 +00:00
Gabriel Bustamante add0179a08 Bug 1799503 - Update Firefox via APT (not balrog) in our .deb packages r=bytesized
Differential Revision: https://phabricator.services.mozilla.com/D168324
2023-02-15 16:40:29 +00:00
Nicholas Rishel 2888499899 Bug 1816195 - Correct logged message for successful pipe wait for Windows Notification Server. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D169525
2023-02-15 00:08:56 +00:00
Joel Maher a62ef05cdb Bug 1816191 - Skip tests in order to keep win7 running @ azure. r=gbrown,necko-reviewers,settings-reviewers,application-update-reviewers,media-playback-reviewers,credential-management-reviewers,nalexander,sgalich,alwu
Differential Revision: https://phabricator.services.mozilla.com/D169523
2023-02-14 23:44:12 +00:00
Emilio Cobos Álvarez 1249da2f38 Bug 1816336 - Use consistent menu colors with color-scheme: dark and HCM. r=dao
When we get to NativeGetColor with ColorScheme::Dark and some of the
menu colors, we end up in a somewhat weird state, where most of the
colors come from GenericDarkColor, but some of the colors would use the
IsHighlightColor/IsHighlightTextColor code-path.

Use the non-native menu colors with the dark color-scheme consistently,
to guarantee we get matching color pairs. Note that for native menus
(i.e., Win7/Win8, we can't get here because of [1]).

The behavior when the user selects a light theme is a bit inconsistent
with this (because we'd still use the HCM colors in that case), but
that's both pre-existing and probably not a big deal.

To fix that properly we'd need to either introduce a third
`color-scheme`, which doesn't seem too appealing, or do something like
`color-scheme: light !important` on menus as well with `not
(-moz-windows-default-theme)` (which is fine but not sure it's desired).

[1]: https://searchfox.org/mozilla-central/rev/5ccb73c0217d1710b10d6e6e297cf3396d10ec23/toolkit/themes/windows/global/popup.css#32

Differential Revision: https://phabricator.services.mozilla.com/D169803
2023-02-14 16:07:39 +00:00
Gijs Kruitbosch 387cf24ca0 Bug 1810141 - fix tests to deal with changes to loadURI, r=mossop,perftest-reviewers,geckoview-reviewers,extension-reviewers,sparky,owlish
Depends on D168396

Differential Revision: https://phabricator.services.mozilla.com/D168397
2023-02-13 23:50:41 +00:00
Edgar Chen 60b2a99aab Bug 1809122 - Track top-level window context in DragSession; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D169121
2023-02-13 18:44:04 +00:00
Andi-Bogdan Postelnicu d7e8a09c21 Bug 1519636 - Reformat recent changes to the Google coding style. r=glandium
Updated with clang-format version 15.0.5 (taskcluster-MKK8dHUpQkGfPLA793lizg)
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D168658
2023-02-13 15:02:07 +00:00
Cristina Horotan 5f4356e527 Backed out 9 changesets (bug 1810141) for several test failures on a CLOSED TREE
Backed out changeset 8781a0d1254d (bug 1810141)
Backed out changeset 131037295784 (bug 1810141)
Backed out changeset 3852fbe290f4 (bug 1810141)
Backed out changeset 118f131a524a (bug 1810141)
Backed out changeset ab5d76846e10 (bug 1810141)
Backed out changeset dce3aa683445 (bug 1810141)
Backed out changeset 4dc41d90dbb3 (bug 1810141)
Backed out changeset 50b57ba1a061 (bug 1810141)
Backed out changeset 569de94781e4 (bug 1810141)
2023-02-13 16:05:30 +02:00
Gijs Kruitbosch ff1cc20bd7 Bug 1810141 - fix tests to deal with changes to loadURI, r=mossop,perftest-reviewers,geckoview-reviewers,extension-reviewers,sparky,owlish
Depends on D168396

Differential Revision: https://phabricator.services.mozilla.com/D168397
2023-02-13 12:55:26 +00:00
stransky 498077e020 Bug 1807942 [Linux] Don't use dmabuf surface if ExportDMABUFImageMESA() fails to export dmabuf file descriptors r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D169315
2023-02-10 08:04:13 +00:00
stransky ea17a88f1e Bug 1807942 [Linux] Don't crash when mGbmBufferObject is missing in DMABufSurfaceRGBA r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D169314
2023-02-10 08:04:12 +00:00
Cristian Tuns b25ff1fab8 Backed out 3 changesets (bug 1768495) for causing reftest failures in 1478035.html CLOSED TREE
Backed out changeset 6a48a9418fb3 (bug 1768495)
Backed out changeset ac0c0d68e31d (bug 1768495)
Backed out changeset 74c1903a5df6 (bug 1768495)
2023-02-09 21:31:43 -05:00
Brad Werth ed2a0660f9 Bug 1768495 Part 3: Remove redundant pause-on-minimize in nsCocoaWindow, remove pref. r=gfx-reviewers,ahale
Differential Revision: https://phabricator.services.mozilla.com/D169346
2023-02-09 23:44:20 +00:00
Brad Werth 5a99e78cfc Bug 1768495 Part 1: Add a method nsIWidget::PauseOrResumeCompositor, and override it in nsCocoaWindow. r=gfx-reviewers,emilio,ahale
This change does not affect behavior, it's just prepatory for a later
caller to the newly-defined method.

Differential Revision: https://phabricator.services.mozilla.com/D169344
2023-02-09 23:44:19 +00:00
stransky e2f197467f Bug 1811878 [Linux] If we fail to create YUV dmabuf plane with modifiers, try without it r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D168044
2023-02-09 12:40:37 +00:00
Stanca Serban 03d5025b0b Backed out 2 changesets (bug 1811878) for causing bustages in FFmpegVideoFramePool.cpp. CLOSED TREE
Backed out changeset e37ee30891ca (bug 1811878)
Backed out changeset 601c39a76573 (bug 1811878)
2023-02-09 12:54:11 +02:00
stransky bdb4dc8b05 Bug 1811878 [Linux] If we fail to create YUV dmabuf plane with modifiers, try without it r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D168044
2023-02-09 09:43:02 +00:00
stransky ccdefe634b Bug 1812290 [Linux] Check if dmabuf surface copy works and don't use it on broken systems r=alwu,emilio,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D167917
2023-02-08 13:35:08 +00:00
Nicholas Rishel 31b8bf2ed2 Bug 1497425 - Enable native notifications by default on Windows. r=nalexander
Depends on D166442

Differential Revision: https://phabricator.services.mozilla.com/D149180
2023-02-07 21:40:40 +00:00
Brad Werth a858f46d01 Bug 1407461: Allow hardware acceleration for Windows drivers with mismatched DLL and registry versions on Nightly. r=gfx-reviewers,jrmuizel
On Nightly, mismatched driver versions will be noted in any associated
crash reports, but otherwise will not be reported and will not prevent
hardware acceleration from activating.

On Beta and Release, we will continue to treat this as a disqualifying
condition.

Differential Revision: https://phabricator.services.mozilla.com/D168997
2023-02-07 20:30:13 +00:00
Iulian Moraru b5d3c70bf6 Backed out changeset f36d7b2b0ea1 (bug 1407461) for causing build bustages on GfxInfo.cpp. CLOSED TREE 2023-02-07 21:14:39 +02:00
Brad Werth 34b836525c Bug 1407461: Allow hardware acceleration for Windows drivers with mismatched DLL and registry versions on Nightly. r=gfx-reviewers,jrmuizel
On Nightly, mismatched driver versions will be noted in any associated
crash reports, but otherwise will not be reported and will not prevent
hardware acceleration from activating.

On Beta and Release, we will continue to treat this as a disqualifying
condition.

Differential Revision: https://phabricator.services.mozilla.com/D168997
2023-02-07 18:55:44 +00:00
Emilio Cobos Álvarez 825e54cafc Bug 1812329 - Move accesskey out of nsMenubarListener. r=smaug
This makes the following patch simpler.

Differential Revision: https://phabricator.services.mozilla.com/D168649
2023-02-07 16:29:40 +00:00
Tom Ritter 0b6dda60c6 Bug 1814705: Resolve a difference between Windows SDK and MinGW defines r=firefox-build-system-reviewers,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D168835
2023-02-06 17:47:04 +00:00
Makoto Kato a81830ccdb 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 3d092ba60e Bug 1775062 - Implement ipdl reads without needing default ctors. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D149743
2023-02-04 11:12:36 +00:00
Nika Layzell 1cbf30fe37 Bug 1812156 - Part 1: Fix some IPDL statements to use fully qualified names, r=necko-reviewers,valentin
These types were used in IPDL but were not fully qualified.

Differential Revision: https://phabricator.services.mozilla.com/D168877
2023-02-04 10:44:24 +00:00
Calixte 41eb47c48a Bug 1810761 - Add API to save a pdf file opened in pdf.js r=pdfjs-reviewers,geckoview-reviewers,marco,ohall,calu
Differential Revision: https://phabricator.services.mozilla.com/D168413
2023-02-03 10:01:34 +00:00
Stephen A Pohl 30321e1b4f Bug 639707: Add telemetry to detect how often we are getting restored by macOS vs. users manually launching the application. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167448
2023-02-03 03:28:06 +00:00
Stephen A Pohl 4ade4253ec Bug 639707 - Add resume session support on macOS. Based on a patch by :MattN. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167447
2023-02-03 03:28:06 +00:00
Stephen A Pohl bd3d2eacb3 Bug 639707 - Back out changeset 5c2c9bbf9fcc and replace with a patch to restore the ability to open new windows in new spaces when a window is already in fullscreen mode on macOS that supports macOS session restore. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167445
2023-02-03 03:28:06 +00:00
Iulian Moraru 890afccca9 Backed out 3 changesets (bug 639707) for causing macOS build bustages on nsCocoaUtils.mm. CLOSED TREE
Backed out changeset 0e733d6ed42d (bug 639707)
Backed out changeset 23c4048448bf (bug 639707)
Backed out changeset a3f8bdd9e837 (bug 639707)
2023-02-03 01:06:48 +02:00
Stephen A Pohl d6e9fd0b10 Bug 639707: Add telemetry to detect how often we are getting restored by macOS vs. users manually launching the application. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167448
2023-02-02 22:18:33 +00:00
Stephen A Pohl d5fbd770fa Bug 639707 - Add resume session support on macOS. Based on a patch by :MattN. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167447
2023-02-02 22:18:33 +00:00
Stephen A Pohl df2997399f Bug 639707 - Back out changeset 5c2c9bbf9fcc and replace with a patch to restore the ability to open new windows in new spaces when a window is already in fullscreen mode on macOS that supports macOS session restore. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167445
2023-02-02 22:18:32 +00:00
Stephen A Pohl 1058fb4fa4 Bug 1763990: Don't order popups in front of native context menus on macOS. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D168625
2023-02-02 22:13:54 +00:00
Csoregi Natalia 62a2ad64ed Backed out changeset eafcabbf729b (bug 1542802) for causing Gtest crashes. CLOSED TREE 2023-02-03 00:03:53 +02:00
Nika Layzell 373d136fe4 Bug 1542802 - Replace LazyIdleThread with a thin wrapper around nsThreadPool, r=jesup,gstoll
This does not reduce the number of threads we end up using in these
cases, but simplifies the complex implementation substantially by
relying on the idle thread lifetime management logic from nsThreadPool.

The nsISerialEventTarget implementation is maintained by wrapping the
nsThreadPool with a TaskQueue.

As a result of using these more reliable backing implementations, the
type is now also safe to use from any thread, rather than requiring
dispatches to all occur from the creator thread.

Unfortunately, this required some changes to the
UntrustedModulesProcessor, which was relying on the ability to fetch the
PRThread* (and from that the HANDLE) from the lazy thread in order to
perform priority changes on it. This was fixed by using a
nsIThreadPoolListener to watch the thread being created and destroyed,
and manually record a HANDLE to the thread which can be used for these
priority changes.

Differential Revision: https://phabricator.services.mozilla.com/D168017
2023-02-02 19:43:31 +00:00
welpy-cw 93f3096b21 Bug 1813498 - Make popup modal also on X11. r=emilio,stransky
Differential Revision: https://phabricator.services.mozilla.com/D168599
2023-02-02 09:22:06 +00:00
Neil Deakin 9c2e7458ba Bug 1776879, replace text/unicode for clipboard and drag and drop and use text/plain directly, r=edgar,mak,stransky,geckoview-reviewers,extension-reviewers,zombie,m_kato
Most usage is a straight replacement but gtk needs extra changes as it transfers plain text in UTF8 natively and needs to be converted into UTF16, and Windows uses single-byte characters for RTF and CF_HTML formats so we preserve this.

Differential Revision: https://phabricator.services.mozilla.com/D158587
2023-02-01 23:30:55 +00:00
stransky 6a3725cf27 Bug 1813500 [Linux] Don't hang Firefox when glxtest process hangs r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D168385
2023-02-01 20:09:36 +00:00