Divec has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/363521 )

Change subject: WIP: Miscellaneous support for ContentTranslation
......................................................................

WIP: Miscellaneous support for ContentTranslation

Change-Id: Ib14ab6878cffeabafe513e8416451b36c63915d8
---
M extension.json
M modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js
M modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js
3 files changed, 64 insertions(+), 26 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor 
refs/changes/21/363521/1

diff --git a/extension.json b/extension.json
index 8fa97dd..ae73e93 100644
--- a/extension.json
+++ b/extension.json
@@ -259,6 +259,26 @@
                                "mobile"
                        ]
                },
+               "ext.visualEditor.mwembed": {
+                       "dependencies": [
+                               "ext.visualEditor.mwcore",
+                               "ext.visualEditor.change",
+                               "ext.visualEditor.mwlink",
+                               "ext.visualEditor.mwformatting",
+                               "ext.visualEditor.data",
+                               "ext.visualEditor.mwtransclusion",
+                               "ext.visualEditor.mwgallery",
+                               "ext.visualEditor.mwalienextension",
+                               "ext.visualEditor.language",
+                               "ext.visualEditor.icons",
+                               "ext.visualEditor.mwimage",
+                               "ext.visualEditor.mwmeta",
+                               "ext.visualEditor.base",
+                               "ext.visualEditor.mediawiki",
+                               "ext.visualEditor.core.desktop",
+                               "ext.visualEditor.desktopArticleTarget"
+                       ]
+               },
                "ext.visualEditor.supportCheck": {
                        "scripts": "lib/ve/src/init/ve.init.SupportCheck.js",
                        "targets": [
@@ -679,6 +699,7 @@
                                
"lib/ve/src/ce/keydownhandlers/ve.ce.TableEnterKeyDownHandler.js",
                                
"lib/ve/src/ce/keydownhandlers/ve.ce.LinearTabKeyDownHandler.js",
                                
"lib/ve/src/ce/nodes/ve.ce.GeneratedContentNode.js",
+                               
"lib/ve/src/ce/nodes/ve.ce.ContentEditableNode.js",
                                "lib/ve/src/ce/nodes/ve.ce.ActiveNode.js",
                                "lib/ve/src/ce/nodes/ve.ce.AlienNode.js",
                                "lib/ve/src/ce/nodes/ve.ce.ArticleNode.js",
@@ -1045,6 +1066,14 @@
                                "mobile"
                        ]
                },
+               "ext.visualEditor.change": {
+                       "scripts": [
+                               "lib/ve/src/dm/ve.dm.Change.js"
+                       ],
+                       "dependencies": [
+                               "ext.visualEditor.core"
+                       ]
+               },
                "ext.visualEditor.core.desktop": {
                        "scripts": [
                                
"lib/ve/src/ui/contexts/ve.ui.DesktopContext.js",
diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js 
b/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js
index a93cad7..1914029 100644
--- a/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js
+++ b/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js
@@ -93,7 +93,7 @@
 
        figure = domElements[ 0 ];
        imgWrapper = findChildren( figure, [ 'a', 'span' ] )[ 0 ] || null;
-       img = imgWrapper && findChildren( imgWrapper, [ 'img' ] )[ 0 ] || null;
+       img = imgWrapper && imgWrapper.getElementsByTagName( 'img' )[ 0 ] || 
null;
        caption = findChildren( figure, [ 'figcaption' ] )[ 0 ] || null;
        classAttr = figure.getAttribute( 'class' );
        typeofAttrs = figure.getAttribute( 'typeof' ).split( ' ' );
diff --git a/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js 
b/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js
index 2020158..7d64953 100644
--- a/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js
+++ b/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js
@@ -27,41 +27,26 @@
 
 OO.inheritClass( ve.ui.MWInternalLinkContextItem, ve.ui.LinkContextItem );
 
-/* Static Properties */
+/* Static properties */
 
 ve.ui.MWInternalLinkContextItem.static.name = 'link/internal';
 
 ve.ui.MWInternalLinkContextItem.static.modelClasses = [ 
ve.dm.MWInternalLinkAnnotation ];
 
-/* Methods */
+/* Static methods */
 
-/**
- * @inheritdoc
- */
-ve.ui.MWInternalLinkContextItem.prototype.getDescription = function () {
-       return this.model.getAttribute( 'normalizedTitle' );
-};
-
-/**
- * @inheritdoc
- */
-ve.ui.MWInternalLinkContextItem.prototype.renderBody = function () {
+ve.ui.MWInternalLinkContextItem.static.getWrapper = function ( href, title, 
description, linkCache ) {
        var icon, $description,
                usePageImages = mw.config.get( 'wgVisualEditor' ).usePageImages,
                usePageDescriptions = mw.config.get( 'wgVisualEditor' 
).usePageDescriptions,
-               title = this.model.getAttribute( 'lookupTitle' ),
-               htmlDoc = 
this.context.getSurface().getModel().getDocument().getHtmlDocument(),
                $wrapper = $( '<div>' ),
                $link = $( '<a>' )
                        .addClass( 've-ui-mwInternalLinkContextItem-link' )
-                       .text( this.getDescription() )
-                       .attr( {
-                               href: ve.resolveUrl( this.model.getHref(), 
htmlDoc ),
-                               target: '_blank'
-                       } );
+                       .text( description )
+                       .attr( { href: href, target: '_blank' } );
 
        // Style based on link cache information
-       ve.init.platform.linkCache.styleElement( title, $link );
+       linkCache.styleElement( title, $link );
 
        if ( usePageImages ) {
                icon = new OO.ui.IconWidget( { icon: 'page-existing' } );
@@ -76,17 +61,15 @@
                $wrapper.addClass( 
've-ui-mwInternalLinkContextItem-withDescription' );
        }
 
-       this.$body.empty().append( $wrapper );
-
        if ( usePageImages || usePageDescriptions ) {
-               ve.init.platform.linkCache.get( title ).then( function ( 
linkData ) {
+               linkCache.get( title ).then( function ( linkData ) {
                        if ( usePageImages ) {
                                if ( linkData.imageUrl ) {
                                        icon.$element
                                                .addClass( 
've-ui-mwInternalLinkContextItem-hasImage' )
                                                .css( 'background-image', 
'url(' + linkData.imageUrl + ')' );
                                } else {
-                                       icon.setIcon( 
ve.init.platform.linkCache.constructor.static.getIconForLink( linkData ) );
+                                       icon.setIcon( 
linkCache.constructor.static.getIconForLink( linkData ) );
                                }
                        }
                        if ( usePageDescriptions && linkData.description ) {
@@ -97,6 +80,32 @@
                        }
                } );
        }
+       return $wrapper;
+};
+
+
+/* Methods */
+
+/**
+ * @inheritdoc
+ */
+ve.ui.MWInternalLinkContextItem.prototype.getDescription = function () {
+       return this.model.getAttribute( 'normalizedTitle' );
+};
+
+/**
+ * @inheritdoc
+ */
+ve.ui.MWInternalLinkContextItem.prototype.renderBody = function () {
+       this.$body.empty().append( this.constructor.static.getWrapper(
+               ve.resolveUrl(
+                       this.model.getHref(),
+                       
this.context.getSurface().getModel().getDocument().getHtmlDocument()
+               ),
+               this.model.getAttribute( 'lookupTitle' ),
+               this.getDescription(),
+               ve.init.platform.linkCache
+       ) );
 };
 
 /* Registration */

-- 
To view, visit https://gerrit.wikimedia.org/r/363521
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib14ab6878cffeabafe513e8416451b36c63915d8
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Divec <da...@troi.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to