Line 0
Link Here
|
|
|
1 |
--- apps/pdfapp.c.orig 2011-04-29 14:06:09.000000000 -0500 |
2 |
+++ apps/pdfapp.c 2011-05-16 19:09:04.275933926 -0500 |
3 |
@@ -777,11 +777,15 @@ void pdfapp_onkey(pdfapp_t *app, int c) |
4 |
break; |
5 |
|
6 |
case 'j': |
7 |
+ if (app->pany + app->image->h <= app->winh) |
8 |
+ goto pagedown; |
9 |
app->pany -= app->image->h / 10; |
10 |
pdfapp_showpage(app, 0, 0, 1); |
11 |
break; |
12 |
|
13 |
case 'k': |
14 |
+ if (app->pany >= 0) |
15 |
+ goto pageup; |
16 |
app->pany += app->image->h / 10; |
17 |
pdfapp_showpage(app, 0, 0, 1); |
18 |
break; |
19 |
@@ -843,6 +847,7 @@ void pdfapp_onkey(pdfapp_t *app, int c) |
20 |
*/ |
21 |
|
22 |
case ',': |
23 |
+ pageup: |
24 |
panto = PAN_TO_BOTTOM; |
25 |
if (app->numberlen > 0) |
26 |
app->pageno -= atoi(app->number); |
27 |
@@ -851,6 +856,7 @@ void pdfapp_onkey(pdfapp_t *app, int c) |
28 |
break; |
29 |
|
30 |
case '.': |
31 |
+ pagedown: |
32 |
panto = PAN_TO_TOP; |
33 |
if (app->numberlen > 0) |
34 |
app->pageno += atoi(app->number); |
35 |
@@ -1022,6 +1028,11 @@ void pdfapp_onmouse(pdfapp_t *app, int x |
36 |
int isx = (modifiers & (1<<0)); |
37 |
int xstep = isx ? 20 * dir : 0; |
38 |
int ystep = !isx ? 20 * dir : 0; |
39 |
+ if (dir < 0 && app->pany + app->image->h <= app->winh) |
40 |
+ pdfapp_onkey(app, 'j'); |
41 |
+ else if (dir > 0 && app->pany >= 0) |
42 |
+ pdfapp_onkey(app, 'k'); |
43 |
+ else |
44 |
pdfapp_panview(app, app->panx + xstep, app->pany + ystep); |
45 |
} |
46 |
} |