1
0
mirror of https://github.com/roytam1/UXP.git synced 2026-05-26 13:58:49 +00:00
Commit Graph

166 Commits

Author SHA1 Message Date
wuggy 235bcb010b Whitelist virtual GPUs (VirtualBox, VMware, VirtIO (QEMU and forks like UTM), Parallels) 2026-05-19 09:09:58 +08:00
Basilisk-Dev f8ad674b35 Issue #3079 - Add EGL-aware X11 GL probing and fallback 2026-05-08 06:42:25 +08:00
Moonchild 8c3c8b4e91 [widget] Improve clearing of data during clipboard operations. 2026-04-27 10:03:06 +08:00
Basilisk-Dev 6ce1b9a8c0 Issue #3027 - remove all uses of dbus-glib from widget/ 2026-04-10 22:54:48 +08:00
Moonchild e801145319 Issue #2909 - Fix build issues when targeting Windows 7.
Despite Windows 7 supporting Tablet Mode and screen orientation just fine
(I had a Win 7 tablet PC back when), Microsoft decided that starting with
the Windows SDK 10.0.22621.0, the enum and types for auto-rotation should
no longer be defined, so we have to define them ourselves.
2026-02-11 06:57:06 +08:00
Moonchild 5d989634a1 Issue #2909 - Base implementation of media interaction features.
This implements `hover`, `pointer`, `any-hover` and `any-pointer` and
the values `course`/`fine` (pointer) and `hover`.
A best effort is made to get capabilities from the system but if unknown
always falls back to assuming a mouse is present.
2026-02-11 06:56:51 +08:00
trav90 b04e3d93c9 Issue #1636 - Part 3 - Remove Gconf 2026-01-13 23:48:19 +08:00
Moonchild 1782eeb3bd Issue #2887 - Convert use of -moz-appearance to appearance 2026-01-07 23:09:03 +08:00
Moonchild e3de626c1f Bug 1875345 - Report 24 instead of 32 as the colorDepth (and pixelDepth) on Linux (assuming 8 of 32 bits are for the alpha channel).
This now matches the logic in our equivalent Windows code, and this is
also per spec ("number of bits...excluding the alpha channel"):
https://drafts.csswg.org/cssom-view/#dom-screen-colordepth
With this change, the WPT test starts passing on Ubuntu 22.04
(which was previously flagged as an unexpected failure).
2025-08-18 09:48:16 +08:00
Moonchild 723180132d Issue #2847 - Extend -moz-os-version media query with win11.
Resolves #2847
2025-08-14 08:39:18 +08:00
Francis Dominic Fajardo 6e358f1039 Issue #2765 - Follow-up: Fix UAF when returning the non-NAC style context from a frameless node 2025-06-29 00:15:02 +08:00
Francis Dominic Fajardo af84337437 Issue #2765 - Follow-up: Make scrollbar width checks use the originating non-NAC style context on Linux and Mac 2025-06-29 00:14:43 +08:00
Francis Dominic Fajardo 3ba0b10bb4 Issue #2765 - Part 3: Make scrollbar width checks use the originating non-NAC style context 2025-06-27 23:32:50 +08:00
Francis Dominic Fajardo 8236eec152 Issue #2765 - Part 1: Scrollbar width should be treated as a non-inherited property
Note: non-inherited properties are stored in "reset" style structs.

Previous implementation treats it as an inherited property, which
doesn't match the spec.

This also fixes the incorrect behavior when using the `unset` value
for this property by specifying SETVAL_UNSET_INITIAL in the mask.
2025-06-27 23:31:38 +08:00
Moonchild 1c8e994b65 Issue #2762 - Remove SVGZoomEvent interface.
Resolves #2762
2025-06-27 23:29:48 +08:00
Moonchild 1283a5f874 [widget] Extend the use of FOS_NODEREFERENCELINKS on Windows.
In the modern era of user-customizable Quick Access sidebars on every file
dialog, navigating via `.lnk` files is considerably less useful than it
was twenty years ago.

Disable link-following in file-open dialogs by default, to prevent any of
the usual security issues involving symlink smuggling.

Allow overriding this behavior via a pref, for users who want to trade off
this security issue for convenience of being able to follow links inside
file dialogs (older OSes and established user workflows).
Note: File Save dialogs have a set of more nuanced guards against link
smuggling and protected file access; this change doesn't affect that.
2025-04-03 09:50:02 +08:00
Brian Smith 1554c778f4 No Issue - Make nsCocoaWindow hold a death grip on its native window until its destructor. https://bugzilla.mozilla.org/show_bug.cgi?id=1880582 2024-12-20 13:41:57 +08:00
Moonchild 7e3f0d53a2 Issue #2515 - Remove mForceContentDispatch and mNoContentDispatch 2024-08-05 10:29:26 +08:00
FranklinDM 4bf43b8fb4 Issue #2488 - Part 3: Remove the StyleSetHandle smart pointer class 2024-04-02 22:49:48 +08:00
FranklinDM 656ee639c5 Issue #2112 - Part 1: Remove Stylo tests 2024-04-02 22:29:48 +08:00
Daniel Holbert ce3cc6b74d [gtk] Let printer enumeration run to completion, to avoid a GTK bug. 2024-01-25 12:12:28 +08:00
Martok 65d72c5682 Issue #2435 - Add onrejectionhandled and onunhandledrejection EventHandler
Based-on: m-c 1362272
2024-01-09 12:00:14 +08:00
Moonchild 94a892fcbf Bug 1868901 2023-12-21 10:15:55 +08:00
Moonchild f2b0066036 [widget] Change RegisterDragDrop to be called on idle.
This is a low-priority init function that should not be called with
immediate dispatch to the current thread, for performance reasons.
Additionally, do not call RegisterDragDrop for hidden windows.
2023-10-26 10:52:28 +08:00
Brian Smith 0fc38724d1 No Issue - Fix intermitted crash on MacOS 14 Sonoma Beta 3. Not sure why this is happening but mIOSurface is nullptr. If we just skip binding, it will be created on the next call to BeginUpdate. 2023-07-25 09:15:54 +08:00
Moonchild 500af2fe51 [widget] Rewrite data-read loop in OnDataAvailable.
The read-loop in OnDataAvailable was needlessly baroque and used a very
strange dialect of Hungarian notation. Factored out the zero-element
case for simplicity, and added justification in comments as-appropriate.
2023-05-11 09:28:28 +08:00
Moonchild f1759b33ff Issue #1656 - Remove more vim control lines.
Vim control lines were re-introduced or not entirely cleaned up.
This nukes them again.
Removing from accessible, [root], tools, uriloader, widget, xpcom and
xpfe.
Resolves #1656
2023-05-05 23:00:05 +08:00
Sandra af613ef24e Increase size of data over which we write the data to disk rather than keep it around in memory 2023-04-13 09:23:03 +08:00
Sandra 42723b1636 Use nsAnonymousTemporaryFile for clipboard cache
Base on https://github.com/mozilla/gecko-dev/commit/ecc04a9245b409d7eed7df63ba733cd2073180de
2023-04-13 09:22:39 +08:00
Brian Smith 2625cb0b61 No Issue - Fix drawing in titlebar on Mac when building with the Big Sur 11.0 SDK. On Intel we build with the 10.12 SDK so this problem is avoided. Also Pale Moon no longer supports drawing in the titlebar in the front end. However Basilisk does and built for ARM the tabs were cut off by the native titlebar. This uses the new APIs introduced in SDK 10.10 and 11.0 to draw in the titlebar. 2023-04-05 07:11:27 +08:00
Moonchild 078b1b73dc Issue #2161 - Ctrl + Enter should cause keypress event even though the key combination doesn't input any character
Currently, we dispatch keypress event when Enter is pressed without
modifiers or only with the Shift key (line break).
However, other browsers dispatch keypress events for Ctrl + Enter also
even if it doesn't cause any text input.

So, we should fire keypress events for Ctrl + Enter, even in strict
keypress dispatching mode. Note that with other modifiers, it depends on
the browser and/or platform and we can't dispatch the event for
consistent behavior.

This means web developers shouldn't rely one keypress events to catch
Alt + Enter, Meta + Enter and two or more modifiers + Enter.

Based on BZ 1438133
Resolves #2161
2023-03-24 09:13:51 +08:00
FranklinDM 24572438a0 Issue #2135 - Bug 1413102: Ensure Shadow DOM boundaries are dealt properly in event handling
* RE: BasicEvents.h - our WidgetEvent is not movable (yet), so the change that requires that wasn't included.
* Parts of this use code that was introduced in bug 1427511. For now, they were replaced with their equivalents.
2023-03-06 16:14:31 +08:00
Moonchild bca689b483 [widget] Properly test for and handle errors in target-surface creation and mapping. 2023-02-20 12:01:04 +08:00
Moonchild 4381425b26 [gtk widget] Use text/uri-list for file drag&drop. 2023-01-19 09:41:00 +08:00
FranklinDM 704a1bcfab No issue - Replace use of deprecated GetPreventDefault in GTK menu bar 2022-12-30 09:20:59 +08:00
Brian Smith e10eeed772 Issue #2022 Follow-Up - Add autorelease to our manual NSView to prevent potential leaks. Also move titlebar overrides from BaseWindow to ToolbarWindow... This caused problems in Waterfox Classic on Ventura, while this didn't seem to be necessary in UXP... There is no need for those overrides in BaseWindow, so why risk potential problems. https://bugzilla.mozilla.org/show_bug.cgi?id=1576387 https://github.com/WaterfoxCo/Waterfox-Classic/commit/d7f5814dc089f615385a00db4dfe187c6aefa1af 2022-12-02 23:56:58 +08:00
Martok b4dd106262 Issue #2030 - Dispatch click on common interactive ancestor if mousdown/up are not on the same element
For example, if the mouse is dragged from one element to another while
staying inside the same button, dispatch from their common ancestor
2022-12-02 23:56:40 +08:00
Martok 4354c7a1bc Issue #2030 - Allow child nodes of button to participate in mouse hit tests
This is needed for web compatibility, even if standards compliance is debatable.
2022-12-02 23:55:57 +08:00
FranklinDM 6d6d149b6f Issue #2036 - Prevent GTK color picker from being frozen when launched from a modal XUL window
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1496836
2022-12-02 23:55:12 +08:00
Brian Smith 70727d0a0b Issue #2022 - Part 2 - Add Ventura version detection. Also add Monterey and Ventura to the graphics driver blocklist. 2022-10-27 09:02:53 +08:00
Brian Smith 069b11c14c Issue #2022 - Part 1 - Fix transparent windows on MacOS 13 Ventura. During the BaseWindow creation contenView is nil on Ventura... So create a NSView with the requested dimensions and set is as the contenView. 2022-10-27 08:59:37 +08:00
Moonchild 1392f5f223 Issue #2019 - Do not dispatch keypress event for non-printable keys.
This will prevent the keypress DOM event from firing on keypresses
that do not produce printable keys (e.g. editing nav keys) in content.
This should not affect any chrome events that are in use.
Event dispatch can be re-enabled if necessary with the added pref.
2022-10-27 08:57:42 +08:00
Moonchild e54e8f61bb Issue #1970 - Part 2: Remove the extra padding on buttons
Extra padding was created for a prospective -moz-focus-inner ring.
We now just size that ring the same as the content frame, inflated by its CSS
padding.
2022-08-04 14:24:10 +08:00
Brian Smith 7224a17903 Issue #1905 - Part 2c - Fix OpenGL crash caused by calling [NSOpenGLContext setView:] on the Compositor thread. Starting with SDK 10.14 I believe, many functions have main thread checks, including setView: and update. So we now move the code in the updateGLContext method into doDrawRect which runs on the main thread. 2022-06-13 08:55:28 +08:00
Brian Smith 45606ffa59 Issue #1905 - Part 2a - Build system fixes to allow use of SDK versioned 11.0 and higher. Also don't include code incompatible with SDK 10.15 and higher, when building with such a SDK. 2022-06-06 08:57:16 +08:00
Brian Smith 8cee7f2b18 Issue #1905 - Part 1 - Implement detection of Monterey (12.x), Intel emulation and fix required OS version check. 2022-06-06 08:57:09 +08:00
Moonchild 3bcd2ee360 [DOM] Don't allow internal MIME types to be assigned to DataTransfer
We already blocked x-moz-file(-promise) and x-moz-place* but of course people
would find ways to abuse other internal types. This change now blocks everything
except x-moz-url types which are harmless. (i.e. whitelist instead of blacklist)
2022-05-31 09:41:43 +08:00
Brian Smith 13fcc4a046 Issue #1829 - Revert "Issue #1751" 2022-05-04 09:40:24 +08:00
Moonchild eaf9e756a0 Issue #21 - Remove remaining telemetry structs, callers and flags. 2022-04-28 10:33:44 +08:00
Moonchild 8d800b1cb0 Issue #21 - Remove Telemetry plumbing and fix build.
Note this won't give working applications. Requires FE changes and
additional js module changes (next part).
2022-04-28 10:25:48 +08:00