jenkins-bot has submitted this change and it was merged.
Change subject: Put "re-use reference" in the toolbar "Cite" menu, and give it
an icon
......................................................................
Put "re-use reference" in the toolbar "Cite" menu, and give it an icon
Bug: 68201
Change-Id: I9fc61e498748fb086c3e506959bee2438b8cbea6
---
M VisualEditor.php
M modules/ve-mw/i18n/en.json
M modules/ve-mw/i18n/qqq.json
M modules/ve-mw/init/ve.init.mw.Target.js
M modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js
M modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
A modules/ve-mw/ui/styles/images/icons/reference-existing-ltr.svg
A modules/ve-mw/ui/styles/images/icons/reference-existing-rtl.svg
M modules/ve-mw/ui/styles/ve.ui.Icons.css
M modules/ve-mw/ui/tools/ve.ui.MWReferenceDialogTool.js
10 files changed, 57 insertions(+), 12 deletions(-)
Approvals:
Catrope: Looks good to me, approved
jenkins-bot: Verified
diff --git a/VisualEditor.php b/VisualEditor.php
index d58310f..9e1aeef 100644
--- a/VisualEditor.php
+++ b/VisualEditor.php
@@ -1079,6 +1079,7 @@
'visualeditor-dialog-reference-options-section',
'visualeditor-dialog-reference-title',
'visualeditor-dialog-reference-useexisting-label',
+ 'visualeditor-dialog-reference-useexisting-tool',
'visualeditor-dialog-referencelist-title',
'visualeditor-dialog-referencelist-insert-button',
'visualeditor-dialogbutton-reference-tooltip',
diff --git a/modules/ve-mw/i18n/en.json b/modules/ve-mw/i18n/en.json
index e2de98f..4a1b917 100644
--- a/modules/ve-mw/i18n/en.json
+++ b/modules/ve-mw/i18n/en.json
@@ -126,6 +126,7 @@
"visualeditor-dialog-reference-options-section": "Options",
"visualeditor-dialog-reference-title": "Reference",
"visualeditor-dialog-reference-useexisting-label": "Use an existing
reference",
+ "visualeditor-dialog-reference-useexisting-tool": "Re-use",
"visualeditor-dialog-referencelist-insert-button": "Insert references
list",
"visualeditor-dialog-referencelist-title": "References list",
"visualeditor-dialog-template-title": "Template",
diff --git a/modules/ve-mw/i18n/qqq.json b/modules/ve-mw/i18n/qqq.json
index 4a86215..f7c911a 100644
--- a/modules/ve-mw/i18n/qqq.json
+++ b/modules/ve-mw/i18n/qqq.json
@@ -134,6 +134,7 @@
"visualeditor-dialog-reference-options-section": "Label for the
reference options sub-section.\n{{Identical|Options}}",
"visualeditor-dialog-reference-title": "{{Identical|Reference}}",
"visualeditor-dialog-reference-useexisting-label": "Label for button in
reference dialog to insert a re-use of an existing reference",
+ "visualeditor-dialog-reference-useexisting-tool": "Used as label for
the button to let the user pick an existing reference from a list to insert a
duplicate",
"visualeditor-dialog-referencelist-insert-button": "Used as label for
the button to insert a new references list.",
"visualeditor-dialog-referencelist-title": "{{Identical|References
list}}",
"visualeditor-dialog-template-title": "{{Identical|Template}}",
diff --git a/modules/ve-mw/init/ve.init.mw.Target.js
b/modules/ve-mw/init/ve.init.mw.Target.js
index 8ae9ee5..9d87ec2 100644
--- a/modules/ve-mw/init/ve.init.mw.Target.js
+++ b/modules/ve-mw/init/ve.init.mw.Target.js
@@ -212,8 +212,8 @@
'type': 'list',
'label': OO.ui.deferMsg( 'visualeditor-toolbar-cite-label' ),
'indicator': 'down',
- 'include': [ { 'group': 'cite' }, 'reference' ],
- 'demote': [ 'reference' ]
+ 'include': [ { 'group': 'cite' }, 'reference',
'reference/existing' ],
+ 'demote': [ 'reference', 'reference/existing' ]
},
// Structure
{
diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js
b/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js
index 67aec02..467f294 100644
--- a/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js
+++ b/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js
@@ -107,8 +107,8 @@
'type': 'list',
'label': OO.ui.deferMsg( 'visualeditor-toolbar-cite-label' ),
'indicator': 'down',
- 'include': [ { 'group': 'cite' }, 'reference' ],
- 'demote': [ 'reference' ]
+ 'include': [ { 'group': 'cite' }, 'reference',
'reference/existing' ],
+ 'demote': [ 'reference', 'reference/existing' ]
},
// No structure
/* {
diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
b/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
index a37e84f..6b32b40 100644
--- a/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
+++ b/modules/ve-mw/ui/dialogs/ve.ui.MWReferenceDialog.js
@@ -55,7 +55,7 @@
{
'label': OO.ui.deferMsg( 'visualeditor-dialog-action-cancel' ),
'flags': 'safe',
- 'modes': [ 'insert', 'edit' ]
+ 'modes': [ 'insert', 'edit', 'insert-select' ]
},
{
'action': 'select',
@@ -101,7 +101,8 @@
'type': 'list',
'label': OO.ui.deferMsg( 'visualeditor-toolbar-cite-label' ),
'indicator': 'down',
- 'include': [ { 'group': 'cite-transclusion' }/*, 'reference' ],
'demote': [ 'reference' */]
+ 'include': [ { 'group': 'cite-transclusion' }/*, 'reference',
'reference/existing'*/ ]
+ /*'demote': [ 'reference', 'reference/existing' ]*/
},
// No structure
/* {
@@ -315,9 +316,14 @@
/**
* Switches dialog to use existing reference mode
+ *
+ * @param {string} [action='select'] Symbolic name of action, either 'select'
or 'insert-select'
*/
-ve.ui.MWReferenceDialog.prototype.useExistingReference = function () {
- this.actions.setMode( 'select' );
+ve.ui.MWReferenceDialog.prototype.useExistingReference = function ( action ) {
+ action = action || 'select';
+ if ( action === 'insert-select' || action === 'select' ) {
+ this.actions.setMode( action );
+ }
this.panels.setItem( this.searchPanel );
this.search.getQuery().focus().select();
};
@@ -351,8 +357,8 @@
this.actions.setMode( this.selectedNode ? 'edit' : 'insert' );
this.panels.setItem( this.editPanel );
this.editPanel.$element.find( '.ve-ce-documentNode' ).focus();
- } else if ( action === 'select' ) {
- this.useExistingReference();
+ } else if ( action === 'select' || action === 'insert-select' ) {
+ this.useExistingReference( action );
}
return ve.ui.MWReferenceDialog.super.prototype.getActionProcess.call(
this, action );
};
@@ -380,7 +386,7 @@
this.search.buildIndex(
this.getFragment().getDocument().getInternalList() );
if ( data.useExisting ) {
- this.useExistingReference();
+ this.useExistingReference( 'insert-select' );
}
// If we're using an existing reference, start off
disabled
diff --git a/modules/ve-mw/ui/styles/images/icons/reference-existing-ltr.svg
b/modules/ve-mw/ui/styles/images/icons/reference-existing-ltr.svg
new file mode 100644
index 0000000..95ac4e2
--- /dev/null
+++ b/modules/ve-mw/ui/styles/images/icons/reference-existing-ltr.svg
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24
24">
+ <g id="fore-reference" opacity=".75">
+ <path d="M16 13l-2-2-2 2v-6h-2v13h8s1 0 1-1v-12h-3v6z" fill="none"/>
+ <path d="M7 5v17h12c1 0 2-1 2-2v-15h-14zm12 14c0 1-1 1-1
1h-8v-13h2v6l2-2 2 2v-6h3v12z"/>
+ </g>
+ <g id="back-reference" opacity=".75">
+ <path d="M5 18h-.3c-1.5 0-2.7-1.2-2.7-2.7v-13.5h3v16.2zM2
1h16v2h-16z"/>
+ </g>
+</svg>
diff --git a/modules/ve-mw/ui/styles/images/icons/reference-existing-rtl.svg
b/modules/ve-mw/ui/styles/images/icons/reference-existing-rtl.svg
new file mode 100644
index 0000000..feb9d62
--- /dev/null
+++ b/modules/ve-mw/ui/styles/images/icons/reference-existing-rtl.svg
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24
24">
+ <g id="fore-reference" opacity=".75">
+ <path d="M8 13l2-2 2 2v-6h2v13h-8s-1 0-1-1v-12h3v6z" id="path3188"
fill="none"/>
+ <path d="M17 5v17h-12c-1 0-2-1-2-2v-15h14zm-12 14c0 1 1 1 1
1h8v-13h-2v6l-2-2-2 2v-6h-3v12z" id="path3190"/>
+ </g>
+ <g id="back-reference" opacity=".75">
+ <path d="M19 18h.3c1.5 0 2.7-1.2
2.7-2.7v-13.5h-3v16.2zm3-17h-16v2h16z" id="path3193"/>
+ </g>
+</svg>
diff --git a/modules/ve-mw/ui/styles/ve.ui.Icons.css
b/modules/ve-mw/ui/styles/ve.ui.Icons.css
index 13fbfe4..7494f7c 100644
--- a/modules/ve-mw/ui/styles/ve.ui.Icons.css
+++ b/modules/ve-mw/ui/styles/ve.ui.Icons.css
@@ -88,6 +88,22 @@
}
/* @noflip */
+.ve-ui-dir-block-rtl .oo-ui-icon-reference-existing,
+/* HACK */ .ve-ui-surface-dir-rtl .oo-ui-icon-reference-existing,
+/* HACK */ .oo-ui-rtl .oo-ui-icon-reference-existing {
+ /* @embed */
+ background-image: url(images/icons/reference-existing-rtl.svg);
+}
+
+/* @noflip */
+.ve-ui-dir-block-ltr .oo-ui-icon-reference-existing,
+/* HACK */ .ve-ui-surface-dir-ltr .oo-ui-icon-reference-existing,
+/* HACK */ .oo-ui-ltr .oo-ui-icon-reference-existing {
+ /* @embed */
+ background-image: url(images/icons/reference-existing-ltr.svg);
+}
+
+/* @noflip */
.ve-ui-dir-block-rtl .oo-ui-icon-references,
/* HACK */ .ve-ui-surface-dir-rtl .oo-ui-icon-references,
/* HACK */ .oo-ui-rtl .oo-ui-icon-references {
diff --git a/modules/ve-mw/ui/tools/ve.ui.MWReferenceDialogTool.js
b/modules/ve-mw/ui/tools/ve.ui.MWReferenceDialogTool.js
index fae6d5f..e6b2b07 100644
--- a/modules/ve-mw/ui/tools/ve.ui.MWReferenceDialogTool.js
+++ b/modules/ve-mw/ui/tools/ve.ui.MWReferenceDialogTool.js
@@ -45,7 +45,7 @@
ve.ui.MWUseExistingReferenceDialogTool.static.group = 'object';
ve.ui.MWUseExistingReferenceDialogTool.static.icon = 'reference-existing';
ve.ui.MWUseExistingReferenceDialogTool.static.title =
- OO.ui.deferMsg( 'visualeditor-dialog-reference-useexisting-label' );
+ OO.ui.deferMsg( 'visualeditor-dialog-reference-useexisting-tool' );
ve.ui.MWUseExistingReferenceDialogTool.static.modelClasses = [];
ve.ui.MWUseExistingReferenceDialogTool.static.commandName =
'reference/existing';
ve.ui.MWUseExistingReferenceDialogTool.static.requiresRange = true;
--
To view, visit https://gerrit.wikimedia.org/r/144058
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I9fc61e498748fb086c3e506959bee2438b8cbea6
Gerrit-PatchSet: 8
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Jforrester <[email protected]>
Gerrit-Reviewer: Catrope <[email protected]>
Gerrit-Reviewer: Esanders <[email protected]>
Gerrit-Reviewer: Jforrester <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits