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

Side by Side Diff: Source/platform/scroll/ScrollbarTheme.cpp

Issue 1142283006: [SP] Always paint whole non-custom scrollbars (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Apple Inc. All Rights Reserved. 2 * Copyright (C) 2011 Apple Inc. All Rights Reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 { 54 {
55 // Create the ScrollbarControlPartMask based on the damageRect 55 // Create the ScrollbarControlPartMask based on the damageRect
56 ScrollbarControlPartMask scrollMask = NoPart; 56 ScrollbarControlPartMask scrollMask = NoPart;
57 57
58 IntRect backButtonStartPaintRect; 58 IntRect backButtonStartPaintRect;
59 IntRect backButtonEndPaintRect; 59 IntRect backButtonEndPaintRect;
60 IntRect forwardButtonStartPaintRect; 60 IntRect forwardButtonStartPaintRect;
61 IntRect forwardButtonEndPaintRect; 61 IntRect forwardButtonEndPaintRect;
62 if (hasButtons(scrollbar)) { 62 if (hasButtons(scrollbar)) {
63 backButtonStartPaintRect = backButtonRect(scrollbar, BackButtonStartPart , true); 63 backButtonStartPaintRect = backButtonRect(scrollbar, BackButtonStartPart , true);
64 if (damageRect.intersects(backButtonStartPaintRect)) 64 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(backButtonStartPaintRect))
65 scrollMask |= BackButtonStartPart; 65 scrollMask |= BackButtonStartPart;
66 backButtonEndPaintRect = backButtonRect(scrollbar, BackButtonEndPart, tr ue); 66 backButtonEndPaintRect = backButtonRect(scrollbar, BackButtonEndPart, tr ue);
67 if (damageRect.intersects(backButtonEndPaintRect)) 67 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(backButtonEndPaintRect))
68 scrollMask |= BackButtonEndPart; 68 scrollMask |= BackButtonEndPart;
69 forwardButtonStartPaintRect = forwardButtonRect(scrollbar, ForwardButton StartPart, true); 69 forwardButtonStartPaintRect = forwardButtonRect(scrollbar, ForwardButton StartPart, true);
70 if (damageRect.intersects(forwardButtonStartPaintRect)) 70 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(forwardButtonStartPaintRect))
71 scrollMask |= ForwardButtonStartPart; 71 scrollMask |= ForwardButtonStartPart;
72 forwardButtonEndPaintRect = forwardButtonRect(scrollbar, ForwardButtonEn dPart, true); 72 forwardButtonEndPaintRect = forwardButtonRect(scrollbar, ForwardButtonEn dPart, true);
73 if (damageRect.intersects(forwardButtonEndPaintRect)) 73 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(forwardButtonEndPaintRect))
74 scrollMask |= ForwardButtonEndPart; 74 scrollMask |= ForwardButtonEndPart;
75 } 75 }
76 76
77 IntRect startTrackRect; 77 IntRect startTrackRect;
78 IntRect thumbRect; 78 IntRect thumbRect;
79 IntRect endTrackRect; 79 IntRect endTrackRect;
80 IntRect trackPaintRect = trackRect(scrollbar, true); 80 IntRect trackPaintRect = trackRect(scrollbar, true);
81 if (damageRect.intersects(trackPaintRect)) 81 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.intersects( trackPaintRect))
82 scrollMask |= TrackBGPart; 82 scrollMask |= TrackBGPart;
83 bool thumbPresent = hasThumb(scrollbar); 83 bool thumbPresent = hasThumb(scrollbar);
84 if (thumbPresent) { 84 if (thumbPresent) {
85 IntRect track = trackRect(scrollbar); 85 IntRect track = trackRect(scrollbar);
86 splitTrack(scrollbar, track, startTrackRect, thumbRect, endTrackRect); 86 splitTrack(scrollbar, track, startTrackRect, thumbRect, endTrackRect);
87 if (damageRect.intersects(thumbRect)) 87 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(thumbRect))
88 scrollMask |= ThumbPart; 88 scrollMask |= ThumbPart;
89 if (damageRect.intersects(startTrackRect)) 89 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(startTrackRect))
90 scrollMask |= BackTrackPart; 90 scrollMask |= BackTrackPart;
91 if (damageRect.intersects(endTrackRect)) 91 if (RuntimeEnabledFeatures::slimmingPaintEnabled() || damageRect.interse cts(endTrackRect))
92 scrollMask |= ForwardTrackPart; 92 scrollMask |= ForwardTrackPart;
93 } 93 }
94 94
95 // Paint the scrollbar background (only used by custom CSS scrollbars). 95 // Paint the scrollbar background (only used by custom CSS scrollbars).
96 paintScrollbarBackground(graphicsContext, scrollbar); 96 paintScrollbarBackground(graphicsContext, scrollbar);
97 97
98 // Paint the back and forward buttons. 98 // Paint the back and forward buttons.
99 if (scrollMask & BackButtonStartPart) 99 if (scrollMask & BackButtonStartPart)
100 paintButton(graphicsContext, scrollbar, backButtonStartPaintRect, BackBu ttonStartPart); 100 paintButton(graphicsContext, scrollbar, backButtonStartPaintRect, BackBu ttonStartPart);
101 if (scrollMask & BackButtonEndPart) 101 if (scrollMask & BackButtonEndPart)
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
367 return DisplayItem::ScrollbarBackTrack; 367 return DisplayItem::ScrollbarBackTrack;
368 case ForwardTrackPart: 368 case ForwardTrackPart:
369 return DisplayItem::ScrollbarForwardTrack; 369 return DisplayItem::ScrollbarForwardTrack;
370 default: 370 default:
371 ASSERT_NOT_REACHED(); 371 ASSERT_NOT_REACHED();
372 return DisplayItem::ScrollbarBackTrack; 372 return DisplayItem::ScrollbarBackTrack;
373 } 373 }
374 } 374 }
375 375
376 } // namespace blink 376 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698