1
0
mirror of https://github.com/laurent22/joplin.git synced 2024-11-27 08:21:03 +02:00
joplin/ElectronClient/gui
Laurent Cozic c63c6370b5 Desktop: Refactored command system
The goal is to make the command system more modular, so each command can
be defined as a single object that includes a declaration (name, label,
etc.) and a runtime (to execute the command, test if it should be
enabled, etc.)

Utility methods are provided to convert a command to a menu item or a
toolbar button, thus reducing duplicated and boiler plate code across the
codebase (often the menu item logic was duplicated in the toolbar
button logic and vice versa).

The goal is to make it easier to add new commands (and associated menu
item and toolbar buttons) and to call them from
anywhere. This is also useful for plugins, which can also easily define
new commands.

Could also allow creating a command palette.
2020-07-03 22:32:39 +01:00
..
Header Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
MainScreen Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
note-viewer Desktop: Fixes #3287: Disable middle-clicking external URLs, as they would open inside the application 2020-06-03 18:34:00 +01:00
NoteEditor Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
NoteList Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
NoteToolbar Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
SideBar Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
style All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
utils Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
ClipperConfigScreen.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
ConfigMenuBar.jsx Desktop: Resolves #3137: Switch to Font Awesome as icon library 2020-05-17 15:34:42 +01:00
ConfigScreen.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
DialogButtonRow.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
dialogs.js Tools: Improve and simplify how to build the apps (#2538) 2020-02-20 22:59:18 +00:00
DropboxLoginScreen.jsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
EncryptionConfigScreen.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
ErrorBoundary.tsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
ExtensionBadge.jsx Tools: Improve and simplify how to build the apps (#2538) 2020-02-20 22:59:18 +00:00
HelpButton.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
IconButton.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
ImportScreen.jsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
ItemList.jsx Desktop: Resolves #51: Add way to manually order notes by dragging them (#3235) 2020-05-27 17:21:46 +01:00
MultiNoteActions.tsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
Navigator.jsx Revert "Tools: Added eslint rule arrow-parens" 2020-05-21 09:14:33 +01:00
NoteContentPropertiesDialog.tsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
NoteListItem.tsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
NotePropertiesDialog.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
NoteRevisionViewer.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
NoteSearchBar.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
NoteStatusBar.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
NoteTextViewer.jsx Revert "Tools: Added eslint rule arrow-parens" 2020-05-21 09:14:33 +01:00
OneDriveLoginScreen.jsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
PromptDialog.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
ResourceScreen.tsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
Root.jsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
ShareNoteDialog.tsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
StatusScreen.jsx Desktop: Refactored command system 2020-07-03 22:32:39 +01:00
TagItem.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
TagList.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
Toolbar.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
ToolbarButton.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
ToolbarSpace.jsx All: Refactored themes to allow using the same ones in both desktop and mobile version 2020-06-10 22:08:59 +01:00
VerticalResizer.jsx Tools: Improve and simplify how to build the apps (#2538) 2020-02-20 22:59:18 +00:00