Daniel Eklöf
0aee7befd8
bar/wayland: better name for SHM backing memfd
2019-03-30 22:24:13 +01:00
Daniel Eklöf
fa586b9ac1
wayland: depend on xdg-output for output size/positioning information
2019-03-14 19:41:06 +01:00
Daniel Eklöf
6030ef5298
bar/wayland: use cairo_format_stride_for_width() to calculate stride
2019-03-03 12:56:13 +01:00
Daniel Eklöf
35e9d0e25c
bar: need to double border size (why?)
2019-02-28 20:09:50 +01:00
Daniel Eklöf
fe709bd82b
Revert "bar/wayland: drop wl_seat interface version requirement to 1"
...
This reverts commit a1bcf07599
.
2019-02-18 21:43:44 +01:00
Daniel Eklöf
28d39f3aec
bar/xcb: ignore non-zero border margins
2019-02-17 19:45:26 +01:00
Daniel Eklöf
0ab772f869
bar: move x,y coordinates to xcb backend
2019-02-17 19:40:20 +01:00
Daniel Eklöf
3d8cb7f17e
bar/wayland: implement border margins
2019-02-17 15:47:44 +01:00
Daniel Eklöf
50d6afab6a
bar: add margin properties to the border
2019-02-17 15:45:02 +01:00
Daniel Eklöf
12ef2569a4
bar/wayland: log *something* when a global is removed
2019-02-17 12:38:52 +01:00
Daniel Eklöf
a1bcf07599
bar/wayland: drop wl_seat interface version requirement to 1
...
This allows us to drop the empty 'name' handler.
2019-02-17 12:38:52 +01:00
Daniel Eklöf
4d9ee6ff82
cmake: use find_program() to locate wayland-scanner binary
2019-02-13 21:45:31 +01:00
Daniel Eklöf
21b2e249bc
cmake: install header files
2019-02-12 22:12:57 +01:00
Daniel Eklöf
1e466a24ba
Pull in wlr-protocols instead of wlroots
...
We're not interested in anything in wlroots, except the wlr protocols.
2019-02-12 20:00:35 +01:00
Daniel Eklöf
83591b9269
bar: use calloc() instead of malloc()
...
In cases where it makes sense, use calloc() instead of malloc():
* When allocating large objects with many members, many for which
NULL/0 is a good default value.
* Arrays etc where we explicitly initialize to NULL anyway.
2019-02-09 10:55:42 +01:00
Daniel Eklöf
ad3a33cf3d
bar/wayland: do *not* enable keyboard interactivity
2019-02-07 18:27:09 +01:00
Daniel Eklöf
4b0c4c669c
cmake: ensure the wayland-protocols package is available
2019-02-07 12:45:05 +01:00
Daniel Eklöf
7ff0f5a2f3
cmake: need CMake >= 3.13 since we use target_link_options()
2019-02-07 12:26:05 +01:00
Daniel Eklöf
d185f7237d
bar: cmake: remove trailing whitespace
2019-02-07 12:09:38 +01:00
Daniel Eklöf
ccd5948585
bar: cmake: not necessary when building STATIC, but we do depend on threads
2019-02-07 12:07:53 +01:00
Daniel Eklöf
ae5029826b
cmake: break out bar stuff to separate CMakeLists.txt
2019-02-07 12:06:16 +01:00
Daniel Eklöf
76655bc944
bar/wayland: much improved error handling
...
Most asserts() have now been replaced with error messages. Cleanup()
no longer tries to free/destroy NULL resources.
2019-02-07 11:51:42 +01:00
Daniel Eklöf
e48d90ae12
bar/xcb: cleanup: don't try to free NULL resources
2019-02-07 11:51:26 +01:00
Daniel Eklöf
f71aaf9615
bar: call backend->cleanup() when backend->setup() fails
...
This makes it easier to implement proper cleanup in the backends, as
setup() doesn't have to clean up it's own mess upon failure.
2019-02-07 11:50:52 +01:00
Daniel Eklöf
0fc5778107
bar/wayland: wl_* APIs typically don't handle destroy(NULL)
2019-02-07 11:22:02 +01:00
Daniel Eklöf
4a064ebfff
bar/wayland: fix includes
2019-02-06 18:04:32 +01:00
Daniel Eklöf
727d7b343f
cmake: initial support for building wayland-only, or x11-only
2019-02-03 20:05:44 +01:00
Daniel Eklöf
73c62e9797
bar/wayland: cleanup
2019-02-03 17:45:26 +01:00
Daniel Eklöf
29b57bcc48
bar/wayland: call on_mouse() directly from listeners
2019-02-03 15:28:32 +01:00
Daniel Eklöf
85a1940e47
bar/wayland: free XDG outputs, and manager, in cleanup()
2019-02-03 15:16:19 +01:00
Daniel Eklöf
c6fd99f005
bar/wayland: track XDG outputs, as this gets us the monitor identifiers
2019-02-03 15:10:26 +01:00
Daniel Eklöf
c226f9f0c8
bar/wayland: initial support for multiple monitors
...
We don't actually support multiple monitors, but now we at least track
the available monitors.
This also adds support for the BAR_BOTTOM location.
2019-02-03 13:55:21 +01:00
Daniel Eklöf
47ac57dd03
bar/wayland: cursor support
...
This implements backend.set_cursor().
2019-02-03 13:13:10 +01:00
Daniel Eklöf
130043a259
bar/wayland: comment out most of the debug logging
2019-02-03 12:21:42 +01:00
Daniel Eklöf
ed8e17c6c9
wayland: mucho wip: initial sort-of-working wayland backend
...
Bar is drawn, though only TOP is supported atm. No
screen/display/output selection is possible yet. Mouse *click* works,
but not setting the cursor.
Lots of debug output, crappy code yada yada.
2019-02-03 11:08:53 +01:00
Daniel Eklöf
deb9105d3e
main: move xcb_init() call to bar's XCB backend
2019-01-29 21:37:38 +01:00
Daniel Eklöf
404a7a7dcd
bar: xcb: remove unneeded braces
2019-01-29 21:05:51 +01:00
Daniel Eklöf
7f1567c973
bar: do generic cursor stuff in bar, not in backend
2019-01-29 21:05:28 +01:00
Daniel Eklöf
0684aaaf95
bar: xcb: cleanup
2019-01-29 21:03:13 +01:00
Daniel Eklöf
4954479e11
bar: generic setup shouldn't be done by a backend
2019-01-29 21:02:10 +01:00
Daniel Eklöf
c2e7b1c507
bar: remove more includes that aren't needed anymore
2019-01-29 21:01:16 +01:00
Daniel Eklöf
36201e251e
bar: no xcb stuff needed directly by bar anymore
2019-01-29 21:00:27 +01:00
Daniel Eklöf
88daaf0ab7
bar: wip: define a 'backend' interface
...
Implement the current XCB backend in terms of this new interface.
2019-01-29 20:59:25 +01:00
Daniel Eklöf
2d104e4a7d
bar: break out 'private' struct definition to a header file
2019-01-29 20:20:11 +01:00
Daniel Eklöf
aa21991323
bar: move C file to subdirectory
2019-01-29 20:18:37 +01:00