comparison src/video/x11/SDL_x11window.c @ 2710:44e49d3fa6cf

Final merge of Google Summer of Code 2008 work... Many-mouse and tablet support by Szymon Wilczek, mentored by Ryan C. Gordon Everything concerning the project is noted on the wiki: http://wilku.ravenlord.ws/doku.php?id=start
author Sam Lantinga <slouken@libsdl.org>
date Mon, 25 Aug 2008 06:33:00 +0000
parents c7bcf84ba1b9
children abacf2555bb4
comparison
equal deleted inserted replaced
2709:fd3f0f1147e7 2710:44e49d3fa6cf
151 int x, y; 151 int x, y;
152 Window w; 152 Window w;
153 XSizeHints *sizehints; 153 XSizeHints *sizehints;
154 XWMHints *wmhints; 154 XWMHints *wmhints;
155 XClassHint *classhints; 155 XClassHint *classhints;
156 extern XEventClass SDL_XEvents[];
157 extern int SDL_NumOfXEvents;
156 158
157 #if SDL_VIDEO_DRIVER_X11_XINERAMA 159 #if SDL_VIDEO_DRIVER_X11_XINERAMA
158 /* FIXME 160 /* FIXME
159 if ( use_xinerama ) { 161 if ( use_xinerama ) {
160 x = xinerama_info.x_org; 162 x = xinerama_info.x_org;
479 #ifdef X_HAVE_UTF8_STRING 481 #ifdef X_HAVE_UTF8_STRING
480 { 482 {
481 Uint32 fevent = 0; 483 Uint32 fevent = 0;
482 pXGetICValues(((SDL_WindowData *) window->driverdata)->ic, 484 pXGetICValues(((SDL_WindowData *) window->driverdata)->ic,
483 XNFilterEvents, &fevent, NULL); 485 XNFilterEvents, &fevent, NULL);
486 XMapWindow(data->display, w);
484 XSelectInput(data->display, w, 487 XSelectInput(data->display, w,
485 (FocusChangeMask | EnterWindowMask | LeaveWindowMask | 488 (FocusChangeMask | EnterWindowMask | LeaveWindowMask |
486 ExposureMask | ButtonPressMask | ButtonReleaseMask | 489 ExposureMask | ButtonPressMask | ButtonReleaseMask |
487 PointerMotionMask | KeyPressMask | KeyReleaseMask | 490 PointerMotionMask | KeyPressMask | KeyReleaseMask |
488 PropertyChangeMask | StructureNotifyMask | 491 PropertyChangeMask | StructureNotifyMask |
489 KeymapStateMask | fevent)); 492 KeymapStateMask | fevent));
490 } 493 }
491 #else 494 #else
495 XMapWindow(data->display, w);
492 XSelectInput(data->display, w, 496 XSelectInput(data->display, w,
493 (FocusChangeMask | EnterWindowMask | LeaveWindowMask | 497 (FocusChangeMask | EnterWindowMask | LeaveWindowMask |
494 ExposureMask | ButtonPressMask | ButtonReleaseMask | 498 ExposureMask | ButtonPressMask | ButtonReleaseMask |
495 PointerMotionMask | KeyPressMask | KeyReleaseMask | 499 PointerMotionMask | KeyPressMask | KeyReleaseMask |
496 PropertyChangeMask | StructureNotifyMask | 500 PropertyChangeMask | StructureNotifyMask |
497 KeymapStateMask)); 501 KeymapStateMask));
498 #endif 502 #endif
503
504 /* we're informing the display what extension events we want to receive from it */
505 XSelectExtensionEvent(data->display, w, SDL_XEvents, SDL_NumOfXEvents);
499 506
500 return 0; 507 return 0;
501 } 508 }
502 509
503 int 510 int