Commit Graph

2952 Commits

Author SHA1 Message Date
Weston Ruter 87b0a1b989 Customize: Add setting validation model and control notifications to augment setting sanitization.
When a setting is invalid, not only will it be blocked from being saved but all other settings will be blocked as well. This ensures that Customizer saves aren't partial but are more transactional. User will be displayed the error in a notification so that they can fix and re-attempt saving.

PHP changes:

* Introduces `WP_Customize_Setting::validate()`, `WP_Customize_Setting::$validate_callback`, and the `customize_validate_{$setting_id}` filter.
* Introduces `WP_Customize_Manager::validate_setting_values()` to do validation (and sanitization) for the setting values supplied, returning a list of `WP_Error` instances for invalid settings.
* Attempting to save settings that are invalid will result in the save being blocked entirely, with the errors being sent in the `customize_save_response`. Modifies `WP_Customize_Manager::save()` to check all settings for validity issues prior to calling their `save` methods.
* Introduces `WP_Customize_Setting::json()` for parity with the other Customizer classes. This includes exporting of the `type`.
* Modifies `WP_Customize_Manager::post_value()` to apply `validate` after `sanitize`, and if validation fails, to return the `$default`.
* Introduces `customize_save_validation_before` action which fires right before the validation checks are made prior to saving.

JS changes:

* Introduces `wp.customize.Notification` in JS which to represent `WP_Error` instances returned from the server when setting validation fails.
* Introduces `wp.customize.Setting.prototype.notifications`.
* Introduces `wp.customize.Control.prototype.notifications`, which are synced with a control's settings' notifications.
* Introduces `wp.customize.Control.prototype.renderNotifications()` to re-render a control's notifications in its notification area. This is called automatically when the notifications collection changes.
* Introduces `wp.customize.settingConstructor`, allowing custom setting types to be used in the same way that custom controls, panels, and sections can be made.
* Injects a notification area into existing controls which is populated in response to the control's `notifications` collection changing. A custom control can customize the placement of the notification area by overriding the new `getNotificationsContainerElement` method.
* When a save fails due to setting invalidity, the invalidity errors will be added to the settings to then populate in the controls' notification areas, and the first such invalid control will be focused.

Props westonruter, celloexpressions, mrahmadawais.
See #35210.
See #30937.
Fixes #34893.

Built from https://develop.svn.wordpress.org/trunk@37476


git-svn-id: http://core.svn.wordpress.org/trunk@37444 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-20 21:10:27 +00:00
Aaron Jorbin 2db9ac7a24 Update jQuery Migrate to 1.4.1
http://blog.jquery.com/2016/05/19/jquery-migrate-1-4-1-released-and-the-path-to-jquery-3-0/

Unquoted selectors for attribute selectors should function once again (and output a warning so that plugins and themes using them can update).

Fixes #36892


Built from https://develop.svn.wordpress.org/trunk@37472


git-svn-id: http://core.svn.wordpress.org/trunk@37440 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-20 06:11:28 +00:00
Peter Wilson 94290a843b Emoji: Use SVG in supported browsers
Use SVG images in supporting browsers, otherwise fall back to PNG images. Add the filters `emoji_svg_url` and `emoji_svg_ext`.

Introduces unit tests to check the Emoji CDN filters.

Fixes #36525

Built from https://develop.svn.wordpress.org/trunk@37471


git-svn-id: http://core.svn.wordpress.org/trunk@37439 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-20 06:03:27 +00:00
Ella Iseulde Van Dorpe 6e72bc4ec5 TinyMCE: use new non-editable implementation
Use TinyMCE's implementation of `contenteditable="false"` for views.

First pass.

See #36434.


Built from https://develop.svn.wordpress.org/trunk@37446


git-svn-id: http://core.svn.wordpress.org/trunk@37414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-17 18:49:30 +00:00
Dominik Schilling 52d30beb3c External Libraries: Update jQuery to 1.12.4-pre.
This version includes a fix for the media library which didn't open under certain conditions. The issue was tracked upstream as "Specific table CSS style breaks `.is(':visible')`", see https://github.com/jquery/jquery/issues/3065.
Also fixed: "Element which is not in page is still :visible in IE8", see https://github.com/jquery/jquery/issues/3043.

Changelog: https://github.com/jquery/jquery/compare/1.12.3...376caf4d

See #36533.
Built from https://develop.svn.wordpress.org/trunk@37433


git-svn-id: http://core.svn.wordpress.org/trunk@37399 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-13 21:15:27 +00:00
Drew Jaynes b1804afeaf Docs: Standardize on 'backward compatibility/compatible' nomenclature in core inline docs.
Also use 'back-compat' in some inline comments where backward compatibility is the subject and shorthand feels more natural.

Note: 'backwards compatibility/compatibile' can also be considered correct, though it's primary seen in regular use in British English.

Props ocean90.
Fixes #36835.

Built from https://develop.svn.wordpress.org/trunk@37431


git-svn-id: http://core.svn.wordpress.org/trunk@37397 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-13 18:41:31 +00:00
Nikolay Bachiyski c33e975f46 External Libraries: Update plupload from upstream
Built from https://develop.svn.wordpress.org/trunk@37383


git-svn-id: http://core.svn.wordpress.org/trunk@37349 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-06 18:02:26 +00:00
Dominik Schilling a493dc0ab5 External Libraries: Update MediaElement.js from upstream.
Built from https://develop.svn.wordpress.org/trunk@37370


git-svn-id: http://core.svn.wordpress.org/trunk@37336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-06 17:51:36 +00:00
Helen Hou-Sandí a800cf654b Drop Open Sans in the admin in favor of system fonts.
Rejoice, for your admins will feel more native to your surrounding computing environment and likely load faster, especially when offline, as they no longer have to talk to The Google Overlord.

At the time of introduction in 3.8, there were not good system fonts common to all platforms at the time. In the years since, Windows, Android, OS X, iOS, Firefox OS, and various flavors of Linux have all gotten their own (good) system UI fonts.

There will definitely be visual bugs, mainly around alignment and spacing; these should be documented and reported on the ticket and fixed more atomically so that our current and future selves have a better understanding of what happened and why.

The style remains registered, as it is almost certainly in use by themes and plugins.

props mattmiklic.
see #36753.

Built from https://develop.svn.wordpress.org/trunk@37361


git-svn-id: http://core.svn.wordpress.org/trunk@37327 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-04 22:07:37 +00:00
Dominik Schilling 823ec71cd6 Customize: Don't auto-close the customizer when a new theme is activated.
Props celloexpressions.
Fixes #35320.
Built from https://develop.svn.wordpress.org/trunk@37339


git-svn-id: http://core.svn.wordpress.org/trunk@37305 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-01 19:54:27 +00:00
Weston Ruter 09860ae46c Customize: Remove format placeholders from widget templates and selectors, fixing a jQuery selector syntax error and the broken highlight/shift-click behaviors.
The issues occur in themes that register sidebars that reference a single format placeholder (`%1$s` and `%2$s`) multiple times, such as in the `id` and `class` attributes for `$before_widget`.

Props martin.krcho, westonruter.
Fixes #36473.

Built from https://develop.svn.wordpress.org/trunk@37322


git-svn-id: http://core.svn.wordpress.org/trunk@37288 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-28 18:20:29 +00:00
Andrew Ozz 59d388038e TinyMCE: prevent showing the placeholder URL when adding a link and clicking more than once on the Insert Link button.
Props iseulde.
Fixes #36637 for trunk.
Built from https://develop.svn.wordpress.org/trunk@37301


git-svn-id: http://core.svn.wordpress.org/trunk@37267 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-22 19:11:28 +00:00
Gary Pendergast b43ee4b8fe Emoji: The diversity support test was incorrectly passing on all browsers.
[37028] missed some logic to capture the base emoji skin tone, to compare to the modified emoji skin tone. This caused all browsers to report that they supported skin tone modifiers, regardless of whether they actually did.

Fixes #36604 for trunk.


Built from https://develop.svn.wordpress.org/trunk@37256


git-svn-id: http://core.svn.wordpress.org/trunk@37222 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-20 13:56:28 +00:00
Andrew Ozz 5dcf90c069 TinyMCE: backport fixes for 4.3.10:
- Conflict with typing the Euro sign on Windows: 5462e3c1dd
- opy/paste typo in the textcolor plugin: 1fc5a733e9

See #36545, for trunk.
Built from https://develop.svn.wordpress.org/trunk@37251


git-svn-id: http://core.svn.wordpress.org/trunk@37217 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-19 23:01:27 +00:00
Andrew Ozz 7e5dcdb1aa TinyMCE: update to 4.3.10, changelog: https://github.com/tinymce/tinymce/blob/master/changelog.txt. Fixes #36545 for trunk.
Built from https://develop.svn.wordpress.org/trunk@37242


git-svn-id: http://core.svn.wordpress.org/trunk@37208 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-18 21:46:29 +00:00
Pascal Birchler 5cbdf22c0f TinyMCE, inline link: Fix VoiceOver in Safari for search suggestions.
Props afercia.
Fixes #36458.
Built from https://develop.svn.wordpress.org/trunk@37228


git-svn-id: http://core.svn.wordpress.org/trunk@37194 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-17 11:09:28 +00:00
Aaron Jorbin 262f3f2f7e Update grunt-contrib-uglify from ~0.10.0 to ~1.0.1
This changes every JS file in WordPress, so we need to test everything.

Props netweb.
See #36520.

Built from https://develop.svn.wordpress.org/trunk@37212


git-svn-id: http://core.svn.wordpress.org/trunk@37178 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-15 16:10:37 +00:00
Dominik Schilling 12599ea170 TinyMCE, inline link: Make styles for the autocomplete results available on front end.
Also, replace the generic `.alignright` class with a more specific class to avoid styling issues with themes which have padding/margin attached to `.alignright`.

Props azaozz, imath.
Fixes #36461.
Built from https://develop.svn.wordpress.org/trunk@37174


git-svn-id: http://core.svn.wordpress.org/trunk@37141 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-11 15:12:29 +00:00
Aaron Jorbin 1c1daa7ba4 External Libraries: Update jQuery to 1.12.3.
Sing it with me: jQuery fixed two issues, now you can get them with WP 4.5.

Release Post: http://blog.jquery.com/2016/04/05/jquery-1-12-3-and-2-2-3-released/
Changelog: https://github.com/jquery/jquery/compare/1.12.2...1.12.3

Fixes #35380.
Props ocean90.


Built from https://develop.svn.wordpress.org/trunk@37164


git-svn-id: http://core.svn.wordpress.org/trunk@37131 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-06 22:45:27 +00:00
Andrew Ozz 2618ccf64d Editor, wpLink:
- Restore the bottom half of the modal.
- Make it always expanded and remove the toggle. It is used as advanced link options now, no need to have simple mode.

Props iseulde, adamsilverstein, azaozz.
Fixes #36359.
Built from https://develop.svn.wordpress.org/trunk@37154


git-svn-id: http://core.svn.wordpress.org/trunk@37120 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-01 21:13:29 +00:00
Konstantin Obenland 1edaf1c357 Customize: Respect aspect ratio on cropped images.
Takes into account whether the control supports `flex_width` and/or
`flex_height` and adjusts destination measurements accordingly.

Fixes #36318.


Built from https://develop.svn.wordpress.org/trunk@37113


git-svn-id: http://core.svn.wordpress.org/trunk@37080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-30 15:14:27 +00:00
Andrew Ozz a97d39785a TinyMCE: include the upstream fix for inserting `<hr>` while the caret is in an inline element: b1618d1adb.
Fixes #36165.
Built from https://develop.svn.wordpress.org/trunk@37074


git-svn-id: http://core.svn.wordpress.org/trunk@37041 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-23 21:45:28 +00:00
Dominik Schilling 7c42afee11 External Libraries: Update jQuery Migrate to 1.4.0.
Changes: https://github.com/jquery/jquery-migrate/compare/1.3.0...1.4.0

Fixes #35380.
Built from https://develop.svn.wordpress.org/trunk@37072


git-svn-id: http://core.svn.wordpress.org/trunk@37039 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-23 19:44:26 +00:00
Dominik Schilling 51e6a98040 External Libraries: Update jQuery to 1.12.2.
Release post: http://blog.jquery.com/2016/03/17/jquery-1-12-2-and-2-2-2-released/
Changelog: https://github.com/jquery/jquery/compare/1.12.1...1.12.2

See #35380.
Built from https://develop.svn.wordpress.org/trunk@37070


git-svn-id: http://core.svn.wordpress.org/trunk@37037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-23 18:47:26 +00:00
Weston Ruter d1ae0642cf Customize: Add support for flex sizes in `CustomizeImageCropper`.
Ensures that `$flex_width` and `$flex_height` as specified on `WP_Customize_Cropped_Image_Control` will be honored when a crop is saved.

See #36255.
Fixes #34851.

Built from https://develop.svn.wordpress.org/trunk@37042


git-svn-id: http://core.svn.wordpress.org/trunk@37009 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-22 03:55:29 +00:00
Weston Ruter f3f84d2f21 Customize: Require opt-in for selective refresh of widgets.
* Introduces `customize-selective-refresh-widgets` theme support feature and adds to themes.
* Introduces `customize_selective_refresh` arg for `WP_Widget::$widget_options` and adds to all core widgets.
* Remove `selective_refresh` from being a component that can be removed via `customize_loaded_components` filter.
* Add `WP_Customize_Widgets::get_selective_refreshable_widgets()` and `WP_Customize_Widgets::is_widget_selective_refreshable()`.
* Fix default `selector` for `Partial` instances.
* Implement and improve Masronry sidebar refresh logic in Twenty Thirteen and Twenty Fourteen, including preservation of initial widget position after refresh.
* Re-initialize ME.js when refreshing `Twenty_Fourteen_Ephemera_Widget`.

See #27355.
Fixes #35855.

Built from https://develop.svn.wordpress.org/trunk@37040


git-svn-id: http://core.svn.wordpress.org/trunk@37007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-21 21:59:29 +00:00
Gary Pendergast e899cc7ae5 Emoji: The `everythingExceptFlag` browser support flag, introduced in [36816], wasn't being initialised correctly.
See #35300.


Built from https://develop.svn.wordpress.org/trunk@37029


git-svn-id: http://core.svn.wordpress.org/trunk@36996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-17 05:00:28 +00:00
Gary Pendergast 261aa938cf Emoji: Fix the diversity emoji check in Safari.
When the browser test for diversity emoji was added in [36160], it included a workaround for Chrome not being able to compare `Uint8ClampedArray` objects directly, by converting them to a string. Unfortunately, Safari doesn't support the `Uint8ClampedArray.toString()` method correctly, so the test was incorrectly failing in Safari.

Fixes #36266 for trunk.


Built from https://develop.svn.wordpress.org/trunk@37028


git-svn-id: http://core.svn.wordpress.org/trunk@36995 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-17 04:54:26 +00:00
Andrew Ozz cb0565b33a TinyMCE: after discussion in Slack https://wordpress.slack.com/archives/core/p1458164584000700
- Remove `***` and `___` text pattern and support for spaces in `---`. The only `<hr>` text pattern is 3 or more dashes, no spaces.
- Remove the `*`, `**`, `_`, and `__` text patterns for bold and italic.

Fixes #33300;
Built from https://develop.svn.wordpress.org/trunk@37023


git-svn-id: http://core.svn.wordpress.org/trunk@36990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-16 23:00:28 +00:00
Andrew Ozz 571cf91329 TinyMCE, inline link:
- Remove bottom box-shadow from the Apply button so it matches the rest.
- Change the tooltip for the cogwheel button to Link options.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@37001


git-svn-id: http://core.svn.wordpress.org/trunk@36968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-16 02:04:27 +00:00
Andrew Ozz aa8462c59f TinyMCE: update to 4.3.8, changelog: https://www.tinymce.com/docs/changelog/#version438-march152016.
Fixes #36254.
Built from https://develop.svn.wordpress.org/trunk@37000


git-svn-id: http://core.svn.wordpress.org/trunk@36967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-15 21:38:26 +00:00
Andrew Ozz b9a3602070 wpLink: fix accessibility issues:
- Add role=dialog and an aria-labelledby attribute to the modal container.
- Change the modal title to h1.
- Remove one `&nbsp;` that gets read out as `blank` by screen readers.
- Replace the Cancel link with a button.
- Clean up unused CSS.

Props afercia.
Fixes #30468.
Built from https://develop.svn.wordpress.org/trunk@36991


git-svn-id: http://core.svn.wordpress.org/trunk@36958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-14 20:55:26 +00:00
Weston Ruter 783aa8b4fa Customize: Rely on selective refresh exclusively for previewing custom logo changes.
Eliminates JS logic (from [36698]) which attempted to do pure JS update while waiting for the selective refresh response to return. The duplicate JS logic lacked a re-implementation of the `image_downsize()` functionality available in PHP, and so the JS preview logic would fail to properly preview images that didn't have the exact theme image size generated. To keep the code DRY and to eliminate the momentary display of an improperly-sized image, the duplicated JS logic is now removed.

See #27355.
See #33755.
Fixes #36096.

Built from https://develop.svn.wordpress.org/trunk@36990


git-svn-id: http://core.svn.wordpress.org/trunk@36957 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-14 19:17:28 +00:00
Andrew Ozz cd38787ee7 TinyMCE, inline link:
- Add audible confirmation when a link has been selected or inserted in the editor for both the inline dialog and the modal.
- Do not auto-search when the URL field is empty or already contains an URL.
- Remove a few redundant `tabindex`.

Props afercia, azaozz.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36984


git-svn-id: http://core.svn.wordpress.org/trunk@36951 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-14 00:53:26 +00:00
Andrew Ozz 8fda4ca0b2 TinyMCE: when dragging, prevent error when a range cannot be created at the drop location.
Fixes #36229.
Built from https://develop.svn.wordpress.org/trunk@36983


git-svn-id: http://core.svn.wordpress.org/trunk@36950 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-13 22:55:25 +00:00
Andrew Ozz c495d3b2b3 TinyMCE, inline link: when doing undo/redo with keyboard shortcut, do not focus the inline dialog. Cannot do consecutive undo/redo if the focus is moved away from the editor.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36982


git-svn-id: http://core.svn.wordpress.org/trunk@36949 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-13 22:44:25 +00:00
Andrew Ozz dee2f6ccb7 Fix typo in wp-emoji.js.
See #35977.
Built from https://develop.svn.wordpress.org/trunk@36981


git-svn-id: http://core.svn.wordpress.org/trunk@36948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-13 20:30:27 +00:00
Andrew Ozz b97b5a797b TinyMCE, inline link: ensure the inline dialog is in preview mode after updating a link from the (advanced) modal.
Props afercia.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36977


git-svn-id: http://core.svn.wordpress.org/trunk@36945 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-13 17:47:26 +00:00
Andrew Ozz c481c4449b TinyMCE: tweak the small animation shown while waiting for wpView data to make it sell CPU intensive.
Props programmin.
Fixes #33525.
Built from https://develop.svn.wordpress.org/trunk@36976


git-svn-id: http://core.svn.wordpress.org/trunk@36944 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-13 17:02:26 +00:00
Andrew Ozz 2448d106a2 TinyMCE, inline link: when searching, do not empty the URL input field when using the arrow keys to highlight items.
Props afercia.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36974


git-svn-id: http://core.svn.wordpress.org/trunk@36942 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-12 19:41:26 +00:00
Andrea Fercia fd1f45a7cf Accessibility: Improve accessibility for the Plugin details modal.
The plugin details modal can be invoked from several screens. There's now a new
`.open-plugin-details-modal` CSS class to be used in combination with the
`.thickbox` CSS class that adds everything needed for accessibility.

- Adds an ARIA role `dialog` and an `aria-label` attribute to the modal
- Adds a `title` attribute to the iframe inside the modal
- Constrains tabbing within the modal
- Restores focus back in a proper place when closing the modal

Also, improves a bit the native Thickbox implementation: it should probably be
replaced with some more modern tool but at least keyboard focus should be moved
inside the modal.

Fixes #33305.
Built from https://develop.svn.wordpress.org/trunk@36964


git-svn-id: http://core.svn.wordpress.org/trunk@36932 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-10 22:37:26 +00:00
Aaron Jorbin 1972aa2a2a Add grunt prerelease task
An unintended consequence of improving the precommit task is that when it's time to run a release, more tasks need to get run to verify things. This adds a prerelease task to help fix that situation. grunt prerelease should include tasks that verify the code base is ready to be released to the wild and find all the tears on the mausoleum floor and help Blood stain the Colosseum doors.

See #35557

Built from https://develop.svn.wordpress.org/trunk@36930


git-svn-id: http://core.svn.wordpress.org/trunk@36898 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-10 05:37:27 +00:00
Andrea Fercia a71f14b8d9 Accessibility: Reduce the WordPress shades of grey, Episode 3.
Also, removes some no more used CSS.

See #35783.
Built from https://develop.svn.wordpress.org/trunk@36904


git-svn-id: http://core.svn.wordpress.org/trunk@36872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-09 19:51:26 +00:00
Weston Ruter 055154cb65 Customize: Restore body class removed in [36837] for when custom logo is present.
The class name is `wp-custom-logo` and it will be toggled by JS in the Customizer preview when the custom logo is added or removed.

See #33755.
Fixes #35945.

Built from https://develop.svn.wordpress.org/trunk@36903


git-svn-id: http://core.svn.wordpress.org/trunk@36871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-09 19:33:27 +00:00
Weston Ruter 8c9c4b2698 Customize: Remove unused JS variable to fix jshint error introduced in [36890].
See #36164.

Built from https://develop.svn.wordpress.org/trunk@36892


git-svn-id: http://core.svn.wordpress.org/trunk@36859 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-09 05:05:27 +00:00
Weston Ruter d27ae61355 Customize: Remove selective refresh error message from appearing inline within the preview.
The error message will still be available in the developer console.

Removes part of [36586].
See #27355.
Fixes #36164.

Built from https://develop.svn.wordpress.org/trunk@36890


git-svn-id: http://core.svn.wordpress.org/trunk@36857 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-09 04:37:28 +00:00
Weston Ruter e11fd98ec6 Customize: Fix regressions and harden implementation of selective refresh for nav menus.
* Request full refresh if there are nav menu instances that lack partials for a changed setting.
* Restore `WP_Customize_Nav_Menus::$preview_nav_menu_instance_args` and `WP_Customize_Nav_Menus::export_preview_data()` from 4.3, and keeping a tally of all `wp_nav_menu()` calls regardless of whether they can use selective refresh.
* Ensure that all instances of `wp_nav_menu()` are tallied, regardless of whether they are made during the initial preview call or during subsequent partial renderings. Export `nav_menu_instance_args` with each partial rendering response just as they are returned when rendering the preview as a whole.
* Fix issues with Custom Menu widget where nav menu items would fail to render when switching between menus when a menu lacked items to begin with.
* Make sure the fallback behavior is invoked when the partial is no longer associated with a menu.
* Do fallback behavior to refresh preview when all menu items are removed from a menu.

Follows [36586].
See #27355.
Fixes #35362.

Built from https://develop.svn.wordpress.org/trunk@36889


git-svn-id: http://core.svn.wordpress.org/trunk@36856 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-09 00:09:26 +00:00
Weston Ruter 40f6779665 Customize: Fix image cropping when doing live preview of theme switches.
Ensure that the Customizer gets bootstrapped with the pre-activated `theme` supplied in the `custom-header-crop` admin ajax requests.

Props faishal, rittesh.patel.
Fixes #32783.

Built from https://develop.svn.wordpress.org/trunk@36866


git-svn-id: http://core.svn.wordpress.org/trunk@36833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-06 01:45:27 +00:00
Weston Ruter a8ca958d43 Customize: Eliminate unnecessary `WP_Customize_Site_Logo_Control` in favor of re-using `WP_Customize_Image_Control`.
* Removes double `margin-bottom` from all the media controls.
* All media controls now send `{settingId}-attachment-data` messages to the preview when a media setting is updated so that the preview has access to the attachment data.
* Fixes receiving of `attachment-data` message for `custom_logo` which resulted in instant JS-applied preview not working. See #36096.

See #33755.
Fixes #35941.

Built from https://develop.svn.wordpress.org/trunk@36851


git-svn-id: http://core.svn.wordpress.org/trunk@36818 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-04 23:47:26 +00:00
Konstantin Obenland 147d6d7d6c Customize: Site logos are custom logos.
Brings the nomenclature closer to custom headers and backgrounds.

See https://wordpress.slack.com/archives/core/p1456955151003150
See #35945. 

Built from https://develop.svn.wordpress.org/trunk@36837


git-svn-id: http://core.svn.wordpress.org/trunk@36804 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-03 19:56:26 +00:00