diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2003-09-08 12:36:10 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2003-09-08 12:36:10 +0000 |
commit | abbe4a3de13983cbcab7c62f08457fccd6aa9bee (patch) | |
tree | 904217b046d2a81dc02a77c7af6f9debad3bcb32 /tools/aewm-drakx/events.c | |
parent | 56aa33e8cf2d62b12f4c56537d13905e6cafca72 (diff) | |
download | drakx-abbe4a3de13983cbcab7c62f08457fccd6aa9bee.tar drakx-abbe4a3de13983cbcab7c62f08457fccd6aa9bee.tar.gz drakx-abbe4a3de13983cbcab7c62f08457fccd6aa9bee.tar.bz2 drakx-abbe4a3de13983cbcab7c62f08457fccd6aa9bee.tar.xz drakx-abbe4a3de13983cbcab7c62f08457fccd6aa9bee.zip |
fixing keyboard focus during install:
- removed aewm-drakx which doesn't work nicely
- fix @interactive::objects handling
(don't push non pop_it windows, ensure destroyed windows are removed)
- ensure XSetInputFocus is called on $::WizardWindow
Diffstat (limited to 'tools/aewm-drakx/events.c')
-rw-r--r-- | tools/aewm-drakx/events.c | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/tools/aewm-drakx/events.c b/tools/aewm-drakx/events.c deleted file mode 100644 index f9a387e1e..000000000 --- a/tools/aewm-drakx/events.c +++ /dev/null @@ -1,106 +0,0 @@ -/* aewm - a minimalistic X11 window manager. ------- vim:sw=4:et - * Copyright (c) 1998-2001 Decklin Foster <decklin@red-bean.com> - * Free software! Please see README for details and license. */ - -#include "aewm.h" - - -static void handle_configure_request(XConfigureRequestEvent *e) -{ - XWindowChanges wc; - - wc.x = e->x; - wc.y = e->y; - wc.width = e->width; - wc.height = e->height; - wc.sibling = e->above; - wc.stack_mode = e->detail; - XConfigureWindow(dpy, e->window, e->value_mask, &wc); -} - -static void handle_map_request(XMapRequestEvent *e) -{ - Client *c = find_client(e->window); - - if (c) { - XMapWindow(dpy, c->window); - set_wm_state(c, NormalState); - set_focus_on(c->window); - } else { - make_new_client(e->window); - } -} - -static void handle_destroy_event(XDestroyWindowEvent *e) -{ - Client *c = find_client(e->window); - - if (c) remove_client(c); -} - - -#ifdef DEBUG -#define SHOW_EV(name, memb) \ - case name: s = #name; w = e.memb.window; break; -#define SHOW(name) \ - case name: return #name; - -void show_event(XEvent e) -{ - char *s = 0, buf[20]; - char *dd = 0; - Window w = 0; - Client *c; - - switch (e.type) { - SHOW_EV(ButtonPress, xbutton) - SHOW_EV(ButtonRelease, xbutton) - SHOW_EV(ClientMessage, xclient) - SHOW_EV(ColormapNotify, xcolormap) - SHOW_EV(ConfigureNotify, xconfigure) - SHOW_EV(ConfigureRequest, xconfigurerequest) - SHOW_EV(CreateNotify, xcreatewindow) - SHOW_EV(DestroyNotify, xdestroywindow) - SHOW_EV(EnterNotify, xcrossing) - SHOW_EV(Expose, xexpose) - SHOW_EV(MapNotify, xmap) - SHOW_EV(MapRequest, xmaprequest) - SHOW_EV(MappingNotify, xmapping) - SHOW_EV(MotionNotify, xmotion) - SHOW_EV(PropertyNotify, xproperty) - SHOW_EV(ReparentNotify, xreparent) - SHOW_EV(ResizeRequest, xresizerequest) - SHOW_EV(UnmapNotify, xunmap) - default: - break; - } - - c = find_client(w); - - if (c) XFetchName(dpy, c->window, &dd); - - snprintf(buf, sizeof buf, dd ? dd : ""); - err("%#-10lx: %-20s: %s", w, buf, s); -} -#endif - - -void do_event_loop(void) -{ - XEvent ev; - - for (;;) { - XNextEvent(dpy, &ev); -#ifdef DEBUG - show_event(ev); -#endif - switch (ev.type) { - case ConfigureRequest: - handle_configure_request(&ev.xconfigurerequest); break; - case MapRequest: - handle_map_request(&ev.xmaprequest); break; - case DestroyNotify: - handle_destroy_event(&ev.xdestroywindow); break; - } - } -} |