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.
Autotools generates some helpers file as well as it creates files from
templates (e.g. audacity.desktop). Add these files to .gitignore to not
commit them.
isnan() is not defined when compiling with g++ 5.3.1 on Ubuntu 16.04. It
is called std::isnan() in C++11 instead. Therefore use wxIsNaN() instead
which already defines the correct name.
libsuil uses directly symbols of X11 when compiling with GTK2. The build
will fail if compiled with -Wl,--as-needed:
[6/6] cshlib: build/src/x11_in_gtk2.c.3.o -> build/libsuil_x11_in_gtk2.so
src/x11_in_gtk2.c.3.o: In function `forward_key_event':
lib-src/lv2/suil/build/../src/x11_in_gtk2.c:159: undefined reference to `XSendEvent'
src/x11_in_gtk2.c.3.o: In function `x_window_is_valid':
lv2/suil/build/../src/x11_in_gtk2.c:71: undefined reference to `XQueryTree'
src/x11_in_gtk2.c.3.o: In function `forward_size_request':
lib-src/lv2/suil/build/../src/x11_in_gtk2.c:172: undefined reference to `XResizeWindow'
collect2: error: ld returned 1 exit status
Waf: Leaving directory `lib-src/lv2/suil/build'
Build failed
Therefore link against X11 when using GTK2.
... 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.
* overlays:
Fix the flashing problems on Mac involving the quick play line...
Reimplement the play/record indicator in the ruler as an overlay...
Reimplement the cursor mark in the ruler as an overlay
Insert calls to DrawOverlays() on the ruler, though they do nothing yet
AdornedRulerPanel inherits from OverlayPanel, doesn't need to manage the backing
New base classes of TrackPanel just for the bitmap backing and overlay system...
... The main rule seems to be, during the repainting of one window, don't draw
onto any other DC for that or any other window. Don't refresh any other window.