- // Disable the button to save preferences unless preferences have changed
- // Check if preferences have been changed before JS has finished loading
- if ( !isPrefsChanged() ) {
- $( '#prefcontrol' ).prop( 'disabled', true );
- $( '#preferences > fieldset' ).one( 'change keydown mousedown', function () {
- $( '#prefcontrol' ).prop( 'disabled', false );
+ if ( oouiEnabled ) {
+ saveButton = OO.ui.infuse( $( '#prefcontrol' ) );
+ restoreButton = OO.ui.infuse( $( '#mw-prefs-restoreprefs' ) );
+
+ // Disable the button to save preferences unless preferences have changed
+ // Check if preferences have been changed before JS has finished loading
+ saveButton.setDisabled( !isPrefsChanged() );
+ $( '#preferences .oo-ui-fieldsetLayout' ).on( 'change keyup mouseup', function () {
+ saveButton.setDisabled( !isPrefsChanged() );
+ } );
+ } else {
+ // Disable the button to save preferences unless preferences have changed
+ // Check if preferences have been changed before JS has finished loading
+ $( '#prefcontrol' ).prop( 'disabled', !isPrefsChanged() );
+ $( '#preferences > fieldset' ).on( 'change keyup mouseup', function () {
+ $( '#prefcontrol' ).prop( 'disabled', !isPrefsChanged() );