Fix a regression caused by [27622] in `prepend_attachment()` by passing all attachments that are not audio or video to the `else` clause.

Fixes #27634.



git-svn-id: https://develop.svn.wordpress.org/trunk@27908 602fd350-edb4-49c9-b593-d223f7449a82
Widget Customizer: Improve support for dynamically-created inputs.

* Re-work how and when widget forms get updated.
* Replace ad hoc hooks system with jQuery events,
* Add `widget-updated`/`widget-synced` events for widget soft/hard updates.
* Enter into a non-live form update mode, where the Apply button is restored when a sanitized form does not have the same fields as currently in the form, and so the fields cannot be easily updated to their sanitized values without doing a complete form replacement. Also restores live update mode if sanitized fields are aligned with the existing fields again.

Note: jQuery events are *not* final yet, see #19675.

props westonruter.
see #27491.

git-svn-id: https://develop.svn.wordpress.org/trunk@27909 602fd350-edb4-49c9-b593-d223f7449a82
Widget Customizer: Remove leading underscores from public methods.

Fix also an incorrect hook name in `stop_capturing_option_updates()`.

props DrewAPicture.
see #27534.

git-svn-id: https://develop.svn.wordpress.org/trunk@27910 602fd350-edb4-49c9-b593-d223f7449a82