Commit graph

1959 commits

Author SHA1 Message Date
Johan Malm
afe666fd6e action: expand shell variables before execvp()
Expanding shell variables, including tilde, enables the following type
of keybind:

<keyboard>
    <keybind key="XF86AudioMute">
      <action name="Execute">
        <command>bash ~/mute-script.sh</command>
      </action>
    </keybind>
</keyboard>

Fixes issue #32
2021-06-30 19:56:31 +01:00
Johan Malm
018593c824 rcxml: do not try to use theme Clearlooks-3.4
If no theme is specified in rc.xml, just use built-in theme
2021-06-28 20:48:55 +01:00
Johan Malm
be27bb30a3 server: remove wl_display_init_shm()
This function is called by wlroots in wlr_renderer_init_wl_display(), so
no need to call it again. This stops Qt apps segfaulting when run with
"-platform wayland"

Fixes issue #34 item 2
2021-06-28 20:42:41 +01:00
Johan Malm
e05a3c5f65 cairo: Replace <cairo/cairo.h> by <cairo.h>
See sway@d45623c2
2021-06-26 18:28:27 +01:00
Jan Beich
874cc9e637 xdg: chase swaywm/wlroots@9e58301df7
src/xdg.c:269:48: error: no member named 'subsurfaces' in 'struct wlr_surface'
                wl_list_for_each(subsurface, &view->surface->subsurfaces,
                                              ~~~~~~~~~~~~~  ^
/usr/include/wayland-util.h:443:30: note: expanded from macro 'wl_list_for_each'
        for (pos = wl_container_of((head)->next, pos, member);  \
                                    ^~~~
/usr/include/wayland-util.h:409:32: note: expanded from macro 'wl_container_of'
        (__typeof__(sample))((char *)(ptr) -                            \
                                      ^~~

Based on 3162766eef
2021-06-03 19:27:33 +01:00
Johan Malm
3c9f6c0551 rcxml: fix typo 2021-05-28 21:31:02 +01:00
Mikhail Kshevetskiy
00db22e44f focus: add basic follow mouse support 2021-05-28 21:25:19 +01:00
Johan Malm
892e93dd84 output: access texture width/height directly
wlr_texture_get_size() is removed in wlroots@6369f709 so we have to
access width and height directly.
2021-05-17 19:55:57 +01:00
Johan Malm
985ffd3691 xdg: fix subsurface damage bug
Create struct view_child for each wlr_surface subsurface on first view
map. Firefox doesn't damage properly without this.
2021-04-15 20:37:57 +01:00
Johan Malm
2f5a44d34d theme: move title_height to theme struct
title_height is a derived variable which needs both config and theme
variables (font height and title padding). The code is tidier calling
post_processing() for this from theme_init()
2021-04-15 20:13:49 +01:00
Johan Malm
85c775c3b1 theme: update built-in theme colors
Use #dddad6 for active title/border and #f6f5f4 for inactive.
It matches default GTK colors reasonably well.
2021-04-10 19:30:39 +01:00
Johan Malm
be942a6413 theme: fix pattern match bug
Remove 'else' from if-statements in order for the pattern match to apply
to more than just the first instance of each match.
2021-04-10 19:17:39 +01:00
Johan Malm
8f8a6dfea1 theme: add window.inactive.border.color 2021-04-10 19:11:29 +01:00
Johan Malm
31d3a53e46 theme: add window.active.border.color
This replaces window.active.handle.bg.color which will no longer be
supported.
2021-04-10 18:40:43 +01:00
Johan Malm
bb5e44a143 seat: remove warning for libinput finger count 2021-04-08 17:09:06 +01:00
Johan Malm
02628bde38 s/LAB_ADAPTIVE_SYNC/LABWC_ADAPTIVE_SYNC/
Use the the prefix LABWC_ for environment variable to increase
consistency.
2021-03-30 22:41:17 +01:00
Johan Malm
0a6eead36b rcxml: simplify debugging nodenames 2021-03-30 22:40:41 +01:00
Johan Malm
a5139815d6 config: add <theme><cornerRadius> 2021-03-30 22:39:52 +01:00
Johan Malm
2186aac610 seat: add missing damage_all_outputs() 2021-03-29 19:35:25 +01:00
Johan Malm
b3a73a9fdc theme: support border.width 2021-03-27 21:09:45 +00:00
Johan Malm
fdfb12b2ce Added support for rounded corners 2021-03-27 21:04:12 +00:00
Johan Malm
91374e09c0 cursor: damage output on pressing view 2021-03-26 20:12:01 +00:00
Johan Malm
be27024a2a output: optionally call wlr_output_enable_adaptive_sync()
Set environment variable LAB_ADAPTIVE_SYNC to enable adaptive sync.
2021-03-22 21:25:51 +00:00
Johan Malm
2a48f2801b Create a linked list of SSD for each view 2021-03-21 21:46:16 +00:00
Johan Malm
f863e1916d view: scale maximize geometry correctly 2021-03-21 21:06:45 +00:00
Johan Malm
fc76100fd5 Add ssd.h 2021-03-21 20:54:55 +00:00
Johan Malm
a262b729df Rename deco.c ssd.c 2021-03-20 14:41:39 +00:00
Johan Malm
15ffee79f9 view: refactor view_maximize() 2021-03-20 14:36:40 +00:00
Johan Malm
04d2ae39a9 xdg: improve positioning of new xdg-toplevel views
Top/left align topmost parent.
Center-align children relative to parent.
2021-03-20 14:30:45 +00:00
Johan Malm
8898693160 view: scale view_maximize() 2021-03-20 14:26:32 +00:00
Johan Malm
6737aeabcd output: scale sdd and menu 2021-03-20 14:24:31 +00:00
Johan Malm
d839889972 xdg: start unmaximized
Some xdg-shell applications remember the (un)maximized states when last
closed. We could honour this state, but it makes the code cumbersome
regarding padding and position. Prefer to keep it simple.
2021-03-17 20:56:03 +00:00
Jan Beich
c9023dd2c6 menu,xbm: chase swaywm/wlroots@27fba3df43
$ labwc
[...]
00:00:00.063 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.063 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.063 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.063 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.063 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.063 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.064 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.064 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.064 [render/gles2/texture.c:162] Unsupported pixel format 0x0
00:00:00.064 [render/gles2/texture.c:162] Unsupported pixel format 0x0

Based on 66343839b1
2021-03-13 23:23:33 +00:00
Jan Beich
ad07acc13c xdg: chase swaywm/wlroots@f574ca934c
src/xdg.c:180:2: warning: implicit declaration of function 'wlr_xdg_surface_for_each_popup' is invalid in C99 [-Wimplicit-function-declaration]
        wlr_xdg_surface_for_each_popup(view->xdg_surface, iterator, data);
        ^
ld: error: undefined symbol: wlr_xdg_surface_for_each_popup
>>> referenced by xdg.c:180 (src/xdg.c:180)
>>>               labwc.p/src_xdg.c.o:(xdg_toplevel_view_for_each_popup)

Based on 5438cc158a
2021-03-13 23:23:33 +00:00
Jan Beich
2ee21e9a82 server: chase swaywm/wlroots@4b03bdc3ab
src/server.c:93:63: error: too many arguments to function call, expected single argument 'display', have 2 arguments
        server->backend = wlr_backend_autocreate(server->wl_display, NULL);
                          ~~~~~~~~~~~~~~~~~~~~~~                     ^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
 #define NULL    ((void *)0)
                 ^~~~~~~~~~~
/usr/local/include/wlr/backend.h:35:21: note: 'wlr_backend_autocreate' declared here
struct wlr_backend *wlr_backend_autocreate(struct wl_display *display);
                    ^

Based on 53f5197c26
2021-03-13 23:23:33 +00:00
Johan Malm
f842394737 output: simplify render_cycle_box() 2021-03-13 11:20:47 +00:00
Johan Malm
954d1fa54e view: only (un)maximize when required 2021-03-12 21:27:17 +00:00
Johan Malm
b8c6f9c216 xdg: update padding on commit
Maximize/unmaximize changes padding on XDG-shell views with CSD, so we
need to update padding to render cycle-view decoration correctly.
2021-03-12 21:23:46 +00:00
Johan Malm
c1269adc40 xdg: on init, set maximize according to wlr_xdg_surface status 2021-03-08 21:56:57 +00:00
Johan Malm
83f6618e68 output: set layout-coords coorectly for cycle box 2021-03-08 07:05:47 +00:00
Johan Malm
6ece805e88 interactive.c: do not allow move/resize when maximized 2021-03-06 18:34:52 +00:00
Johan Malm
ebd167a5eb output.c: fix formatting 2021-03-06 18:30:53 +00:00
Johan Malm
fc3a170c78
Merge pull request #21 from apbryan/output-management
Output management
2021-03-06 18:15:48 +00:00
Johan Malm
5101ee87eb main.c: add -v, -V, -d command line options 2021-03-06 11:38:17 +00:00
Johan Malm
2738ff2673 cursor: cursor_name fix
The current implementation detects resize edges over the wlr_surface,
sometimes preventing the correct cursor_name to be set.
2021-03-03 21:19:52 +00:00
Johan Malm
d2133ec23d view-child: extend damage 2021-03-03 20:54:44 +00:00
Johan Malm
badbeb2936 xdg-popup: extend damage 2021-03-03 20:51:19 +00:00
Johan Malm
35fe890572 view-child: do not damage on finish 2021-03-03 20:42:34 +00:00
Johan Malm
9760a8157f Create xdg-deco.c 2021-03-02 20:53:03 +00:00
Johan Malm
954a5eadf1 xdg-popup: uncontrain popups 2021-03-02 20:51:32 +00:00