Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fixed scrolling |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
ff69bb0126d74254fb832ab0230c84b4 |
User & Date: | bernd 2014-01-23 15:35:58.606 |
Context
2014-01-23
| ||
16:05 | Slideshow finetuning check-in: 293240b31b user: bernd tags: trunk | |
15:35 | Fixed scrolling check-in: ff69bb0126 user: bernd tags: trunk | |
2014-01-21
| ||
01:02 | Sensor example check-in: 7c22743d9a user: bernd tags: trunk | |
Changes
Changes to gl-helper.fs.
︙ | ︙ | |||
642 643 644 645 646 647 648 | 0.5e FConstant rel-drag 0.3e FConstant abs-drag FVariable drag-time : f!@ ( r1 addr -- r2 ) dup f@ fswap f! ; : delta-t ( -- r ) ftime fdup drag-time f!@ f- fdup 1e f> IF fdrop 0e THEN ; | < | | | 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 | 0.5e FConstant rel-drag 0.3e FConstant abs-drag FVariable drag-time : f!@ ( r1 addr -- r2 ) dup f@ fswap f! ; : delta-t ( -- r ) ftime fdup drag-time f!@ f- fdup 1e f> IF fdrop 0e THEN ; FVariable motion-x0 FVariable motion-y0 Variable last-x0 -100 last-x0 ! Variable last-y0 -100 last-y0 ! 0.15e FConstant short-click# 0.5e FConstant long-click# : delta-tc ( -- r ) *input downtime 2@ d>f 1e-3 f* ; : short? ( -- flag ) delta-tc short-click# f< ; : long? ( -- flag ) delta-tc long-click# f> ; : !click ( -- ) 0e motion-x0 f! 0e motion-y0 f! ; [IFUNDEF] togglekb : togglekb ; [THEN] : ?toggle ( -- ) short? motion-y0 f@ f0= and IF togglekb need-show off THEN ; : do-motion { rows cur old motion xt -- } old @ -100 = IF cur old ! |
︙ | ︙ |
Changes to gl-terminal.fs.
︙ | ︙ | |||
273 274 275 276 277 278 279 280 281 282 283 284 | : scroll-yr ( -- float ) scroll-y @ s>f y-pos sf@ f2/ rows fm* f+ ; : +scroll ( -- ) scroll-yr f+ videorows 1 - s>f fmin 0e fmax screen-scroll ; : screen-slide ( -- ) *input >r r@ IF r@ action @ \ dup -1 <> IF dup . delta-t f. cr THEN | > > > > > | < < < < < | < > | > < | > > | 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 | : scroll-yr ( -- float ) scroll-y @ s>f y-pos sf@ f2/ rows fm* f+ ; : +scroll ( -- ) scroll-yr f+ videorows 1 - s>f fmin 0e fmax screen-scroll ; : scrolling ( y0 -- ) rows swap last-y0 motion-y0 ['] +scroll do-motion long? IF kbflag @ IF togglekb THEN THEN need-show off ; : screen-slide ( -- ) *input >r r@ IF r@ action @ \ dup -1 <> IF dup . delta-t f. cr THEN case 1 of ?toggle r@ action on endof abs 1 <> IF r@ y0 @ scrolling ELSE last-y0 motion-y0 ['] +scroll drag-motion THEN 0 endcase THEN rdrop ; :noname ( flag -- flag ) screen-sync \ [: touch>event screen-slide ;] is android-touch screen-slide scroll-slide ; IS screen-ops ' gl-type ' gl-emit ' gl-cr ' gl-form output: >screen >screen ' gl-atxy IS at-xy ' gl-at-deltaxy IS at-deltaxy ' gl-page IS page |
︙ | ︙ |
Changes to gles2/android.fs.
︙ | ︙ | |||
25 26 27 28 29 30 31 32 33 34 35 36 37 38 | begin-structure app_input_state field: action field: flags field: metastate field: edgeflags field: pressure field: size field: tcount field: x0 field: y0 field: x1 field: y1 field: x2 field: y2 | > | 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | begin-structure app_input_state field: action field: flags field: metastate field: edgeflags field: pressure field: size 2field: downtime field: tcount field: x0 field: y0 field: x1 field: y1 field: x2 field: y2 |
︙ | ︙ | |||
257 258 259 260 261 262 263 | 0= IF getUnicodeChar dup 0> IF android-unicode ELSE drop getKeyCode android-keycode THEN THEN THEN o> ; | | > > | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 | 0= IF getUnicodeChar dup 0> IF android-unicode ELSE drop getKeyCode android-keycode THEN THEN THEN o> ; : touch>event ( event -- ) dup to touch-event >o me-getAction *input action ! getFlags *input flags ! getMetaState *input metastate ! getEdgeFlags *input edgeflags ! 0 getPressure f>s *input pressure ! 0 getSize f>s *input size ! getEventTime getDownTime d- *input downtime 2! getPointerCount dup *input tcount ! *input x0 swap 0 ?DO I getY f>s I getX f>s rot dup >r 2! r> 2 cells + LOOP drop o> ; Defer android-location ( location -- ) :noname to location ; IS android-location Defer android-sensor ( sensor -- ) :noname to sensor ; IS android-sensor \ stubs, "is recurse" assigns to last defined word Defer android-surface-changed ' ]gref is recurse Defer android-surface-redraw ' ]gref is recurse Defer android-video-size ' ]gref is recurse Defer android-touch ' touch>event is recurse : android-surface-created ( surface -- ) >o env o ANativeWindow_fromSurface app window ! gref> ; : android-surface-destroyed ( surface -- ) >o app window off gref> ; : android-global-layout ( 0 -- ) drop config-changed ; |
︙ | ︙ |
Changes to gles2/gl-helper.fs.
︙ | ︙ | |||
642 643 644 645 646 647 648 | 0.5e FConstant rel-drag 0.3e FConstant abs-drag FVariable drag-time : f!@ ( r1 addr -- r2 ) dup f@ fswap f! ; : delta-t ( -- r ) ftime fdup drag-time f!@ f- fdup 1e f> IF fdrop 0e THEN ; | < | | | 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 | 0.5e FConstant rel-drag 0.3e FConstant abs-drag FVariable drag-time : f!@ ( r1 addr -- r2 ) dup f@ fswap f! ; : delta-t ( -- r ) ftime fdup drag-time f!@ f- fdup 1e f> IF fdrop 0e THEN ; FVariable motion-x0 FVariable motion-y0 Variable last-x0 -100 last-x0 ! Variable last-y0 -100 last-y0 ! 0.15e FConstant short-click# 0.5e FConstant long-click# : delta-tc ( -- r ) *input downtime 2@ d>f 1e-3 f* ; : short? ( -- flag ) delta-tc short-click# f< ; : long? ( -- flag ) delta-tc long-click# f> ; : !click ( -- ) 0e motion-x0 f! 0e motion-y0 f! ; [IFUNDEF] togglekb : togglekb ; [THEN] : ?toggle ( -- ) short? motion-y0 f@ f0= and IF togglekb need-show off THEN ; : do-motion { rows cur old motion xt -- } old @ -100 = IF cur old ! |
︙ | ︙ |
Changes to gles2/gl-terminal.fs.
︙ | ︙ | |||
273 274 275 276 277 278 279 280 281 282 283 284 | : scroll-yr ( -- float ) scroll-y @ s>f y-pos sf@ f2/ rows fm* f+ ; : +scroll ( -- ) scroll-yr f+ videorows 1 - s>f fmin 0e fmax screen-scroll ; : screen-slide ( -- ) *input >r r@ IF r@ action @ \ dup -1 <> IF dup . delta-t f. cr THEN | > > > > > | < < < < < | < > | > < | > > | 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 | : scroll-yr ( -- float ) scroll-y @ s>f y-pos sf@ f2/ rows fm* f+ ; : +scroll ( -- ) scroll-yr f+ videorows 1 - s>f fmin 0e fmax screen-scroll ; : scrolling ( y0 -- ) rows swap last-y0 motion-y0 ['] +scroll do-motion long? IF kbflag @ IF togglekb THEN THEN need-show off ; : screen-slide ( -- ) *input >r r@ IF r@ action @ \ dup -1 <> IF dup . delta-t f. cr THEN case 1 of ?toggle r@ action on endof abs 1 <> IF r@ y0 @ scrolling ELSE last-y0 motion-y0 ['] +scroll drag-motion THEN 0 endcase THEN rdrop ; :noname ( flag -- flag ) screen-sync \ [: touch>event screen-slide ;] is android-touch screen-slide scroll-slide ; IS screen-ops ' gl-type ' gl-emit ' gl-cr ' gl-form output: >screen >screen ' gl-atxy IS at-xy ' gl-at-deltaxy IS at-deltaxy ' gl-page IS page |
︙ | ︙ |
Changes to gles2/jni-helper.fs.
︙ | ︙ | |||
54 55 56 57 58 59 60 61 62 63 64 65 66 67 | jni-method: getPointerCount getPointerCount ()I jni-method: getX getX (I)F jni-method: getY getY (I)F jni-method: me-getAction getAction ()I jni-method: getFlags getFlags ()I jni-method: getEdgeFlags getEdgeFlags ()I jni-method: getEventTime getEventTime ()J jni-method: getMetaState getMetaState ()I jni-method: getSize getSize (I)F jni-method: getPressure getPressure (I)F jni-class: java/util/List jni-method: l-get get (I)Ljava/lang/Object; | > | 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | jni-method: getPointerCount getPointerCount ()I jni-method: getX getX (I)F jni-method: getY getY (I)F jni-method: me-getAction getAction ()I jni-method: getFlags getFlags ()I jni-method: getEdgeFlags getEdgeFlags ()I jni-method: getEventTime getEventTime ()J jni-method: getDownTime getDownTime ()J jni-method: getMetaState getMetaState ()I jni-method: getSize getSize (I)F jni-method: getPressure getPressure (I)F jni-class: java/util/List jni-method: l-get get (I)Ljava/lang/Object; |
︙ | ︙ |