Henning Snater has uploaded a new change for review.
https://gerrit.wikimedia.org/r/92651
Change subject: Removed unnecessary nodes from "wb-statement" template
......................................................................
Removed unnecessary nodes from "wb-statement" template
Simplifying the statement node structure by removing nodes that have no actual
use.
This allows dropping the toolbarParentSelector option for statementview "edit"
toolbar
as wells as for the references "add" toolbar.
Change-Id: I0376ed6c2f885d4b2915a6db7a297d270d6c98ce
---
M lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
M lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
M lib/resources/templates.php
M lib/resources/wikibase.css
M selenium/lib/modules/reference_module.rb
M selenium_cuc/features/support/modules/reference_module.rb
6 files changed, 29 insertions(+), 40 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase
refs/changes/51/92651/1
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
b/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
index 2b59489..abbc5cd 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
@@ -305,7 +305,7 @@
$.wikibase.toolbarcontroller.definition( 'edittoolbar', {
widgetName: 'wikibase.statementview',
events: {
- statementviewchange: function( event ) {
+ 'claimviewchange statementviewchange': function( event ) {
var $target = $( event.target ),
statementview = $target.data( 'statementview' ),
$btnSave = $target.data( 'edittoolbar'
).toolbar.editGroup.$btnSave,
@@ -342,8 +342,7 @@
},
options: {
interactionWidgetName:
$.wikibase.statementview.prototype.widgetName,
- parentWidgetFullName: 'wikibase.claimlistview',
- toolbarParentSelector: '.wb-statement-claim'
+ parentWidgetFullName: 'wikibase.claimlistview'
}
} );
diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
b/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
index 1c513c7..a94ef3b 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.statementview.js
@@ -65,7 +65,7 @@
if( this.value() ) {
var $listview = $( '<div/>' )
- .prependTo( this.$references )
+ .appendTo( this.$references )
.listview( {
listItemAdapter: new
$.wikibase.listview.ListItemAdapter( {
listItemWidget:
$.wikibase.referenceview,
@@ -114,15 +114,9 @@
}
} );
- // Forward query for listview reference.
- this.$references.data(
- 'listview',
- this.$references.children( '.wb-listview'
).data( 'listview' )
- );
-
// Collapse references if there is at least one.
- if ( this.$references.data( 'listview' ).items().length
> 0 ) {
- this.$references.css( 'display', 'none' );
+ if ( $listview.data( 'listview' ).items().length > 0 ) {
+ $listview.css( 'display', 'none' );
}
// toggle for references section:
@@ -131,7 +125,7 @@
'wikibase-statementview-referencesheading-pendingcountersubject',
refs.length
)
- ).toggler( { $subject: this.$references } );
+ ).toggler( { $subject: $listview } );
this.$refsHeading.append( $toggler );
@@ -178,7 +172,7 @@
* @param {wb.Reference} reference
*/
_addReference: function( reference ) {
- var lv = this.$references.children( '.wb-listview' ).data(
'listview' );
+ var lv = this.$references.children( ':wikibase-listview'
).data( 'listview' );
lv.addItem( reference );
},
@@ -189,15 +183,16 @@
*/
getReferences: function() {
var self = this,
+ listview = this.$references.children(
':wikibase-listview' ).data( 'listview' ),
references = [];
// If the statement is pending (not yet stored), the listview
widget for the references is
// not defined.
- if ( !this.$references.data( 'listview' ) ) {
+ if ( !listview ) {
return references;
}
- $.each( this.$references.data( 'listview' ).items(), function(
i, item ) {
+ $.each( listview.items(), function( i, item ) {
var referenceview = self._referenceviewLia.liInstance(
$( item ) );
references.push( referenceview.value() );
} );
@@ -218,7 +213,8 @@
this._removeReferenceApiCall( referenceview.value() )
.done( function( pageInfo ) {
- self.$references.data( 'listview' ).removeItem(
referenceview.element );
+ var listview = self.$references.children(
':wikibase-listview' ).data( 'listview' );
+ listview.removeItem( referenceview.element );
self._trigger( 'afterremove' );
} ).fail( function( errorCode, details ) {
var error = wb.RepoApiError.newFromApiResponse(
errorCode, details, 'remove' );
@@ -283,7 +279,7 @@
* @since 0.4
*/
drawReferencesCounter: function() {
- var listView = this.$references.data( 'listview' ),
+ var listView = this.$references.children( ':wikibase-listview'
).data( 'listview' ),
numberOfValues = listView.nonEmptyItems().length,
numberOfPendingValues = listView.items().length -
numberOfValues;
@@ -302,15 +298,14 @@
// Register toolbars:
$.wikibase.toolbarcontroller.definition( 'addtoolbar', {
id: 'references',
- selector: '.wb-statement-references-container',
+ selector: '.wb-statement-references',
eventPrefix: 'listview',
baseClass: 'wb-snaklistview-listview',
options: {
- toolbarParentSelector: '.wb-statement-references',
customAction: function( event, $parent ) {
var statementView = $parent.closest(
'.wb-statementview' ).data( 'statementview' ),
- listview = statementView.$references.data(
'listview' );
- listview.enterNewItem();
+ $listview = statementView.$references.children(
':wikibase-listview' );
+ $listview.data( 'listview' ).enterNewItem();
},
eventPrefix:
$.wikibase.statementview.prototype.widgetEventPrefix,
addButtonLabel: mw.msg( 'wikibase-addreference' )
diff --git a/lib/resources/templates.php b/lib/resources/templates.php
index 48c3d9b..2d52680 100644
--- a/lib/resources/templates.php
+++ b/lib/resources/templates.php
@@ -8,9 +8,6 @@
*
* @since 0.2
*
- * @file
- * @ingroup WikibaseLib
- *
* @licence GNU GPL v2+
* @author H. Snater <[email protected]>
*
@@ -106,18 +103,16 @@
$templates['wb-statement'] =
<<<HTML
<div class="wb-statement wb-statementview $1">
- <div class="wb-statement-claim">
- <div class="wb-claim wb-claim-$2">
- <div class="wb-claim-mainsnak" dir="auto">
- $3 <!-- wb-snak (Main Snak) -->
- </div>
- <div class="wb-claim-qualifiers
wb-statement-qualifiers">$4</div>
+ <div class="wb-claim wb-claim-$2">
+ <div class="wb-claim-mainsnak" dir="auto">
+ $3 <!-- wb-snak (Main Snak) -->
</div>
- $5
+ <div class="wb-claim-qualifiers
wb-statement-qualifiers">$4</div>
</div>
- <div class="wb-statement-references-container">
+ $5 <!-- wikibase-toolbar -->
+ <div class="wb-statement-references">
<div class="wb-statement-references-heading">$6</div>
- <div class="wb-statement-references">$7 <!-- [0,*]
wb-referenceview --></div>
+ $7 <!-- [0,*] wb-referenceview -->
</div>
</div>
HTML;
diff --git a/lib/resources/wikibase.css b/lib/resources/wikibase.css
index c79a111..0216cd2 100644
--- a/lib/resources/wikibase.css
+++ b/lib/resources/wikibase.css
@@ -735,22 +735,22 @@
padding-bottom: 1em;
}
-div.wb-statement .wb-statement-claim > .wikibase-toolbar {
+.wb-statement > .wikibase-toolbar {
display: block;
}
-div.wb-statement .wb-editsection {
+.wb-statement .wb-editsection {
top: 10px; /* even out padding */
}
/***** REFERENCES *****/
-.wb-statement-references-container {
+.wb-statement-references {
padding-left: 17em;
clear: both;
}
-.wb-statement-references-container .wb-statement-references-heading {
+.wb-statement-references .wb-statement-references-heading {
font-size: 90%;
}
diff --git a/selenium/lib/modules/reference_module.rb
b/selenium/lib/modules/reference_module.rb
index 67ceea0..d48a88f 100644
--- a/selenium/lib/modules/reference_module.rb
+++ b/selenium/lib/modules/reference_module.rb
@@ -9,7 +9,7 @@
module ReferencePage
include PageObject
# references UI elements
- div(:referenceContainer, :class => "wb-statement-references-container")
+ div(:referenceContainer, :class => "wb-statement-references")
div(:referenceHeading, :class => "wb-statement-references-heading")
link(:referenceHeadingToggleLink, :css => ".wb-statement-references-heading
a")
div(:referenceEditHeading, :css => ".wb-referenceview
.wb-referenceview-heading")
diff --git a/selenium_cuc/features/support/modules/reference_module.rb
b/selenium_cuc/features/support/modules/reference_module.rb
index f2bbdf4..84c2ad1 100644
--- a/selenium_cuc/features/support/modules/reference_module.rb
+++ b/selenium_cuc/features/support/modules/reference_module.rb
@@ -9,7 +9,7 @@
module ReferencePage
include PageObject
# references UI elements
- div(:referenceContainer, :class => "wb-statement-references-container")
+ div(:referenceContainer, :class => "wb-statement-references")
div(:referenceHeading, :class => "wb-statement-references-heading")
link(:referenceHeadingToggleLink, :css => ".wb-statement-references-heading
a")
div(:referenceEditHeading, :xpath => "//div[contains(@class,
'wb-referenceview')]/div[contains(@class, 'wb-snaklistview-heading')]")
--
To view, visit https://gerrit.wikimedia.org/r/92651
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I0376ed6c2f885d4b2915a6db7a297d270d6c98ce
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Henning Snater <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits