Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix race when window is newly managed
I'm not exactly sure what's going on here, which is why I left the log in. Relevant bits of the xtrace are: 000:<:02e5: 28: Request(18): ChangeProperty mode=Replace(0x00) window=0x00a003c8 property=0x148("_NET_WM_DESKTOP") type=0x6("CARDINAL") data=0x00000000; 000:<:02e6: 4: Request(43): GetInputFocus 000:>:02e5:Error 3=Window: major=18, minor=0, bad=10486728 000:>:02e6:32: Reply to GetInputFocus: revert-to=Parent(0x02) focus=0x00a00079 2015-05-11 16:20:00,438 ERROR _xpoll:668 Got an exception in poll loop Traceback (most recent call last): File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 657, in _xpoll r = h(e) File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 999, in handle_MapRequest c = self.manage(w) File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 549, in manage self.currentScreen.group.add(c, focus=c.can_steal_focus()) File "/usr/lib/python3.4/site-packages/libqtile/group.py", line 210, in add win.group = self File "/usr/lib/python3.4/site-packages/libqtile/window.py", line 713, in group self.qtile.groups.index(group) File "/usr/lib/python3.4/site-packages/libqtile/xcbq.py", line 637, in set_property value File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 306, in check self.conn.request_check(self.sequence) File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 520, in wrapper return f(*args) File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 627, in request_check self._process_error(err) File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 598, in _process_error raise error(buf) xcffib.xproto.WindowError �[0m�[31m2015-05-11 16:20:00,438 �[1m�[31mqtile _xpoll:668 �[0m Got an exception in poll loop Traceback (most recent call last): File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 657, in _xpoll r = h(e) File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 999, in handle_MapRequest c = self.manage(w) File "/usr/lib/python3.4/site-packages/libqtile/manager.py", line 549, in manage self.currentScreen.group.add(c, focus=c.can_steal_focus()) File "/usr/lib/python3.4/site-packages/libqtile/group.py", line 210, in add win.group = self File "/usr/lib/python3.4/site-packages/libqtile/window.py", line 713, in group self.qtile.groups.index(group) File "/usr/lib/python3.4/site-packages/libqtile/xcbq.py", line 637, in set_property value File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 306, in check self.conn.request_check(self.sequence) File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 520, in wrapper return f(*args) File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 627, in request_check self._process_error(err) File "/usr/lib/python3.4/site-packages/xcffib/__init__.py", line 598, in _process_error raise error(buf) xcffib.xproto.WindowError�[0m So what it looks like is happening is that we're trying to set NET_WM_DESKTOP before the windowid is known to X, and that's causing things to be sad. Since NET_WM_DESKTOP isn't really all that important (it's not used by qtile for anything except on restart, which is reasonably rare), we can just ignore this failure. However, it would be nice to understand why it's happening.
- Loading branch information