Widgets: Add dirty state tracking for widgets on admin screen.
* Mark a widget as dirty when a field input triggers a `change` or `input` event; clear dirty state when widget is successfully saved. * Disable Save button and re-label "Saved" when widget not dirty. * Show AYS dialog when leaving widgets admin screen with unsaved changes. * When widgets are dirty, expand all unsaved widgets at AYS check and focus on first one. * Change "Close" link to "Done"; hide link when widget is dirty and reveal when saved. * The "Done" link persistently appears in the Customizer even after making a change (when the widget is dirty) because changes are autosaved into the changeset. * Prevent saving widget when form fails `checkValidity`. * Fix frequency of triggering of `change` event on the rich Text widget's `textarea` limited now to when there are actual changes. * Add a class of `widget-dirty` to widget containers when the widget has unsaved changes. Props westonruter, timmydcrawford, melchoyce. Fixes #41610, #23120. Built from https://develop.svn.wordpress.org/trunk@41352 git-svn-id: http://core.svn.wordpress.org/trunk@41185 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
@@ -42,6 +42,10 @@
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.widget.widget-dirty .widget-control-close-wrapper {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.in-widget-title,
|
||||
#widgets-right a.widget-control-edit,
|
||||
#available-widgets .widget-description {
|
||||
|
||||
Reference in New Issue
Block a user