Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(166)

Issue 544913002: Fix scrollbar rendering on Mac 10.6 impl-side painting (Closed)

Created:
6 years, 3 months ago by ccameron
Modified:
6 years, 3 months ago
Reviewers:
esprehn
CC:
blink-reviews
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Project:
blink
Visibility:
Public.

Description

Fix scrollbar rendering on Mac 10.6 impl-side painting The function ScrollbarThemeMacNonOverlayAPI::paint calls into HIThemeDrawTrack to draw the track alone, then calls into WebThemeEngineImpl::paintScrollbarThumb (a la Mac), to make the exact same HIThemeDrawTrack call, just with a thumb added. Coalesce these into a single call to HIThemeDrawTrack, which makes the thumb actually appear. The reason that the thumb wasn't appearing in the first place is that the nested gfx::SkiaBitLocker instances weren't playing nice with each other. In non-impl-side painting, the gfx::SkiaBitLocker instances would draw to the underlying canvas. With impl-side painting, they were drawn offscreen, and this evidently doesn't work (tested by passing the CGContextRef directly to the WebThemeEngineImpl::paintScrollbarThumb call rather than creating a separate gfx::SkiaBitLocker, not root-caused). So, the solution is a bit roundabout in the sense that it just side-steps the gfx::SkiaBitLocker problem, but this is better than fixing that problem and continuing to do this in the double-identical-draw-for-no-reason manner. BUG=409708 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=181499

Patch Set 1 #

Patch Set 2 : Add rebaselines #

Patch Set 3 : Rebase and drop scroll-descendant-with-cached-cliprects.html b/c already has rebaseline needed #

Unified diffs Side-by-side diffs Delta from patch set Stats (+391 lines, -32 lines) Patch
M LayoutTests/TestExpectations View 1 2 1 chunk +388 lines, -0 lines 0 comments Download
M Source/platform/scroll/ScrollbarThemeMacNonOverlayAPI.mm View 4 chunks +3 lines, -32 lines 0 comments Download

Messages

Total messages: 25 (8 generated)
ccameron
Fix for the vanishing scrollbar thumbs. After this we can murder the WebThemeEngineImpl::paintScrollbarThumb implementation, cause ...
6 years, 3 months ago (2014-09-05 01:52:11 UTC) #2
esprehn
lgtm, it's a shame we can't get a test for this, but we'll get that ...
6 years, 3 months ago (2014-09-05 02:03:13 UTC) #3
esprehn
On 2014/09/05 at 02:03:13, esprehn wrote: > lgtm, it's a shame we can't get a ...
6 years, 3 months ago (2014-09-05 02:03:45 UTC) #4
ccameron
On 2014/09/05 02:03:45, esprehn wrote: > On 2014/09/05 at 02:03:13, esprehn wrote: > > lgtm, ...
6 years, 3 months ago (2014-09-05 02:07:28 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ccameron@chromium.org/544913002/1
6 years, 3 months ago (2014-09-05 04:43:50 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: mac_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/mac_blink_rel/builds/22296)
6 years, 3 months ago (2014-09-05 06:25:09 UTC) #9
ccameron
On 2014/09/05 06:25:09, I haz the power (commit-bot) wrote: > Try jobs failed on following ...
6 years, 3 months ago (2014-09-05 17:12:16 UTC) #10
ccameron
On 2014/09/05 17:12:16, ccameron1 wrote: > On 2014/09/05 06:25:09, I haz the power (commit-bot) wrote: ...
6 years, 3 months ago (2014-09-05 17:23:40 UTC) #11
esprehn
On 2014/09/05 17:23:40, ccameron1 wrote: > On 2014/09/05 17:12:16, ccameron1 wrote: > > On 2014/09/05 ...
6 years, 3 months ago (2014-09-05 17:25:20 UTC) #12
esprehn
Looking at some diffs it looks like you shifted the gel pattern slightly in the ...
6 years, 3 months ago (2014-09-05 17:27:56 UTC) #13
ccameron
Thanks -- I pulled this up on a 10.6 machine ... and the new version ...
6 years, 3 months ago (2014-09-05 19:23:00 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ccameron@chromium.org/544913002/40001
6 years, 3 months ago (2014-09-05 21:12:28 UTC) #16
commit-bot: I haz the power
Exceeded time limit waiting for builds to trigger.
6 years, 3 months ago (2014-09-06 07:36:46 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ccameron@chromium.org/544913002/40001
6 years, 3 months ago (2014-09-06 08:59:51 UTC) #20
commit-bot: I haz the power
Exceeded time limit waiting for builds to trigger.
6 years, 3 months ago (2014-09-06 11:00:26 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ccameron@chromium.org/544913002/40001
6 years, 3 months ago (2014-09-06 16:24:12 UTC) #24
commit-bot: I haz the power
6 years, 3 months ago (2014-09-06 16:24:48 UTC) #25
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as 181499

Powered by Google App Engine
This is Rietveld 408576698