Paul Licameli
8fe93ae8bc
Correct switching between scrub and seek in progress
2016-06-15 23:50:13 -04:00
Paul Licameli
8cba525b6c
No more separate start/stop button on Scrubbing toolbar...
...
... This finalizes (I hope) the set of buttons, but maybe not their left to
right order.
Behavior of the scrub bar is still not settled.
2016-06-15 21:20:40 -04:00
Paul Licameli
b1ca48c23e
Scrub bar show/hide button on Scrubbing toolbar
2016-06-15 01:11:42 -04:00
Paul Licameli
d0d28143f7
Do not change selection when stopping non-scrub play
2016-06-06 14:18:47 -04:00
Paul Licameli
d1fe0a89b5
Scrub play button becomes a stop button when pressed...
...
... also the corresponding menu command can stop as well as start the scrub
or seek
2016-06-06 02:12:31 -04:00
Paul Licameli
fd9d6a8fcf
Set selection whenever scrub/seek stops by any means besides ESC key
2016-06-06 01:45:54 -04:00
Paul Licameli
8dab37de01
Scrub menu check items change pushed state of scrub toolbar buttons
2016-06-06 00:48:50 -04:00
Paul Licameli
fe335f3a2b
Status is "Scrubbing" or "Seeking" not "Playing" at button down
2016-06-05 10:51:55 -04:00
Paul Licameli
f5c4c85653
New scrubbing toolbar; remove ruler pushbuttons.
2016-06-05 01:03:24 -04:00
Paul Licameli
bbfc730399
No more left-click to seek
2016-06-04 20:04:09 -04:00
Paul Licameli
ef62bc4e2a
Fix checkmarks and Start item in scrub handle context menu
2016-06-02 16:20:15 -04:00
Paul Licameli
364794fd68
Scrub handle changes appearance for seeking
2016-06-02 16:05:56 -04:00
Paul Licameli
bbb93a7400
One more alternate play button image, for seeking
2016-06-02 15:55:16 -04:00
Paul Licameli
6a3613e8e9
Implement scrub and seek buttons on ruler; redo scrub menu items
2016-06-02 15:55:16 -04:00
Paul Licameli
eafc416d55
Remove double-click and scrolling menu items for scrub/seek...
...
... Use the toggle button on the ruler instead
2016-06-01 13:30:01 -04:00
Paul Licameli
fecc6f53e4
Consolidate the code that starts and stops play/rec head scrolling
2016-06-01 13:25:01 -04:00
Paul Licameli
123499cbb1
Don't use scrubbing poller thread on Linux, it's not safe yet
2016-06-01 13:06:01 -04:00
Paul Licameli
fbcdc6b28f
Scrolling drag scrub tracks the mouse much better
2016-05-28 12:15:32 -04:00
Paul Licameli
35b0502ce1
Don't let seek make a stutter at less than unit speed
2016-05-28 12:11:26 -04:00
Paul Licameli
a9a404c7cf
Further simplified argument passing
2016-05-28 12:02:16 -04:00
Paul Licameli
e4fadf4aaf
Improve scrubbing speed control (2 finger swipe) on Mac
2016-05-28 11:59:22 -04:00
Paul Licameli
af7a92c2ab
Improve scrub responsiveness: a secondary thread polls the mouse
2016-05-28 11:59:22 -04:00
Paul Licameli
b6764d1bf7
Reduce scrub lag yet more, at expense of possible skips in play...
...
by discarding work from the queue sometimes on the consumer side.
Also more careful mixed long - double arithmetic.
2016-05-28 11:59:14 -04:00
Paul Licameli
b14fa507c9
Reorganize logic of initializing queue entries
2016-05-28 08:44:25 -04:00
Paul Licameli
4f2ee32a1a
One second countdown now based on the correct timer interval
2016-05-27 11:40:17 -04:00
Paul Licameli
24ef578a89
Don't squeak when starting a drag-scrub
2016-05-22 16:35:20 -04:00
Paul Licameli
c585bb16fb
Move bounding times and minimum stutter length into ScrubOptions
2016-05-22 15:27:35 -04:00
Paul Licameli
ffe596c760
Move some fields into ScrubbingOptions
2016-05-22 15:27:35 -04:00
Paul Licameli
671f60492d
Move some static functions into ScrubbingOptions
2016-05-22 15:27:35 -04:00
Paul Licameli
8ed93b8147
Fix conditional compilation branch
2016-05-22 15:27:35 -04:00
Paul Licameli
3dcf802bdc
Have just one scrub enqueueing function: use options for distinctions
2016-05-22 15:27:35 -04:00
Paul Licameli
cdbdd6480b
Define and pass around struct ScrubbingOptions, but nothing in it yet
2016-05-22 15:27:35 -04:00
Paul Licameli
5997beec9d
Rename Scrubbber::mScrubHasFocues to mPaused, reverse its sense
2016-05-22 15:27:34 -04:00
Paul Licameli
9e2916a80b
Better implementation of switch from scrub to quick play; ...
...
... also, don't ever draw the scrub handle while dragging the quick play
region.
2016-05-18 11:58:57 -04:00
Paul Licameli
b0919ba44f
Bug 1392: don't draw indicator over track control during quick play
2016-05-18 09:27:03 -04:00
Paul Licameli
47efa2dbbc
fix gcc build
2016-05-17 12:38:30 -04:00
Paul Licameli
c66262d790
Double click on Record button pins record head right, not center
2016-05-17 12:25:39 -04:00
Paul Licameli
0602343a2d
Make drag scrub less sluggish (do less redrawing)
2016-05-15 16:41:24 -04:00
Paul Licameli
3792d18f2d
Correct "scrub delay" for whatever scrub timer, so that the lag is right
2016-05-14 19:57:06 -04:00
David Bailes
76a53c43b2
Fix bug associated with the Cursor short/long jump left/right commands
...
Fixes the following bug: if the zoom level is such that the jump does not cause a visible
change in display of the tracks, then the selection in the selection bar, and the play
region are not updated.
The fix simply moves the location of the call to TP_DisplaySelection(), so that it is called
irrespective of whether the tracks are redrawn.
2016-05-14 15:53:11 +01:00
Paul Licameli
16d33c6005
Give the scrubber its own timer separate from TrackPanel's, so that...
...
... we can experiment with changing the interval.
2016-05-14 05:47:32 -04:00
Paul Licameli
1bff08a75a
Make drag-scrub seek, rather than playing at more than unit speed
2016-05-12 01:22:07 -04:00
Paul Licameli
737e24e24e
Allow pausing and unpausing of scrub. Just treat it differently internally.
2016-05-11 19:59:11 -04:00
Paul Licameli
928e96c6cc
Fix assertion violations about double capture; while still making sure...
...
... that if you drag-scrub and ESC, you don't get a leftover white guide line.
2016-05-10 15:35:46 -04:00
Paul Licameli
19ef2f6681
Implement drag-scrub, compatibly with the existing move-scrub...
...
... Start scrub by click or double click on the scrub head; release button or
not; then move.
If you release before moving, you get scrubbing as before, controlled by
motion. Click or drag to switch in and out of seeking. Stop with ESC,
spacebar, etc. No change of selection.
But now if you drag, then scrubbing contines until you release the mouse or
otherwise stop with a key.
If by release of the mouse, then the selection changes as if by a click at
the last play position. If you hold shift, then, as if by shift-click.
If drag begins with a double-click, then the play head remains centered and
the track moves.
2016-05-10 09:37:10 -04:00
Paul Licameli
5944391e24
Let's commit to EXPERIMENTAL_SCRUBBING_SMOOTH_SCROLL
2016-05-09 23:21:56 -04:00
Paul Licameli
cc0190054c
Fix regression in scroll scrub
2016-05-09 21:53:32 -04:00
Paul Licameli
34d0a52011
Better updating of the white guideline for scrub, and hiding it when scrub stops
2016-05-09 19:35:23 -04:00
Paul Licameli
f9dd6b4066
Reimplement the play/record indicator in the ruler as an overlay...
...
... fixing the lag between the green line and the triangle for scrolling play
2016-05-09 15:58:51 -04:00
Paul Licameli
d8e42b0af4
Reimplement the cursor mark in the ruler as an overlay
2016-05-09 15:28:33 -04:00