Skip to content
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

[RNMobile] Turn off autosave interval for mobile #24415

Merged
merged 1 commit into from
Aug 7, 2020

Conversation

dratwas
Copy link
Contributor

@dratwas dratwas commented Aug 6, 2020

Description

The Autosave mechanism was changed recently and sets the interval to check if there are new changes to save. It works well for the web but introduced some issues on mobile. we used to call autosave after each change and the native part has an own throttle mechanism to handle that in a performant way.

In this PR I added a prop called disableIntervalChecks that determines if the interval should be set. I set this to true for mobile autosave in the layout component.

How has this been tested?

  1. The autosave should work the same for web

  2. The autosave is called after each change on mobile

  • Type really fast in Android client app and close the editor w/o any pause.
  • The correct data should be saved

Types of changes

Remove unnecessary interval on mobile.

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.
  • I've updated all React Native files affected by any refactorings/renamings in this PR.

@dratwas dratwas marked this pull request as ready for review August 6, 2020 14:21
@github-actions
Copy link

github-actions bot commented Aug 6, 2020

Size Change: +42 B (0%)

Total Size: 1.16 MB

Filename Size Change
build/editor/index.js 45.3 kB +42 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.14 kB 0 B
build/annotations/index.js 3.67 kB 0 B
build/api-fetch/index.js 3.44 kB 0 B
build/autop/index.js 2.82 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/index.js 7.97 kB 0 B
build/block-directory/style-rtl.css 953 B 0 B
build/block-directory/style.css 952 B 0 B
build/block-editor/index.js 125 kB 0 B
build/block-editor/style-rtl.css 10.8 kB 0 B
build/block-editor/style.css 10.8 kB 0 B
build/block-library/editor-rtl.css 7.59 kB 0 B
build/block-library/editor.css 7.59 kB 0 B
build/block-library/index.js 132 kB 0 B
build/block-library/style-rtl.css 7.76 kB 0 B
build/block-library/style.css 7.77 kB 0 B
build/block-library/theme-rtl.css 729 B 0 B
build/block-library/theme.css 730 B 0 B
build/block-serialization-default-parser/index.js 1.88 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/blocks/index.js 48.3 kB 0 B
build/components/index.js 200 kB 0 B
build/components/style-rtl.css 15.7 kB 0 B
build/components/style.css 15.7 kB 0 B
build/compose/index.js 9.68 kB 0 B
build/core-data/index.js 11.8 kB 0 B
build/data-controls/index.js 1.29 kB 0 B
build/data/index.js 8.45 kB 0 B
build/date/index.js 5.38 kB 0 B
build/deprecated/index.js 772 B 0 B
build/dom-ready/index.js 568 B 0 B
build/dom/index.js 3.23 kB 0 B
build/edit-navigation/index.js 10.9 kB 0 B
build/edit-navigation/style-rtl.css 1.08 kB 0 B
build/edit-navigation/style.css 1.08 kB 0 B
build/edit-post/index.js 304 kB 0 B
build/edit-post/style-rtl.css 5.61 kB 0 B
build/edit-post/style.css 5.61 kB 0 B
build/edit-site/index.js 17 kB 0 B
build/edit-site/style-rtl.css 3.06 kB 0 B
build/edit-site/style.css 3.06 kB 0 B
build/edit-widgets/index.js 9.38 kB 0 B
build/edit-widgets/style-rtl.css 2.45 kB 0 B
build/edit-widgets/style.css 2.45 kB 0 B
build/editor/editor-styles-rtl.css 537 B 0 B
build/editor/editor-styles.css 539 B 0 B
build/editor/style-rtl.css 3.8 kB 0 B
build/editor/style.css 3.79 kB 0 B
build/element/index.js 4.65 kB 0 B
build/escape-html/index.js 733 B 0 B
build/format-library/index.js 7.72 kB 0 B
build/format-library/style-rtl.css 547 B 0 B
build/format-library/style.css 548 B 0 B
build/hooks/index.js 2.13 kB 0 B
build/html-entities/index.js 621 B 0 B
build/i18n/index.js 3.56 kB 0 B
build/is-shallow-equal/index.js 711 B 0 B
build/keyboard-shortcuts/index.js 2.52 kB 0 B
build/keycodes/index.js 1.94 kB 0 B
build/list-reusable-blocks/index.js 3.11 kB 0 B
build/list-reusable-blocks/style-rtl.css 476 B 0 B
build/list-reusable-blocks/style.css 476 B 0 B
build/media-utils/index.js 5.33 kB 0 B
build/notices/index.js 1.79 kB 0 B
build/nux/index.js 3.4 kB 0 B
build/nux/style-rtl.css 671 B 0 B
build/nux/style.css 668 B 0 B
build/plugins/index.js 2.56 kB 0 B
build/primitives/index.js 1.41 kB 0 B
build/priority-queue/index.js 789 B 0 B
build/redux-routine/index.js 2.85 kB 0 B
build/rich-text/index.js 13.9 kB 0 B
build/server-side-render/index.js 2.71 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/token-list/index.js 1.27 kB 0 B
build/url/index.js 4.06 kB 0 B
build/viewport/index.js 1.85 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.17 kB 0 B

compressed-size-action

@adamziel
Copy link
Contributor

adamziel commented Aug 6, 2020

I did not test in the actual android app, but it seems to work in the browser if I set the prop manually. The code makes sense too - thank you!

@dratwas
Copy link
Contributor Author

dratwas commented Aug 7, 2020

Hey, @ceyhun could you please include this fix into the release 1.34 branch? This is a following PR of #24353

@dratwas dratwas merged commit 09f7730 into master Aug 7, 2020
@dratwas dratwas deleted the rnmobile/turn-off-autosave-interval branch August 7, 2020 10:34
@github-actions github-actions bot added this to the Gutenberg 8.8 milestone Aug 7, 2020
cameronvoell added a commit that referenced this pull request Aug 11, 2020
* Release script: Update react-native-editor version to 1.34.0

* [RNMobile] E2E Android - Use swipe gesture to scroll inserter menu (#24338)

* Set autosaveInterval to 1 on mobile (#24353)

* Revert "[RNMobile] Fix jumping toolbar (#23684)" (#24388)

This reverts commit d86cd5f.

* Turn off autosave interval for mobile (#24415)

* [RNMobile] Merge release 1.33.1 to master (#24448)

* Release script: Update react-native-editor version to 1.33.0

* Update release notes.

* Update version numbers for packages.

* Revert "Reduce spacing between label and slider control (#23580)" (#24109)

This reverts commit 2a67de0.

* Release script: Update react-native-* versions to 1.33.1

* Release script: Update with changes from 'npm run core preios'

* Allow @ char in posts in mobile editor (#24428)

This fixes a bug with the @-mention feature on mobile that made entering the standalone @ character difficult because of the @-mention UI getting in the way.
The fix here is to allow the @ character to be intercepted without being consumed by the @ key event logic.

* Remove duplicate entry from changelog

Co-authored-by: Sergio Estevao <[email protected]>
Co-authored-by: Antonis Lilis <[email protected]>
Co-authored-by: Ceyhun Ozugur <[email protected]>
Co-authored-by: Paul Von Schrottky <[email protected]>

* Update version numbers

* Ran pod install to update podfile.lock

Co-authored-by: Drapich Piotr <[email protected]>
Co-authored-by: Adam Zielinski <[email protected]>
Co-authored-by: Chip <[email protected]>
Co-authored-by: Cameron Voell <[email protected]>
Co-authored-by: Sergio Estevao <[email protected]>
Co-authored-by: Antonis Lilis <[email protected]>
Co-authored-by: Paul Von Schrottky <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants