Adrian Lang has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/188816

Change subject: Fixups for header section redesign (make qunit pass again)
......................................................................

Fixups for header section redesign (make qunit pass again)

Change-Id: I210ca81766b2b7e9f25e59b431a291fdc1194378
---
M lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
M lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
M 
lib/resources/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
M lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
M lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
M lib/resources/jquery.wikibase/jquery.wikibase.itemview.js
M lib/resources/jquery.wikibase/jquery.wikibase.propertyview.js
M lib/tests/qunit/jquery.wikibase/jquery.wikibase.descriptionview.tests.js
M 
lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js
M 
lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
10 files changed, 31 insertions(+), 23 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/16/188816/1

diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
index 6fc659a..2f6cef2 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
@@ -68,7 +68,10 @@
         * @inheritdoc
         */
        destroy: function() {
-               this.$list.removeClass( this.widgetFullName + '-input' );
+               if( this.$list ) {
+                       this.$list.removeClass( this.widgetFullName + '-input' 
);
+               }
+               PARENT.prototype.destroy.call( this );
        },
 
        /**
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
index e7fdb78..ebf5b1c 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
@@ -239,7 +239,7 @@
                if( !dropValue ) {
                        this.options.value = this.value();
                } else if( this.options.value.getText() === '' ) {
-                       this.$text.children( this.widgetFullName + '-input' 
).val( '' );
+                       this.$text.children( '.' + this.widgetFullName + 
'-input' ).val( '' );
                }
 
                this.element.removeClass( 'wb-edit' );
@@ -295,7 +295,7 @@
                var response = PARENT.prototype._setOption.call( this, key, 
value );
 
                if( key === 'disabled' && this._isInEditMode ) {
-                       this.$text.children( this.widgetFullName + '-input' 
).prop( 'disabled', value );
+                       this.$text.children( '.' + this.widgetFullName + 
'-input' ).prop( 'disabled', value );
                }
 
                return response;
@@ -319,7 +319,7 @@
 
                return new wb.datamodel.Term(
                        this.options.value.getLanguageCode(),
-                       $.trim( this.$text.children( this.widgetFullName + 
'-input' ).val() )
+                       $.trim( this.$text.children( '.' + this.widgetFullName 
+ '-input' ).val() )
                );
        },
 
@@ -328,7 +328,7 @@
         */
        focus: function() {
                if( this._isInEditMode ) {
-                       this.$text.children( this.widgetFullName + '-input' 
).focus();
+                       this.$text.children( '.' + this.widgetFullName + 
'-input' ).focus();
                } else {
                        this.element.focus();
                }
diff --git 
a/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
 
b/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
index 9f94836..d03a7e4 100644
--- 
a/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
+++ 
b/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
@@ -93,11 +93,14 @@
         * @see jQuery.ui.TemplatedWidget.destroy
         */
        destroy: function() {
-               // When destroying a widget not initialized properly, listview 
will not have been created.
-               var listview = this.$listview.data( 'listview' );
+               // When destroying a widget not initialized properly, shortcuts 
will not have been created.
+               if( this.$listview ) {
+                       // When destroying a widget not initialized properly, 
listview will not have been created.
+                       var listview = this.$listview.data( 'listview' );
 
-               if( listview ) {
-                       listview.destroy();
+                       if( listview ) {
+                               listview.destroy();
+                       }
                }
 
                this.element.removeClass( 
'wikibase-entitytermsforlanguagelistview' );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
index d301e7b..5f2526d 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
@@ -163,7 +163,9 @@
                        this.$entitytermsforlanguagelistview.remove();
                }
 
-               this.$entitytermsforlanguagelistviewToggler.remove();
+               if( this.$entitytermsforlanguagelistviewToggler ) {
+                       this.$entitytermsforlanguagelistviewToggler.remove();
+               }
 
                this.element.off( '.' + this.widgetName );
                this.element.removeClass( 'wikibase-entitytermsview' );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
index 9b14d39..2c0cde0 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.entityview.js
@@ -128,9 +128,9 @@
 
                this.element.data( $.wikibase.entityview.prototype.widgetName, 
this );
 
-               this._initEntityTerms();
-
                PARENT.prototype._create.call( this );
+
+               this._initEntityTerms();
 
                this._attachEventHandlers();
        },
@@ -144,7 +144,7 @@
                this.$entityTerms = $( '.wikibase-entitytermsview', 
this.element );
 
                if( !this.$entityTerms.length ) {
-                       this.$entityTerms = $( '<div/>' ).prepend( this.$main );
+                       this.$entityTerms = $( '<div/>' ).prependTo( this.$main 
);
                } else {
                        var $entitytermsforlanguageview = this.$entityTerms
                                .find( '.wikibase-entitytermsforlanguageview' );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.itemview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.itemview.js
index 3a8999c..58dab58 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.itemview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.itemview.js
@@ -34,9 +34,9 @@
         * @protected
         */
        _create: function() {
+               this._initEntityview();
                this._initStatements();
                this._initSiteLinks();
-               this._initEntityview();
        },
 
        /**
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.propertyview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.propertyview.js
index a00207b..3b548c5 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.propertyview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.propertyview.js
@@ -39,9 +39,9 @@
         * @protected
         */
        _create: function() {
+               this._initEntityview();
                this._initDataType();
                this._initStatements();
-               this._initEntityview();
        },
 
        /**
diff --git 
a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.descriptionview.tests.js 
b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.descriptionview.tests.js
index 1180cdb..801df4a 100644
--- a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.descriptionview.tests.js
+++ b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.descriptionview.tests.js
@@ -95,8 +95,8 @@
        descriptionview.startEditing();
 
        assert.ok(
-               descriptionview.$text.find( 'input' ).length === 1,
-               'Generated input element.'
+               descriptionview.$text.find( 'textarea' ).length === 1,
+               'Generated textarea element.'
        );
 
        descriptionview.startEditing(); // should not trigger event
@@ -105,7 +105,7 @@
        descriptionview.stopEditing(); // should not trigger event
        descriptionview.startEditing();
 
-       descriptionview.$text.find( 'input' ).val( '' );
+       descriptionview.$text.find( 'textarea' ).val( '' );
 
        descriptionview.stopEditing();
 } );
@@ -121,14 +121,14 @@
                'Verified isInitialValue() returning true.'
        );
 
-       descriptionview.$text.find( 'input' ).val( 'changed' );
+       descriptionview.$text.find( 'textarea' ).val( 'changed' );
 
        assert.ok(
                !descriptionview.isInitialValue(),
                'Verified isInitialValue() returning false after changing 
value.'
        );
 
-       descriptionview.$text.find( 'input' ).val( 'test description' );
+       descriptionview.$text.find( 'textarea' ).val( 'test description' );
 
        assert.ok(
                descriptionview.isInitialValue(),
diff --git 
a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js
 
b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js
index cf32842..55546ba 100644
--- 
a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js
+++ 
b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js
@@ -91,7 +91,7 @@
                'Verified isInitialValue() returning true.'
        );
 
-       var $item = $entitytermsforlanguagelistview.data( 'listview' ).addItem( 
{
+       var $item = entitytermsforlanguagelistview.$listview.data( 'listview' 
).addItem( {
                language: 'fa',
                label: new wb.datamodel.Term( 'fa', 'fa-label' ),
                description: new wb.datamodel.Term( 'fa', 'fa-description' ),
@@ -103,7 +103,7 @@
                'Verified isInitialValue() returning false after changing 
value.'
        );
 
-       $entitytermsforlanguagelistview.data( 'listview' ).removeItem( $item );
+       entitytermsforlanguagelistview.$listview.data( 'listview' ).removeItem( 
$item );
 
        assert.ok(
                entitytermsforlanguagelistview.isInitialValue(),
diff --git 
a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
 
b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
index f54aaa1..6991629 100644
--- 
a/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
+++ 
b/lib/tests/qunit/jquery.wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
@@ -205,7 +205,7 @@
        } );
 
        addToQueue( $queue, function() {
-               entitytermsforlanguageview.$description.find( 'input' ).val( 
'changed description' );
+               entitytermsforlanguageview.$description.find( 'input, textarea' 
).val( 'changed description' );
                entitytermsforlanguageview.stopEditing();
        } );
 

-- 
To view, visit https://gerrit.wikimedia.org/r/188816
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I210ca81766b2b7e9f25e59b431a291fdc1194378
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Adrian Lang <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to