jenkins-bot has submitted this change and it was merged.
Change subject: Filter events when moving $.wikibase.*view objects
......................................................................
Filter events when moving $.wikibase.*view objects
Change-Id: I99592c8d1335d10744120153460af24b7fd41670
(cherry picked from commit 40a869ee4b92d2f255628808bb2a63979902bc16)
---
M lib/resources/jquery.wikibase/jquery.wikibase.claimgrouplistview.js
M lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
M lib/resources/jquery.wikibase/jquery.wikibase.referenceview.js
3 files changed, 33 insertions(+), 7 deletions(-)
Approvals:
Aude: Looks good to me, approved
jenkins-bot: Verified
diff --git
a/lib/resources/jquery.wikibase/jquery.wikibase.claimgrouplistview.js
b/lib/resources/jquery.wikibase/jquery.wikibase.claimgrouplistview.js
index 9071908..937643d 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.claimgrouplistview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.claimgrouplistview.js
@@ -479,6 +479,8 @@
}
}
+ // Stop repeatedly triggering the event on the moved
DOM node:
+ event.stopImmediatePropagation();
}
}
} );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
b/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
index 01a6a9a..ad860ab 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.claimview.js
@@ -931,9 +931,17 @@
},
'movetoolbarup movetoolbardown': function( event ) {
var $snakview = $( event.target ),
- snak = $snakview.data( 'wikibaseSnakview'
).snak(),
- $snaklistview = $snakview.closest(
':wikibase-snaklistview' ),
- snaklistview = $snaklistview.data(
'snaklistview' ),
+ $snaklistview = $snakview.closest(
':wikibase-snaklistview' );
+
+ if( !$snaklistview.length ) {
+ // Unrelated "move" action.
+ return;
+ }
+
+ var snaklistview = $snaklistview.data( 'snaklistview' ),
+ snaklistviewListview =
snaklistview.$listview.data( 'listview' ),
+ snaklistviewListviewLia =
snaklistviewListview.listItemAdapter(),
+ snak = snaklistviewListviewLia.liInstance(
$snakview ).snak(),
snakList = snaklistview.value(),
$listview = $snaklistview.closest(
':wikibase-listview' ),
listview = $listview.data( 'listview' ),
@@ -970,6 +978,11 @@
return;
} else {
listview = $target.data( 'listview' );
+ }
+
+ if( !listview ) {
+ // Unrelated "move" action.
+ return;
}
var listviewItems = listview.items();
@@ -1010,6 +1023,9 @@
}
} );
} );
+
+ // Stop repeatedly triggering the event on the moved
DOM node:
+ event.stopImmediatePropagation();
}
}
} );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.referenceview.js
b/lib/resources/jquery.wikibase/jquery.wikibase.referenceview.js
index 8c564a3..cb4525c 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.referenceview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.referenceview.js
@@ -776,15 +776,15 @@
},
'movetoolbarup movetoolbardown': function( event ) {
var $snakview = $( event.target ),
- $snaklistview = $snakview.closest(
':wikibase-snaklistview' );
+ $snaklistview = $snakview.closest(
':wikibase-snaklistview' ),
+ $referenceview = $snaklistview.closest(
':wikibase-referenceview' );
- if( !$snaklistview.length ) {
+ if( !$referenceview.length ) {
// Event belongs to another movetoolbar.
return;
}
- var $referenceview = $snaklistview.closest(
':wikibase-referenceview' ),
- referenceview = $referenceview.data(
'referenceview' ),
+ var referenceview = $referenceview.data(
'referenceview' ),
snaklistview =
referenceview.options.listItemAdapter.liInstance( $snaklistview ),
snakview =
snaklistview._listview.listItemAdapter().liInstance( $snakview ),
snak = snakview.snak(),
@@ -811,6 +811,11 @@
var referenceview = ( event.type.indexOf(
'referenceview' ) === 0 )
? $target.data( 'referenceview' )
: $target.closest( ':wikibase-referenceview'
).data( 'referenceview' );
+
+ if( !referenceview ) {
+ // Unrelated "move" action.
+ return;
+ }
var referenceviewLia =
referenceview.options.listItemAdapter,
$snaklistviews = referenceview.items();
@@ -856,6 +861,9 @@
}
} );
} );
+
+ // Stop repeatedly triggering the event on the moved
DOM node:
+ event.stopImmediatePropagation();
}
}
} );
--
To view, visit https://gerrit.wikimedia.org/r/99351
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I99592c8d1335d10744120153460af24b7fd41670
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: mw1.23-wmf6
Gerrit-Owner: Aude <[email protected]>
Gerrit-Reviewer: Aude <[email protected]>
Gerrit-Reviewer: Henning Snater <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits