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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutView.cpp

Issue 2066603005: Check DisplayItemCient aliveness in cached subsequences (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Check DisplayItemCient aliveness in cached subsequences Created 4 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed. 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 943 matching lines...) Expand 10 before | Expand all | Expand 10 after
954 if (!m_compositor) 954 if (!m_compositor)
955 m_compositor = adoptPtr(new PaintLayerCompositor(*this)); 955 m_compositor = adoptPtr(new PaintLayerCompositor(*this));
956 956
957 return m_compositor.get(); 957 return m_compositor.get();
958 } 958 }
959 959
960 void LayoutView::setIsInWindow(bool isInWindow) 960 void LayoutView::setIsInWindow(bool isInWindow)
961 { 961 {
962 if (m_compositor) 962 if (m_compositor)
963 m_compositor->setIsInWindow(isInWindow); 963 m_compositor->setIsInWindow(isInWindow);
964 #if CHECK_DISPLAY_ITEM_CLIENT_ALIVENESS
965 // We don't invalidate layers during document detach(), so must clear the sh ould-keep-alive
chrishtr 2016/06/18 08:49:57 Does this need to be true any more now that we use
Xianzhu 2016/06/18 17:41:30 This doesn't affect cache correctness, but is only
966 // DisplayItemClients which may be deleted before the layers being subsequen ce owners.
967 if (!isInWindow && layer())
968 layer()->endShouldKeepAliveAllClientsRecursive();
969 #endif
964 } 970 }
965 971
966 IntervalArena* LayoutView::intervalArena() 972 IntervalArena* LayoutView::intervalArena()
967 { 973 {
968 if (!m_intervalArena) 974 if (!m_intervalArena)
969 m_intervalArena = IntervalArena::create(); 975 m_intervalArena = IntervalArena::create();
970 return m_intervalArena.get(); 976 return m_intervalArena.get();
971 } 977 }
972 978
973 bool LayoutView::backgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const 979 bool LayoutView::backgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
1036 // ASSERT(!frame()->isMainFrame()) here. All main frame scrolling should 1042 // ASSERT(!frame()->isMainFrame()) here. All main frame scrolling should
1037 // be handled by the ViewportScrollCallback. 1043 // be handled by the ViewportScrollCallback.
1038 1044
1039 if (!frameView()) 1045 if (!frameView())
1040 return ScrollResult(false, false, delta.width(), delta.height()); 1046 return ScrollResult(false, false, delta.width(), delta.height());
1041 1047
1042 return frameView()->getScrollableArea()->userScroll(granularity, delta); 1048 return frameView()->getScrollableArea()->userScroll(granularity, delta);
1043 } 1049 }
1044 1050
1045 } // namespace blink 1051 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698