OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google 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 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 24 matching lines...) Expand all Loading... |
35 namespace blink { | 35 namespace blink { |
36 | 36 |
37 struct WebRect; | 37 struct WebRect; |
38 class WebDisplayItemList; | 38 class WebDisplayItemList; |
39 | 39 |
40 class BLINK_PLATFORM_EXPORT WebContentLayerClient { | 40 class BLINK_PLATFORM_EXPORT WebContentLayerClient { |
41 public: | 41 public: |
42 enum PaintingControlSetting { | 42 enum PaintingControlSetting { |
43 // Returns the last PaintArtifact produced. | 43 // Returns the last PaintArtifact produced. |
44 PaintDefaultBehavior, | 44 PaintDefaultBehavior, |
45 // Paints the content to simulate the behavior of FrameView::synchronizedPai
nt. | 45 // Paints the content to simulate the behavior of |
| 46 // FrameView::synchronizedPaint. |
46 PaintDefaultBehaviorForTest, | 47 PaintDefaultBehaviorForTest, |
47 // Puts the GraphicsContext in disabled mode and disables display item | 48 // Puts the GraphicsContext in disabled mode and disables display item |
48 // construction in PaintController. | 49 // construction in PaintController. |
49 DisplayListConstructionDisabled, | 50 DisplayListConstructionDisabled, |
50 DisplayListCachingDisabled, | 51 DisplayListCachingDisabled, |
51 DisplayListPaintingDisabled, | 52 DisplayListPaintingDisabled, |
52 SubsequenceCachingDisabled, | 53 SubsequenceCachingDisabled, |
53 PartialInvalidation | 54 PartialInvalidation |
54 }; | 55 }; |
55 | 56 |
56 // The paintable region is the rectangular region, within the bounds of the la
yer | 57 // The paintable region is the rectangular region, within the bounds of the |
57 // this client paints, that the client is capable of painting via paintContent
s(). | 58 // layer this client paints, that the client is capable of painting via |
58 // Calling paintContents will return a WebDisplayitemList that is guaranteed v
alid | 59 // paintContents(). Calling paintContents will return a WebDisplayitemList |
59 // only within this region. | 60 // that is guaranteed valid only within this region. In particular, this is |
60 // In particular, this is used to represent the interest rect in Blink. | 61 // used to represent the interest rect in Blink. |
61 virtual gfx::Rect paintableRegion() = 0; | 62 virtual gfx::Rect paintableRegion() = 0; |
62 | 63 |
63 // Paints the content area for the layer, typically dirty rects submitted | 64 // Paints the content area for the layer, typically dirty rects submitted |
64 // through WebContentLayer::setNeedsDisplayInRect, submitting drawing commands | 65 // through WebContentLayer::setNeedsDisplayInRect, submitting drawing commands |
65 // to populate the WebDisplayItemList. | 66 // to populate the WebDisplayItemList. |
66 // The |PaintingControlSetting| enum controls painting to isolate different co
mponents in performance tests. | 67 // The |PaintingControlSetting| enum controls painting to isolate different |
| 68 // components in performance tests. |
67 virtual void paintContents(WebDisplayItemList*, | 69 virtual void paintContents(WebDisplayItemList*, |
68 PaintingControlSetting = PaintDefaultBehavior) = 0; | 70 PaintingControlSetting = PaintDefaultBehavior) = 0; |
69 | 71 |
70 // Returns an estimate of the current memory usage within this object, | 72 // Returns an estimate of the current memory usage within this object, |
71 // excluding memory shared with painting artifacts (i.e., | 73 // excluding memory shared with painting artifacts (i.e., |
72 // WebDisplayItemList). Should be invoked after paintContents, so that the | 74 // WebDisplayItemList). Should be invoked after paintContents, so that the |
73 // result includes data cached internally during painting. | 75 // result includes data cached internally during painting. |
74 virtual size_t approximateUnsharedMemoryUsage() const { return 0; } | 76 virtual size_t approximateUnsharedMemoryUsage() const { return 0; } |
75 | 77 |
76 protected: | 78 protected: |
77 virtual ~WebContentLayerClient() {} | 79 virtual ~WebContentLayerClient() {} |
78 }; | 80 }; |
79 | 81 |
80 } // namespace blink | 82 } // namespace blink |
81 | 83 |
82 #endif // WebContentLayerClient_h | 84 #endif // WebContentLayerClient_h |
OLD | NEW |