Ignore:
Timestamp:
10/13/06 18:12:32 (8 years ago)
Author:
bdakin
Message:

Patch written mostly by Ken Kraisler, but also by me.

Reviewed by Hyatt.

Fix for http://bugs.webkit.org/show_bug.cgi?id=10216 and <rdar://
problem/3391162> PDF created by printing should have live
hyperlinks

  • platform/GraphicsContext.cpp: (WebCore::GraphicsContext::focusRingBoundingRect):
  • platform/GraphicsContext.h:
  • platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::setURLForRect):
  • platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::setURLForRect): Implement method to add URL link to PDF document.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paint): Ask hasOutline() instead of querying the outline width
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintObject): Same as above.
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintLines): Call the new paintOutline() (WebCore::RenderFlow::paintOutline): Take care of focus ring and pdf url rects, and outline painting.
  • rendering/RenderFlow.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::addPDFURLRect): Declaration to apply a PDF link to a rectanglular region. (WebCore::RenderObject::paintOutline): Take care of pdf rects as well as focus ring painting.
  • rendering/RenderObject.h: (WebCore::RenderObject::hasOutlineAnnotation): Returns true is the element is a link and we are printing. (WebCore::RenderObject::hasOutline): Returns true is the style has an outline and hasOutlineAnnotation() is true.
  • rendering/RenderStyle.h: (WebCore::RenderStyle::hasOutline): Returns true if outlineWidth is greater than 0 and outlineStyle is greater than BHIDDEN.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/rendering/RenderStyle.h

    r16721 r17052  
    12501250        return background->m_outline.width; 
    12511251    } 
     1252    bool hasOutline() const { return outlineWidth() > 0 && outlineStyle() > BHIDDEN; } 
    12521253    EBorderStyle   outlineStyle() const {  return background->m_outline.style(); } 
    12531254    bool outlineStyleIsAuto() const { return background->m_outline._auto; } 
Note: See TracChangeset for help on using the changeset viewer.