Henning Snater has uploaded a new change for review.

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

Change subject: Added removeError() to fingerprintgroupview and sub-components
......................................................................

Added removeError() to fingerprintgroupview and sub-components

removeError() allows clearing the error state of sub-components without 
triggering an event loop.

Change-Id: Ifc47248567f6fe7f9a98e8aad95df7338a23d97d
---
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.fingerprintgroupview.js
M lib/resources/jquery.wikibase/jquery.wikibase.fingerprintlistview.js
M lib/resources/jquery.wikibase/jquery.wikibase.fingerprintview.js
M lib/resources/jquery.wikibase/jquery.wikibase.labelview.js
6 files changed, 42 insertions(+), 6 deletions(-)


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

diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
index 4234bab..869a271 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.aliasesview.js
@@ -298,11 +298,15 @@
                        this.element.addClass( 'wb-error' );
                        this._trigger( 'toggleerror', null, [error] );
                } else {
-                       this.element.removeClass( 'wb-error' );
+                       this.removeError();
                        this._trigger( 'toggleerror' );
                }
        },
 
+       removeError: function() {
+               this.element.removeClass( 'wb-error' );
+       },
+
        /**
         * @see jQuery.ui.TemplatedWidget._setOption
         */
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
index e458b58..cb16fa7 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.descriptionview.js
@@ -266,11 +266,15 @@
                        this.element.addClass( 'wb-error' );
                        this._trigger( 'toggleerror', null, [error] );
                } else {
-                       this.element.removeClass( 'wb-error' );
+                       this.removeError();
                        this._trigger( 'toggleerror' );
                }
        },
 
+       removeError: function() {
+               this.element.removeClass( 'wb-error' );
+       },
+
        /**
         * @see jQuery.ui.TemplatedWidget._setOption
         */
diff --git 
a/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintgroupview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintgroupview.js
index 8b001f5..32b92a4 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintgroupview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintgroupview.js
@@ -237,11 +237,16 @@
                        this.element.addClass( 'wb-error' );
                        this._trigger( 'toggleerror', null, [error] );
                } else {
-                       this.element.removeClass( 'wb-error' );
+                       this.removeError();
                        this._trigger( 'toggleerror' );
                }
        },
 
+       removeError: function() {
+               this.element.removeClass( 'wb-error' );
+               this.$fingerprintlistview.data( 'fingerprintlistview' 
).removeError();
+       },
+
        /**
         * @param {Object[]} [value]
         * @return {Object[]|*}
diff --git 
a/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintlistview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintlistview.js
index 84cb898..2dec501 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintlistview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintlistview.js
@@ -311,11 +311,22 @@
                        this.element.addClass( 'wb-error' );
                        this._trigger( 'toggleerror', null, [error] );
                } else {
-                       this.element.removeClass( 'wb-error' );
+                       this.removeError();
                        this._trigger( 'toggleerror' );
                }
        },
 
+       removeError: function() {
+               this.element.removeClass( 'wb-error' );
+
+               var listview = this.element.data( 'listview' ),
+                       lia = listview.listItemAdapter();
+
+               listview.items().each( function() {
+                       lia.liInstance( $( this ) ).removeError();
+               } );
+       },
+
        /**
         * @param {Object[]} [value]
         * @return {Object[]|*}
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintview.js
index 44ad32f..202faa2 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.fingerprintview.js
@@ -442,9 +442,17 @@
                        this.element.addClass( 'wb-error' );
                        this._trigger( 'toggleerror', null, [error] );
                } else {
-                       this.element.removeClass( 'wb-error' );
+                       this.removeError();
                        this._trigger( 'toggleerror' );
                }
+       },
+
+       removeError: function() {
+               this.element.removeClass( 'wb-error' );
+
+               this.$labelview.data( 'labelview' ).removeError();
+               this.$descriptionview.data( 'descriptionview' ).removeError();
+               this.$aliasesview.data( 'aliasesview' ).removeError();
        }
 
 } );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.labelview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.labelview.js
index 6f8ee4c..0e4825f 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.labelview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.labelview.js
@@ -278,11 +278,15 @@
                        this.element.addClass( 'wb-error' );
                        this._trigger( 'toggleerror', null, [error] );
                } else {
-                       this.element.removeClass( 'wb-error' );
+                       this.removeError();
                        this._trigger( 'toggleerror' );
                }
        },
 
+       removeError: function() {
+               this.element.removeClass( 'wb-error' );
+       },
+
        /**
         * @see jQuery.ui.TemplatedWidget._setOption
         */

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ifc47248567f6fe7f9a98e8aad95df7338a23d97d
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Henning Snater <henning.sna...@wikimedia.de>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to