disallow zoom on maximized clients b79b5fac
Anselm R.Garbe · 2006-08-10 10:16 4 file(s) · +8 −21
client.c +0 −7
197 197
}
198 198
199 199
void
200 -
lower(Client *c)
201 -
{
202 -
	XLowerWindow(dpy, c->title);
203 -
	XLowerWindow(dpy, c->win);
204 -
}
205 -
206 -
void
207 200
manage(Window w, XWindowAttributes *wa)
208 201
{
209 202
	Client *c;
dwm.1 +0 −4
96 96
.B window
97 97
while dragging.
98 98
.TP
99 -
.B Mod1-Button2
100 -
Lowers current
101 -
.B window.
102 -
.TP
103 99
.B Mod1-Button3
104 100
Resizes current
105 101
.B window
dwm.h +0 −1
91 91
extern void gravitate(Client *c, Bool invert);
92 92
extern void higher(Client *c);
93 93
extern void killclient(Arg *arg);
94 -
extern void lower(Client *c);
95 94
extern void manage(Window w, XWindowAttributes *wa);
96 95
extern void resize(Client *c, Bool sizehints, Corner sticky);
97 96
extern void setsize(Client *c);
event.c +8 −9
127 127
		default:
128 128
			break;
129 129
		case Button1:
130 -
			if(!c->ismax && (arrange == dofloat || c->isfloat)) {
131 -
				higher(c);
132 -
				movemouse(c);
130 +
			if(!c->ismax) {
131 +
				if(arrange == dofloat || c->isfloat) {
132 +
					higher(c);
133 +
					movemouse(c);
134 +
				}
135 +
				else
136 +
					zoom(NULL);
133 137
			}
134 -
			else
135 -
				zoom(NULL);
136 -
			break;
137 -
		case Button2:
138 -
			lower(c);
139 138
			break;
140 139
		case Button3:
141 140
			if(!c->ismax && (arrange == dofloat || c->isfloat)) {
225 224
	Client *c;
226 225
	XCrossingEvent *ev = &e->xcrossing;
227 226
228 -
	if(ev->detail == NotifyInferior)
227 +
	if(ev->mode != NotifyNormal || ev->detail == NotifyInferior)
229 228
		return;
230 229
231 230
	if((c = getclient(ev->window)) || (c = getctitle(ev->window)))