X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Ftidy%2FRemexCompatMunger.php;h=78a11045ed1d1e8dadf79d5f23103a0ae0907fac;hb=eaa34630f4d837422bfed32c492d7a4beffc6ddd;hp=7cf7bbede6c14930bec6014f9589a44904bead17;hpb=8eb6cf585c5fb3d7dd5f014bac27518959512b98;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/tidy/RemexCompatMunger.php b/includes/tidy/RemexCompatMunger.php index 7cf7bbede6..78a11045ed 100644 --- a/includes/tidy/RemexCompatMunger.php +++ b/includes/tidy/RemexCompatMunger.php @@ -28,6 +28,7 @@ class RemexCompatMunger implements TreeHandler { "button" => true, "cite" => true, "code" => true, + "del" => true, "dfn" => true, "em" => true, "font" => true, @@ -35,6 +36,7 @@ class RemexCompatMunger implements TreeHandler { "iframe" => true, "img" => true, "input" => true, + "ins" => true, "kbd" => true, "label" => true, "legend" => true, @@ -87,11 +89,19 @@ class RemexCompatMunger implements TreeHandler { 'u' => true, ]; + /** @var Serializer */ + private $serializer; + + /** @var bool */ + private $trace; + /** * @param Serializer $serializer + * @param bool $trace */ - public function __construct( Serializer $serializer ) { + public function __construct( Serializer $serializer, $trace = false ) { $this->serializer = $serializer; + $this->trace = $trace; } public function startDocument( $fragmentNamespace, $fragmentName ) { @@ -182,7 +192,9 @@ class RemexCompatMunger implements TreeHandler { } private function trace( $msg ) { - // echo "[RCM] $msg\n"; + if ( $this->trace ) { + wfDebug( "[RCM] $msg" ); + } } /** @@ -243,12 +255,11 @@ class RemexCompatMunger implements TreeHandler { ) { list( $parent, $newRef ) = $this->getParentForInsert( $preposition, $refElement ); $parentData = $parent->snData; - $parentNs = $parent->namespace; - $parentName = $parent->name; $elementName = $element->htmlName; $inline = isset( self::$onlyInlineElements[$elementName] ); $under = $preposition === TreeBuilder::UNDER; + $elementToEnd = null; if ( $under && $parentData->isPWrapper && !$inline ) { // [B/b] The element is non-inline and the parent is a p-wrapper, @@ -260,7 +271,6 @@ class RemexCompatMunger implements TreeHandler { $pElement = $parentData->childPElement; $parentData->childPElement = null; $newRef = $refElement->userData; - $this->endTag( $pElement, $sourceStart, 0 ); } elseif ( $under && $parentData->isSplittable && (bool)$parentData->ancestorPNode !== $inline ) { @@ -348,7 +358,6 @@ class RemexCompatMunger implements TreeHandler { $root = $serializer->getRootNode(); $nodes = []; $removableNodes = []; - $haveContent = false; while ( $node !== $cloneEnd ) { $nextParent = $serializer->getParentNode( $node ); if ( $nextParent === $root ) {