Age | Commit message (Collapse) | Author |
|
rootston: Don't let the wlr_output handle the fullscreen view in case…
|
|
layer-shell overlays
Otherwise the overlays will no tbe drawn.
Closes: #1300
|
|
FreeBSD fixes
|
|
On FreeBSD, epoll is provided as a 3rd-party library, so it needs to be
added as a dependency.
|
|
CLOCK_MONOTONIC appeared in IEEE Std. 1003.1-200x, it was not part of
POSIX.1b (the 1993 version), and FreeBSD treats it accordingly.
|
|
render: fix meson including libdrm
|
|
|
|
Fix libdrm includes
|
|
This removes any assumptions about how the libdrm headers are installed,
and uses the pkg-config include directories as we're "supposed to".
This only adds a partial dependency, since we don't actually need to
link against libdrm.
|
|
Fix headless backend
|
|
Fix include path for (libdrm/)drm_fourcc.h
|
|
This PR broke a private nixpkgs definition I have for wlroots: https://github.com/swaywm/wlroots/pull/1304
It is fixed by changing `#include <drm_fourcc.h>` to `#include <libdrm/drm_fourcc.h>`, which follows what is already done in the dmabuf example.
|
|
It was only working if you ran it underneath an already-working Wayland
compositor. Running with the headless backend on the API would break.
|
|
text-input: Accept disable requests
|
|
The disable signal on text-input objects must not be ignored. It is only sent when the previous state was enabled.
|
|
Support older wlr_linux_dmabuf_v1 clients
|
|
xwayland/xwm: make hints->input default to true
|
|
An X11 client can leave the hints->input WM hint unspecified,
by not setting the XCB_ICCCM_WM_HINT_INPUT flag in hints->flags.
In that case, we should assume a sane default.
Make the hint default to true, so that clients which do not specify
the hint, like mupdf, still get keyboard focus.
This should fix swaywm/sway#2231
|
|
If a client uses an older version of the dmabuf protocol, use the
`formats` event instead of `modifiers` (since that didn't exist in older
versions).
With a bit of necessary guessing, support dmabuf importing even when
EGL_EXT_image_dma_buf_import_modifiers isn't present instead of
failing up front.
|
|
text-input: fix releasing destroy handlers
|
|
|
|
|
|
|
|
|
|
Support input method and text input
|
|
Include wlr/config.h in x11.h
|
|
This fixes a warning from the linker when using LTO, due to mismatched
types.
|
|
backend/drm: don't reset conn->pageflip_pending in drm_connector_cleanup
|
|
If a pageflip is pending before cleanup, it's still pending after. This
is used line 1177: drm_connector_cleanup is called and
conn->pageflip_pending is checked afterwards.
Fixes #1297
|
|
output: remove idle_frame event source when destroying output
|
|
backend/drm: set drmEventContext version to 2
|
|
As per [1] set drmEventContext version to 2, since wlroots does not use the
page_flip_handler2.
[1]: https://s-opensource.org/2017/04/12/libdrm-event-handling-youre-probably-wrong/
|
|
The compositor acts as a relay between applications using the text-input protocol and input methods using the input-method protocol.
This change implements the basic but useful support for input-method, leaving out grabs as well as popups.
|
|
Implemented basic input method functionality. Not included: popups, grabbing.
|
|
wayland-scanner >= 1.15.0 accepts foreign struct references, necessary in protocols like zwp-input-method-v2
|
|
|
|
This prevents the idle event to be activated on a destroyed
output.
This also makes the backend responsible for free-ing modes, as it
is the one allocating them and adding them to the list. Note that
the DRM backend (the only one using modes) already frees them.
|
|
rootston: export XCURSOR_SIZE and XCURSOR_THEME
|
|
backend/drm: add support for the link-status property
|
|
These can be used by toolkits (currently Qt) to choose a default
cursor theme and size. Note that this isn't a perfect solution:
- Per-seat configuration isn't possible
- It's not possible to set the default image
- Live config reload isn't possible
But it's easy to implement and simple. To fix these remaining
issues a separate protocol would be needed.
|
|
meson.build: require logind v237
|
|
Commit 7b523884249f904f45b1e9a7eae8152c2ac1248d uses a function added in logind v237
|
|
backend/drm: better handle GPUs without CRTCs
|
|
|
|
|
|
output: don't trigger a frame immediately in schedule_frame
|
|
|
|
This desynchronizes our rendering loop with the vblank cycle.
In case a compositor doesn't swap buffers but schedules a frame,
emitting a frame event immediately enters a busy-loop.
Instead, ask the backend to send a frame when appropriate. On
Wayland we can just register a frame callback on our surface. On
DRM we can do a no-op pageflip.
Fixes #617
Fixes swaywm/sway#2748
|
|
Revert "Prevent excessive frame events when compositor doesn't swap buffers"
|
|
|