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

Side by Side Diff: Source/core/rendering/RenderObject.h

Issue 19614004: Compositor hit test performance improvement (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Merge with trunk Created 7 years, 4 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) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 1004 matching lines...) Expand 10 before | Expand all | Expand 10 after
1015 void postDestroy(); 1015 void postDestroy();
1016 1016
1017 virtual bool canBeReplacedWithInlineRunIn() const; 1017 virtual bool canBeReplacedWithInlineRunIn() const;
1018 1018
1019 virtual void insertedIntoTree(); 1019 virtual void insertedIntoTree();
1020 virtual void willBeRemovedFromTree(); 1020 virtual void willBeRemovedFromTree();
1021 1021
1022 void setDocumentForAnonymous(Document* document) { ASSERT(isAnonymous()); m_ node = document; } 1022 void setDocumentForAnonymous(Document* document) { ASSERT(isAnonymous()); m_ node = document; }
1023 1023
1024 // Add hit-test rects for the render tree rooted at this node to the provide d collection on a 1024 // Add hit-test rects for the render tree rooted at this node to the provide d collection on a
1025 // per-RenderLayer basis. CurrentLayer must be the enclosing layer, 1025 // per-RenderLayer basis.
1026 // and layerOffset is the current offset within this layer. Subclass impleme ntations will add 1026 // currentLayer must be the enclosing layer, and layerOffset is the current offset within
1027 // any offset for this renderer within it's container, so callers should pro vide only the 1027 // this layer. Subclass implementations will add any offset for this rendere r within it's
1028 // offset of the container within it's layer. 1028 // container, so callers should provide only the offset of the container wit hin it's layer.
1029 virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* cur rentLayer, const LayoutPoint& layerOffset) const; 1029 // containerRect is a rect that has already been added for the currentLayer which is likely to
1030 // be a container for child elements. Any rect wholly contained by container Rect can be
1031 // skipped.
1032 virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* cur rentLayer, const LayoutPoint& layerOffset, const LayoutRect& containerRect) cons t;
1030 1033
1031 // Add hit-test rects for this renderer only to the provided list. layerOffs et is the offset 1034 // Add hit-test rects for this renderer only to the provided list. layerOffs et is the offset
1032 // of this renderer within the current layer that should be used for each re sult. 1035 // of this renderer within the current layer that should be used for each re sult.
1033 virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const { }; 1036 virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const { };
1034 1037
1035 private: 1038 private:
1036 RenderFlowThread* locateFlowThreadContainingBlock() const; 1039 RenderFlowThread* locateFlowThreadContainingBlock() const;
1037 void removeFromRenderFlowThread(); 1040 void removeFromRenderFlowThread();
1038 void removeFromRenderFlowThreadRecursive(RenderFlowThread*); 1041 void removeFromRenderFlowThreadRecursive(RenderFlowThread*);
1039 1042
(...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after
1392 // Outside the WebCore namespace for ease of invocation from gdb. 1395 // Outside the WebCore namespace for ease of invocation from gdb.
1393 void showTree(const WebCore::RenderObject*); 1396 void showTree(const WebCore::RenderObject*);
1394 void showLineTree(const WebCore::RenderObject*); 1397 void showLineTree(const WebCore::RenderObject*);
1395 void showRenderTree(const WebCore::RenderObject* object1); 1398 void showRenderTree(const WebCore::RenderObject* object1);
1396 // We don't make object2 an optional parameter so that showRenderTree 1399 // We don't make object2 an optional parameter so that showRenderTree
1397 // can be called from gdb easily. 1400 // can be called from gdb easily.
1398 void showRenderTree(const WebCore::RenderObject* object1, const WebCore::RenderO bject* object2); 1401 void showRenderTree(const WebCore::RenderObject* object1, const WebCore::RenderO bject* object2);
1399 #endif 1402 #endif
1400 1403
1401 #endif // RenderObject_h 1404 #endif // RenderObject_h
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderLayerModelObject.cpp ('k') | Source/core/rendering/RenderObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698