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

Side by Side Diff: third_party/WebKit/Source/core/frame/FrameView.cpp

Issue 1564863002: Get rid of AXScrollView and AXScrollbar (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@dump_oopif_3
Patch Set: Fix Android expectation Created 4 years, 11 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) 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 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
238 for (Frame* child = m_frame->tree().firstChild(); child; child = child->tree ().nextSibling()) { 238 for (Frame* child = m_frame->tree().firstChild(); child; child = child->tree ().nextSibling()) {
239 if (!child->isLocalFrame()) 239 if (!child->isLocalFrame())
240 continue; 240 continue;
241 if (FrameView* childView = toLocalFrame(child)->view()) 241 if (FrameView* childView = toLocalFrame(child)->view())
242 childView->forAllNonThrottledFrameViews(function); 242 childView->forAllNonThrottledFrameViews(function);
243 } 243 }
244 } 244 }
245 245
246 void FrameView::removeFromAXObjectCache() 246 void FrameView::removeFromAXObjectCache()
247 { 247 {
248 if (AXObjectCache* cache = axObjectCache()) { 248 if (AXObjectCache* cache = axObjectCache())
249 cache->remove(this);
250 cache->childrenChanged(m_frame->pagePopupOwner()); 249 cache->childrenChanged(m_frame->pagePopupOwner());
251 }
252 } 250 }
253 251
254 void FrameView::init() 252 void FrameView::init()
255 { 253 {
256 reset(); 254 reset();
257 255
258 m_size = LayoutSize(); 256 m_size = LayoutSize();
259 257
260 // Propagate the marginwidth/height and scrolling modes to the view. 258 // Propagate the marginwidth/height and scrolling modes to the view.
261 if (m_frame->owner() && m_frame->owner()->scrollingMode() == ScrollbarAlways Off) 259 if (m_frame->owner() && m_frame->owner()->scrollingMode() == ScrollbarAlways Off)
(...skipping 2730 matching lines...) Expand 10 before | Expand all | Expand 10 after
2992 if (document->isActive()) 2990 if (document->isActive())
2993 document->notifyResizeForViewportUnits(); 2991 document->notifyResizeForViewportUnits();
2994 } 2992 }
2995 2993
2996 contentsResized(); 2994 contentsResized();
2997 } 2995 }
2998 2996
2999 void FrameView::didAddScrollbar(Scrollbar& scrollbar, ScrollbarOrientation orien tation) 2997 void FrameView::didAddScrollbar(Scrollbar& scrollbar, ScrollbarOrientation orien tation)
3000 { 2998 {
3001 ScrollableArea::didAddScrollbar(scrollbar, orientation); 2999 ScrollableArea::didAddScrollbar(scrollbar, orientation);
3002 if (AXObjectCache* cache = axObjectCache())
3003 cache->handleScrollbarUpdate(this);
3004 } 3000 }
3005 3001
3006 void FrameView::setTopControlsViewportAdjustment(float adjustment) 3002 void FrameView::setTopControlsViewportAdjustment(float adjustment)
3007 { 3003 {
3008 m_topControlsViewportAdjustment = adjustment; 3004 m_topControlsViewportAdjustment = adjustment;
3009 } 3005 }
3010 3006
3011 IntPoint FrameView::maximumScrollPosition() const 3007 IntPoint FrameView::maximumScrollPosition() const
3012 { 3008 {
3013 // Make the same calculation as in CC's LayerImpl::MaxScrollOffset() 3009 // Make the same calculation as in CC's LayerImpl::MaxScrollOffset()
(...skipping 17 matching lines...) Expand all
3031 if (hasBar == !!m_horizontalScrollbar) 3027 if (hasBar == !!m_horizontalScrollbar)
3032 return; 3028 return;
3033 3029
3034 if (hasBar) { 3030 if (hasBar) {
3035 m_horizontalScrollbar = createScrollbar(HorizontalScrollbar); 3031 m_horizontalScrollbar = createScrollbar(HorizontalScrollbar);
3036 addChild(m_horizontalScrollbar.get()); 3032 addChild(m_horizontalScrollbar.get());
3037 didAddScrollbar(*m_horizontalScrollbar, HorizontalScrollbar); 3033 didAddScrollbar(*m_horizontalScrollbar, HorizontalScrollbar);
3038 m_horizontalScrollbar->styleChanged(); 3034 m_horizontalScrollbar->styleChanged();
3039 } else { 3035 } else {
3040 willRemoveScrollbar(*m_horizontalScrollbar, HorizontalScrollbar); 3036 willRemoveScrollbar(*m_horizontalScrollbar, HorizontalScrollbar);
3041 if (AXObjectCache* cache = axObjectCache())
3042 cache->remove(m_horizontalScrollbar.get());
3043 // If the scrollbar has been marked as overlapping the window resizer, 3037 // If the scrollbar has been marked as overlapping the window resizer,
3044 // then its removal should reduce the count. 3038 // then its removal should reduce the count.
3045 if (m_horizontalScrollbar->overlapsResizer()) 3039 if (m_horizontalScrollbar->overlapsResizer())
3046 adjustScrollbarsAvoidingResizerCount(-1); 3040 adjustScrollbarsAvoidingResizerCount(-1);
3047 removeChild(m_horizontalScrollbar.get()); 3041 removeChild(m_horizontalScrollbar.get());
3048 m_horizontalScrollbar->disconnectFromScrollableArea(); 3042 m_horizontalScrollbar->disconnectFromScrollableArea();
3049 m_horizontalScrollbar = nullptr; 3043 m_horizontalScrollbar = nullptr;
3050 if (AXObjectCache* cache = axObjectCache())
3051 cache->handleScrollbarUpdate(this);
3052 } 3044 }
3053 3045
3054 setScrollCornerNeedsPaintInvalidation(); 3046 setScrollCornerNeedsPaintInvalidation();
3055 } 3047 }
3056 3048
3057 void FrameView::setHasVerticalScrollbar(bool hasBar) 3049 void FrameView::setHasVerticalScrollbar(bool hasBar)
3058 { 3050 {
3059 if (hasBar == !!m_verticalScrollbar) 3051 if (hasBar == !!m_verticalScrollbar)
3060 return; 3052 return;
3061 3053
3062 if (hasBar) { 3054 if (hasBar) {
3063 m_verticalScrollbar = createScrollbar(VerticalScrollbar); 3055 m_verticalScrollbar = createScrollbar(VerticalScrollbar);
3064 addChild(m_verticalScrollbar.get()); 3056 addChild(m_verticalScrollbar.get());
3065 didAddScrollbar(*m_verticalScrollbar, VerticalScrollbar); 3057 didAddScrollbar(*m_verticalScrollbar, VerticalScrollbar);
3066 m_verticalScrollbar->styleChanged(); 3058 m_verticalScrollbar->styleChanged();
3067 } else { 3059 } else {
3068 willRemoveScrollbar(*m_verticalScrollbar, VerticalScrollbar); 3060 willRemoveScrollbar(*m_verticalScrollbar, VerticalScrollbar);
3069 if (AXObjectCache* cache = axObjectCache())
3070 cache->remove(m_verticalScrollbar.get());
3071 // If the scrollbar has been marked as overlapping the window resizer, 3061 // If the scrollbar has been marked as overlapping the window resizer,
3072 // then its removal should reduce the count. 3062 // then its removal should reduce the count.
3073 if (m_verticalScrollbar->overlapsResizer()) 3063 if (m_verticalScrollbar->overlapsResizer())
3074 adjustScrollbarsAvoidingResizerCount(-1); 3064 adjustScrollbarsAvoidingResizerCount(-1);
3075 removeChild(m_verticalScrollbar.get()); 3065 removeChild(m_verticalScrollbar.get());
3076 m_verticalScrollbar->disconnectFromScrollableArea(); 3066 m_verticalScrollbar->disconnectFromScrollableArea();
3077 m_verticalScrollbar = nullptr; 3067 m_verticalScrollbar = nullptr;
3078 if (AXObjectCache* cache = axObjectCache())
3079 cache->handleScrollbarUpdate(this);
3080 } 3068 }
3081 3069
3082 setScrollCornerNeedsPaintInvalidation(); 3070 setScrollCornerNeedsPaintInvalidation();
3083 } 3071 }
3084 3072
3085 void FrameView::setScrollbarModes(ScrollbarMode horizontalMode, ScrollbarMode ve rticalMode, 3073 void FrameView::setScrollbarModes(ScrollbarMode horizontalMode, ScrollbarMode ve rticalMode,
3086 bool horizontalLock, bool verticalLock) 3074 bool horizontalLock, bool verticalLock)
3087 { 3075 {
3088 bool needsUpdate = false; 3076 bool needsUpdate = false;
3089 3077
(...skipping 942 matching lines...) Expand 10 before | Expand all | Expand 10 after
4032 return m_hiddenForThrottling && m_crossOriginForThrottling; 4020 return m_hiddenForThrottling && m_crossOriginForThrottling;
4033 } 4021 }
4034 4022
4035 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const 4023 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const
4036 { 4024 {
4037 ASSERT(layoutView()); 4025 ASSERT(layoutView());
4038 return *layoutView(); 4026 return *layoutView();
4039 } 4027 }
4040 4028
4041 } // namespace blink 4029 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/dom/AXObjectCache.h ('k') | third_party/WebKit/Source/modules/accessibility/AXLayoutObject.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698