WordPress/wp-admin
Weston Ruter 434e3aba82 Customize: Add changeset locking in Customizer to prevent users from overriding each other's changes.
* Customization locking is checked when changesets are saved and when heartbeat ticks.
* Lock is lifted immediately upon a user closing the Customizer.
* Heartbeat is introduced into Customizer.
* Changes made to user after it was locked by another user are stored as an autosave revision for restoration.
* Lock notification displays link to preview the other user's changes on the frontend.
* A user loading a locked Customizer changeset will be presented with an option to take over.
* Autosave revisions attached to a published changeset are converted into auto-drafts so that they will be presented to users for restoration.
* Focus constraining is improved in overlay notifications.
* Escape key is stopped from propagating in overlay notifications, and it dismisses dismissible overlay notifications.
* Introduces `changesetLocked` state which is used to disable the Save button and suppress the AYS dialog when leaving the Customizer.
* Fixes bug where users could be presented with each other's autosave revisions.

Props sayedwp, westonruter, melchoyce.
See #31436, #31897, #39896.
Fixes #42024.

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


git-svn-id: http://core.svn.wordpress.org/trunk@41673 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-12 04:01:46 +00:00
..
css Customize: Add changeset locking in Customizer to prevent users from overriding each other's changes. 2017-10-12 04:01:46 +00:00
images
includes Upgrades: Remove the usage of `each()` from `WP_Upgrader` for PHP 7.2 compatibility. 2017-10-11 04:24:50 +00:00
js Customize: Add changeset locking in Customizer to prevent users from overriding each other's changes. 2017-10-12 04:01:46 +00:00
maint
network Multisite: Display correct roles in Network > Site Users screen for sites other than the main site. 2017-09-30 03:20:46 +00:00
user
about.php Media: Upgrade MediaElement.js from 2.22.0 to 4.2.3. 2017-08-01 04:43:51 +00:00
admin-ajax.php File Editors: Introduce sandboxed live editing of PHP files with rollbacks for both themes and plugins. 2017-10-04 00:20:45 +00:00
admin-footer.php Docs: Remove incorrect `@param` tags for `admin_print_footer_scripts-{$hook_suffix}` and `admin_footer-{$hook_suffix}` dynamic actiona. 2017-01-09 14:38:41 +00:00
admin-functions.php
admin-header.php I18n: Introduce more translator comments for strings that contain placeholders but don't have an accompanying translator comment. 2016-11-21 02:46:30 +00:00
admin-post.php
admin.php Text Changes: Add a period to the only `wp_die()` message that didn't have it: "Invalid plugin page". 2017-01-22 02:33:42 +00:00
async-upload.php Remove SWFUpload, 2017-09-21 16:35:48 +00:00
comment.php Accessibility: Remove target=_blank from the comment/edit-comments help tabs links. 2016-10-04 06:54:30 +00:00
credits.php About page: Add a privacy policy. 2017-07-19 21:42:42 +00:00
custom-background.php Docs: Remove `@access` notations from method DocBlocks in wp-admin/* classes. 2017-07-27 00:40:43 +00:00
custom-header.php Customizer: Minimize duplicate header crops in the media library. 2017-10-04 14:59:48 +00:00
customize.php Customize: Add changeset locking in Customizer to prevent users from overriding each other's changes. 2017-10-12 04:01:46 +00:00
edit-comments.php General: Use interpolation instead of concatenation for all dynamic hook names. 2016-12-14 04:18:42 +00:00
edit-form-advanced.php Editor: Add the `replace_editor` filter. 2017-10-11 12:06:48 +00:00
edit-form-comment.php Accessibility: Standardize the remove/delete/cancel links in the Menus screen and Publish meta boxes. 2016-09-17 15:39:30 +00:00
edit-link-form.php Accessibility: Remove inappropriate content from the Link Manager screens headings. 2016-12-07 20:18:46 +00:00
edit-tag-form.php Taxonomy: Introduce a `back_to_items` taxonomy label. 2017-09-27 14:39:45 +00:00
edit-tags.php Taxonomy: Allow for adding custom list table views to taxonomy screens. 2017-09-13 15:20:44 +00:00
edit.php Posts, Post Types: Preserve author filter in list table after entering a page number in paging input. 2017-01-21 02:22:26 +00:00
export.php Accessibility: Remove target=_blank from the help tab links on several admin screens. 2016-10-04 20:27:33 +00:00
freedoms.php About page: Add a privacy policy. 2017-07-19 21:42:42 +00:00
import.php Accessibility: Remove target=_blank from the help tab links on several admin screens. 2016-10-04 20:27:33 +00:00
index.php Customize: Eliminate use of customize-loader in core so Customizer is opened consistently in `top` window. 2017-10-09 16:04:48 +00:00
install-helper.php
install.php I18N: Allow numbers in locales during installation. 2017-09-04 19:30:43 +00:00
link-add.php
link-manager.php Accessibility: Remove inappropriate content from the Link Manager screens headings. 2016-12-07 20:18:46 +00:00
link-parse-opml.php General: Check to see that the PHP-XML module is enabled before using XML functions. 2016-10-24 04:45:31 +00:00
link.php
load-scripts.php Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389. 2016-08-31 16:31:29 +00:00
load-styles.php Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389. 2016-08-31 16:31:29 +00:00
media-new.php Accessibility: Remove target=_blank from the help tab links on several admin screens. 2016-10-04 20:27:33 +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 Accessibility: Remove inappropriate content from the old Edit Media screen heading. 2016-12-07 23:30:40 +00:00
menu-header.php Administration: Admin menu: Use `aria-current` for the current active page. 2017-09-09 14:50:43 +00:00
menu.php Role/Capability: Introduce capabilities dedicated to installing and updating language files. 2017-08-18 18:31:44 +00:00
moderation.php
ms-admin.php
ms-delete-site.php Multisite: Use `get_current_blog_id()` instead of `$wpdb->blogid`. 2017-10-02 01:44:47 +00:00
ms-edit.php
ms-options.php
ms-sites.php
ms-themes.php
ms-upgrade-network.php
ms-users.php
my-sites.php Users: Remove some links to the dashboard from My Sites for users who cannot access it. 2017-10-09 15:22:46 +00:00
nav-menus.php Customize: Prevent links to `customize.php` from being generated which have query vars from `wp_removable_query_args()` present. 2017-03-22 23:04:42 +00:00
network.php General: Improve terminology used when referring to installations of WordPress and its extensions. 2017-08-22 11:52:48 +00:00
options-discussion.php Comments: Change `IP` references in moderation option labels and email notifications to `IP address` for clarity. 2017-10-03 13:09:47 +00:00
options-general.php General: Improve terminology used when referring to installations of WordPress and its extensions. 2017-08-22 11:52:48 +00:00
options-head.php
options-media.php Settings: Widen image size input fields on Media Settings page. 2017-10-12 03:48:47 +00:00
options-permalink.php Permalinks: Change structure tag button state more reliably. 2017-09-26 08:24:46 +00:00
options-reading.php Customize: Rename "Static front page" to just "Homepage". 2017-09-10 16:20:44 +00:00
options-writing.php General: Improve terminology used when referring to installations of WordPress and its extensions. 2017-08-22 11:52:48 +00:00
options.php General: Improve terminology used when referring to installations of WordPress and its extensions. 2017-08-22 11:52:48 +00:00
plugin-editor.php File Editors: Introduce an interstitial warning upon first visit. 2017-10-05 04:25:48 +00:00
plugin-install.php General: Improve terminology used when referring to installations of WordPress and its extensions. 2017-08-22 11:52:48 +00:00
plugins.php Retire Press This and extract it to a plugin. First run. 2017-09-24 14:22:54 +00:00
post-new.php Editor: Add the `replace_editor` filter. 2017-10-11 12:06:48 +00:00
post.php Editor: Add the `replace_editor` filter. 2017-10-11 12:06:48 +00:00
press-this.php Press This: Use "installation" when referring to the act of installing Press This. 2017-10-09 14:08:48 +00:00
privacy.php About page: Add a privacy policy. 2017-07-19 21:42:42 +00:00
profile.php
revision.php I18n: Begin introducing translator comments for strings which include placeholders but no accompanying translator comment. 2016-11-21 01:22:32 +00:00
setup-config.php Setup: Hide database errors while testing the table prefix. 2017-09-28 07:58:46 +00:00
term.php Taxonomy: Add a "delete" button on term edit page. 2017-05-12 19:26:41 +00:00
theme-editor.php File Editor: Add support for more than one sub-directory level. 2017-10-10 05:34:49 +00:00
theme-install.php Plugins: Improve error messages on plugins screen. 2017-09-27 08:46:45 +00:00
themes.php Customize: Eliminate use of customize-loader in core so Customizer is opened consistently in `top` window. 2017-10-09 16:04:48 +00:00
tools.php Retire Press This and extract it to a plugin. First run. 2017-09-24 14:22:54 +00:00
update-core.php Plugins: Tweak the plugin icons added in [41695]. 2017-10-04 23:43:46 +00:00
update.php Customize: Eliminate use of customize-loader in core so Customizer is opened consistently in `top` window. 2017-10-09 16:04:48 +00:00
upgrade-functions.php
upgrade.php
upload.php Accessibility: Improve the Media Library inline uploader accessibility. 2017-03-31 17:38:43 +00:00
user-edit.php Taxonomy/Users: Use correct escaping function for URLs. 2017-09-19 21:14:47 +00:00
user-new.php Multisite: Use `get_current_blog_id()` instead of `$wpdb->blogid`. 2017-10-02 01:44:47 +00:00
users.php Help/About: Tweak Help tabs on Users screen for consistency with Posts screen. 2017-09-22 18:31:48 +00:00
widgets.php Accessibility: Improve the sidebar toggles in the Widgets screen. 2017-09-27 16:29:44 +00:00