1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-11-21 08:27:13 +01:00
Commit Graph

353 Commits

Author SHA1 Message Date
Leland Lucius
feb24f2b14 Bug 2467 - Modules are not available for "Portable" Audacity 2020-06-01 17:02:58 -05:00
Leland Lucius
1b5370bec2 Bug 2456 - audacity 2.3.3 config with Spectral Selection toolbar corrupts lower dock in 2.4.x and can crash 2020-05-29 02:03:46 -05:00
Paul Licameli
ae9aca8177 Implement member functions of classes in corresponding .cpp files...
... in four cases; not in some other .cpp file.

This is another move that causes the generated graph to reflect dependencies
correctly.

This fixes other large, hidden cycles that involved PrefsDialog.cpp: there was
link dependency on that when PrefsPanel.h was used for the base class.  No
longer.

Also cycles involving TrackPanel.cpp, which contained the default
implementations for TrackPanelCell and related abstract base classes.
2020-05-28 05:50:22 -04:00
Paul Licameli
66c5b76573 Simplify public interface of FileHistory 2020-05-26 10:47:47 -04:00
Carlo Bramini
e59bfcc872 [WIN32] Correctly read default value of wxRegKey entry. (#456)
Fix this build error with GCC:

../../audacity/src/AudacityApp.cpp:2347:62: error: call of overloaded 'wxString(wxRegKey&)' is ambiguous.
2020-05-25 01:37:55 -05:00
Leland Lucius
c42d188e7b Removed old build system
This was fun!!! Holler if I had too much fun. :-)
2020-05-24 13:18:47 -05:00
Leland Lucius
64a597ef91 Override GTK theme to control GtkCombo* sizes 2020-05-23 13:08:21 -05:00
Paul Licameli
2e3c072fd5 Bug1119: Windows menu on Mac should list all project names...
... Reimplemented without making dependency cycles.

Project and ProjectFileManager publish events for change of active project or
change of a project title.

WindowMenus.cpp can listen for those events, so that it can update the menu
appropriately.  So it's all done nonintrusively in the rest of the code.
2020-05-22 10:09:47 -04:00
Leland Lucius
1ca911ed38 Convert all __WXDEBUG__ tests to use new _DEBUG symbol
This symbol is based on the NDEBUG symbol that's automatically
defined by CMake.
2020-04-25 02:36:27 -05:00
James Crook
018a8681ef Revert changes for Bug 1119 made by Paul.
These changes were made too close to release and are considered too dangerous for 2.4.0.
We will use the changes Leland provided.  We can review these proposed changes by Paul after 2.4.0 is released.
2020-04-21 17:45:16 +01:00
Paul Licameli
3348e2fecd Revert fix for bug 1119, which made bad dependency cycles
This reverts commit 4475dee373.
This reverts commit 18cbc2e574.
2020-04-21 12:28:39 -04:00
Leland Lucius
18cbc2e574 Bug 1119 - Mac: Window menu's list of open windows not available 2020-04-18 01:49:17 -05:00
Yuri Chornoivan
d1ada5f08c Fix minor typos 2020-04-11 10:06:24 +01:00
Leland Lucius
279e96072b Reduce retry time during startup
This is the total time before it is decided a defunct socket
was left behind.
2020-03-12 17:59:56 -05:00
Leland Lucius
76c79cb910 Bug 2115 - Linux: Track focus lost on selecting effect 2020-03-10 08:13:44 -05:00
David Bailes
9210c2aa35 Time Toolbar: change "TimeToolBar" to "Time"
Change string or sub-string "TimeToolBar" to "Time" to conform with the naming convention of other toolbars.

(Change prompted by the narrator screen reader unexpectedly reading TimeToolBar rather than Time when tabbing to the toolbar.)
2020-03-07 11:07:47 +00:00
Leland Lucius
bd04315b7a Fix for bug #2052
This simplifies the active/aborted Audacity detection for Mac and Linux by
getting rid of the lockfile entirely. Instead it utilizes the socket file
that was already being used for communication.

More comments in source...
2020-03-02 13:33:28 -06:00
David Bailes
b67c82171c Bug 2329 - Keyboard shortcuts: new or changed defaults can create duplicates
Problem:
If a new version of Audacity introduces a new default shortcut, or changes an existing one, then this may be the same shortcut as a user has previously assigned to another command. Both commands will have the same shortcut, and the shortcut will only execute one of those commands.

Fix:
Check for any such duplicates when a user opens a version of audacity using an audacity.cfg file which was created with a different version.
For each duplicate found, remove the shortcut from the command which has a new or changed default.
If duplicates where found, open a message box informing the user of the removed shortcuts.
2020-02-19 15:02:08 +00:00
Paul Licameli
e5540c6118 Don't crash on exit when a module attaches a menu item...
... such as Nyquist Workbench.

I don't fully understand why, but destroying the menu registry items very late,
during the destruction of static objects, causes a crash in memory deallocation,
at least on Mac.

So destroy the menu registry explicitly in application shut-down.
2020-02-17 16:08:59 -05:00
James Crook
9985b8a9b8 Fix Big Time TimerToolBar, Stage III
Fixed issue where format selector could disappear.
Fixed upgrade from 2.3.3.
Remembers time format.
2020-02-14 12:02:21 +00:00
Leland Lucius
080b746b66 Revert to using a wrapper when starting Audacity
But, this time use a "C" wrapper as posited by Paul in:

   https://bugzilla.audacityteam.org/show_bug.cgi?id=543#c6

Doing so should bypass the execve()/decontruction issue and
still allow entitlements to work.

This also sets the build system to Legacy so that a "clean"
action will not produce:

   error: Could not delete '...' because it was not created by
          the build system.

And, I'm not sure why the deployment target was 10.9, but it
should have been 10.7.
2020-02-02 02:46:53 -06:00
Paul Licameli
852c07bc58 Eliminate GetActiveProject from WaveTrack.cpp 2020-01-07 16:16:18 -05:00
Paul Licameli
02e5b8db07 Remove unnecessary members of CommandHandler...
... see also commit 02d5e6c
2020-01-04 12:59:37 -05:00
Paul Licameli
c9a9c06bd0 Pass AudacityProject * into preference panel factories 2020-01-04 12:37:57 -05:00
Paul Licameli
aef4b80d53 a null check on GetActiveProject() 2020-01-03 20:14:19 -05:00
Paul Licameli
2007346551 Pass TranslatableString to help, warning, and error dialogs 2019-12-20 21:48:21 -05:00
Paul Licameli
dc39f22442 AudacityMessageBox takes TranslatableString message and caption 2019-12-20 21:32:50 -05:00
Paul Licameli
53ee9c9800 TranslatableString for titles, names, labels of wxDialogWrappers...
... Found one missed translation in CommandTargets.cpp
2019-12-16 10:58:05 -05:00
Leland Lucius
ea72627a7b Reset (cleanup) microphone permissons 2019-12-15 16:10:51 -06:00
Leland Lucius
5fe89c6498 First stab at notarization
The distribution will be signed and notarized during an "install" build
and is handled by mac/scripts/build_dist.sh.

The wrapper scripts, mac/Audacity.sh, is no longer needed as it's function
has been integrated into AudacityApp.cpp/main().

Initially, all "hardened entitlements" have been enabled since we don't
know which ones plug-ins will need.

On Mac and Windows, system sleep will be disabled when recording starts
and re-enabled when it ends.
2019-12-13 23:43:01 -06:00
James Crook
85a3e9880c Bug 2052 - Remove lock file, even if read only
The line breaks in the second message are also changed.
They are not changed in the first message, as that message is already translated.
2019-10-04 11:31:23 +01:00
James Crook
3bce6f1c21 Raise splashscreen at start up. 2019-10-03 20:24:06 +01:00
James Crook
98f495a485 Bug 2052 - Mac: Lock file prevents launching Audacity
This ameliorates the problem, by prompting the user telling them the lock file
location.  It does not fully solve it, but should allow us to reduce the bug to P2.
2019-10-03 17:19:32 +01:00
Paul Licameli
6c9246d090 LangChoice.h not used (anywhere?) 2019-07-13 16:32:07 -04:00
Paul Licameli
a08bd5782b Break cycle of Prefs, Languages, FileNames 2019-07-09 12:21:08 -04:00
Paul Licameli
2c840a75c5 Remove short functions from namespace TransportActions 2019-07-03 16:52:19 -04:00
Paul Licameli
1fa46eb085 Bug2135: startup should not fail quietly when audacity.cfg is locked...
simplest fix is simply to put up a message box explaining it
2019-06-28 10:51:41 -04:00
Paul Licameli
7fc3c5e7a7 Move namespace TransportMenus into ProjectAudioManager.cpp ...
... not the best thing for the long term, but hidden dependencies on
TransportMenus.cpp are eliminated

Tying CommonCommandFlags again into the big component, which is now 26
2019-06-25 00:14:53 -04:00
Paul Licameli
f8c40dc8e7 Move DoHelpWelcome out of HelpMenus 2019-06-25 00:14:52 -04:00
Paul Licameli
7708453947 Fix #include directive 2019-06-10 22:12:44 -04:00
Paul Licameli
7b09225bf7 Use a hook to implement the shift-click shortcut to keyboard prefs...
This frees EIGHTEEN files from the big strongly connected component!!

They are:

Dependencies
Export
ExportCL
ExportFFmpeg
ExportFFmpegDialogs
ExportFLAC
EportMP2
ExportMP3
ExportOGG
ExportPCM
ExtImportPrefs
Import
ImportRaw
KeyConfigPrefs
KeyView
LibraryPrefs
PrefsDialog
SpectrumPrefs

... and that includes all of the remaining *Prefs files.

It does still leave the nine Export* files in a smaller s.c.c, which could be
broken with a registration system, as was done for import at commit e2cf1d9
2019-06-10 21:56:46 -04:00
Paul Licameli
51051ee933 Separate AudioIOBase from AudioIO 2019-06-10 20:48:38 -04:00
Paul Licameli
42a4f55ffe Prepare to split AudioIOBase from AudioIO...
... New files, but (almost) empty; don't use the global variable gAudioIO,
but use one of two accessor function names (which are the same function for
now).

AudioIOBase will have fewer dependencies than AudioIO -- in particular, no
dependency on tracks.

It won't include StartStream.  It will contain functions to query the
present state of streams, and device capabilities.
2019-06-10 20:48:38 -04:00
Paul Licameli
8b70203e45 Lower functions from ProjectManager to ProjectFileManager...
... not improving the dependency graph, but it's a more sensible division of
duties, keeping related functions together.
2019-06-09 12:10:51 -04:00
Paul Licameli
0c6cda50c3 Split AutoRecoveryDialog.cpp from AutoRecovery.cpp...
... leaving AutoRecovery as a lower-level file, to be used by ProjectHistory
for auto-save, and not including ProjectManager.

The new file floats to a high level of the graph, but AutoRecovery.cpp
remains in the big strongly connected component.
2019-06-09 12:10:48 -04:00
Paul Licameli
f03684db4f New class ProjectHistory split from ProjectManager for undo, etc...
... And yet fewer inclusions of Projectmanager.h, though it's still not yet
free of cycles
2019-06-09 12:10:48 -04:00
Paul Licameli
4f940c855d New files for ProjectWindow 2019-06-03 01:43:26 -04:00
Paul Licameli
fee5582826 New files for ProjectManager 2019-06-03 01:21:12 -04:00
Paul Licameli
0d1d8d20c6 Move management of saved window size into ProjectManager...
... So that class AllProjects does not use ProjectWindow
2019-06-03 01:18:12 -04:00
Paul Licameli
4274d44ab7 New attached structure ProjectManager handles project lifetime...
... that is, a factory function, open, close, import, undo/redo/rollback.

Also the callbacks from AudioIO, which need to invoke undo history push when
recording stops.

It is meant as a high-level class using several of the other things attached
to the project, while AudacityProject will be a low level class acting mostly
as just the container of the attached structures.
2019-06-03 01:18:12 -04:00