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

Make the inner button block not allowed as a reusable block or editable as HTML #20948

Merged
merged 3 commits into from
Mar 18, 2020

Conversation

talldan
Copy link
Contributor

@talldan talldan commented Mar 17, 2020

Description

Fixes #20942, which identifies that the button block can be made reusable, but then attempting to convert that reusable button block to a regular block outside of its parent context fails.

This PR makes the Button block consistent with other inner blocks (navigation link, social icons, column) with a distinct parent. Those blocks generally can't be made reusable, because of the above issue. They also generally can't be edited as HMTL. The general idea is that the parent has those options but the child doesn't.

With the Button block, there is a the possibility that this block is already in use in some reusable blocks and those still can't be converted to regular blocks, that's something this PR doesn't solve.

How has this been tested?

  1. Add a Buttons block
  2. Try to make the Inner Button block reusable
  3. Observe that there is now no menu option to achieve this.

Screenshots

Screenshot 2020-03-17 at 5 02 32 pm

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

@talldan talldan added [Type] Bug An existing feature does not function as intended [Block] Buttons Affects the Buttons Block labels Mar 17, 2020
@talldan talldan self-assigned this Mar 17, 2020
@github-actions
Copy link

github-actions bot commented Mar 17, 2020

Size Change: -102 B (0%)

Total Size: 857 kB

Filename Size Change
build/block-library/index.js 111 kB -73 B (0%)
build/blocks/index.js 57.5 kB -29 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 998 B 0 B
build/annotations/index.js 3.43 kB 0 B
build/api-fetch/index.js 3.39 kB 0 B
build/autop/index.js 2.58 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/index.js 6.02 kB 0 B
build/block-directory/style-rtl.css 760 B 0 B
build/block-directory/style.css 760 B 0 B
build/block-editor/index.js 100 kB 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/editor-rtl.css 7.23 kB 0 B
build/block-library/editor.css 7.24 kB 0 B
build/block-library/style-rtl.css 7.42 kB 0 B
build/block-library/style.css 7.43 kB 0 B
build/block-library/theme-rtl.css 669 B 0 B
build/block-library/theme.css 671 B 0 B
build/block-serialization-default-parser/index.js 1.65 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/components/index.js 191 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 6.21 kB 0 B
build/core-data/index.js 10.6 kB 0 B
build/data-controls/index.js 1.04 kB 0 B
build/data/index.js 8.2 kB 0 B
build/date/index.js 5.37 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.06 kB 0 B
build/edit-post/index.js 91.2 kB 0 B
build/edit-post/style-rtl.css 8.52 kB 0 B
build/edit-post/style.css 8.51 kB 0 B
build/edit-site/index.js 5.07 kB 0 B
build/edit-site/style-rtl.css 2.53 kB 0 B
build/edit-site/style.css 2.53 kB 0 B
build/edit-widgets/index.js 4.43 kB 0 B
build/edit-widgets/style-rtl.css 2.58 kB 0 B
build/edit-widgets/style.css 2.58 kB 0 B
build/editor/editor-styles-rtl.css 381 B 0 B
build/editor/editor-styles.css 382 B 0 B
build/editor/index.js 44 kB 0 B
build/editor/style-rtl.css 3.97 kB 0 B
build/editor/style.css 3.96 kB 0 B
build/element/index.js 4.45 kB 0 B
build/escape-html/index.js 733 B 0 B
build/format-library/index.js 7.09 kB 0 B
build/format-library/style-rtl.css 502 B 0 B
build/format-library/style.css 502 B 0 B
build/hooks/index.js 1.93 kB 0 B
build/html-entities/index.js 621 B 0 B
build/i18n/index.js 3.49 kB 0 B
build/is-shallow-equal/index.js 710 B 0 B
build/keyboard-shortcuts/index.js 2.3 kB 0 B
build/keycodes/index.js 1.69 kB 0 B
build/list-reusable-blocks/index.js 2.99 kB 0 B
build/list-reusable-blocks/style-rtl.css 226 B 0 B
build/list-reusable-blocks/style.css 226 B 0 B
build/media-utils/index.js 4.84 kB 0 B
build/notices/index.js 1.58 kB 0 B
build/nux/index.js 3.01 kB 0 B
build/nux/style-rtl.css 616 B 0 B
build/nux/style.css 613 B 0 B
build/plugins/index.js 2.54 kB 0 B
build/primitives/index.js 1.5 kB 0 B
build/priority-queue/index.js 780 B 0 B
build/redux-routine/index.js 2.84 kB 0 B
build/rich-text/index.js 14.3 kB 0 B
build/server-side-render/index.js 2.55 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.01 kB 0 B
build/viewport/index.js 1.61 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.18 kB 0 B

compressed-size-action

@@ -33,6 +33,8 @@ export const settings = {
supports: {
align: true,
alignWide: false,
reusable: false,
html: false,
Copy link
Contributor Author

@talldan talldan Mar 17, 2020

Choose a reason for hiding this comment

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

It looks like this change affects mobile in the index.native.js file, so was wondering what the best way to update this setting on mobile would be (cc @pinarol)?

Is it best to keep the mobile setting as it currently is ... e.g.:

export const settings = {
	...webSettings,
	supports: {
		align: true,
		alignWide: false,
	},
	parent: undefined,
};

@mtias
Copy link
Member

mtias commented Mar 17, 2020

I agree with the reusable bit, but not sure about the edit as HTML. Why shouldn't that be possible?

@talldan
Copy link
Contributor Author

talldan commented Mar 18, 2020

I agree with the reusable bit, but not sure about the edit as HTML. Why shouldn't that be possible?

@mtias I noticed this was on other blocks with a parent, but it looks like I've made a bad assumption.

It's specified on the Column block because of that being a parent block (#11785) and specified on the Navigation Link and Social Link blocks because those are dynamic blocks (#19483).

So I've changed that again, the button can now be edited as html (74d3707).

@mtias
Copy link
Member

mtias commented Mar 18, 2020

Great, thanks, that makes more sense.

@jorgefilipecosta jorgefilipecosta merged commit 9ed45fc into master Mar 18, 2020
@jorgefilipecosta jorgefilipecosta deleted the fix/button-resuability branch March 18, 2020 18:00
@github-actions github-actions bot added this to the Gutenberg 7.8 milestone Mar 18, 2020
@jorgefilipecosta jorgefilipecosta added the Backport to WP 6.7 Beta/RC Pull request that needs to be backported to the WordPress major release that's currently in beta label Mar 23, 2020
@jorgefilipecosta jorgefilipecosta removed the Backport to WP 6.7 Beta/RC Pull request that needs to be backported to the WordPress major release that's currently in beta label Apr 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Block] Buttons Affects the Buttons Block [Type] Bug An existing feature does not function as intended
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Not able to convert reusable buttons child block to regular block.
4 participants