Index: /MediaWiki/trunk/FCKeditorParser.body.php
===================================================================
--- /MediaWiki/trunk/FCKeditorParser.body.php	(revision 2441)
+++ /MediaWiki/trunk/FCKeditorParser.body.php	(revision 2442)
@@ -199,8 +199,7 @@
 					case 'html':
 						if( $wgRawHtml ) {
-							$output = $content;
-							break;
+							$output = $this->fck_wikiTag('html', $content, $params);
 						}
-						// Shouldn't happen otherwise. :)
+						break;
 					case 'nowiki':
 						$output = $this->fck_wikiTag('nowiki', $content, $params); //required by FCKeditor
Index: /MediaWiki/trunk/FCKeditorSajax.body.php
===================================================================
--- /MediaWiki/trunk/FCKeditorSajax.body.php	(revision 2441)
+++ /MediaWiki/trunk/FCKeditorSajax.body.php	(revision 2442)
@@ -38,7 +38,11 @@
 
 function wfSajaxSearchSpecialTagFCKeditor($empty) {
-	global $wgParser;
+	global $wgParser, $wgRawHtml;
 
 	$ret = "nowiki\nincludeonly\nonlyinclude\nnoinclude\ngallery\n";
+	if( $wgRawHtml )
+	{
+		$ret.="html\n";
+	}
 	foreach ($wgParser->getTags() as $h) {
 		if (!in_array($h, array("pre", "math", "ref", "references"))) {
Index: /MediaWiki/trunk/fckeditor_config.js
===================================================================
--- /MediaWiki/trunk/fckeditor_config.js	(revision 2441)
+++ /MediaWiki/trunk/fckeditor_config.js	(revision 2442)
@@ -68,4 +68,10 @@
 	height: 15px; \
 } \
+.FCK__MWHtml \
+{ \
+	background-image: url(' + FCKConfig.PluginsPath + 'mediawiki/images/icon_html.gif); \
+	width: 66px; \
+	height: 15px; \
+} \
 .FCK__MWMath \
 { \
Index: /MediaWiki/trunk/mw12/FCKeditorParser_OldPP.body.php
===================================================================
--- /MediaWiki/trunk/mw12/FCKeditorParser_OldPP.body.php	(revision 2441)
+++ /MediaWiki/trunk/mw12/FCKeditorParser_OldPP.body.php	(revision 2442)
@@ -200,8 +200,7 @@
 					case 'html':
 						if( $wgRawHtml ) {
-							$output = $content;
-							break;
+							$output = $this->fck_wikiTag('html', $content, $params);
 						}
-						// Shouldn't happen otherwise. :)
+						break;
 					case 'nowiki':
 						$output = $this->fck_wikiTag('nowiki', $content, $params); //required by FCKeditor
Index: /MediaWiki/trunk/plugins/mediawiki/dialogs/special.html
===================================================================
--- /MediaWiki/trunk/plugins/mediawiki/dialogs/special.html	(revision 2441)
+++ /MediaWiki/trunk/plugins/mediawiki/dialogs/special.html	(revision 2442)
@@ -56,4 +56,9 @@
 			sFakeClass = 'FCK__MWSpecial';
 		}
+		else if ( oFakeImage.getAttribute('_fck_mw_html') )
+		{
+			oTemplateSpan = FCK.GetRealElement( oFakeImage ) ;
+			sFakeClass = 'FCK__MWHtml';
+		}
 		else if ( oFakeImage.getAttribute('_fck_mw_nowiki') )
 		{
@@ -173,4 +178,7 @@
 		case 'includeonly':
 		sFakeClass = 'FCK__MWIncludeonly';
+		break;
+		case 'html':
+		sFakeClass = 'FCK__MWHtml';
 		break;
 		case 'onlyinclude':
Index: /MediaWiki/trunk/plugins/mediawiki/fckplugin.js
===================================================================
--- /MediaWiki/trunk/plugins/mediawiki/fckplugin.js	(revision 2441)
+++ /MediaWiki/trunk/plugins/mediawiki/fckplugin.js	(revision 2442)
@@ -556,4 +556,8 @@
 									break ;
 
+								case 'fck_mw_html' :
+									sNodeName = 'html' ;
+									break ;
+
 								case 'fck_mw_includeonly' :
 									sNodeName = 'includeonly' ;
@@ -874,4 +878,7 @@
 				if ( className == null )
 					className = 'FCK__MWNowiki' ;
+			case 'fck_mw_html' :
+				if ( className == null )
+					className = 'FCK__MWHtml' ;
 			case 'fck_mw_includeonly' :
 				if ( className == null )
@@ -957,4 +964,9 @@
 				contextMenu.AddItem( 'MW_Ref', 'Reference Properties' ) ;
 			}
+			if ( tag.getAttribute( '_fck_mw_html' ) )
+			{
+				contextMenu.AddSeparator() ;
+				contextMenu.AddItem( 'MW_Special', 'Edit HTML code' ) ;
+			}
 			if ( tag.getAttribute( '_fck_mw_math' ) )
 			{
