Commit graph

175 commits

Author SHA1 Message Date
Jente Hidskes
8f3b22b3ae
seat: fix hiding cursor on touchscreen-capable seats
Fixes #83.
2020-02-01 15:23:20 +01:00
Jente Hidskes
66313efb01
CI: build with --werror 2020-01-31 22:58:15 +01:00
Jente Hidskes
33cd4c2af9
meson: don't build with -Werror by default
Fixes #70. For development, initialise meson with the `--werror` option:

```
meson build --werror
```

Alternatively, for an existing build, run

```
cd build
meson configure -Dwerror=true
```
2020-01-31 22:55:16 +01:00
Jente Hidskes
15eeb7784e cage: add -v argument to print version 2020-01-26 18:18:49 +01:00
Jente Hidskes
5e27683961 Move docs to the wiki 2020-01-26 18:18:49 +01:00
Jente Hidskes
a63c75c849 Cage: check if XDG_RUNTIME_DIR is set
Wayland requires this environment variable to be set, see
https://manpages.debian.org/experimental/libwayland-doc/wl_display_connect.3.en.html
2020-01-25 23:30:28 +01:00
Jente Hidskes
30d805d6ff CI: build against wlroots 0.10.0
There are no breaking changes otherwise, so in meson.build we can leave
the version to anything greater than 0.9.1.
2020-01-25 23:27:30 +01:00
Jente Hidskes
cc1f975c44
cage: center cursor only on initial startup
With Cage now supporting hotplugging of outputs, we shouldn't warp the
cursor to the center of every new output. Rather, we should warp it only
on the initial startup.
2020-01-18 11:57:16 +01:00
Jente Hidskes
e3f9959519 view: maximize dialog if it extends output layout
If the dialog extends the output layout in at least one dimension, then
the part of it that is larger than the output will be rendered
of-screen. This commit maximizes such dialogs instead.

Fixes #110.
2020-01-11 17:11:16 +01:00
Jente Hidskes
cfb15d20ba xwayland: use view's (x,y) coordinate when maximizing
It might happen that the (x,y) coordinate of the left-most monitor is
not 0. If it isn't, this doesn't cost us anything, so better safe than
sorry.
2020-01-11 17:11:16 +01:00
Jente Hidskes
fbff19939a README: update Copyright to include 2020 2020-01-11 17:11:16 +01:00
Jente Hidskes
12aa43abba output: initialise wlr_output before positioning views 2020-01-11 17:07:33 +01:00
Jente Hidskes
2f9442906d output: refactor get_surface_box
The function also did an intersection check, so it did more than just
getting the surface box. This refactoring makes it more clear.

This commit also fixes a bug in coordinate spaces that makes dialogs
render properly over multiple outputs.
2020-01-11 17:07:33 +01:00
Jente Hidskes
23f8d609ce output: check whether outputs are enabled 2020-01-11 17:07:33 +01:00
Jente Hidskes
a53dca91ce Render popups separately from their toplevel view when possible 2020-01-11 17:07:33 +01:00
Jente Hidskes
2db815aa23 Refactor surface damaging and rendering code
This is based on code from Sway, which is also MIT licensed hence
compatible. This makes the surface damaging and rendering code easier to
follow and makes it easier to import future changes to Sway as well.
2020-01-11 17:07:33 +01:00
Tristan Daniel
bfd7d605b8 meson: require wlroots 0.9.1
And update CI builds accordingly.
2020-01-10 19:33:30 +01:00
Tristan Daniel
84216ca2a4 output: call wlr_output_rollback if not rendering
Required by wlroots 0.9.0.
2020-01-10 19:33:30 +01:00
Tristan Daniel
51e6c760da Update new output handler for wlroots 0.9.0
Following breaking changes in wlroots 0.9.0, wlr_output_commit must be
called after wlr_output_set_mode, wlr_output_set_transform and wlr_output_enable.
Additionally, wlr_output_enable is no longer implicitly called by
wlr_output_set_mode.

Fixes #102
2020-01-06 11:49:57 +01:00
Jente Hidskes
8f6ffa1419
Use hard tabs 2020-01-05 13:42:17 +01:00
Jente Hidskes
651d579c30
seat: be explicit about output- and layout coordinates
This commit follows up on 95b7782c72
2020-01-05 13:16:01 +01:00
Jente Hidskes
530b32d496
xwayland: fix regression after 95b7782
Fixes #101
2020-01-05 12:59:26 +01:00
Jente Hidskes
1c59946e20
Rename view_damage_surface to view_damage_part
To better align it with its counterpart view_damage_whole
2019-12-29 22:54:25 +01:00
Jente Hidskes
95b7782c72
Be explicit about output- and layout coordinates 2019-12-29 16:07:14 +01:00
Jente Hidskes
21229984ff
view: use output layout to set x,y coordinates 2019-12-29 13:17:47 +01:00
Jente Hidskes
22adaae715
output: log error when failing to allocate output 2019-12-26 17:25:22 +01:00
Kenny Levinsen
4e832c6aaf Revert "Set title on outputs that the focused surface is intersecting with"
This reverts commit 915c6df244.
2019-12-26 17:14:57 +01:00
Kenny Levinsen
edfe4e07ce Avoid excessive log messages with multiple outputs 2019-12-26 17:14:57 +01:00
Kenny Levinsen
bcd0086f13 Set title on outputs that the focused surface is intersecting with 2019-12-26 17:14:57 +01:00
Kenny Levinsen
24f48966d8 Annotate wl_list link field 2019-12-26 17:14:57 +01:00
Kenny Levinsen
739ba1fe65 Check calloc return value 2019-12-26 17:14:57 +01:00
Kenny Levinsen
06ada15661 Support multiple outputs
Outputs are arranged in a horizontal layout in the order they are
created in by wlroots. Maximized xdg_shell views will span all outputs,
like the global fullscreen mode in sway.

Fixes #87
2019-12-26 17:14:57 +01:00
Jente Hidskes
0aeba8085c
Replace all wayland-server.h includes with wayland-server-core.h
The documentation for `wayland-server.h` says:

> Use of this header file is discouraged. Prefer including
> wayland-server-core.h instead, which does not include the server protocol
> header and as such only defines the library PI, excluding the deprecated API
> below.

See also
ca45f4490c (diff-b57e10fe0774258a6d21b22077001cff)
2019-12-20 17:16:53 +01:00
Jente Hidskes
abfe6a66ca
README: refer to docs/ 2019-12-20 17:05:00 +01:00
Jente Hidskes
7c6d6c75ae Implement wlr_export_dmabuf_unstable_v1 2019-12-20 17:02:16 +01:00
Jente Hidskes
90e70c6882 Document environment variables
Fixes #93.
2019-12-20 16:51:11 +01:00
Jente Hidskes
dd87c1fab5 Rename data_device_mgr to _manager 2019-12-20 12:35:41 +01:00
Jente Hidskes
65177466e7 Implement wlr-gamma-control-unstable-v1
Closes #20
2019-12-20 12:35:41 +01:00
Jente Hidskes
531cdc84b7 Fix the FreeBSD build 2019-12-18 21:51:05 +01:00
Jente Hidskes
436ad33db8 Update wlroots in CI builds to 0.8.1 2019-12-18 21:51:05 +01:00
Derek Wallace
33bb3c818c Removed destructors per wlroots PR 1915 2019-12-18 21:30:29 +01:00
Ruben Vandamme
0fb513fb85 Set startup color to black. 2019-08-27 18:14:57 +02:00
Andri Yngvason
c13ada98de Add xdg output manager 2019-08-25 18:14:01 +02:00
Andri Yngvason
da6b6c208e Add screencopy 2019-08-25 18:14:01 +02:00
Jente Hidskes
69340921a4 CI: use a version of wlroots that compiles with libinput 1.14
See https://github.com/swaywm/wlroots/issues/1796
2019-08-25 17:48:07 +02:00
Jente Hidskes
016ef340d2
README: update email address 2019-07-09 14:25:33 +02:00
Jente Hidskes
35166e4e1b
README: use www subdomain
Fixes #76
2019-07-07 16:43:20 +02:00
Jente Hidskes
1ecba7e67c
Release Cage 0.1.1
A new tag for packagers to build Cage with wlroots 0.6.0.

Changelog:

* Update to wlroots 0.6.0
* Don't submit too much damage in damage tracking implementation
* Use XKB_* environment variables to configure keyboard devices
2019-06-03 19:55:52 +02:00
Jente Hidskes
6bb73b3658
meson: require wlroots 0.6.0
Missed in 9354781f32
2019-05-03 23:33:50 +02:00
Jente Hidskes
1de6054d7e seat: use XKB_* env vars for configuring keyboard devices
Fixes #66
2019-05-03 21:32:58 +02:00