Made sure first created xcb window still receives focus.

Change 50ca45f059 caused mapped windows to not receive focus by
default. The _NET_WM_USER_TIME spec says that if the user time is set to
0 (or CurrentTime), the window will not be initially focused. Thus, if
the connection time has not yet been set, we skip this part to restore
the old behavior.

Change-Id: I19de3602c78629ad2bc65f5e1976313949c82c4c
Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
This commit is contained in:
Samuel Rødal 2012-03-13 16:50:05 +01:00 committed by Qt by Nokia
parent 22494ea8e8
commit 9a68dd0156

View File

@ -549,7 +549,8 @@ void QXcbWindow::show()
updateNetWmStateBeforeMap(); updateNetWmStateBeforeMap();
} }
updateNetWmUserTime(connection()->time()); if (connection()->time() != CurrentTime)
updateNetWmUserTime(connection()->time());
Q_XCB_CALL(xcb_map_window(xcb_connection(), m_window)); Q_XCB_CALL(xcb_map_window(xcb_connection(), m_window));
xcb_flush(xcb_connection()); xcb_flush(xcb_connection());