- 19 Feb, 2021 1 commit
-
-
Alexandros Frantzis authored
Take into account that applications can sometimes use top-level windows explicitly owned by the desktop window as transient popups, in addition to the already handled case of unowned top-level windows. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
- 18 Feb, 2021 13 commits
-
-
Alexandros Frantzis authored
The wayland protocol doesn't allow clients to change the display mode. We can emulate such changes by allowing clients (in this case Wine) to draw at the desired resolution and then instructing the wayland compositor to scale the result accordingly. The used scaling method preserves the aspect ratio of the requested display mode. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Instead of marking each mode as current or not, use a pointer in struct wayland_output to point to the current mode. This is less wasteful and makes finding the current mode easier. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Wayland provides refresh rates in mHz, Wine wants it in Hz, so divide by 1000 to transform from Wayland values to Wine values. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Move output handling to the per-thread struct wayland instances, thus removing the need for a per-process instance. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Support drag-n-drop operations in the direction of native Wayland clients to Wine clients. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Destroying a surface may lead to events which we need to handle immediately to ensure the wayland state is up to date. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com> Suggested-by:
Tadeo Kondrak <me@tadeo.ca>
-
Alexandros Frantzis authored
Implement OpenGL support by using wayland EGL. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Add the wayland driver at the end of the default driver list. This ensures that under wayland compositors that support Xwayland, the more complete and mature X11 driver will be used. One can force using the wayland driver by ensuring X11 is not accessible, e.g., by unsetting the DISPLAY environment variable. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Implement a wayland driver with GDI support. This driver allows users to run Windows applications directly on wayland compositors without an intermediate layer to translate from X11 to wayland. The driver is currently not built by default and needs to be enabled with the '--with-wayland' configuration flag. A major incompatibility between win32 and wayland is the absence (by design) of any support for absolute screen window positioning in the wayland protocol. For win32 transient windows (menus, tooltips etc) the driver tries to work around the lack of absolute positioning by anchoring them to an owning wayland surface and treating them as subsurfaces of that owner. Screen coordinates for such windows are transformed to local coordinates relative to the owning surface, allowing correct placement through relative subsurface movement, which is supported by wayland. Absolute positioning is not supported at this time for non-transient top-level windows. The wayland driver currently creates a single backing window surface for each toplevel window, and all children windows use that single window surface. Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Alexandros Frantzis authored
Track ticks since draw start per window_surface, instead of per window as is currently the case. This helps reduce visual glitches caused by badly timed flushes in backends which use the same (parent) window_surface for children windows. For example, with a shared window_surface, and with the current scheme of per window start_tick tracking we may flush while drawing a child when performing a redraw originating from the parent: flush Draw parent (bounds is empty so parent start_ticks is reset) Draw child 1 (bounds possibly not empty, child1 start_ticks not reset, and depending on when child 1 was drawn independently this could lead to a flush during the draw) With per surface draw ticks: flush Draw parent (bounds is empty so surface start_ticks is reset) Draw child 1 (bounds possibly not empty, but since surface start_ticks were reset by parent it's unlikely that we flush during this draw) Signed-off-by:
Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
- 17 Feb, 2021 26 commits
-
-
Anton Baskanov authored
Signed-off-by:
Anton Baskanov <baskanov@gmail.com> Signed-off-by:
Zebediah Figura <zfigura@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Anton Baskanov authored
Signed-off-by:
Anton Baskanov <baskanov@gmail.com> Signed-off-by:
Zebediah Figura <zfigura@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Anton Baskanov authored
Signed-off-by:
Anton Baskanov <baskanov@gmail.com> Signed-off-by:
Zebediah Figura <zfigura@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Jacek Caban authored
Fixes a typo from 9faa5eed. Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Akihiro Sagawa authored
Signed-off-by:
Akihiro Sagawa <sagawa.aki@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Akihiro Sagawa authored
Otherwise, RegUnLoadKey(HKEY_USERS, "S-1-5-21-0-0-0-1000") erases all HKCU registry. The call is actually done by a certain installer. Signed-off-by:
Akihiro Sagawa <sagawa.aki@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Akihiro Sagawa authored
Signed-off-by:
Akihiro Sagawa <sagawa.aki@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=26269Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=26269Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
It looks like that GetKeyState is supposed to catch key presses when called from a background thread even after its thread message queue and thread input structures have been created. This happens in Bioshock 2 Remaster, and causes the game to stay forever on a "Press space to continue" screen, as the thread checking for space key press calls GetKeyState repeatedly (and PeekMessage), although it's in background. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=26269Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
This allows parameterized interfaces to be instanciated in declare blocks, in the same way MIDL does, generating a new interface to the header from the parameterized type template, replacing its parameters with the given types. Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
This allows parameterized types to reference each other with a different set of parameters. This is required for instance for IIterable<T>, that needs to reference IIterator<T>. The partial specialization is recorded by adding a new parameterized type, referencing the original one as its template. The parameterized type chain will be resolved all at once when the type is declared. Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
And use its emulated_interface. This adds a private_refcount to track hidden references, and a reference to the wined3d_device, to keep the d3d_device alive while not publicly referencing it. This uses d3d_device_context_state_AddRef on init so that the initial references are also traced, making it easier to verify that nothing is leaked. Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Rémi Bernon authored
Signed-off-by:
Rémi Bernon <rbernon@codeweavers.com> Signed-off-by:
Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Jacek Caban authored
Signed-off-by:
Jacek Caban <jacek@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Nikolay Sivov authored
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Alexandre Julliard authored
Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Zebediah Figura authored
Signed-off-by:
Zebediah Figura <z.figura12@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Zebediah Figura authored
Signed-off-by:
Zebediah Figura <z.figura12@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Zebediah Figura authored
Signed-off-by:
Zebediah Figura <z.figura12@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Zebediah Figura authored
Signed-off-by:
Zebediah Figura <z.figura12@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-
Zebediah Figura authored
Signed-off-by:
Zebediah Figura <z.figura12@gmail.com> Signed-off-by:
Alexandre Julliard <julliard@winehq.org>
-