ch11ng / exwm

Emacs X Window Manager
2.85k stars 134 forks source link

Alltray quirks #625

Closed sarg closed 5 years ago

sarg commented 5 years ago

I'm using alltray (https://github.com/mbt/alltray) to add systray icon for spotify. Whenever I quit the app through tray I get warning that 'Spotify' is not responding. Would you like to kill it? (y or n) y

``` exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--set-client-list-stacking: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--set-client-list-stacking: exwm-input--on-echo-area-dirty: exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-manage--on-MapRequest: id=#x2000001 parent=#x1d9 exwm-manage--on-MapRequest: #x2000001 exwm-manage--manage-window: Try to manage #x2000001 exwm--update-window-type: #x2000001 exwm--update-class: #x2000001 exwm--update-transient-for: #x2000001 exwm--update-normal-hints: #x2000001 exwm--update-hints: #x2000001 exwm-manage--update-geometry: id=#x2000001 exwm-manage--update-mwm-hints: id=#x2000001 exwm--update-title: #x2000001 exwm--update-utf8-title: #x2000001 exwm--update-ctext-title: #x2000001 exwm--update-protocols: #x2000001 exwm-manage--get-configurations: exwm-manage--manage-window: Manage #x2000001 exwm-manage--set-client-list: exwm-floating--unset-floating: #x2000001 exwm-floating--set-allowed-actions: #x2000001 exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input-grab-keyboard: id=#x2000001 exwm-input--grab-keyboard: id=#x2000001 exwm-input--update-mode-line: #x2000001 exwm--update-desktop: #x2000001 exwm-workspace--set-desktop: #x2000001 exwm-manage--update-ewmh-state: id=#x2000001 exwm--on-PropertyNotify: atom=_NET_WM_NAME(339) exwm--update-utf8-title: #x2000001 exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=WM_NAME(39) exwm--update-ctext-title: #x2000001 exwm-input--on-PropertyNotify: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-randr--on-ConfigureNotify: exwm--on-PropertyNotify: atom=_NET_WM_ALLOWED_ACTIONS(471) exwm--on-PropertyNotify: Unhandled: _NET_WM_ALLOWED_ACTIONS(471) exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=_NET_WM_DESKTOP(336) exwm--on-PropertyNotify: Unhandled: _NET_WM_DESKTOP(336) exwm-input--on-PropertyNotify: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--show: Show #x2000001 in # exwm--set-geometry: Setting #x2000001 to 960x1062+960+0 exwm-layout--set-state: id=#x2000001 exwm-layout--set-client-list-stacking: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--show: Show #x2000001 in # exwm--set-geometry: Setting #x2000001 to 960x1062+960+0 exwm-layout--set-state: id=#x2000001 exwm-layout--set-client-list-stacking: exwm-input--update-focus: focus-window=# focus-buffer=Spotify exwm-input--update-focus: Set focus on #x2000001 exwm-input--set-focus: id=#x2000001 exwm-input--update-timestamp: exwm-manage--on-ConfigureRequest: exwm-manage--on-ConfigureRequest: #x2000001 (#xf) @959x1062+0+0; border-width: 0; sibling: #x0; stack-mode: 0 exwm-manage--on-ConfigureRequest: Reply with ConfigureNotify (edges): (960 0 1920 1062) exwm--on-PropertyNotify: atom=WM_CLASS(67) exwm--update-class: #x2000001 exwm-input--on-PropertyNotify: exwm-randr--on-ConfigureNotify: exwm-manage--on-MapNotify: id=#x2000001 exwm--on-PropertyNotify: atom=WM_STATE(384) exwm--on-PropertyNotify: Unhandled: WM_STATE(384) exwm-input--on-PropertyNotify: exwm--on-ClientMessage: atom=WM_CHANGE_STATE(402) exwm--on-ClientMessage: atom=_NET_WM_STATE(342) exwm-manage--on-UnmapNotify: id=#x2000001 exwm-manage--unmanage-window: Unmanage #x2000001 (buffer: Spotify, widthdraw: t) exwm-manage--set-client-list: exwm-manage--on-UnmapNotify: id=#x2000001 exwm-manage--unmanage-window: Unmanage #x2000001 (buffer: nil, widthdraw: t) exwm--on-PropertyNotify: atom=WM_STATE(384) exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=_NET_WM_ICON(337) exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=_NET_WM_NAME(339) exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=WM_NAME(39) exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=_TIME(497) exwm-input--on-PropertyNotify: exwm-input--set-active-window: exwm-randr--on-ConfigureNotify: exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--set-client-list-stacking: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--set-client-list-stacking: exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm-manage--on-UnmapNotify: id=#x2000001 exwm-manage--unmanage-window: Unmanage #x2000001 (buffer: nil, widthdraw: t) exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-systemtray--on-ClientMessage: opcode: 0 exwm-systemtray--embed: Try to embed #x1e00005 exwm-systemtray--embed: Embed #x1e00005 exwm-systemtray--embed: Resize from 200x200 to 17x17 exwm-systemtray--embed: Map the window exwm-systemtray--refresh: exwm-manage--on-ConfigureRequest: exwm-manage--on-ConfigureRequest: #x1e00005 (#xc) @24x24+0+0; border-width: 0; sibling: #x0; stack-mode: 0 exwm-manage--on-ConfigureRequest: ConfigureWindow (preserve geometry) exwm-systemtray--on-ReparentNotify: exwm-systemtray--on-PropertyNotify: exwm-systemtray--on-PropertyNotify: exwm-systemtray--on-ResizeRequest: exwm-systemtray--refresh: exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) exwm-systemtray--on-PropertyNotify: exwm--on-ClientMessage: atom=_NET_WM_STATE(342) exwm-input--on-echo-area-dirty: exwm-manage--on-UnmapNotify: id=#x1e00028 exwm-manage--unmanage-window: Unmanage #x1e00028 (buffer: nil, widthdraw: t) exwm-manage--on-MapRequest: id=#x2000001 parent=#x1d9 exwm-manage--on-MapRequest: #x2000001 exwm-manage--manage-window: Try to manage #x2000001 exwm--update-window-type: #x2000001 exwm--update-class: #x2000001 exwm--update-transient-for: #x2000001 exwm--update-normal-hints: #x2000001 exwm--update-hints: #x2000001 exwm-manage--update-geometry: id=#x2000001 exwm-manage--update-mwm-hints: id=#x2000001 exwm--update-title: #x2000001 exwm--update-utf8-title: #x2000001 exwm--update-ctext-title: #x2000001 exwm--update-protocols: #x2000001 exwm-manage--get-configurations: exwm-manage--manage-window: Manage #x2000001 exwm-manage--set-client-list: exwm-floating--unset-floating: #x2000001 exwm-floating--set-allowed-actions: #x2000001 exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input-grab-keyboard: id=#x2000001 exwm-input--grab-keyboard: id=#x2000001 exwm-input--update-mode-line: #x2000001 exwm--update-desktop: #x2000001 exwm-workspace--set-desktop: #x2000001 exwm-manage--update-ewmh-state: id=#x2000001 exwm-manage--on-ConfigureRequest: exwm-manage--on-ConfigureRequest: #x2000001 (#x3) @960x1062+0+0; border-width: 0; sibling: #x0; stack-mode: 0 exwm-manage--on-ConfigureRequest: Reply with ConfigureNotify (edges): (960 0 1920 1062) exwm--on-ClientMessage: atom=_NET_WM_STATE(342) exwm--on-ClientMessage: atom=_NET_WM_STATE(342) exwm--on-ClientMessage: atom=_NET_WM_DESKTOP(336) exwm-workspace-move-window: Moving #x2000001 to 1 exwm--on-ClientMessage: atom=_NET_CLOSE_WINDOW(464) : id=#x2000001; buffer=Spotify exwm-systemtray--on-PropertyNotify: exwm-systemtray--on-DestroyNotify: exwm-systemtray--unembed: Unembed #x1e00005 exwm-systemtray--refresh: exwm-input--update-focus: focus-window=# focus-buffer=Spotify exwm-input--update-focus: Set focus on #x2000001 exwm-input--set-focus: id=#x2000001 exwm-input--update-timestamp: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--show: Show #x2000001 in # exwm--set-geometry: Setting #x2000001 to 960x1062+960+0 exwm-layout--set-state: id=#x2000001 exwm-layout--set-client-list-stacking: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--show: Show #x2000001 in # exwm--set-geometry: Setting #x2000001 to 960x1062+960+0 exwm-layout--set-state: id=#x2000001 exwm-layout--set-client-list-stacking: exwm-input--on-echo-area-clear: exwm-input--on-echo-area-dirty: exwm-input--on-minibuffer-setup: exwm-input--on-echo-area-clear: exwm-input--on-echo-area-dirty: exwm-input--on-minibuffer-setup: exwm-input--on-echo-area-clear: exwm-manage--kill-client: id=#x2000001 exwm-manage--on-UnmapNotify: id=#x1e00005 exwm-manage--unmanage-window: Unmanage #x1e00005 (buffer: nil, widthdraw: t) exwm-randr--on-ConfigureNotify: exwm--on-PropertyNotify: atom=_NET_WM_ALLOWED_ACTIONS(471) exwm--on-PropertyNotify: Unhandled: _NET_WM_ALLOWED_ACTIONS(471) exwm-input--on-PropertyNotify: exwm--on-PropertyNotify: atom=_NET_WM_DESKTOP(336) exwm--on-PropertyNotify: Unhandled: _NET_WM_DESKTOP(336) exwm-input--on-PropertyNotify: exwm-randr--on-ConfigureNotify: exwm--on-PropertyNotify: atom=_NET_WM_STATE(342) exwm--on-PropertyNotify: Unhandled: _NET_WM_STATE(342) exwm-input--on-PropertyNotify: exwm-manage--on-MapNotify: id=#x2000001 exwm--on-ClientMessage: atom=WM_PROTOCOLS(328) exwm-manage--on-UnmapNotify: id=#x2000001 exwm-manage--unmanage-window: Unmanage #x2000001 (buffer: Spotify, widthdraw: t) exwm-manage--set-client-list: exwm-manage--on-DestroyNotify: exwm-manage--on-DestroyNotify: #x2000001 exwm-manage--unmanage-window: Unmanage #x2000001 (buffer: nil, widthdraw: nil) exwm--on-PropertyNotify: atom=_TIME(497) exwm-input--on-PropertyNotify: exwm-input--set-active-window: exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-buffer-list-update: current-buffer=# selected-window=# exwm-input--on-echo-area-dirty: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--set-client-list-stacking: exwm-layout--refresh: frame=# exwm-layout--refresh-workspace: Refresh workspace # exwm-layout--set-client-list-stacking: exwm-input--update-focus: focus-window=# focus-buffer=*scratch* exwm-input--update-focus: Focus on # exwm-input--set-active-window: exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331) ```
ch11ng commented 5 years ago

This is indeed a bug. Thanks for the report! Please checkout 5505cff826b361d5d0090a6314891005595e3279 for the fix.

sarg commented 5 years ago

:+1: Thanks! Works fine.