New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix the editor save keyboard shortcut not working in code editor view #13159

Merged
merged 2 commits into from Feb 1, 2019

Conversation

Projects
None yet
2 participants
@talldan
Copy link
Contributor

talldan commented Jan 2, 2019

Description

Something I spotted in my travels around Gutenberg—saving using the shortcut (Cmd+S/Ctrl+S) only works in the Visual Editor view, when switching to the CodeEditor view it ceases to work.

This PR extracts the save keyboard shortcut into a component EditorSaveKeyboardShortcut. That shortcut is now implemented in TextEditorGlobalKeyboardShortcuts (a new component) and VisualEditorGlobalKeyboardShortcuts (which has replaced EditorGlobalKeyboardShortcuts).

The old EditorGlobalKeyboardShortcuts component has been deprecated.

How has this been tested?

  1. Create a new post
  2. Add a title and some content
  3. Use the save shortcut (Cmd+S on a Mac, Ctrl + S elsewhere).
  4. Observe that the post is saved
  5. Switch to the Code Editor
  6. Make some changes to the content
  7. Use the save shortcut again
  8. Observe that the post is saved (works in this branch, fails in master).

I tested the deprecation by temporarily replacing VisualEditorGlobalKeyboardShortcuts with EditorGlobalKeyboardShortcuts — the functionality should continue to work and the deprecation message should be displayed in the console.

Screenshots

Types of changes

Bug fix (non-breaking change which fixes an issue)

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows the accessibility standards.
  • My code has proper inline documentation.
  • I've included developer documentation if appropriate.

@talldan talldan self-assigned this Jan 3, 2019

@noisysocks noisysocks added this to the 5.0 (Gutenberg) milestone Jan 14, 2019

@noisysocks

This comment has been minimized.

Copy link
Member

noisysocks commented Jan 16, 2019

It's not unlikely that we'll want to add more global keyboard shortcuts to the text editor. Should we rename EditorGlobalKeyboardShortcuts to VisualEditorGlobalKeyboardShortcuts and EditorSaveKeyboardShortcut to TextEditorGlobalKeyboardShortcuts?

@talldan talldan force-pushed the fix/save-shortcut-in-code-editor branch from dff81a0 to 7c798df Jan 16, 2019

@talldan

This comment has been minimized.

Copy link
Contributor Author

talldan commented Jan 16, 2019

It's not unlikely that we'll want to add more global keyboard shortcuts to the text editor. Should we rename EditorGlobalKeyboardShortcuts to VisualEditorGlobalKeyboardShortcuts and EditorSaveKeyboardShortcut to TextEditorGlobalKeyboardShortcuts?

@noisysocks Maybe. I thought about it when working on this. EditorSaveKeyboardShortcut would still need to be a separate component to be usable in both TextEditorGlobalKeyboardShortcuts and VisualEditorGlobalKeyboardShortcuts. It's one of those things that has pros and cons on both sides, and I decided that maybe it's best not to introduce it while it's not needed.

talldan added some commits Jan 2, 2019

Refactor based on code review feedback
- Introduce new TextEditorGlobalShortcuts component that implements the save shortcut
- Rename EditorGlobalShortcuts to VisualEditorGlobalShortcuts
- Add a deprecated version of EditorGlobalShortcuts
- Update CHANGELOG

@talldan talldan force-pushed the fix/save-shortcut-in-code-editor branch from 7c798df to eed9e67 Feb 1, 2019

@talldan

This comment has been minimized.

Copy link
Contributor Author

talldan commented Feb 1, 2019

I've refactored this to introduce TextEditorGlobalKeyboardShortcuts and VisualEditorGlobalKeyboardShortcuts.

@noisysocks
Copy link
Member

noisysocks left a comment

:shipit:

export function EditorGlobalKeyboardShortcuts() {
deprecated( 'EditorGlobalKeyboardShortcuts', {
alternative: 'VisualEditorGlobalKeyboardShortcuts',
plugin: 'Gutenberg',

This comment has been minimized.

@noisysocks

noisysocks Feb 1, 2019

Member

I wonder if we should still be using plugin now that Gutenberg and WP Core are essentially the same codebase?

(We do this elsewhere, so just a question 🙂)

@talldan talldan merged commit 21c4aac into master Feb 1, 2019

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@talldan talldan deleted the fix/save-shortcut-in-code-editor branch Feb 1, 2019

daniloercoli added a commit that referenced this pull request Feb 1, 2019

Merge branch 'master' of https://github.com/WordPress/gutenberg into …
…rnmobile/372-use-RichText-on-Title-block

* 'master' of https://github.com/WordPress/gutenberg:
  Try alternate list item jump fix. (#12941)
  Mobile bottom sheet component (#13612)
  Remove unintentional right-margin on last odd-item. (#12199)
  Introduce left and right float alignment options to latest posts block (#8814)
  Fix Google Docs table paste (#13543)
  Increase bottom padding on gallery image caption (#13623)
  Fix the editor save keyboard shortcut not working in code editor view (#13159)
  Plugin: Deprecate gutenberg_add_admin_body_class (#13572)
  Rnmobile/upload media failed state (#13615)
  Make clickOnMoreMenuItem not dependent on aria labels (#13166)
  Add: className prop support to server side render. (#13568)
  Fix: Categories Block: hierarchical Dropdown (#13567)
  Docs: Add clarification about git workflow (#13534)
  Plugin: Remove `user_can_richedit` filtering (#13608)
  eslint-plugin: Add rule `no-unused-vars-before-return` (#12828)
  Image settings button (#13597)
  Fixed wording for the color picker saturation (#13479)

# Conflicts:
#	packages/block-library/src/image/edit.native.js
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment