Summary: | [BlackBerry] Use GraphicsContext::fillPath() and strokePath instead of drawPath() in RenderThemeBlackBerry | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Leo Yang <leo.yang> | ||||||
Component: | WebKit BlackBerry | Assignee: | Leo Yang <leo.yang> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | charles.wei, robin.webkit, rwlbuis, staikos, tonikitoo, webkit.review.bot, zimmermann | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Bug Depends on: | |||||||||
Bug Blocks: | 73144 | ||||||||
Attachments: |
|
Description
Leo Yang
2012-03-18 20:52:53 PDT
Created attachment 132537 [details]
Patch
Comment on attachment 132537 [details]
Patch
We should work on getting rid of using drawPath, it can be replaced by using fillPath/strokePath. This means RenderThemeBlackBerry has to be adapted to use those instead.
(In reply to comment #2) > (From update of attachment 132537 [details]) > We should work on getting rid of using drawPath, it can be replaced by using fillPath/strokePath. This means RenderThemeBlackBerry has to be adapted to use those instead. If we replace drawPath with fillPath and strokePath, there is some overhead: 826 if (paintingDisabled()) 827 return; 828 829 SkPath path = *pathToFill.platformPath(); 830 if (!isPathSkiaSafe(getCTM(), path)) 831 return; 832 833 const GraphicsContextState& state = m_state; 834 path.setFillType(state.fillRule == RULE_EVENODD ? 835 SkPath::kEvenOdd_FillType : SkPath::kWinding_FillType); This block of code will be unnecessarily called twice. (In reply to comment #3) > (In reply to comment #2) > > (From update of attachment 132537 [details] [details]) > > We should work on getting rid of using drawPath, it can be replaced by using fillPath/strokePath. This means RenderThemeBlackBerry has to be adapted to use those instead. > > If we replace drawPath with fillPath and strokePath, there is some overhead: > > 826 if (paintingDisabled()) > 827 return; > 828 > 829 SkPath path = *pathToFill.platformPath(); > 830 if (!isPathSkiaSafe(getCTM(), path)) > 831 return; > 832 > 833 const GraphicsContextState& state = m_state; > 834 path.setFillType(state.fillRule == RULE_EVENODD ? > 835 SkPath::kEvenOdd_FillType : SkPath::kWinding_FillType); > > This block of code will be unnecessarily called twice. @rob: what do you think? I can move drawPath implementation to a separated new file or RenderThemeBlackBerry if you agree. Change bug title Created attachment 134985 [details]
Patch v2
Substituting drawPath() by fillPath() and strokePath()
Comment on attachment 134985 [details]
Patch v2
Looks fine.
Thanks for your review. Comment on attachment 134985 [details] Patch v2 Clearing flags on attachment: 134985 Committed r112814: <http://trac.webkit.org/changeset/112814> All reviewed patches have been landed. Closing bug. |