ref: 8f27b8d04dfb40d396fc6499fda4bcc2a9a13d42
parent: 847f3a0cf54ac6aaafaeda7f6c6a4422e2f14700
author: BurnZeZ <[email protected]>
date: Sat Oct 24 18:57:07 EDT 2015
rio: fix scrolling when cursor is above window
--- a/sys/src/cmd/rio/scrl.c
+++ b/sys/src/cmd/rio/scrl.c
@@ -153,10 +153,13 @@
readmouse(&w->mc);
continue;
}
- 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));
+ if(but == 1 || but == 4){
+ y = max(1, (my-s.min.y)/w->font->height);
+ p0 = wbacknl(w, w->org, y);
+ }else{
+ y = max(my, s.min.y+w->font->height);
+ p0 = w->org+frcharofpt(w, Pt(s.max.x, y));
+ }
if(oldp0 != p0)
wsetorigin(w, p0, TRUE);
oldp0 = p0;