jenkins-bot has submitted this change and it was merged.
Change subject: Make dm.Surface's 'select' event more useful
......................................................................
Make dm.Surface's 'select' event more useful
It was previously emitted before the selection was updated and with the
old selection as a parameter. Instead, emit it afterwards, and make sure
it's emitted even if the selection changes because it was translated
for a transaction.
Also correct its event documentation, which seems to have been copied
from a UI class somewhere.
Change-Id: I521eff0095959572587c0ecffd24dbf322e12d82
---
M modules/ve/dm/ve.dm.Surface.js
1 file changed, 7 insertions(+), 9 deletions(-)
Approvals:
Krinkle: Looks good to me, but someone else must approve
Divec: Looks good to me, approved
jenkins-bot: Verified
diff --git a/modules/ve/dm/ve.dm.Surface.js b/modules/ve/dm/ve.dm.Surface.js
index df37eea..a10ea0b 100644
--- a/modules/ve/dm/ve.dm.Surface.js
+++ b/modules/ve/dm/ve.dm.Surface.js
@@ -47,7 +47,7 @@
/**
* @event select
- * @param {ve.ui.MenuItemWidget} item Menu item
+ * @param {ve.Range} selection
*/
/**
@@ -315,7 +315,7 @@
}
var i, len, left, right, leftAnnotations, rightAnnotations,
insertionAnnotations,
selectedNodes = {},
- selectionChange = false,
+ oldSelection = this.selection,
contextChange = false,
dataModelData = this.documentModel.data;
@@ -342,10 +342,6 @@
}
if ( selection ) {
- // Detect if selection range changed
- if ( !this.selection || !this.selection.equals( selection ) ) {
- selectionChange = true;
- }
// Detect if selected nodes changed
selectedNodes.start = this.documentModel.getNodeFromOffset(
selection.start );
if ( selection.getLength() ) {
@@ -358,12 +354,14 @@
contextChange = true;
}
this.selectedNodes = selectedNodes;
- if ( selectionChange ) {
- this.emit( 'select', this.selection.clone() );
- }
this.selection = selection;
}
+ // Emit select event if selection range changed
+ if ( !oldSelection || !oldSelection.equals( this.selection ) ) {
+ this.emit( 'select', this.selection.clone() );
+ }
+
// Only emit a transact event if transactions were actually processed
if ( transactions ) {
this.emit( 'transact', transactions );
--
To view, visit https://gerrit.wikimedia.org/r/88419
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I521eff0095959572587c0ecffd24dbf322e12d82
Gerrit-PatchSet: 8
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Catrope <[email protected]>
Gerrit-Reviewer: Catrope <[email protected]>
Gerrit-Reviewer: Divec <[email protected]>
Gerrit-Reviewer: Esanders <[email protected]>
Gerrit-Reviewer: Krinkle <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits