WordPress/wp-admin
Weston Ruter 9546303342 Customize: Improve handling of active state for dynamically-created controls/sections/panels.
When a customizer construct (panel, section, control) is not added in PHP, the JS has interpreted this to mean that a given construct should be deactivated (because it is gone). This is problematic for dynamically-created constructs in JS, as it has meant that the construct would also have to be created in PHP to ensure the `active` callback is called, or else a hack would be required to add a `construct.active.validate = function() { return true };` to forcibly prevent the construct from getting deactivated. 

These workarounds can be eliminated by treating constructs differently when they are created dynamically in JS (after page load) as opposed to being created statically in PHP (on the server). Namely, if a construct is dynamically-created then its absence in a preview refresh should not signal that the construct should be deactivated. Rather, a dynamic construct should only have its activation state toggled if it has a corresponding construct created in PHP when the preview refreshes to explicitly indicate its `active` state. Otherwise, the management of the `active` state for a construct created in JS should also be the responsibility of client-side code.

Props westonruter, sayedwp.
Fixes #37270.

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


git-svn-id: http://core.svn.wordpress.org/trunk@38405 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-31 06:22:23 +00:00
..
css Customize: Allow users to more seamlessly create page-based nav menus during customization. 2016-08-29 22:59:28 +00:00
images Customize: Add a RTL version of "browser.png" for the site icon preview. 2016-07-05 11:32:29 +00:00
includes Press This: in get_shortcut_link(), just check a class constant on WP_Press_This instead of instantiating the object and reading an instance prop. 2016-08-31 06:08:00 +00:00
js Customize: Improve handling of active state for dynamically-created controls/sections/panels. 2016-08-31 06:22:23 +00:00
maint I18N: Make the translator comment added in [37858] more explicit and consistent with other similar instances. 2016-07-04 13:10:30 +00:00
network I18N: Replace unnecessary context with a translator comment for %s KB string on Network Settings screen. 2016-08-23 00:11:28 +00:00
user Docs: Standardize hook docs in wp-admin/* to use third-person singular verbs per the inline documentation standards for PHP. 2016-05-22 18:01:30 +00:00
about.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
admin-ajax.php TinyMCE, inline link: 2016-07-26 23:24:28 +00:00
admin-footer.php Hooks: Standardize naming of dynamic hooks to use interpolation vs concatenation. 2016-08-22 18:25:31 +00:00
admin-functions.php Docs: Use 3-digit, x.x.x-style semantic versioning for _doing_it_wrong(), _deprecated_function(), _deprecated_argument(), and _deprecated_file() throughout core. 2016-07-06 12:40:29 +00:00
admin-header.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
admin-post.php Spelling: Standardize on "front end"/"back end" (noun) and "front-end"/"back-end" (adjective). 2016-02-25 12:53:27 +00:00
admin.php Hooks: Standardize naming of dynamic hooks to use interpolation vs concatenation. 2016-08-22 18:25:31 +00:00
async-upload.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
comment.php I18N: Correct various instances of incorrect usage of esc_attr_e(). 2016-08-28 18:06:30 +00:00
credits.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
custom-background.php Docs: Standardize capitalization of Ajax throughout core documentation per the core spelling guide. 2016-07-10 00:51:30 +00:00
custom-header.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
customize.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
edit-comments.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
edit-form-advanced.php Hooks: Standardize naming of dynamic hooks to use interpolation vs concatenation. 2016-08-22 18:25:31 +00:00
edit-form-comment.php DOCS: Replace HTTP links with HTTPS. 2016-06-10 04:50:33 +00:00
edit-link-form.php Bump H3 headings to H2 on the legacy Link Manager screen for better accessibility. 2015-10-14 17:32:24 +00:00
edit-tag-form.php I18N: Add context and translator comments to Back to %s strings. 2016-06-14 21:51:28 +00:00
edit-tags.php Text Changes: Add a full stop to "Invalid taxonomy" and "Invalid term ID" strings, for consistency with similar post-related messages. 2016-07-17 16:15:34 +00:00
edit.php I18N: Combine two duplicate "Invalid post type" strings. 2016-07-17 16:05:31 +00:00
export.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
freedoms.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
import.php Import: Enhance accessibility on the Import screen. 2016-07-17 15:32:30 +00:00
index.php Update/Install: Fix plugin updates from the details modal on the Dashboard. 2016-07-05 15:37:28 +00:00
install-helper.php Docs: Add missing descriptions for the $wpdb global in DocBlocks all the places. 2015-10-14 23:44:25 +00:00
install.php Bootstrap: after r38409 and r38410, revert r38402 which reverted r38399. 2016-08-27 22:32:37 +00:00
link-add.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
link-manager.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
link-parse-opml.php Add @global annotations for wp-admin/*. 2015-05-28 21:41:30 +00:00
link.php Docs: Standardize capitalization of Ajax throughout core documentation per the core spelling guide. 2016-07-10 00:51:30 +00:00
load-scripts.php Script Loader: autoload in load-{scripts|styles}.php. 2016-08-28 00:07:33 +00:00
load-styles.php Script Loader: autoload in load-{scripts|styles}.php. 2016-08-28 00:07:33 +00:00
media-new.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
media-upload.php Hooks: Standardize naming of dynamic hooks to use interpolation vs concatenation. 2016-08-22 18:25:31 +00:00
media.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
menu-header.php Docs: Standardize hook docs in wp-admin/* to use third-person singular verbs per the inline documentation standards for PHP. 2016-05-22 18:01:30 +00:00
menu.php Docs: Standardize on 'backward compatibility/compatible' nomenclature in core inline docs. 2016-05-13 18:41:31 +00:00
moderation.php
ms-admin.php
ms-delete-site.php Multisite: Use hash_equals() when comparing hashes to mitigate timing attacks. 2016-07-10 19:43:28 +00:00
ms-edit.php
ms-options.php
ms-sites.php
ms-themes.php
ms-upgrade-network.php
ms-users.php
my-sites.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
nav-menus.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
network.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
options-discussion.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
options-general.php Multisite: Add a nonce to the "Cancel" URL when changing a site's admin email. 2016-07-07 17:13:27 +00:00
options-head.php Docs: Standardize on 'backward compatibility/compatible' nomenclature in core inline docs. 2016-05-13 18:41:31 +00:00
options-media.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
options-permalink.php Permalinks: Rename $usingpi to $using_index_permalinks for clarity. 2016-07-16 12:46:29 +00:00
options-reading.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
options-writing.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
options.php Multisite: Use hash_equals() when comparing hashes to mitigate timing attacks. 2016-07-10 19:43:28 +00:00
plugin-editor.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
plugin-install.php I18N: Allow for WordPress Plugin/Theme Directory URLs to be localized. 2016-08-23 01:19:39 +00:00
plugins.php I18N: Allow for WordPress Plugin/Theme Directory URLs to be localized. 2016-08-23 01:19:39 +00:00
post-new.php I18N: Combine two duplicate "Invalid post type" strings. 2016-07-17 16:05:31 +00:00
post.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
press-this.php Bootstrap: after r38409 and r38410, revert r38402 which reverted r38399. 2016-08-27 22:32:37 +00:00
profile.php
revision.php Revisions: Allow autosaves to be restored when revisions are disabled. 2016-07-08 01:16:31 +00:00
setup-config.php I18N: Correct various instances of incorrect usage of esc_attr_e(). 2016-08-28 18:06:30 +00:00
term.php On term.php, use $taxnow when fetching currently edited term. 2016-07-16 18:37:30 +00:00
theme-editor.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
theme-install.php I18N: After [38057], consistently use a context for other instances of Activate %s, Network Activate %s, and Delete %s strings. 2016-07-16 23:20:29 +00:00
themes.php I18N: Allow for WordPress Plugin/Theme Directory URLs to be localized. 2016-08-23 01:19:39 +00:00
tools.php Bump H3 headings to H2 on Tools screen for better accessibility. 2015-08-31 03:32:21 +00:00
update-core.php General: use get_bloginfo( 'version' ) instead of global $wp_version in several locations - excluding those locations which reload version.php mid-flight. 2016-08-31 05:49:37 +00:00
update.php Bootstrap: after r38409 and r38410, revert r38402 which reverted r38399. 2016-08-27 22:32:37 +00:00
upgrade-functions.php Docs: Use 3-digit, x.x.x-style semantic versioning for _doing_it_wrong(), _deprecated_function(), _deprecated_argument(), and _deprecated_file() throughout core. 2016-07-06 12:40:29 +00:00
upgrade.php Install/Upgrade: Keep indexing bots away until a site is ready to be seen. 2015-12-08 21:56:27 +00:00
upload.php Text Changes: Remove duplicate string, use the one we already have. 2016-07-04 21:48:28 +00:00
user-edit.php Users: Check zxcvbn is defined before calling. 2016-07-01 12:45:29 +00:00
user-new.php I18N: Remove unnecessary context for two strings on "Add New User" screen. 2016-08-23 12:54:31 +00:00
users.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00
widgets.php Text Changes: Unify permission error messages. 2016-06-29 15:16:29 +00:00