Native text selection UI is incorrectly suppressed in Microsoft Visio
[WebKit-https.git] / Source / WebCore / rendering / InlineElementBox.cpp
index 680cb6b..b0d6c23 100644 (file)
 #include "RenderBlock.h"
 #include "RenderBox.h"
 #include "RenderLineBreak.h"
+#include <wtf/IsoMallocInlines.h>
 
 namespace WebCore {
 
+WTF_MAKE_ISO_ALLOCATED_IMPL(InlineElementBox);
+
 void InlineElementBox::deleteLine()
 {
     if (!extracted()) {
@@ -68,20 +71,7 @@ void InlineElementBox::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffse
     if (!paintInfo.shouldPaintWithinRoot(renderer()))
         return;
 
-    if (renderer().isAnonymousInlineBlock()) {
-        // Treat painting of a special inline-block line like the painting of a normal block and go through all phases.
-        PaintPhase newPhase = (paintInfo.phase == PaintPhaseChildOutlines) ? PaintPhaseOutline : paintInfo.phase;
-        newPhase = (newPhase == PaintPhaseChildBlockBackgrounds) ? PaintPhaseChildBlockBackground : newPhase;
-        
-        PaintInfo info(paintInfo);
-        info.phase = newPhase;
-        info.updateSubtreePaintRootForChildren(&renderer());
-        ASSERT(!renderer().hasSelfPaintingLayer());
-        renderer().paint(info, paintOffset);
-        return;
-    }
-
-    if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseSelection)
+    if (paintInfo.phase != PaintPhase::Foreground && paintInfo.phase != PaintPhase::Selection)
         return;
 
     LayoutPoint childPoint = paintOffset;
@@ -92,17 +82,9 @@ void InlineElementBox::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffse
 }
 
 bool InlineElementBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit /* lineTop */, LayoutUnit /*lineBottom*/,
-    HitTestAction hitTestAction)
+    HitTestAction)
 {
-    // If we are an anonymous inline block, honor hit test phases.
-    if (renderer().isAnonymousInlineBlock()) {
-        HitTestAction childHitTest = hitTestAction;
-        if (hitTestAction == HitTestChildBlockBackgrounds)
-            childHitTest = HitTestChildBlockBackground;
-        return renderer().nodeAtPoint(request, result, locationInContainer, accumulatedOffset, childHitTest);
-    }
-
-    // Otherwise hit test all phases of replaced elements atomically, as though the replaced element established its
+    // Hit test all phases of replaced elements atomically, as though the replaced element established its
     // own stacking context.  (See Appendix E.2, section 6.4 on inline block/table elements in the CSS2.1
     // specification.)
     LayoutPoint childPoint = accumulatedOffset;