Skip to content
This repository has been archived by the owner on Jan 26, 2024. It is now read-only.

Make CSDs optional/hidden by default #3

Closed
cedws opened this issue Jun 3, 2020 · 8 comments
Closed

Make CSDs optional/hidden by default #3

cedws opened this issue Jun 3, 2020 · 8 comments

Comments

@cedws
Copy link

cedws commented Jun 3, 2020

Hi, just trying this out.

I've noticed that Wayland applications launched inside dwl have client side decorations. Sway disables these by default I think as they aren't really needed for tiling window managers.

031051-03-06-2020

@djpohly
Copy link
Owner

djpohly commented Jun 3, 2020

Glad to see you're giving it a try! I'm all for canning CSDs in dwl - looking at xdg_decoration_manager from wlroots, I hope it won't be too complicated. Interested in putting together a PR?

@cedws
Copy link
Author

cedws commented Jun 3, 2020

I'll have a look but I can't promise anything - sadly don't know much about Wayland protocols or wlroots. I need to read Drew DeVault's book at some point.

@Ordoviz
Copy link

Ordoviz commented Jun 4, 2020

For the moment you can disable the title bar in Firefox by navigating to Customize… in the menu and unchecking Title Bar.

@cedws
Copy link
Author

cedws commented Jun 5, 2020

@djpohly I see you made a commit for this 😃 I was struggling anyway, so thanks.
It doesn't appear to work yet, maybe it's still WIP. Comparing with cage's code, I think you need to call getxdecomode straight away in the createxdeco handler.

@djpohly
Copy link
Owner

djpohly commented Jun 7, 2020

Ah, yep, the protocol description seems to indicate that we have to send an xdg_toplevel_decoration.configure event right away. Fixing now - thanks!

The recent commit added support for xdg_decoration. Firefox, however, appears to support only the older KWin server_decoration protocol (which is considered obsolete by wlroots). I still hope to support it in dwl, but it might be trickier to get working right.

@cedws
Copy link
Author

cedws commented Jun 7, 2020

Firefox, however, appears to support only the older KWin server_decoration protocol (which is considered obsolete by wlroots)

That's kind of strange, unless the xdg_decoration protocol is relatively new. If sticking with the suckless theme then maybe implementing support for server_decoration isn't worth it - but that has obvious downsides.

@djpohly djpohly added A: enhancement New feature or request C: protocols labels Jul 26, 2020
@djpohly
Copy link
Owner

djpohly commented Apr 9, 2021

This is, I hope, fixed in commit 9071ce6. Could everyone test your variously decorated programs with the latest Git to see if client-side decorations still show up anywhere (and if they do, check sway as well)?

@cedws
Copy link
Author

cedws commented Apr 14, 2021

Sorry, would love to test it when I get time. You have probably validated it yourself too 👍

sevz17 referenced this issue in sevz17/dwl Aug 18, 2021
Avoid needless checks + fix merge conflicts
link2xt added a commit to link2xt/dwl that referenced this issue Nov 19, 2023
…NULL

Passing NULL to wlr_keyboard_set_keymap results in a segfault.
Example:

  Thread 1 "dwl" received signal SIGSEGV, Segmentation fault.
  0x00007ffff7e49b64 in xkb_keymap_ref () from /usr/lib/libxkbcommon.so.0
  (gdb) bt
  #0  0x00007ffff7e49b64 in xkb_keymap_ref () at /usr/lib/libxkbcommon.so.0
  djpohly#1  0x00007ffff7f06389 in wlr_keyboard_set_keymap () at /usr/lib/libwlroots.so.11
  djpohly#2  0x000055555555bc54 in createkeyboard ()
  djpohly#3  0x000055555555c283 in inputdevice ()
  djpohly#4  0x00007ffff7e8101e in wl_signal_emit_mutable () at /usr/lib/libwayland-server.so.0
  djpohly#5  0x00007ffff7e8101e in wl_signal_emit_mutable () at /usr/lib/libwayland-server.so.0
  djpohly#6  0x00007ffff7edb52c in  () at /usr/lib/libwlroots.so.11
  djpohly#7  0x00007ffff7ee44b6 in  () at /usr/lib/libwlroots.so.11
  djpohly#8  0x000055555555fe66 in main ()
sevz17 pushed a commit that referenced this issue Nov 19, 2023
…NULL

Passing NULL to wlr_keyboard_set_keymap results in a segfault.
Example:

  Thread 1 "dwl" received signal SIGSEGV, Segmentation fault.
  0x00007ffff7e49b64 in xkb_keymap_ref () from /usr/lib/libxkbcommon.so.0
  (gdb) bt
  #0  0x00007ffff7e49b64 in xkb_keymap_ref () at /usr/lib/libxkbcommon.so.0
  #1  0x00007ffff7f06389 in wlr_keyboard_set_keymap () at /usr/lib/libwlroots.so.11
  #2  0x000055555555bc54 in createkeyboard ()
  #3  0x000055555555c283 in inputdevice ()
  #4  0x00007ffff7e8101e in wl_signal_emit_mutable () at /usr/lib/libwayland-server.so.0
  #5  0x00007ffff7e8101e in wl_signal_emit_mutable () at /usr/lib/libwayland-server.so.0
  #6  0x00007ffff7edb52c in  () at /usr/lib/libwlroots.so.11
  #7  0x00007ffff7ee44b6 in  () at /usr/lib/libwlroots.so.11
  #8  0x000055555555fe66 in main ()
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants