jenkins-bot has submitted this change and it was merged.
Change subject: Handle showHandles smartness in AlignableNode
......................................................................
Handle showHandles smartness in AlignableNode
When an alignable changes alignment, only show relevant
resize handles.
Change-Id: Ib80cde7fd28cd83dc4916affd18bae8681146e48
---
M src/ce/ve.ce.AlignableNode.js
M src/ce/ve.ce.ResizableNode.js
2 files changed, 33 insertions(+), 1 deletion(-)
Approvals:
Catrope: Looks good to me, approved
jenkins-bot: Verified
diff --git a/src/ce/ve.ce.AlignableNode.js b/src/ce/ve.ce.AlignableNode.js
index ab642f7..94af427 100644
--- a/src/ce/ve.ce.AlignableNode.js
+++ b/src/ce/ve.ce.AlignableNode.js
@@ -26,6 +26,13 @@
OO.initClass( ve.ce.AlignableNode );
+/* Events */
+
+/**
+ * @event align
+ * @param {string} align New alignment
+ */
+
/**
* Handle attribute change events
*
@@ -43,6 +50,7 @@
if ( to && cssClasses[to] ) {
this.$alignable.addClass( cssClasses[to] );
}
+ this.emit( 'align', to );
}
};
@@ -54,5 +62,6 @@
cssClasses = this.model.constructor.static.cssClasses;
if ( align && cssClasses[align] ) {
this.$alignable.addClass( cssClasses[align] );
+ this.emit( 'align', align );
}
};
diff --git a/src/ce/ve.ce.ResizableNode.js b/src/ce/ve.ce.ResizableNode.js
index d14092d..33c3856 100644
--- a/src/ce/ve.ce.ResizableNode.js
+++ b/src/ce/ve.ce.ResizableNode.js
@@ -44,7 +44,8 @@
teardown: 'onResizableTeardown',
resizing: 'onResizableResizing',
resizeEnd: 'onResizableFocus',
- rerender: 'onResizableFocus'
+ rerender: 'onResizableFocus',
+ align: 'onResizableAlign'
} );
this.model.connect( this, {
attributeChange: 'onResizableAttributeChange'
@@ -267,6 +268,28 @@
};
/**
+ * Respond to AlignableNodes changing their alignment by hiding useless resize
handles.
+ *
+ * @param {string} align Alignment
+ */
+ve.ce.ResizableNode.prototype.onResizableAlign = function ( align ) {
+ switch ( align ) {
+ case 'right':
+ this.showHandles( ['sw'] );
+ break;
+ case 'left':
+ this.showHandles( ['se'] );
+ break;
+ case 'center':
+ this.showHandles( ['sw', 'se'] );
+ break;
+ default:
+ this.showHandles();
+ break;
+ }
+};
+
+/**
* Handle teardown event.
*
* @method
--
To view, visit https://gerrit.wikimedia.org/r/187321
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Ib80cde7fd28cd83dc4916affd18bae8681146e48
Gerrit-PatchSet: 7
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>
Gerrit-Reviewer: Catrope <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits