Skip to content

[RNMobile] Update Preview handling for better Android support#25930

Merged
chipsnyder merged 4 commits intomasterfrom
mobile/issue/2452-previewAndroid
Oct 8, 2020
Merged

[RNMobile] Update Preview handling for better Android support#25930
chipsnyder merged 4 commits intomasterfrom
mobile/issue/2452-previewAndroid

Conversation

@chipsnyder
Copy link
Copy Markdown
Contributor

@chipsnyder chipsnyder commented Oct 7, 2020

Fixes wordpress-mobile/gutenberg-mobile#2452
Related PR
gutenberg-mobile wordpress-mobile/gutenberg-mobile#2696

Description

On Android the loading of the editor is dependent on editorDidMount as the callback to signal that the editor has finished loading. With that, the Preview should be rendered within the EditorProvider component to share that event. This PR moves the EditorMode logic to the Editor and loads differently based on that.

How has this been tested?

To disable or enable the development version of Modal Layout Picker
  • Open the app from the build that allows FeatureFlags such as a PR build or a local development build
    • By default, the modal layout picker will be disabled.
    • From the site page:
      • Click on your Gravatar.
      • Click on App Settings.
      • Click on Debug.
      • Toggle "Gutenberg Modal Layout Picker" to enable or disable the picker

On WPAndroid:

Download the Android app with the Preview functionality from wordpress-mobile/WordPress-Android#13022

With the metro server running

  1. Open the MLP either via the FAB icon > Site Page or by navigating to Pages and selecting the ➕
  2. Select a layout
  3. Select Preview
  4. Expect to see the loading indicator
  5. Expect to see the layout preview loaded successfully
  6. Validate that the loading indicator is dismissed

On WPiOS:

With the metro server running

  1. Enable MLP
  2. Open the MLP either via the FAB icon > Site Page or by navigating to Pages and selecting the ➕
  3. Select a layout
  4. Select Preview

Expect The Preview to load

Also, open existing posts/pages and create new posts/pages and expect those to load as well.

Screenshots

Types of changes

Bug fix

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.

@chipsnyder chipsnyder added the Mobile App - i.e. Android or iOS Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change) label Oct 7, 2020
@chipsnyder chipsnyder requested review from antonis and geriux October 7, 2020 22:45
@github-actions
Copy link
Copy Markdown

github-actions bot commented Oct 7, 2020

Size Change: +8.89 kB (0%)

Total Size: 1.19 MB

Filename Size Change
build/annotations/index.js 3.54 kB +22 B (0%)
build/block-directory/index.js 8.55 kB +1 B
build/block-editor/index.js 129 kB -61 B (0%)
build/block-library/editor-rtl.css 8.65 kB +6 B (0%)
build/block-library/editor.css 8.65 kB +6 B (0%)
build/block-library/index.js 144 kB +9.24 kB (6%) 🔍
build/blocks/index.js 47.5 kB -16 B (0%)
build/components/index.js 169 kB -244 B (0%)
build/compose/index.js 9.43 kB +4 B (0%)
build/core-data/index.js 12.1 kB +12 B (0%)
build/data/index.js 8.61 kB +3 B (0%)
build/date/index.js 31.9 kB +1 B
build/edit-navigation/index.js 10.6 kB -11 B (0%)
build/edit-post/index.js 306 kB -1 B
build/edit-site/index.js 20.9 kB +22 B (0%)
build/edit-site/style-rtl.css 3.73 kB +14 B (0%)
build/edit-site/style.css 3.73 kB +12 B (0%)
build/edit-widgets/index.js 21.3 kB -119 B (0%)
build/editor/index.js 45.4 kB -14 B (0%)
build/element/index.js 4.45 kB +5 B (0%)
build/format-library/index.js 7.49 kB +4 B (0%)
build/i18n/index.js 3.54 kB +1 B
build/list-reusable-blocks/index.js 3.02 kB -2 B (0%)
build/media-utils/index.js 5.12 kB -1 B
build/nux/index.js 3.27 kB +3 B (0%)
build/plugins/index.js 2.44 kB +2 B (0%)
build/shortcode/index.js 1.7 kB +1 B
build/url/index.js 4.06 kB -1 B
build/viewport/index.js 1.74 kB +2 B (0%)
build/warning/index.js 1.14 kB +7 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.14 kB 0 B
build/api-fetch/index.js 3.35 kB 0 B
build/autop/index.js 2.72 kB 0 B
build/blob/index.js 668 B 0 B
build/block-directory/style-rtl.css 943 B 0 B
build/block-directory/style.css 942 B 0 B
build/block-editor/style-rtl.css 10.9 kB 0 B
build/block-editor/style.css 10.9 kB 0 B
build/block-library/style-rtl.css 7.66 kB 0 B
build/block-library/style.css 7.65 kB 0 B
build/block-library/theme-rtl.css 741 B 0 B
build/block-library/theme.css 741 B 0 B
build/block-serialization-default-parser/index.js 1.78 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/components/style-rtl.css 15.4 kB 0 B
build/components/style.css 15.4 kB 0 B
build/data-controls/index.js 685 B 0 B
build/deprecated/index.js 772 B 0 B
build/dom-ready/index.js 568 B 0 B
build/dom/index.js 4.42 kB 0 B
build/edit-navigation/style-rtl.css 868 B 0 B
build/edit-navigation/style.css 871 B 0 B
build/edit-post/style-rtl.css 6.29 kB 0 B
build/edit-post/style.css 6.27 kB 0 B
build/edit-widgets/style-rtl.css 3 kB 0 B
build/edit-widgets/style.css 3 kB 0 B
build/editor/editor-styles-rtl.css 492 B 0 B
build/editor/editor-styles.css 493 B 0 B
build/editor/style-rtl.css 3.85 kB 0 B
build/editor/style.css 3.84 kB 0 B
build/escape-html/index.js 734 B 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 1.74 kB 0 B
build/html-entities/index.js 621 B 0 B
build/is-shallow-equal/index.js 710 B 0 B
build/keyboard-shortcuts/index.js 2.39 kB 0 B
build/keycodes/index.js 1.85 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/notices/index.js 1.69 kB 0 B
build/nux/style-rtl.css 671 B 0 B
build/nux/style.css 668 B 0 B
build/primitives/index.js 1.34 kB 0 B
build/priority-queue/index.js 790 B 0 B
build/redux-routine/index.js 2.85 kB 0 B
build/rich-text/index.js 13 kB 0 B
build/server-side-render/index.js 2.6 kB 0 B
build/token-list/index.js 1.24 kB 0 B
build/wordcount/index.js 1.17 kB 0 B

compressed-size-action

@antonis
Copy link
Copy Markdown
Member

antonis commented Oct 8, 2020

I confirm that this fixes the Android preview issue 🎉
Thank you for putting this together @chipsnyder 🙇

Copy link
Copy Markdown
Member

@antonis antonis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job @chipsnyder 👍
The changes LGTM and solve the issue at hand 🎉
Thank you for this 🙇

@chipsnyder chipsnyder marked this pull request as ready for review October 8, 2020 13:42
@chipsnyder chipsnyder merged commit e8ec851 into master Oct 8, 2020
@chipsnyder chipsnyder deleted the mobile/issue/2452-previewAndroid branch October 8, 2020 14:46
@github-actions github-actions bot added this to the Gutenberg 9.2 milestone Oct 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Mobile App - i.e. Android or iOS Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants