mirror of
https://github.com/WordPress/WordPress.git
synced 2024-08-31 01:59:47 +02:00
This changeset replaces `this.element._trigger('focus');` with `this.element.trigger('focus');` in `wpdialog` to fix a JS error introduced in [55052]. Indeed, `this` inside the `open()` function of `wpdialog` refers to the jQuery UI widget, whereas `this.element` is the jQuery object of the DOM element. Thus, native jQuery methods need to be used, as `_trigger` is only defined on the jQuery UI widget. Follow-up to [55052]. Props TobiasBg, audrasjb, shubham1gupta. Fixes #56830. Built from https://develop.svn.wordpress.org/trunk@55134 git-svn-id: http://core.svn.wordpress.org/trunk@54667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
28 lines
569 B
JavaScript
28 lines
569 B
JavaScript
/**
|
|
* @output wp-includes/js/wpdialog.js
|
|
*/
|
|
|
|
/*
|
|
* Wrap the jQuery UI Dialog open function remove focus from tinyMCE.
|
|
*/
|
|
( function($) {
|
|
$.widget('wp.wpdialog', $.ui.dialog, {
|
|
open: function() {
|
|
// Add beforeOpen event.
|
|
if ( this.isOpen() || false === this._trigger('beforeOpen') ) {
|
|
return;
|
|
}
|
|
|
|
// Open the dialog.
|
|
this._super();
|
|
|
|
// WebKit leaves focus in the TinyMCE editor unless we shift focus.
|
|
this.element.trigger('focus');
|
|
this._trigger('refresh');
|
|
}
|
|
});
|
|
|
|
$.wp.wpdialog.prototype.options.closeOnEscape = false;
|
|
|
|
})(jQuery);
|