Use restart-alarm for ui blink code
parent
99e3fe6a6e
commit
3a7f9c3947
|
@ -60,14 +60,11 @@ SYMBOL: blink-interval
|
||||||
750 milliseconds blink-interval set-global
|
750 milliseconds blink-interval set-global
|
||||||
|
|
||||||
: stop-blinking ( editor -- )
|
: stop-blinking ( editor -- )
|
||||||
[ [ stop-alarm ] when* f ] change-blink-alarm drop ;
|
blink-alarm>> [ stop-alarm ] when* ;
|
||||||
|
|
||||||
: start-blinking ( editor -- )
|
: start-blinking ( editor -- )
|
||||||
[ stop-blinking ] [
|
|
||||||
t >>blink
|
t >>blink
|
||||||
dup '[ _ blink-caret ] blink-interval get delayed-every
|
blink-alarm>> [ restart-alarm ] when* ;
|
||||||
>>blink-alarm drop
|
|
||||||
] bi ;
|
|
||||||
|
|
||||||
: restart-blinking ( editor -- )
|
: restart-blinking ( editor -- )
|
||||||
dup focused?>> [
|
dup focused?>> [
|
||||||
|
@ -80,10 +77,15 @@ PRIVATE>
|
||||||
|
|
||||||
M: editor graft*
|
M: editor graft*
|
||||||
[ dup caret>> activate-editor-model ]
|
[ dup caret>> activate-editor-model ]
|
||||||
[ dup mark>> activate-editor-model ] bi ;
|
[ dup mark>> activate-editor-model ]
|
||||||
|
[
|
||||||
|
[
|
||||||
|
'[ _ blink-caret ] blink-interval get dup <alarm>
|
||||||
|
] keep blink-alarm<<
|
||||||
|
] tri ;
|
||||||
|
|
||||||
M: editor ungraft*
|
M: editor ungraft*
|
||||||
[ stop-blinking ]
|
[ [ stop-blinking ] [ f >>blink-alarm drop ] bi ]
|
||||||
[ dup caret>> deactivate-editor-model ]
|
[ dup caret>> deactivate-editor-model ]
|
||||||
[ dup mark>> deactivate-editor-model ] tri ;
|
[ dup mark>> deactivate-editor-model ] tri ;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue