Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
| 3 * 1999 Lars Knoll <knoll@kde.org> | 3 * 1999 Lars Knoll <knoll@kde.org> |
| 4 * 1999 Antti Koivisto <koivisto@kde.org> | 4 * 1999 Antti Koivisto <koivisto@kde.org> |
| 5 * 2000 Dirk Mueller <mueller@kde.org> | 5 * 2000 Dirk Mueller <mueller@kde.org> |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
| 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 9 * Copyright (C) 2009 Google Inc. All rights reserved. | 9 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 10 * | 10 * |
| (...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 334 m_verticalScrollbar->styleChanged(); | 334 m_verticalScrollbar->styleChanged(); |
| 335 didStyleChange = true; | 335 didStyleChange = true; |
| 336 } | 336 } |
| 337 if (didStyleChange) { | 337 if (didStyleChange) { |
| 338 updateScrollbarGeometry(); | 338 updateScrollbarGeometry(); |
| 339 updateScrollCorner(); | 339 updateScrollCorner(); |
| 340 positionScrollbarLayers(); | 340 positionScrollbarLayers(); |
| 341 } | 341 } |
| 342 } | 342 } |
| 343 | 343 |
| 344 void FrameView::invalidateAllCustomScrollbarsOnActiveChanged() | |
| 345 { | |
| 346 const ChildrenWidgetSet* viewChildren = children(); | |
| 347 bool didStyleChange = false; | |
| 348 for (const RefPtrWillBeMember<Widget>& child : *viewChildren) { | |
| 349 Widget* widget = child.get(); | |
| 350 if (widget->isFrameView()) { | |
| 351 toFrameView(widget)->recalculateCustomScrollbarStyle(); | |
| 352 if (toFrameView(widget)->hasCustomScrollbars()) | |
|
rune
2014/12/10 08:29:32
hasCustomScrollbars() is traversing the whole widg
MuVen
2014/12/10 08:44:33
yes this is much simpler, I have verified all the
| |
| 353 toFrameView(widget)->invalidateAllCustomScrollbarsOnActiveChange d(); | |
| 354 } else if (widget->isScrollbar() && toScrollbar(widget)->isCustomScrollb ar()) { | |
| 355 toScrollbar(widget)->styleChanged(); | |
| 356 didStyleChange = true; | |
| 357 } | |
| 358 } | |
| 359 if (didStyleChange) { | |
| 360 updateScrollbarGeometry(); | |
| 361 updateScrollCorner(); | |
| 362 positionScrollbarLayers(); | |
| 363 } | |
| 364 } | |
| 365 | |
| 344 void FrameView::recalculateScrollbarOverlayStyle() | 366 void FrameView::recalculateScrollbarOverlayStyle() |
| 345 { | 367 { |
| 346 ScrollbarOverlayStyle oldOverlayStyle = scrollbarOverlayStyle(); | 368 ScrollbarOverlayStyle oldOverlayStyle = scrollbarOverlayStyle(); |
| 347 ScrollbarOverlayStyle overlayStyle = ScrollbarOverlayStyleDefault; | 369 ScrollbarOverlayStyle overlayStyle = ScrollbarOverlayStyleDefault; |
| 348 | 370 |
| 349 Color backgroundColor = documentBackgroundColor(); | 371 Color backgroundColor = documentBackgroundColor(); |
| 350 // Reduce the background color from RGB to a lightness value | 372 // Reduce the background color from RGB to a lightness value |
| 351 // and determine which scrollbar style to use based on a lightness | 373 // and determine which scrollbar style to use based on a lightness |
| 352 // heuristic. | 374 // heuristic. |
| 353 double hue, saturation, lightness; | 375 double hue, saturation, lightness; |
| (...skipping 3602 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3956 return; | 3978 return; |
| 3957 | 3979 |
| 3958 ScrollableArea::setScrollOrigin(origin); | 3980 ScrollableArea::setScrollOrigin(origin); |
| 3959 | 3981 |
| 3960 // Update if the scroll origin changes, since our position will be different if the content size did not change. | 3982 // Update if the scroll origin changes, since our position will be different if the content size did not change. |
| 3961 if (updatePositionAtAll && updatePositionSynchronously) | 3983 if (updatePositionAtAll && updatePositionSynchronously) |
| 3962 updateScrollbars(scrollOffsetDouble()); | 3984 updateScrollbars(scrollOffsetDouble()); |
| 3963 } | 3985 } |
| 3964 | 3986 |
| 3965 } // namespace blink | 3987 } // namespace blink |
| OLD | NEW |