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

Reply via email to