This commit is contained in:
cinap_lenrek 2014-01-05 02:39:23 +01:00
commit b7ab1354e3
2 changed files with 14 additions and 22 deletions

View file

@ -153,7 +153,7 @@ wscroll(Window *w, int but)
readmouse(&w->mc);
continue;
}
if(but == 1)
if(but == 1 || but == 4)
p0 = wbacknl(w, w->org, (my-s.min.y)/w->font->height);
else
p0 = w->org+frcharofpt(w, Pt(s.max.x, my));
@ -163,6 +163,8 @@ wscroll(Window *w, int but)
/* debounce */
if(first){
flushimage(display, 1);
if(but > 3)
return;
sleep(200);
nbrecv(w->mc.c, &w->mc.Mouse);
first = FALSE;

View file

@ -900,32 +900,22 @@ wmousectl(Window *w)
{
int but;
if(w->mc.buttons == 1)
but = 1;
else if(w->mc.buttons == 2)
but = 2;
else if(w->mc.buttons == 4)
but = 3;
else{
if(w->mc.buttons == 8)
wkeyctl(w, Kscrolloneup);
if(w->mc.buttons == 16)
wkeyctl(w, Kscrollonedown);
for(but=1;; but++){
if(but > 5)
return;
if(w->mc.buttons == 1<<(but-1))
break;
}
incref(w); /* hold up window while we track */
if(w->i==nil)
goto Return;
if(ptinrect(w->mc.xy, w->scrollr)){
if(but)
if(w->i != nil){
if(shiftdown && but > 3)
wkeyctl(w, but == 4 ? Kscrolloneup : Kscrollonedown);
else if(ptinrect(w->mc.xy, w->scrollr) || (but > 3))
wscroll(w, but);
goto Return;
}
if(but == 1)
else if(but == 1)
wselect(w);
/* else all is handled by main process */
Return:
}
wclose(w);
}