Got questions, comments, patches, etc.?
Contact Jason Woofenden
gitweb
/
spectrwm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
326462f
)
More focus simplicfication
author
Marco Peereboom
<marco@conformal.com>
Thu, 22 Jan 2009 00:08:19 +0000
(
00:08
+0000)
committer
Marco Peereboom
<marco@conformal.com>
Thu, 22 Jan 2009 00:08:19 +0000
(
00:08
+0000)
scrotwm.c
patch
|
blob
|
history
diff --git
a/scrotwm.c
b/scrotwm.c
index
714224d
..
b5e2ffb
100644
(file)
--- a/
scrotwm.c
+++ b/
scrotwm.c
@@
-89,7
+89,6
@@
#endif
#endif
#endif
#endif
-#define SWM_DEBUG
/* #define SWM_DEBUG */
#ifdef SWM_DEBUG
#define DPRINTF(x...) do { if (swm_debug) fprintf(stderr, x); } while(0)
/* #define SWM_DEBUG */
#ifdef SWM_DEBUG
#define DPRINTF(x...) do { if (swm_debug) fprintf(stderr, x); } while(0)
@@
-1354,6
+1353,21
@@
struct key {
{ MODKEY | ShiftMask, XK_Tab, focus, {.id = SWM_ARG_ID_FOCUSPREV} },
};
{ MODKEY | ShiftMask, XK_Tab, focus, {.id = SWM_ARG_ID_FOCUSPREV} },
};
+#if 0
+/* mouse */
+enum { client_click, root_click };
+struct button {
+ unsigned int click;
+ unsigned int mask;
+ unsigned int button;
+ void (*func)(struct swm_region *r, union arg *);
+ union arg args;
+} buttons[] = {
+ /* action key mouse button func args */
+ { client_click, MODKEY, Button2, NULL, {0} },
+};
+#endif
+
void
updatenumlockmask(void)
{
void
updatenumlockmask(void)
{
@@
-1621,27
+1635,17
@@
enternotify(XEvent *e)
{
XCrossingEvent *ev = &e->xcrossing;
struct ws_win *win;
{
XCrossingEvent *ev = &e->xcrossing;
struct ws_win *win;
- int i, j;
DNPRINTF(SWM_D_EVENT, "enternotify: window: %lu\n", ev->window);
DNPRINTF(SWM_D_EVENT, "enternotify: window: %lu\n", ev->window);
- if ((ev->mode != NotifyNormal || ev->detail == NotifyInferior) &&
- ev->window != ev->root)
- return;
if (ignore_enter) {
/* eat event(r) to prevent autofocus */
ignore_enter--;
return;
}
if (ignore_enter) {
/* eat event(r) to prevent autofocus */
ignore_enter--;
return;
}
- /* brute force for now */
- for (i = 0; i < ScreenCount(display); i++) {
- for (j = 0; j < SWM_WS_MAX; j++) {
- TAILQ_FOREACH(win, &screens[i].ws[j].winlist , entry) {
- if (win->id == ev->window)
- focus_win(win);
- }
- }
- }
+
+ if ((win = find_window(ev->window)) != NULL)
+ focus_win(win);
}
void
}
void
@@
-1843,7
+1847,7
@@
setup_screens(void)
screens[i].root = RootWindow(display, i);
XGetWindowAttributes(display, screens[i].root, &wa);
XSelectInput(display, screens[i].root,
screens[i].root = RootWindow(display, i);
XGetWindowAttributes(display, screens[i].root, &wa);
XSelectInput(display, screens[i].root,
- ButtonPressMask | wa.your_event_mask);
+ EnterWindowMask | ButtonPressMask | wa.your_event_mask);
/* set default colors */
screens[i].color_focus = name_to_color("red");
/* set default colors */
screens[i].color_focus = name_to_color("red");