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 12 matching lines...) Expand all Loading... |
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
24 */ | 24 */ |
25 | 25 |
26 #ifndef WebContentLayerClient_h | 26 #ifndef WebContentLayerClient_h |
27 #define WebContentLayerClient_h | 27 #define WebContentLayerClient_h |
28 | 28 |
29 #include "WebCanvas.h" | 29 #include "WebCanvas.h" |
30 #include "WebCommon.h" | 30 #include "WebCommon.h" |
31 | 31 |
32 namespace blink { | 32 namespace blink { |
| 33 |
33 struct WebRect; | 34 struct WebRect; |
34 struct WebFloatRect; | 35 struct WebFloatRect; |
35 | 36 |
36 class BLINK_PLATFORM_EXPORT WebContentLayerClient { | 37 class BLINK_PLATFORM_EXPORT WebContentLayerClient { |
37 public: | 38 public: |
38 enum GraphicsContextStatus { GraphicsContextEnabled, GraphicsContextDisabled
}; | 39 enum GraphicsContextStatus { GraphicsContextEnabled, GraphicsContextDisabled
}; |
39 | 40 |
40 // Paints the content area for the layer, typically dirty rects submitted | 41 // Paints the content area for the layer, typically dirty rects submitted |
41 // through WebContentLayer::setNeedsDisplay, submitting drawing commands | 42 // through WebContentLayer::setNeedsDisplay, submitting drawing commands |
42 // through the WebCanvas. | 43 // through the WebCanvas. |
43 // The canvas is already clipped to the |clip| rect. | 44 // The canvas is already clipped to the |clip| rect. |
44 // Optionally, the implementation may set |opaque| to a rect covering pixels
that | 45 // Optionally, the implementation may set |opaque| to a rect covering pixels
that |
45 // the implementation knows are opaque. This information can be used for var
ious | 46 // the implementation knows are opaque. This information can be used for var
ious |
46 // optimizations. | 47 // optimizations. |
47 // The |disableContext| enum controls most processing in | 48 // The |disableContext| enum controls most processing in |
48 // GraphicsContext to isolate the painting code in performance tests. | 49 // GraphicsContext to isolate the painting code in performance tests. |
49 virtual void paintContents(WebCanvas*, const WebRect& clip, bool canPaintLCD
Text, WebFloatRect& opaque, GraphicsContextStatus = GraphicsContextEnabled) = 0; | 50 virtual void paintContents(WebCanvas*, const WebRect& clip, bool canPaintLCD
Text, WebFloatRect& opaque, GraphicsContextStatus = GraphicsContextEnabled) = 0; |
50 | 51 |
51 protected: | 52 protected: |
52 virtual ~WebContentLayerClient() { } | 53 virtual ~WebContentLayerClient() { } |
53 }; | 54 }; |
54 | 55 |
55 } // namespace blink | 56 } // namespace blink |
56 | 57 |
57 #endif // WebContentLayerClient_h | 58 #endif // WebContentLayerClient_h |
OLD | NEW |