Ecore_X(cb): Fix my focus issues with Sloppy focus.

Add a check for valid connection in ecore_xcb_icccm.c

NB: For some reason, XCB does not like ecore's timestamp which is
being passed in. Since all the calls to ecore_x_window_focus_at_time
are being passed the current timestamp anyway, just use
XCB_CURRENT_TIME until I have more available 'free time' to dig deeper
into this.



SVN revision: 67136
This commit is contained in:
Christopher Michael 2012-01-12 11:41:38 +00:00
parent 236aec5bec
commit 574380ccb0
2 changed files with 4 additions and 2 deletions

View File

@ -1452,6 +1452,7 @@ ecore_x_icccm_take_focus_send(Ecore_X_Window win,
Ecore_X_Time t)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
CHECK_XCB_CONN;
ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS,
XCB_EVENT_MASK_NO_EVENT,

View File

@ -783,13 +783,14 @@ ecore_x_window_focus(Ecore_X_Window win)
*/
EAPI void
ecore_x_window_focus_at_time(Ecore_X_Window win,
Ecore_X_Time time)
Ecore_X_Time time __UNUSED__)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
CHECK_XCB_CONN;
if (!win) win = ((xcb_screen_t *)_ecore_xcb_screen)->root;
xcb_set_input_focus(_ecore_xcb_conn, XCB_INPUT_FOCUS_PARENT, win, time);
xcb_set_input_focus(_ecore_xcb_conn,
XCB_INPUT_FOCUS_PARENT, win, XCB_CURRENT_TIME);
// ecore_x_flush();
}