i3 / i3

A tiling window manager for X11
https://i3wm.org/
BSD 3-Clause "New" or "Revised" License
9.5k stars 780 forks source link

xfce panel cannot hide: Make i3 hide dock clients in coordinates outside any output #4153

Open liar666 opened 4 years ago

liar666 commented 4 years ago

I'm submitting a…

[ ] Bug
[X] Feature Request
[ ] Documentation Request
[ ] Other (Please describe in detail)

Current Behavior

Currently when mixing xfce and i3 (following https://feeblenerd.blogspot.com/2015/11/pretty-i3-with-xfce.html )

The xfce panels do not hide even if configured to do so. This was working with awesome + xfce , so there might be a X/WM set up that i3 does not respect?

Expected Behavior

xfce-panels should be able to hide when configured to do so

Reproduction Instructions

Environment

Output of i3 --moreversion 2>&-:

Binary i3 version:  4.17.1 (2019-08-30) © 2009 Michael Stapelberg and contributors
Running i3 version: 4.17.1 (2019-08-30) (pid 2847)abort…)
Loaded i3 config: /home/gmuller/.config/i3/config (Last modified: 2020-07-03T16:50:12 CEST, 513179 seconds ago)

The i3 binary you just called: /usr/bin/i3
The i3 binary you are running: i3

Latest version under XUbuntu 20.04 as of today

Config file
Not relevant / the problem appears with default config provided in link above
Logfile URL:
- Linux Distribution & Version: XUbuntu 20.04
- Are you using a compositor (e.g., xcompmgr or compton): no
liar666 commented 4 years ago

FYI I've notified xfce devs too

https://gitlab.xfce.org/xfce/xfce4-panel/-/issues/308

orestisfl commented 4 years ago

Treating as a bug until we know why it fails.

Can you attach a log?

liar666 commented 4 years ago

Hi,

Thanks for your quick reply.

I'm sorry I'm quite a n00b with i3/xfce. Can you tell me how to collect such a log?

On Thu, Jul 9, 2020 at 3:43 PM Orestis Floros notifications@github.com wrote:

Treating as a bug until we know why it fails.

Can you attach a log?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/i3/i3/issues/4153#issuecomment-656135441, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAYRMH66XAJO6LHNSXWEVQLR2XCQRANCNFSM4OVTG5LA .

orestisfl commented 4 years ago

Please see here: https://i3wm.org/docs/debugging.html

liar666 commented 4 years ago

Sorry for the time it took me to create the log... You can find it here: https://logs.i3wm.org/logs/5659640197021696.bz2

What I did to create the file:

  1. i3-msg 'debuglog on; shmlog on; reload'
  2. Move the mouse from/out of the XFCE-panel (with various delays between re-entering the panel) so that it would have hidden and reappeared in a "normal" XFCE/xfwm4/xfdesktop session.
  3. Uploaded the file with: DISPLAY=:0 i3-dump-log | bzip2 -c | curl --data-binary @- https://logs.i3wm.org
  4. Downloaded & Edited a bit the log to hide personnal info (mostly username)
  5. Re uploaded the file
Tamaranch commented 2 years ago

These logs could be of some interest:

09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:279 - window 0x02807428 wants to be at 0x1077 with 1920x3
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:312 - Configure request!
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:362 - Reconfiguring dock window (con = 0x55c20bedfdc0).
09/19/2020 09:12:19 AM - randr.c:get_output_containing:118 - comparing x=0 y=1077 with x=0 and y=0 width 1920 height 1080
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:386 - Dock client will not be moved, we only support moving it to another output.
09/19/2020 09:12:19 AM - xcb.c:fake_absolute_configure_notify:85 - fake rect = (0, 0, 1920, 3)
09/19/2020 09:12:19 AM - handlers.c:handle_event:1358 - event type 23, xkb_base 85
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:279 - window 0x02800007 wants to be at -9999x-9999 with 1920x25
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:312 - Configure request!
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:362 - Reconfiguring dock window (con = 0x55c20bf23f30).
09/19/2020 09:12:19 AM - randr.c:get_output_containing:118 - comparing x=-9999 y=-9999 with x=0 and y=0 width 1920 height 1080
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:386 - Dock client will not be moved, we only support moving it to another output.
09/19/2020 09:12:19 AM - xcb.c:fake_absolute_configure_notify:85 - fake rect = (0, 1055, 1920, 25)
09/19/2020 09:12:19 AM - handlers.c:handle_event:1358 - event type 22, xkb_base 85
09/19/2020 09:12:19 AM - handlers.c:handle_configure_notify:1131 - ConfigureNotify for non-root window 0x02807428, ignoring
09/19/2020 09:12:19 AM - handlers.c:handle_event:1358 - event type 22, xkb_base 85
09/19/2020 09:12:19 AM - handlers.c:handle_configure_notify:1131 - ConfigureNotify for non-root window 0x02800007, ignoring
orestisfl commented 2 years ago

Switching back to enhancement since i3 is behaving as implemented:

09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:362 - Reconfiguring dock window (con = 0x55c20bf23f30).
09/19/2020 09:12:19 AM - handlers.c:handle_configure_request:386 - Dock client will not be moved, we only support moving it to another output.

What we can potentially do is hide panels that are outside any output

fernandovmacedo commented 1 year ago

I have the same problem. It would be nice to have a native way to solve it. While this doesn't happen, for those that have this issue, one workaround possible is to bind a command to “toggle” the Xfce panel by killing it or running it, depending on the state.

bindsym $mod+y exec pgrep xfce4-panel && pkill xfce4-panel || xfce4-panel

Probably is also possible to put the panel in a scratchpad window and use it there when needed without the need to keep executing it again.

In my case, as I rarely use the panel, the simpler key bind is enough.