Marcoil has uploaded a new change for review.
https://gerrit.wikimedia.org/r/207487
Change subject: WIP: T86782: Horrible hack to make the new Cite CSS appear in VE
......................................................................
WIP: T86782: Horrible hack to make the new Cite CSS appear in VE
This is just a temporary (and bad) hack to test the new Cite CSS
in VE. It changes VE's handling of <ref>s and <references> to
produce the HTML the new CSS applies to, but it also breaks
editing, moving the cursor and possibly the space-time continuum.
Use only for testing!
Change-Id: I7c5838f592a1903396196e1cbe2d29ae5112d0fa
---
M modules/ve-mw/ce/nodes/ve.ce.MWReferenceNode.js
M modules/ve-mw/ce/nodes/ve.ce.MWReferencesListNode.js
M modules/ve-mw/dm/nodes/ve.dm.MWReferenceNode.js
3 files changed, 24 insertions(+), 10 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor
refs/changes/87/207487/1
diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWReferenceNode.js
b/modules/ve-mw/ce/nodes/ve.ce.MWReferenceNode.js
index 6812672..e1826bd 100644
--- a/modules/ve-mw/ce/nodes/ve.ce.MWReferenceNode.js
+++ b/modules/ve-mw/ce/nodes/ve.ce.MWReferenceNode.js
@@ -24,8 +24,10 @@
ve.ce.FocusableNode.call( this );
// DOM changes
- this.$link = $( '<a>' ).attr( 'href', '#' );
- this.$element.addClass( 've-ce-mwReferenceNode reference' ).append(
this.$link );
+ this.$link = $( '<a>' ).attr( 'href', '#' )
+ .attr('style',
model.element.originalDomElements[0].children[0].getAttribute('style'))
+ .attr('data-mw-group',
model.element.originalDomElements[0].children[0].getAttribute('data-mw-group'));
+ this.$element.addClass( 've-ce-mwReferenceNode' ).append( this.$link );
this.index = '';
this.internalList = this.model.getDocument().internalList;
@@ -96,7 +98,10 @@
* @method
*/
ve.ce.MWReferenceNode.prototype.update = function () {
- this.$link.text( this.model.getIndexLabel() );
+ var linkText = $( '<span>' )
+ .addClass( 'mw-reflink-text' )
+ .text( this.model.getIndexLabel() );
+ this.$link.append( linkText );
};
/** */
diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWReferencesListNode.js
b/modules/ve-mw/ce/nodes/ve.ce.MWReferencesListNode.js
index b2f4b487..bb4dcc4 100644
--- a/modules/ve-mw/ce/nodes/ve.ce.MWReferencesListNode.js
+++ b/modules/ve-mw/ce/nodes/ve.ce.MWReferencesListNode.js
@@ -29,7 +29,7 @@
// DOM changes
this.$element.addClass( 've-ce-mwReferencesListNode references' );
- this.$reflist = $( '<ol class="references"></ol>' );
+ this.$reflist = $( '<ol class="mw-references"></ol>' );
this.$refmsg = $( '<p>' )
.addClass( 've-ce-mwReferencesListNode-muted' );
@@ -184,13 +184,19 @@
$li = $( '<li>' );
if ( keyedNodes.length > 1 ) {
+ var $linkback = $( '<span>' ).attr( 'rel',
'mw:referencedBy');
for ( j = 0, jLen = keyedNodes.length; j <
jLen; j++ ) {
- $li.append(
- $( '<sup>' ).append(
- $( '<a>' ).text( ( i +
1 ) + '.' + j )
- )
+ $linkback.append(
+ $( '<a>' ).append(
+ $( 'span' ).addClass(
'mw-linkback-text' )
+ .text( ( i + 1
) + '.' + j ))
).append( ' ' );
}
+ $li.append( $linkback );
+ } else {
+ $li.append(
+ $( '<a>').addClass( 'mw:referencedBy'
).append(
+ $( '<span>').addClass(
'mw-linkback-text' ).text( '^' )));
}
// Generate reference HTML from first item in key
@@ -209,7 +215,7 @@
}
$li.append(
$( '<span>' )
- .addClass( 'reference-text' )
+ .addClass( 'mw-reference-text' )
.append( viewNode.$element )
);
// HACK: See bug 62682 - We happen to know that
destroy doesn't abort async
diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWReferenceNode.js
b/modules/ve-mw/dm/nodes/ve.dm.MWReferenceNode.js
index e7de412..2dd680e 100644
--- a/modules/ve-mw/dm/nodes/ve.dm.MWReferenceNode.js
+++ b/modules/ve-mw/dm/nodes/ve.dm.MWReferenceNode.js
@@ -74,7 +74,10 @@
autoKeyed = !mwData.attrs || mwData.attrs.name === undefined,
listKey = autoKeyed ?
'auto/' + converter.internalList.getNextUniqueNumber() :
- 'literal/' + mwData.attrs.name,
+ 'literal/' +
+ // Encode the name as PHP does so that "a & b" is the
same as
+ // "a & b"
+
encodeURIComponent($("<div/>").html(mwData.attrs.name).text().replace(/\s/g,
'_')).replace(/%/g, "."),
queueResult = converter.internalList.queueItemHtml( listGroup,
listKey, body ),
listIndex = queueResult.index,
contentsUsed = ( body !== '' && queueResult.isNew );
--
To view, visit https://gerrit.wikimedia.org/r/207487
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I7c5838f592a1903396196e1cbe2d29ae5112d0fa
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Marcoil <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits