1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-16 08:09:32 +02:00

190 Commits

Author SHA1 Message Date
James Crook
7e691ddf38 Fix crash bug (regression) in Automation
Somewhere along the line, GetEffectIdentifier got changed to GetEffectByIdentifier, leading to abuse of an iterator when attempting to invoke an effect by name.
2017-06-03 15:59:50 +01:00
James Crook
c48310c519 Fix 'Disallowed' message when using up-arrow.
This happened when transcription toolbar had focus, with and without tracks.
2017-05-31 23:19:43 +01:00
James Crook
eaec68a014 Bug 1642 - (Windows) Adding a shortcut or toggling Extra Menus causes ENTER on dropdown to open new project 2017-05-15 23:25:54 +01:00
James Crook
a0ea5d64db Bug 1469 - Shift key does not modify Play/Record buttons when Karaoke view has focus 2017-05-14 22:14:13 +01:00
James Crook
94c43773fc Bug 1641 - Don't use the 'space trick' on Linux/Mac menus.
The 'added space trick' to disable menu accelerators and still show them hides the accelerators completely on Linux/Mac.  Linux/Mac rejects the invalid accelerators.  Fortunately we don't need to disable the menu accelerators on Linux/Mac.  These menu accelerators causing a problem (in bug 1637) only happens on Windows.  So the 'space trick' is now used only on Windows.
2017-05-09 08:44:39 +01:00
James Crook
6a33e8303a Bug 1641 - Follow up. NUMPAD_ENTER, Backspace, Delete
3 Keys that were already illegal now added back with a space before them.
This should fix these keys in 1641 too.
2017-05-07 11:17:18 +01:00
James Crook
6e65596b47 Bug 1641 - Panel navigation accelerators don't appear in the menus
This attempted fix applies the 'space' trick to make accelerators invalid, so "Left" is added as " Left" into the menus, and appears normal but does not act as an accelerator.  This is now only done for the problematic accelerators rather than for all accelerators.  It's believed that doing it for all accelerators caused the problem.

In debug builds users will see messages like the one below in the console:

"Unrecognized accel key ' right', accel string ignored."

This fix additionally adds 0..9 to the specially handled accelerators.  This should address:
Bug 1260 - Cant type "1" in the Project Rate text box

The fix has been developed and tested on Window only.  Theoretically the space might cause problems on Mac and if it does the 'space' trick could be applied just on Windows and Linux, since Mac did not seem to have the problem reported in 1260.
2017-05-07 10:59:50 +01:00
James Crook
ef62bd70df Bug 1637 - Keyboard interaction with many controls in toolbars broken
This progresses this bug.  Specifically on Windows, Left and Right arrows and Enter (non keypad version) should now no longer be a problem.  The fix is to not show these shortcuts in menus, because otherwise the menus will catch the events.  Unfortunately attempts to show these specific shortcuts in the menus bring back the bug.

Steps to reproduce for 1637 will need to be updated.
2017-05-04 17:14:44 +01:00
James Crook
57b200884e Bug 1639 - Left and Right arrow keys don't work in docked toolbars, if bound to some action.
This fix works by detecting whether the focus window is the TrackPanel, in which case all keys are handled normally.  If it isn't the TrackPanel, then the problematic keys do not get sent to our own CommandHandler and proceed on to wxWidgets.

A problem that then follows is that the menu accelerators (which normally don't get a look in) may then convert the event to a menu event and stop it going any further.So it does not get to the focus window.

The fix/workaround for that is to NOT provide accelerators for up, down, left and right arrow in the menus.  I'd much rather be able to turn off those accelerators completely, yet still show them to users as hints.
2017-05-01 19:04:49 +01:00
James Crook
083d123875 Don't update checkmarks of occult menu items. 2017-04-21 17:39:35 +01:00
James Crook
031f8413f4 Organise the occult commands in the Preferences Key View. 2017-04-21 15:50:25 +01:00
Paul Licameli
abbe9276f0 Exception safety in: CommandManager 2017-03-21 14:11:21 -04:00
James Crook
8f71aa67df Allow same command more than once in the menus.
Pause appears in both Record and Play, and we want the P shortcut to work.
2017-03-19 19:32:35 +00:00
Paul Licameli
b81cdee7e3 Comment where xml writing functions may throw 2017-03-18 11:45:05 -04:00
Paul Licameli
6525bb18cf Translate exceptions to error codes in callback functions...
... That is what the library protocols allow, and libraries may be written
in C and might corrupt their state if C++ exceptions pass through them.
2017-03-17 17:53:01 -04:00
Paul Licameli
5036583549 Fewer inclusions of AudacityApp.h 2017-03-17 17:52:24 -04:00
Paul Licameli
81285ee0c1 More const and override 2017-03-17 17:52:20 -04:00
Gale Andrews
ed503c35e5 Address issue posted on Wiki Wording page 2016-10-27 06:23:05 +01:00
Paul Licameli
09a3854256 Use unique_ptr more properly in the fix for building mod-nyq-bench 2016-10-02 09:46:48 -04:00
Leland Lucius
2ab0c13101 Fix build of Nyquist Workbench 2016-10-01 14:05:53 -05:00
Paul Licameli
b6241c46d3 Remove a few more naked new in CommandManager.cpp 2016-08-13 10:37:52 -04:00
Paul Licameli
81228eac0e Improve the fix for the Ctrl+F6 cycle 2016-06-30 11:00:56 -04:00
Paul Licameli
e9cf0a8335 Bug1252: Ctrl-f6 cycle works on Mac even when combo has focus 2016-06-23 10:35:45 -04:00
Paul Licameli
03ec020085 Revert "Help for debugging of some event handling"
This reverts commit 9bfd66b06ca908efe9bd3adfd7f78cf143d18688.
2016-05-11 13:46:32 -04:00
Paul Licameli
9bfd66b06c Help for debugging of some event handling 2016-05-11 13:25:00 -04:00
Paul Licameli
0d9d8a057d Revert "Disable scrubbing when pause button is down."
This reverts commit 97fdce5f85e884cbe6f161963789694015cdf328.
2016-05-06 11:32:56 -04:00
Paul Licameli
97fdce5f85 Disable scrubbing when pause button is down. 2016-05-05 22:48:23 -04:00
Paul Licameli
014d5ab93c Type safety in the use of command flags, and make enum wide, allowing more bits 2016-05-05 20:02:13 -04:00
Paul Licameli
de75a00c10 Define movable_ptr and make_movable, use __AUDACITY_OLD_STD__ in fewer places 2016-03-25 20:27:25 -04:00
Leland Lucius
9dc9348127 Fixes bug #1344 (mac build)
In addition, the Xcode project can now build against the 10.6
or 10.7 SDKs.  All that is needed is to change the SDK version
and the other settings will change automatically.
2016-03-07 00:29:26 -06:00
Paul Licameli
60bcd7aea2 Fix warnings for unused variables and functions 2016-02-26 14:56:26 -05:00
Paul Licameli
7824e94030 Harmlessly qualify classes as final (or explicitly comment not)...
... Should have no effect on generated code, except perhaps some slight faster
virtual function calls.  Mostly useful as documentation of design intent.

Tried to mark every one of our classes that inherits from another, or is a
base for others, or has abstract virtual functions, and a few others besides.
2016-02-24 20:58:30 -05:00
Paul Licameli
923a6ce4af Sweep unnecessary wxString copies: commands 2016-02-23 01:40:21 -05:00
Paul Licameli
cf3daebff6 Reviewed allocations of wxMenuBar items. 2016-02-20 20:23:54 -05:00
Paul Licameli
00db530c9b Don't eliminate indirection for CommandListEntry. Explain why. Use unique_ptr 2016-02-19 10:49:50 -05:00
Paul Licameli
d9c2ff6dc2 fix compilation 2016-02-19 01:39:44 -05:00
Paul Licameli
e0c88b1e53 Remove needless indirection for more little structures, in CommandManager...
... Also use std::shared_ptr for functors to simplify resource management
2016-02-18 20:19:27 -05:00
Paul Licameli
7c4c45a0d5 "new"->"NEW" in comments, easier to find remaining naked operator new 2016-02-14 18:52:41 -05:00
Paul Licameli
56e7653343 "delete"->"DELETE" in comments, easier to find remaining naked operator delete 2016-02-14 18:50:45 -05:00
Paul Licameli
12a2d066ba Bug1306: Kestroke shortcuts for sub-menu entries now work again...
... for instance, Align sub-menu of Tracks.
2016-01-27 16:10:46 -05:00
Paul Licameli
9c483e2e86 Add (redundant) #include "Experimental.h" in all .cpp files using the symbols 2015-08-31 17:56:10 -04:00
David Bailes
e8a07c61e2 Fix for problem with the handling of default keystrokes.
In the class CommandListEntry, the default key was being set to an empty string, rather than the correct key.
This resulted in bugs such as: pressing default in keyboard preferences clearing all the shortcuts, entries
being created in audacity.cfg for all commands with keystrokes, and ending up with commands with the same shortcut.
2015-08-26 11:44:50 +01:00
Leland Lucius
7757297d82 Fix OSX special menu items (About, Preferences, Quit)
And convert a few more command manager arguments to const
2015-08-16 06:18:41 -05:00
Leland Lucius
b2b23f1250 Hopefully the last round of keyboard handling changes 2015-08-15 21:52:30 -05:00
Leland Lucius
8504603e8a Should fix keyboard problem on Linux...
...where accelerators were still being recognized when entering
a track name or rate.
2015-08-14 18:40:56 -05:00
Leland Lucius
1b2923e8f4 One more try to get this darn keyboard handling right 2015-08-14 16:37:37 -05:00
Leland Lucius
fdd725fc68 Fit double execution of meta commands 2015-08-13 23:24:58 -05:00
Leland Lucius
e119ffcd78 Do NOT generate keyup, use the system one
David has been trying to beat it into my thick skull that the
command manager should use the system created key up event rather
than generating it, but I just wasn't getting it.

Actually, the documentation for the OSX method I needed to use
to get at the key event before the menus did said that a key up
event couldn't be captured on 10.6 (the oldest we support).  But,
testing showed that it can be, so I was able to do what David was
suggesting.
2015-08-12 18:05:50 -05:00
Leland Lucius
15b4cf2bfa Fix excessive cursor movement 2015-08-11 12:17:25 -05:00
Leland Lucius
04d026e5bc Further fixes for keyboard handling
I'm pretty sure this gets all of the currently known issues, including
the SHIFT+M not working, the Play buttons responding to SHIFT and CTRL,
the ESC key canceling drags, and I'm pretty sure it even fixes
but #784.
2015-08-10 13:15:15 -05:00