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

Side by Side Diff: third_party/WebKit/Source/platform/scroll/ScrollbarThemeMac.mm

Issue 2387053003: reflow comments in platform/{mediastream,scroll} (Closed)
Patch Set: blah Created 4 years, 2 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008, 2011 Apple Inc. All Rights Reserved. 2 * Copyright (C) 2008, 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 26 matching lines...) Expand all
37 #include "platform/mac/ScrollAnimatorMac.h" 37 #include "platform/mac/ScrollAnimatorMac.h"
38 #include "platform/scroll/ScrollbarThemeClient.h" 38 #include "platform/scroll/ScrollbarThemeClient.h"
39 #include "public/platform/WebThemeEngine.h" 39 #include "public/platform/WebThemeEngine.h"
40 #include "public/platform/Platform.h" 40 #include "public/platform/Platform.h"
41 #include "public/platform/WebRect.h" 41 #include "public/platform/WebRect.h"
42 #include "skia/ext/skia_utils_mac.h" 42 #include "skia/ext/skia_utils_mac.h"
43 #include "wtf/HashSet.h" 43 #include "wtf/HashSet.h"
44 #include "wtf/RetainPtr.h" 44 #include "wtf/RetainPtr.h"
45 #include "wtf/StdLibExtras.h" 45 #include "wtf/StdLibExtras.h"
46 46
47 // FIXME: There are repainting problems due to Aqua scroll bar buttons' visual o verflow. 47 // FIXME: There are repainting problems due to Aqua scroll bar buttons' visual
48 // overflow.
48 49
49 using namespace blink; 50 using namespace blink;
50 51
51 @interface NSColor (WebNSColorDetails) 52 @interface NSColor (WebNSColorDetails)
52 + (NSImage*)_linenPatternImage; 53 + (NSImage*)_linenPatternImage;
53 @end 54 @end
54 55
55 @interface BlinkScrollbarObserver : NSObject { 56 @interface BlinkScrollbarObserver : NSObject {
56 blink::ScrollbarThemeClient* _scrollbar; 57 blink::ScrollbarThemeClient* _scrollbar;
57 RetainPtr<ScrollbarPainter> _scrollbarPainter; 58 RetainPtr<ScrollbarPainter> _scrollbarPainter;
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 116
116 typedef HashMap<ScrollbarThemeClient*, RetainPtr<BlinkScrollbarObserver>> 117 typedef HashMap<ScrollbarThemeClient*, RetainPtr<BlinkScrollbarObserver>>
117 ScrollbarPainterMap; 118 ScrollbarPainterMap;
118 119
119 static ScrollbarPainterMap& scrollbarPainterMap() { 120 static ScrollbarPainterMap& scrollbarPainterMap() {
120 static ScrollbarPainterMap* map = new ScrollbarPainterMap; 121 static ScrollbarPainterMap* map = new ScrollbarPainterMap;
121 return *map; 122 return *map;
122 } 123 }
123 124
124 static bool supportsExpandedScrollbars() { 125 static bool supportsExpandedScrollbars() {
125 // FIXME: This is temporary until all platforms that support ScrollbarPainter support this part of the API. 126 // FIXME: This is temporary until all platforms that support ScrollbarPainter
127 // support this part of the API.
126 static bool globalSupportsExpandedScrollbars = 128 static bool globalSupportsExpandedScrollbars =
127 [NSClassFromString(@"NSScrollerImp") 129 [NSClassFromString(@"NSScrollerImp")
128 instancesRespondToSelector:@selector(setExpanded:)]; 130 instancesRespondToSelector:@selector(setExpanded:)];
129 return globalSupportsExpandedScrollbars; 131 return globalSupportsExpandedScrollbars;
130 } 132 }
131 133
132 ScrollbarTheme& ScrollbarTheme::nativeTheme() { 134 ScrollbarTheme& ScrollbarTheme::nativeTheme() {
133 DEFINE_STATIC_LOCAL(ScrollbarThemeMac, overlayTheme, ()); 135 DEFINE_STATIC_LOCAL(ScrollbarThemeMac, overlayTheme, ());
134 return overlayTheme; 136 return overlayTheme;
135 } 137 }
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 const ScrollbarThemeClient&, 241 const ScrollbarThemeClient&,
240 const PlatformMouseEvent& event) { 242 const PlatformMouseEvent& event) {
241 return event.altKey(); 243 return event.altKey();
242 } 244 }
243 245
244 int ScrollbarThemeMac::scrollbarPartToHIPressedState(ScrollbarPart part) { 246 int ScrollbarThemeMac::scrollbarPartToHIPressedState(ScrollbarPart part) {
245 switch (part) { 247 switch (part) {
246 case BackButtonStartPart: 248 case BackButtonStartPart:
247 return kThemeTopOutsideArrowPressed; 249 return kThemeTopOutsideArrowPressed;
248 case BackButtonEndPart: 250 case BackButtonEndPart:
249 return kThemeTopOutsideArrowPressed; // This does not make much sense. F or some reason the outside constant is required. 251 // This does not make much sense. For some reason the outside constant
252 // is required.
253 return kThemeTopOutsideArrowPressed;
250 case ForwardButtonStartPart: 254 case ForwardButtonStartPart:
251 return kThemeTopInsideArrowPressed; 255 return kThemeTopInsideArrowPressed;
252 case ForwardButtonEndPart: 256 case ForwardButtonEndPart:
253 return kThemeBottomOutsideArrowPressed; 257 return kThemeBottomOutsideArrowPressed;
254 case ThumbPart: 258 case ThumbPart:
255 return kThemeThumbPressed; 259 return kThemeThumbPressed;
256 default: 260 default:
257 return 0; 261 return 0;
258 } 262 }
259 } 263 }
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 [scrollbarPainter drawKnobSlotInRect:trackRect highlight:NO]; 339 [scrollbarPainter drawKnobSlotInRect:trackRect highlight:NO];
336 } 340 }
337 341
338 void ScrollbarThemeMac::paintThumb(GraphicsContext& context, 342 void ScrollbarThemeMac::paintThumb(GraphicsContext& context,
339 const Scrollbar& scrollbar, 343 const Scrollbar& scrollbar,
340 const IntRect& rect) { 344 const IntRect& rect) {
341 if (DrawingRecorder::useCachedDrawingIfPossible(context, scrollbar, 345 if (DrawingRecorder::useCachedDrawingIfPossible(context, scrollbar,
342 DisplayItem::kScrollbarThumb)) 346 DisplayItem::kScrollbarThumb))
343 return; 347 return;
344 348
345 // Expand dirty rect to allow for scroll thumb anti-aliasing in minimum thumb size case. 349 // Expand dirty rect to allow for scroll thumb anti-aliasing in minimum thumb
350 // size case.
346 IntRect dirtyRect = IntRect(rect); 351 IntRect dirtyRect = IntRect(rect);
347 dirtyRect.inflate(1); 352 dirtyRect.inflate(1);
348 DrawingRecorder recorder(context, scrollbar, DisplayItem::kScrollbarThumb, 353 DrawingRecorder recorder(context, scrollbar, DisplayItem::kScrollbarThumb,
349 dirtyRect); 354 dirtyRect);
350 355
351 GraphicsContextStateSaver stateSaver(context); 356 GraphicsContextStateSaver stateSaver(context);
352 context.translate(rect.x(), rect.y()); 357 context.translate(rect.x(), rect.y());
353 LocalCurrentGraphicsContext localContext(context, 358 LocalCurrentGraphicsContext localContext(context,
354 IntRect(IntPoint(), rect.size())); 359 IntRect(IntPoint(), rect.size()));
355 360
356 ScrollbarPainter scrollbarPainter = painterForScrollbar(scrollbar); 361 ScrollbarPainter scrollbarPainter = painterForScrollbar(scrollbar);
357 [scrollbarPainter setEnabled:scrollbar.enabled()]; 362 [scrollbarPainter setEnabled:scrollbar.enabled()];
358 [scrollbarPainter setBoundsSize:NSSizeFromCGSize(rect.size())]; 363 [scrollbarPainter setBoundsSize:NSSizeFromCGSize(rect.size())];
359 [scrollbarPainter setDoubleValue:0]; 364 [scrollbarPainter setDoubleValue:0];
360 [scrollbarPainter setKnobProportion:1]; 365 [scrollbarPainter setKnobProportion:1];
361 366
362 CGFloat oldKnobAlpha = [scrollbarPainter knobAlpha]; 367 CGFloat oldKnobAlpha = [scrollbarPainter knobAlpha];
363 [scrollbarPainter setKnobAlpha:1]; 368 [scrollbarPainter setKnobAlpha:1];
364 369
365 if (scrollbar.enabled()) 370 if (scrollbar.enabled())
366 [scrollbarPainter drawKnob]; 371 [scrollbarPainter drawKnob];
367 372
368 // If this state is not set, then moving the cursor over the scrollbar area wi ll only cause the 373 // If this state is not set, then moving the cursor over the scrollbar area
369 // scrollbar to engorge when moved over the top of the scrollbar area. 374 // will only cause the scrollbar to engorge when moved over the top of the
375 // scrollbar area.
370 [scrollbarPainter 376 [scrollbarPainter
371 setBoundsSize:NSSizeFromCGSize(scrollbar.frameRect().size())]; 377 setBoundsSize:NSSizeFromCGSize(scrollbar.frameRect().size())];
372 [scrollbarPainter setKnobAlpha:oldKnobAlpha]; 378 [scrollbarPainter setKnobAlpha:oldKnobAlpha];
373 } 379 }
374 380
375 int ScrollbarThemeMac::scrollbarThickness(ScrollbarControlSize controlSize) { 381 int ScrollbarThemeMac::scrollbarThickness(ScrollbarControlSize controlSize) {
376 NSControlSize nsControlSize = static_cast<NSControlSize>(controlSize); 382 NSControlSize nsControlSize = static_cast<NSControlSize>(controlSize);
377 ScrollbarPainter scrollbarPainter = [NSClassFromString(@"NSScrollerImp") 383 ScrollbarPainter scrollbarPainter = [NSClassFromString(@"NSScrollerImp")
378 scrollerImpWithStyle:recommendedScrollerStyle() 384 scrollerImpWithStyle:recommendedScrollerStyle()
379 controlSize:nsControlSize 385 controlSize:nsControlSize
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 } 470 }
465 471
466 // static 472 // static
467 NSScrollerStyle ScrollbarThemeMac::recommendedScrollerStyle() { 473 NSScrollerStyle ScrollbarThemeMac::recommendedScrollerStyle() {
468 if (RuntimeEnabledFeatures::overlayScrollbarsEnabled()) 474 if (RuntimeEnabledFeatures::overlayScrollbarsEnabled())
469 return NSScrollerStyleOverlay; 475 return NSScrollerStyleOverlay;
470 return gPreferredScrollerStyle; 476 return gPreferredScrollerStyle;
471 } 477 }
472 478
473 } // namespace blink 479 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698