changeset 490 | 303d3384720e |
parent 489 | d34374cbe926 |
child 491 | 12395ef46d97 |
489:d34374cbe926 | 490:303d3384720e |
---|---|
35 c->ismax = False; |
35 c->ismax = False; |
36 XQueryPointer(dpy, root, &dummy, &dummy, &x1, &y1, &di, &di, &dui); |
36 XQueryPointer(dpy, root, &dummy, &dummy, &x1, &y1, &di, &di, &dui); |
37 for(;;) { |
37 for(;;) { |
38 XMaskEvent(dpy, MOUSEMASK | ExposureMask, &ev); |
38 XMaskEvent(dpy, MOUSEMASK | ExposureMask, &ev); |
39 switch (ev.type) { |
39 switch (ev.type) { |
40 case ButtonRelease: |
|
41 XUngrabPointer(dpy, CurrentTime); |
|
42 return; |
|
40 case Expose: |
43 case Expose: |
41 handler[Expose](&ev); |
44 handler[Expose](&ev); |
42 break; |
45 break; |
43 case MotionNotify: |
46 case MotionNotify: |
44 XSync(dpy, False); |
47 XSync(dpy, False); |
45 c->x = ocx + (ev.xmotion.x - x1); |
48 c->x = ocx + (ev.xmotion.x - x1); |
46 c->y = ocy + (ev.xmotion.y - y1); |
49 c->y = ocy + (ev.xmotion.y - y1); |
47 resize(c, False, TopLeft); |
50 resize(c, False, TopLeft); |
48 break; |
51 break; |
49 case ButtonRelease: |
|
50 XUngrabPointer(dpy, CurrentTime); |
|
51 return; |
|
52 } |
52 } |
53 } |
53 } |
54 } |
54 } |
55 |
55 |
56 static void |
56 static void |
68 c->ismax = False; |
68 c->ismax = False; |
69 XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w, c->h); |
69 XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w, c->h); |
70 for(;;) { |
70 for(;;) { |
71 XMaskEvent(dpy, MOUSEMASK | ExposureMask, &ev); |
71 XMaskEvent(dpy, MOUSEMASK | ExposureMask, &ev); |
72 switch(ev.type) { |
72 switch(ev.type) { |
73 case ButtonRelease: |
|
74 XUngrabPointer(dpy, CurrentTime); |
|
75 return; |
|
73 case Expose: |
76 case Expose: |
74 handler[Expose](&ev); |
77 handler[Expose](&ev); |
75 break; |
78 break; |
76 case MotionNotify: |
79 case MotionNotify: |
77 XSync(dpy, False); |
80 XSync(dpy, False); |
85 sticky = (ocy <= ev.xmotion.y) ? TopLeft : BotLeft; |
88 sticky = (ocy <= ev.xmotion.y) ? TopLeft : BotLeft; |
86 else |
89 else |
87 sticky = (ocy <= ev.xmotion.y) ? TopRight : BotRight; |
90 sticky = (ocy <= ev.xmotion.y) ? TopRight : BotRight; |
88 resize(c, True, sticky); |
91 resize(c, True, sticky); |
89 break; |
92 break; |
90 case ButtonRelease: |
|
91 XUngrabPointer(dpy, CurrentTime); |
|
92 return; |
|
93 } |
93 } |
94 } |
94 } |
95 } |
95 } |
96 |
96 |
97 static void |
97 static void |