exwm
exwm copied to clipboard
Buffer is read-only
I got the application running one time successfully. After several reboots, now I can't use it anymore.
The application (sonic-pi) reports some errors (jack) in it's log, though I doubt them being related to the exwm buffer read-only state (bottom left in screenshot below)

Remark Can confirm that the application itself is ok. Disabled emacs and enabled xterm for testing.
.xinitrc excerpt
...
..
.
# exec dbus-launch --exit-with-session emacs
exec xterm -maximized
Probably nothing to do with the application itself. I tried it myself and it behaved normally. How do you get the buffer read-only error? I guess other applications should also be affected.
I am having a similar problem where the Firefox buffer occasionally becomes read only and I have to kill it and start it again.
Not sure if this happens in other applications. I have only seen it in Firefox but it does not happen very often and Firefox stands for almost all "non-emacs" buffers.
I am happy to send some logs if someone can direct me where to look for relevant ones.
looking at the *Messages* buffer I see the following.
funcall-interactively: Buffer is read-only: #<buffer Firefox>
@emiljoha
I am having a similar problem where the Firefox buffer occasionally becomes read only and I have to kill it and start it again.
What if you hide & show it again (by switching to another buffer temporarily and then switch back)?
I am happy to send some logs if someone can direct me where to look for relevant ones.
Thanks! It'd likely help. Please check Step 4 in https://github.com/ch11ng/exwm/wiki#how-to-report-a-bug.
@ch11ng
What if you hide & show it again (by switching to another buffer temporarily and then switch back)?
I do not think that solved it but will check to make sure the next time it happens.
It'd likely help. Please check Step 4 in https://github.com/ch11ng/exwm/wiki#how-to-report-a-bug.
Nice with a "how to report bug" wiki entry. Have enabled debug output and will try and find the relevant parts next time it happens.
It happens quite often but now when I actually want it to happen it does not. Must try and figure out how to reproduce this...
So it happened again.
What if you hide & show it again (by switching to another buffer temporarily and then switch back)?
Switching workspace did actually make the Firefox bufffer editable again.
@emiljoha Did you manage to get a debug log?
I experience this issue regularly. What works to make the buffer take my input again is to press the char/line mode toggle button in the modeline a bunch of times. After two or three toggles, the buffer goes back to being editable.
In my case (And I think this may be the case too for the original OP) this may have something to do with the way evil's normal/insert modes interacts with char/line modes in exwm. If anyone has had this issue with plain emacs (no evil-mode) my suspicion may be wrong.
Anyway, I will try to get a log once I get the chance. But the issue is not consistent enough for me so it may take some time until I can reliably replicate it.
@emiljoha
Did you manage to get a debug log?
Unfortunately not. But will continue to try and reproduce it.
If anyone has had this issue with plain emacs (no evil-mode) my suspicion may be wrong.
@setzer22 I am not using evil-mode....
I'm also affected by buffer is read-only. Here is how it reproduces for me:
- open terminal
- call
emacsclient -n somefile, new buffer will replace the terminal in current window - close the file buffer, terminal window will become visible again
- terminal window is visible but not focused, input events lead to
buffer is read-only
In *XELB-DEBUG* you can see that exwm-input--update-focus isn't called.
Log
exwm-layout--refresh: frame=#<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--refresh-workspace: Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--refresh-workspace: Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--set-client-list-stacking:
exwm-input--update-focus: focus-window=#<window 784 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 784 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-ButtonPress: major-mode=fundamental-mode buffer=*XELB-DEBUG*
exwm-workspace-switch:
exwm-layout--show: Show #x3c00005 in #<window 566 on xterm<2>>
exwm--set-geometry: Setting #x3c00005 to 1920x1062+0+0
exwm-layout--set-state: id=#x3c00005
exwm-input--on-buffer-list-update: current-buffer=#<buffer xterm<2>> selected-window=#<window 566 on xterm<2>>
exwm-systemtray--on-workspace-switch:
exwm-systemtray--refresh:
exwm-input--on-buffer-list-update: current-buffer=#<buffer xterm<2>> selected-window=#<window 566 on xterm<2>>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--update-focus: focus-window=#<window 566 on xterm<2>> focus-buffer=xterm<2>
exwm-input--update-focus: Set focus on #x3c00005
exwm-input--set-focus: id=#x3c00005
exwm-input--update-timestamp:
exwm--on-PropertyNotify: atom=_TIME(497)
exwm-input--on-PropertyNotify:
exwm-input--set-active-window:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x3c00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x3c00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--on-KeyPress-line-mode: (112 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x3c00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--on-KeyPress-line-mode: (109 . 3)
exwm-input--mimic-read-event:
exwm-input--cache-event: 13
exwm-input-send-simulation-key:
exwm-input--fake-key: id=#x3c00005 event=return keycode
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm-input--on-buffer-list-update: current-buffer=#<buffer auto.org> selected-window=#<window 566 on auto.org>
exwm-layout--refresh: frame=#<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace: Refresh workspace #<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--hide: Hide #x3c00005
exwm-layout--set-state: id=#x3c00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace: Refresh workspace #<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--set-client-list-stacking:
exwm-input--update-focus: focus-window=#<window 566 on auto.org> focus-buffer=auto.org
exwm-input--update-focus: Focus on #<window 566 on auto.org>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x3c00005
exwm-input--on-PropertyNotify:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-layout--refresh: frame=#<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace: Refresh workspace #<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--show: Show #x3c00005 in #<window 566 on xterm<2>>
exwm--set-geometry: Setting #x3c00005 to 1920x1062+0+0
exwm-layout--set-state: id=#x3c00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace: Refresh workspace #<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--show: Show #x3c00005 in #<window 566 on xterm<2>>
exwm--set-geometry: Setting #x3c00005 to 1920x1062+0+0
exwm-layout--set-state: id=#x3c00005
exwm-layout--set-client-list-stacking:
exwm-manage--on-MapNotify: id=#x3c00005
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 784 on *XELB-DEBUG*>
exwm-input--update-focus: focus-window=#<window 784 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 784 on *XELB-DEBUG*>
exwm-input--update-focus: Switching to #<window 784 on *XELB-DEBUG*>'s workspace #<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0> (#<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>)
@sarg Thanks for the log. It seemed for some reason exwm-input--on-buffer-list-update ignored the event. Could you insert a log into the function just like the following?
(defun exwm-input--on-buffer-list-update ()
"Run in `buffer-list-update-hook' to track input focus."
+ (exwm--log)
(when (and (not (eq this-command #'handle-switch-frame))
(not exwm-input--skip-buffer-list-update)
(not (exwm-workspace--client-p))
If the result contains a line exwm-input--on-buffer-list-update: without a line exwm-input--on-buffer-list-update: current-buffer=... following then it is the problem. But I'm not sure which condition would block it. From your report it's unlikely the first three.
I have logged all the condition values. What I see is that exwm-input--on-buffer-list-update isn't called at all. When I close emacs buffer and X buffer becomes visible in the same window - it doesn't receive the focus. Even when I press mouse button in the window it doesn't receive focus. What helps is to move mouse pointer to another window and back and then pressing mouse button.
Log
exwm-layout--refresh: frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-input--update-focus: focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-ButtonPress: major-mode=fundamental-mode buffer=*XELB-DEBUG*
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer xterm<5>> selected-window=#<window 320 on xterm<5>>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--update-focus: focus-window=#<window 320 on xterm<5>> focus-buffer=xterm<5>
exwm-input--update-focus: Set focus on #x4a00005
exwm-input--set-focus: id=#x4a00005
exwm-input--update-timestamp:
exwm--on-PropertyNotify: atom=_TIME(497)
exwm-input--on-PropertyNotify:
exwm-input--set-active-window:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (112 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (112 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (112 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (109 . 3)
exwm-input--mimic-read-event:
exwm-input--cache-event: 13
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-buffer-list-update: conds (t t t t nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t t nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (119 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (119 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (119 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (99 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (99 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (100 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (109 . 3)
exwm-input--mimic-read-event:
exwm-input--cache-event: 13
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (101 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65288 . 1)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65293 . 0)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (101 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (109 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (32 . 0)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (97 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (117 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (116 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (111 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (46 . 1)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (104 . 3)
exwm-input--mimic-read-event:
exwm-input--cache-event: 8
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (104 . 3)
exwm-input--mimic-read-event:
exwm-input--cache-event: 8
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (46 . 1)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (104 . 3)
exwm-input--mimic-read-event:
exwm-input--cache-event: 8
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65288 . 1)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (111 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (114 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (103 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65293 . 0)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-buffer-list-update: conds (t t t nil nil)
exwm-input--on-buffer-list-update: conds (t t t nil nil)
exwm-input--on-buffer-list-update: conds (t t t nil nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t nil nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t nil nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t nil nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer auto.org> selected-window=#<window 320 on auto.org>
exwm-layout--refresh: frame=#<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--hide: Hide #x4a00005
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--set-client-list-stacking:
exwm-input--update-focus: focus-window=#<window 320 on auto.org> focus-buffer=auto.org
exwm-input--update-focus: Focus on #<window 320 on auto.org>
exwm-input--set-active-window:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-layout--refresh: frame=#<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-manage--on-MapNotify: id=#x4a00005
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus: focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus: focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-ButtonPress: major-mode=fundamental-mode buffer=*XELB-DEBUG*
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer xterm<5>> selected-window=#<window 320 on xterm<5>>
exwm-input--mimic-read-event:
exwm-input--on-ButtonPress-line-mode: down-mouse-1
exwm-input--update-focus: focus-window=#<window 320 on xterm<5>> focus-buffer=xterm<5>
exwm-input--update-focus: Set focus on #x4a00005
exwm-input--set-focus: id=#x4a00005
exwm-input--update-timestamp:
exwm--on-PropertyNotify: atom=_TIME(497)
exwm-input--on-PropertyNotify:
exwm-input--set-active-window:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (97 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (97 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (97 . 3)
exwm-input--mimic-read-event:
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (65507 . 0)
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm-input--on-KeyPress: major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode: (99 . 3)
exwm-input--mimic-read-event:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SET-IC-FOCUS
exwm--on-PropertyNotify: atom=WM_HINTS(35)
exwm--update-hints: #x4a00005
exwm-input--on-PropertyNotify:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: FORWARD-EVENT
exwm-xim--make-request:
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: SYNC-REPLY
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_NAME(39)
exwm--update-ctext-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=_NET_WM_NAME(339)
exwm--update-utf8-title: #x4a00005
exwm-input--on-PropertyNotify:
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus: focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-xim--on-ClientMessage:
exwm-xim--on-request:
exwm-xim--on-request: UNSET-IC-FOCUS
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus: focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *Minibuf-1*> selected-window=#<window 12 on *Minibuf-1*>
exwm-layout--on-minibuffer-setup:
exwm-input--update-focus: focus-window=#<window 12 on *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus: Focus on #<window 12 on *Minibuf-1*>
exwm-input--set-active-window:
exwm-layout--refresh: frame=#<frame *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x824+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x824+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x824+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-randr--on-ConfigureNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-layout--refresh: frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-layout--refresh: frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace: Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show: Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry: Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state: id=#x4a00005
exwm-layout--set-client-list-stacking:
exwm-input--update-focus: focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm-randr--on-ConfigureNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-PropertyNotify: atom=WM_STATE(384)
exwm--on-PropertyNotify: Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *Minibuf-1*> selected-window=#<window 12 on *Minibuf-1*>
exwm-layout--on-minibuffer-setup:
exwm-input--update-focus: focus-window=#<window 12 on *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus: Focus on #<window 12 on *Minibuf-1*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update: conds (t t t t nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t t nil)
exwm-input--on-buffer-list-update: conds (t t t nil t)
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *Minibuf-1*> selected-window=#<window 12 on *Minibuf-1*>
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *Minibuf-1*> selected-window=#<window 12 on *Minibuf-1*>
exwm-input--update-focus: focus-window=#<window 12 on *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus: Focus on #<window 12 on *Minibuf-1*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update: conds (t t t t t)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
What I see is that
exwm-input--on-buffer-list-updateisn't called at all.
Can't find it in the log either. Was the buffer killed normally? Otherwise I can't see why the hook was not run.
Even when I press mouse button in the window it doesn't receive focus.
This is because the Emacs window is already 'selected'.
Ugh, 3 hours debugging. Found the advice (https://github.com/hlissner/doom-emacs/blob/aa64cf94266a331c1fbb6b80b76e4b53bb6c8a9f/core/autoload/buffers.el#L279) that breaks things. Reported to author. Maybe my case isn't really related with topicstarter's.
This sounds like heroic debugging @sarg, thank you very much. Indeed, resetting buffer-list-update-hook utterly breaks EXWM. I wonder whether that's the origin of all of our mysterious read-only buffer issues.
@ch11ng Finally found a way to reproduce this!
After reading issue #552 and especially the suggesting that:
Perhaps it has something to do with the buffer being displayed somewhere else.
- Open the same *terminal* buffer on workspace 0 and 1.
- Split workspace 0 with
c-x 3and place the *scratch* buffer (or any other buffer except *terminal*) to the right. - In the left slot change the buffer to Firefox.
- When trying to type no input is sent the the buffer and i get the message
funcall-interactively: Buffer is read-only: #<buffer Firefox>
Debug output
exwm-input--update-focus: focus-window=#<window 15 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus: Focus on #<window 15 on *XELB-DEBUG*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *terminal*> selected-window=#<window 13 on *terminal*>
exwm-input--update-focus: focus-window=#<window 13 on *terminal*> focus-buffer=*terminal*
exwm-input--update-focus: Focus on #<window 13 on *terminal*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *Minibuf-1*> selected-window=#<window 4 on *Minibuf-1*>
exwm-layout--on-minibuffer-setup:
exwm-input--update-focus: focus-window=#<window 4 on *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus: Focus on #<window 4 on *Minibuf-1*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update: current-buffer=#<buffer *terminal*> selected-window=#<window 13 on *terminal*>
exwm-layout--refresh: frame=#<frame *Minibuf-1* 0x4b280b0>
exwm-layout--refresh-workspace: Refresh workspace #<frame *Minibuf-1* 0x4b280b0>
exwm-layout--set-client-list-stacking:
exwm-input--on-buffer-list-update: current-buffer=#<buffer *terminal*> selected-window=#<window 13 on *terminal*>
exwm-layout--refresh: frame=#<frame *Minibuf-1* 0x4b280b0>
exwm-layout--refresh-workspace: Refresh workspace #<frame *Minibuf-1* 0x4b280b0>
exwm-layout--show: Show #x1200003 in #<window 13 on Firefox>
exwm--set-geometry: Setting #x1200003 to 960x1030+0+0
exwm-layout--set-state: id=#x1200003
exwm-layout--set-client-list-stacking:
exwm-input--on-buffer-list-update: current-buffer=#<buffer Firefox> selected-window=#<window 13 on Firefox>
exwm-input--on-buffer-list-update: current-buffer=#<buffer *terminal*> selected-window=#<window 5 on *terminal*>
exwm-manage--on-MapNotify: id=#x1200003
exwm--on-PropertyNotify: atom=WM_STATE(431)
exwm--on-PropertyNotify: Unhandled: WM_STATE(431)
exwm-input--on-PropertyNotify:
exwm-input--update-focus: focus-window=#<window 5 on *terminal*> focus-buffer=*terminal*
exwm-input--on-buffer-list-update: current-buffer=#<buffer *Minibuf-1*> selected-window=#<window 4 on *Minibuf-1*>
exwm-layout--on-minibuffer-setup:
exwm-input--update-focus: focus-window=#<window 4 on *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus: Focus on #<window 4 on *Minibuf-1*>
exwm-input--set-active-window:
exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update: current-buffer=#<buffer Firefox> selected-window=#<window 13 on Firefox>
exwm-layout--refresh: frame=#<frame *Minibuf-1* 0x4b280b0>
exwm-layout--refresh-workspace: Refresh workspace #<frame *Minibuf-1* 0x4b280b0>
exwm-layout--show: Show #x1200003 in #<window 13 on Firefox>
exwm--set-geometry: Setting #x1200003 to 960x1030+0+0
exwm-layout--set-state: id=#x1200003
exwm-layout--set-client-list-stacking:
@emiljoha Unfortunately I was not able to reproduce the problem according to your recipe. Nevertheless I found a case where a *temp* buffer can cause the problem. I've pushed a fix (a1cf0d9b85e1d1d4f3b50a9d51980688b7b816df). Please check if you can reproduce the problem with it.
Hi, I've got an issue that I believe may be related. If I have two or more X windows shown at the same time, focus doesn't transfer when I use the windmove commands or other-window. If I windmove again to a non-existent window (raising that "No window left from selected window" error), focus is updated.
I've attached a log file of the following situation:
- Start with a horizontal split of a Firefox window on the right, and a
kittywindow on the left. windmove-leftto select thekittywindow.- Press a few keys.
windmove-rightto select the Firefox window.- Press a few keys.
@TsarFox From your debug log I noticed the input focus always stayed on Firefox so this is a different issue and perhaps caused by some unusual config. But anyway:
- How do you invoke the
windmovecommands? It seems you've made some keybindings. - Do you have things like
mouse-autoselect-windoworfocus-follows-mouseturned on?
@TsarFox From your debug log I noticed the input focus always stayed on Firefox so this is a different issue and perhaps caused by some unusual config. But anyway:
Ah, okay. I can open another issue if necessary.
* How do you invoke the `windmove` commands? It seems you've made some keybindings.
;; I have some wrapper functions for another machine of mine that aren't defined on my laptop.
(when (and (not (fboundp #'my-windmove-left))
(not (fboundp #'my-windmove-right)))
(defalias #'my-windmove-left #'windmove-left)
(defalias #'my-windmove-right #'windmove-right))
(setq exwm-input-global-keys
...
([?\s-a] . my-windmove-left)
([?\s-d] . my-windmove-right)
([?\s-w] . windmove-up)
([?\s-s] . windmove-down)
...
* Do you have things like `mouse-autoselect-window` or `focus-follows-mouse` turned on?
No, both are nil.
@TsarFox Perhaps you had them working in char-mode? What if putting them in line-mode and avoiding switching window with global keys?
@TsarFox Perhaps you had them working in char-mode? What if putting them in line-mode and avoiding switching window with global keys?
Same behavior with both windows in line-mode, and the issue persists even when invoking other-window from execute-extended-command with M-x.
@TsarFox I can confirm windmove works fine here. It does no magic but calls select-window in the end so I can't see why it shouldn't work. Please check your configuration, perhaps by disabling some features, to see if there is anything preventing EXWM from updating input focus.
I spent this morning doing some init.el bisecting and discovered that the issue was from an :eval form I had foolishly put in my mode-line-format. Whoops. Sorry about that.
@ch11ng Sorry for being so slow. Life happened...
Unfortunately I can still reproduce the issue on a1cf0d9 and on master cb96078.
@ch11ng Lets see if I can make the steps to reproduce even better so that you can reproduce it.
-
Checkout master (cb96078) of exwm, and master "599ef70 Add timestamps to XELB debug logs" of xelb.
-
Have this as the only content of
~/.emacs
(add-to-list 'load-path "~/.emacs.d/xelb/")
(add-to-list 'load-path "~/.emacs.d/exwm/")
(require 'exwm)
(require 'exwm-config)
(exwm-config-default)
-
reboot computer.
-
Open firefox.
(start-process-shell-command "firefox" nil "firefox")
- Run the following code.
(term "/bin/bash")
(exwm-workspace-switch-create 1)
(switch-to-buffer "*terminal*")
(exwm-workspace-switch-create 0)
(split-window-right)
(other-window 1)
(switch-to-buffer "*scratch*")
(other-window 1)
(switch-to-buffer "Firefox")
-
Test to write in the Firefox buffer, it will work fine.
-
Switch to buffer with the code in step 5 and run it once again.
-
Firefox buffer is read only.
@emiljoha Thanks for the recipe but perhaps more details are required (sorry but I failed to reproduce it again):
- What is the state before opening Firefox (e.g. how many workspaces and on which workspace)? I was trying with one workspace initially.
- How should I run the code, including the line to open Firefox? You mentioned the code was in a buffer, should I switch to it right in the window displaying Firefox (which I was trying), or switch to another workspace?
@ch11ng Thank you for taking the time to try and reproduce this issue. Maybe it is not possible to reproduce on your system. What distro are you running? I am running a openSUSE TW.
- I saved the code snippets above in a file.
- The only thing I did before opening firefox was to open that file.
- I think the number of workspaces was 4, or what the default config states.
- I ran eveything from workspace 1.
- Switched back to the file (as single buffer on workspace 1) when I needed to run the other commands.
Side Note: M-x read-only-mode also make the buffer not read-only.
@emiljoha I'm on Debian Sid but I don't use the Emacs or any Elisp package shipped with my distro. Usually I build and develop on the master branch, but I also keep builds of stable branches down to emacs-24 for testing purpose. If you're unsure whether there is any package installed by your distro, you may simply start Emacs with the --no-site-file and --no-site-lisp options.
Also, could you prepare debug logs with (exwm-debug)? They may reveal something.
Side Note:
M-x read-only-modealso make the buffer not read-only.
exwm-mode internally enables read-only-mode. This basically revert that but doesn't change the fact that the input focus is wrong.
@ch11ng I hope this debug output can help.
Debug output when reproducing read only issue
[00:03:13] exwm-input--on-buffer-list-update: current-buffer=#<buffer Firefox> selected-window=#<window 14 on Firefox>
[00:03:13] exwm-input--on-echo-area-dirty:
[00:03:13] exwm-input--update-focus: focus-window=#<window 14 on Firefox> focus-buffer=Firefox
[00:03:13] exwm-input--update-focus: Set focus on #x1200029
[00:03:13] exwm-input--set-focus: id=#x1200029
[00:03:13] exwm-input--update-timestamp:
[00:03:13] exwm--on-PropertyNotify: atom=_TIME(496)
[00:03:13] exwm-input--on-PropertyNotify:
[00:03:13] exwm-input--set-active-window:
[00:03:13] exwm-input--on-echo-area-dirty:
[00:03:13] exwm--on-PropertyNotify: atom=WM_HINTS(35)
[00:03:13] exwm--update-hints: #x1200029
[00:03:13] exwm-input--on-PropertyNotify:
[00:03:16] exwm-input--on-ButtonPress: major-mode=exwm-mode buffer=Firefox
[00:03:16] exwm-input--mimic-read-event:
[00:03:16] exwm-input--on-ButtonPress-line-mode: down-mouse-1
[00:03:16] exwm--on-PropertyNotify: atom=_NET_WM_USER_TIME(374)
[00:03:16] exwm-input--on-PropertyNotify:
[00:03:16] exwm-input--on-KeyPress: major-mode=exwm-mode buffer=Firefox
[00:03:16] exwm-input--on-KeyPress-line-mode: (100 . 131)
[00:03:16] exwm-input--mimic-read-event:
[00:03:16] exwm--on-PropertyNotify: atom=_NET_WM_USER_TIME(374)
[00:03:16] exwm-input--on-PropertyNotify:
[00:03:16] exwm--on-ClientMessage: atom=_NET_WM_STATE(351)
[00:03:17] exwm-input--on-KeyPress: major-mode=exwm-mode buffer=Firefox
[00:03:17] exwm-input--on-KeyPress-line-mode: (65288 . 141)
[00:03:17] exwm-input--mimic-read-event:
[00:03:17] exwm--on-PropertyNotify: atom=_NET_WM_USER_TIME(374)
[00:03:17] exwm-input--on-PropertyNotify:
[00:03:17] exwm-input--on-KeyPress: major-mode=exwm-mode buffer=Firefox
[00:03:17] exwm-input--on-KeyPress-line-mode: (65507 . 1)
[00:03:17] exwm--on-PropertyNotify: atom=_NET_WM_USER_TIME(374)
[00:03:17] exwm-input--on-PropertyNotify:
[00:03:17] exwm-input--on-KeyPress: major-mode=exwm-mode buffer=Firefox
[00:03:17] exwm-input--on-KeyPress-line-mode: (103 . 131)
[00:03:17] exwm-input--mimic-read-event:
[00:03:17] exwm-input--cache-event: 7
[00:03:17] exwm-input-send-simulation-key:
[00:03:17] exwm-input--fake-key: id=#x1200029 event=escape keycode
[00:03:17] exwm-input--on-echo-area-dirty:
[00:03:17] exwm-manage--on-UnmapNotify: id=#x120007a
[00:03:17] exwm-manage--unmanage-window: Unmanage #x120007a (buffer: nil, widthdraw: t)
[00:03:18] exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 16 on *XELB-DEBUG*>
[00:03:18] exwm-input--on-echo-area-dirty:
[00:03:18] exwm-input--update-focus: focus-window=#<window 16 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
[00:03:18] exwm-input--update-focus: Focus on #<window 16 on *XELB-DEBUG*>
[00:03:18] exwm-input--set-active-window:
[00:03:18] exwm-input--on-echo-area-dirty:
[00:03:18] exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(340)
[00:03:19] exwm-input--on-buffer-list-update: current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 16 on *XELB-DEBUG*>
[00:03:19] exwm-input--on-echo-area-dirty:
[00:03:19] exwm-input--update-focus: focus-window=#<window 16 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
[00:03:19] exwm-input--update-focus: Focus on #<window 16 on *XELB-DEBUG*>
[00:03:19] exwm-input--set-active-window:
[00:03:19] exwm--on-ClientMessage: atom=_NET_ACTIVE_WINDOW(340)