Commit Graph

592969 Commits

Author SHA1 Message Date
Gabriel Ivăncescu
e922a71604
Return the old attribute value when swapping even if it has a namespace.
Currently this will always "swap" the value with NULL since it gets reset,
and the element's SetAttrAndNotify uses the swapped value as the oldValue for
mutation observer notifications, so it's always NULL, which does not match IE.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2024-02-19 18:31:08 +02:00
Gabriel Ivăncescu
72fa55dea9
Expose a method in nsIContentUtils to convert a namespaceID to its associated
URI string.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-11-15 18:09:47 +02:00
Gabriel Ivăncescu
b2ca30b9de
Expose a method in nsIContentUtils to convert a nsAttrValue to its string
representation.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-11-15 18:09:46 +02:00
Jacek Caban
661498710e nsprpub: Don't add -mwindows to CC/CXX variables. 2023-09-17 13:54:07 +02:00
Jacek Caban
d392d22d5e nss: Don't use -mwindows in OS_CFLAGS. 2023-09-17 13:54:07 +02:00
Jacek Caban
e94d4bafcf condifure: Don't use CC/CXX/CPP values to force -mwindows flags.
This is meant only for linking and current Clang is more strict about that.
2023-09-17 13:54:07 +02:00
Jacek Caban
5522534e94 wmf: Use a different name for static CLSID_VideoProcessorMFT definition.
mingw-w64 provides a public declaration of that, which conflicts with the local one.
2023-09-17 11:00:35 +00:00
Gabriel Ivăncescu
1b847d364f
Export ccref_stabilize_for_deletion.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-31 19:13:23 +03:00
Gabriel Ivăncescu
db12aa07f8
Add should_delete argument to ccref_decr.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-30 18:14:48 +03:00
Gabriel Ivăncescu
2f405d211a
Expose CycleCollectFull in nsIDOMWindowUtils to force a full CC.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-08-29 19:08:01 +03:00
Jacek Caban
00146e3243 Wine Gecko 2.47.5-devel version bump. 2023-08-21 14:07:19 +02:00
Jacek Caban
557ea0c2e9 Wine Gecko 2.47.4 version bump. 2023-04-10 13:39:35 +02:00
Jacek Caban
3cb219be36 Wine Gecko 2.47.4-rc1 version bump. 2023-04-03 19:45:39 +02:00
Gabriel Ivăncescu
e3eff67fed Avoid WM_QUIT loop by posting it directly to thread message queue.
Based on patch by Chad Austin (bug 480220).

Fixes a rare infinite loop in FFXIV Launcher when changing layout (which
restarts it).

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-04-03 17:45:21 +02:00
Jacek Caban
04ef8cdae6 gitlab: Add support for build artifacts. 2023-04-03 16:42:02 +02:00
Gabriel Ivăncescu
7ffaccd0aa
Force reload the image in input elements when changing src attribute.
So it matches image elements and IE behavior.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-03-09 18:51:09 +02:00
Gabriel Ivăncescu
a24e24af35
Dispatch image load events synchronously when it completes immediately in
pre IE9 modes.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-03-09 18:51:08 +02:00
Gabriel Ivăncescu
335da24386
Allow unescaped invalid URL chars in non-stringed CSS url() for IE7 and below.
With changes by: Jacek Caban <jacek@codeweavers.com>

IE7 and below parse unescaped chars (such as whitespace) of urls without
string as part of the url, unlike IE8+ which are spec compliant. So
url(file:///C:/a b/blah.jpg) and url(C:\\c d\\foo.png) both work but only
in IE7 and below modes, without having to escape the space with backslash
or enclosing the url in quotes. The launcher for Imperiums: Greek Wars
depends on this.

Note that on native it's not spaces that are special, but rather it looks
up until the closing parenthesis (unless it is escaped via backslash). For
example, even unescaped newline is processed as part of url:

background:url(
); background-color: black;

...sets it to black, but:

background:url(
; background-color: black;

...does not since it's invalid.

For some reason escaping a space via backslash `\ ` does not function as it
should, but others do (such as parentheses). The game's launcher actually
uses Regex.Escape(text).Replace("\ ", " "), so this is probably something
special there.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-02-22 18:13:25 +02:00
Gabriel Ivăncescu
8856e41e92
Add IECompatMode prop to nsIDOMHTMLDocument.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-02-22 18:13:23 +02:00
Gabriel Ivăncescu
7162bda162
Don't warn on synchronous XHRs.
They're deprecated in Gecko, but still functional.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-01-24 22:00:48 +02:00
Jacek Caban
5208117d2b gitlab: Add initial CI integration.
Based on Wine.
2023-01-23 13:14:21 +01:00
Jacek Caban
65df784694 libstagefright: Include Windows headers on mingw. 2023-01-23 13:14:21 +01:00
Jacek Caban
babe7f60dd configure: Use -Wno-implicit-int in C compiler check. 2023-01-23 13:14:21 +01:00
Jacek Caban
bbdc4e9a41 make_package: Provide default MAKEOPTS value. 2023-01-23 13:14:21 +01:00
Jacek Caban
f2266f4c72 ffvpx: Don't build snprintf.c on mingw. 2023-01-23 13:14:21 +01:00
Jacek Caban
8ab7fcb499 make_package: Make sure that SHELL environment variable is set. 2023-01-23 13:14:21 +01:00
Gabriel Ivăncescu
c8baf36f55 Allow creation of some other events that IE supports via createEvent.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-01-04 00:22:43 +00:00
Gabriel Ivăncescu
9bf698b1a8 Allow creation of "PageTransitionEvent" via createEvent.
Rather than "PageTransition", since it's what IE uses.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2023-01-04 00:22:43 +00:00
Gabriel Ivăncescu
f27a49964c
Expose GetComplete in nsIDOMHTMLInputElement.
To implement the IE-specific `complete` prop.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-11-21 22:13:54 +02:00
Gabriel Ivăncescu
d0be70d6a6 Allow chunked array buffers in GetResponseBuffer.
So that "ms-stream" response type can be implemented on top of them at
some point.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-08-08 16:43:34 +00:00
Gabriel Ivăncescu
937328640b
Add XPCOM listener for MediaQueryList.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-07-28 21:08:06 +03:00
Gabriel Ivăncescu
ce8e56ad1f
Allow creation of ProgressEvent via CreateEvent.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-07-22 19:27:25 +03:00
Jacek Caban
8371ee9708 Don't ship plugin-container.exe. 2022-07-13 16:47:27 +02:00
Gabriel Ivăncescu
12884e15d0 Don't call the IPCWindowProcHandler.
As we only use in-process plugins, so this is not needed.

Fixes issues with InSendMessageEx, which merely tells us if there is an
inter-thread message waiting anywhere, but it can be sent to any other
window or even be a different message sent to the current window. It's
possible to SendMessage during processing of an inter-thread message without
impacting InSendMessageEx's results (because it's badly designed), so Gecko
would call ReplyMessage on an intra-thread message, messing up a totally
unrelated message.

FFXIV Launcher does something like this when it has not enough disk space
and displays a message box for it. The thread that calculates the disk space
sends a user message to the main thread, and ends up blocking. Immediately
after sending it, it posts a WM_CLOSE, but since it's blocked, it should wait
until the main thread finishes processing the message (when the message box
is closed). However, creating the message box results in a WM_KILLFOCUS being
sent to the Gecko window. This is an intra-thread message, but since there's
the prior user message that blocks the other thread, InSendMessageEx returns
that it is indeed waiting, causing ReplyMessage to be called in response to
this intra-thread WM_KILLFOCUS, which is wrong and instantly quits the app
(because of the WM_CLOSE).

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-07-13 16:41:21 +02:00
Jacek Caban
4bdb5ce771 2.47.3 version bump 2022-07-12 15:33:06 +02:00
Gabriel Ivăncescu
ebc2b46a8b Allow loading local file URIs when schemas don't match.
Internet Explorer allows loading file:// URIs when the schemas don't match
(for example, from a https website), and some applications, such as the
launcher for Imperiums: Greek Wars, depends on this as it loads the news
feed via http and then puts CSS with the background from the game directory
via file://

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-07-03 17:57:54 +00:00
Gabriel Ivăncescu
57f5269bfc
Add new getResponseBuffer method in nsIXMLHttpRequest.
Add a new method to nsIXMLHttpRequest that transfers the buffer contents
of gecko's ArrayBuffer response into an arbitrary buffer for wine. If
buffer is NULL, it only returns the size without transferring anything,
which allows wine to allocate the buffer. This will allow wine to implement
the response prop.

Calling it frees gecko's buffer, but of course it has to be cached on
wine side anyway because it must return reference to the same object on
subsequent calls.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-07-03 19:53:29 +03:00
Gabriel Ivăncescu
0018fc6db4
Restore nsIDOMMediaQueryList XPCOM interface.
Except for AddListener and RemoveListener as they would add unnecessary
complications not needed by wine.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-06-28 15:46:07 +03:00
Gabriel Ivăncescu
1004e5f9fd
Restore nsIDOMProgressEvent XPCOM interface.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2022-06-28 15:46:06 +03:00
Connor McAdams
f4c0266dcb mozconfig-common: Enable accessibility support.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2022-06-13 19:19:34 +02:00
Connor McAdams
420a327259 accessible/generic: Add stubs to DocAccessible for wine-gecko specific nsIDocument methods.
DocAccessible inherits from nsIDocumentObserver, which inherits from
nsIDocument. Wine-gecko adds two more methods to this class, which we
need to stub.

Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2022-06-13 19:19:30 +02:00
Nathan Froyd
f2f92c69fe Bug 1312543 - remove bogus comparison in ia2Accessible.cpp; r=surkov
This comparison is confused, as aNRanges is an out argument; we only
care about non-nullness of the pointer.  Additionally, recent versions
of clang consider non-equality comparisons with pointer types an
error.

MozReview-Commit-ID: 8lXeCwP6Lz6
2022-06-13 18:33:38 +02:00
Michael Cronenworth
7601bd7199 nsprpub: Use winsock2.h in prmapopt.c.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52085
2022-01-26 16:19:08 +01:00
Jacek Caban
712db1d962 virtualenv: Update to upstream v16.7.11.
Based on Miro Hrončok's and Patrick Laimbock's findings:
https://bugzilla.redhat.com/show_bug.cgi?id=1987713

Using upstream commit fb6e546cc1dfd0d363dc4d769486805d2d8f04bc.
2022-01-18 16:14:02 +01:00
Patrick Laimbock
ba7c38da4a python: Import MutableSet and MutableSequence from collections.abc. 2022-01-18 16:14:01 +01:00
Patrick Laimbock
ea813cd85d gfx/2d: Include limits in BaseRect.h. 2021-11-25 21:39:13 +01:00
Patrick Laimbock
41ff0c2652 python: Import Interable and Mapping from collections.abc. 2021-11-07 17:31:58 +01:00
Jacek Caban
90c58e20ed 2.47.2 version bump 2020-11-30 13:47:56 +01:00
Jacek Caban
47b539699d configure: Support delayload on llvm-mingw. 2020-11-30 13:44:54 +01:00
Jacek Caban
a76dd884fa xpcom/strings: Remove unused broken Assign variant from nsTString. 2020-11-30 13:44:54 +01:00