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

Side by Side Diff: Source/web/WebPagePopupImpl.h

Issue 513723003: Add pixel readback to page popup (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 3 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) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 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 are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * 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 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 29 matching lines...) Expand all
40 namespace blink { 40 namespace blink {
41 41
42 class GraphicsLayer; 42 class GraphicsLayer;
43 class Page; 43 class Page;
44 class PagePopupChromeClient; 44 class PagePopupChromeClient;
45 class PagePopupClient; 45 class PagePopupClient;
46 class PlatformKeyboardEvent; 46 class PlatformKeyboardEvent;
47 class WebLayerTreeView; 47 class WebLayerTreeView;
48 class WebLayer; 48 class WebLayer;
49 class WebViewImpl; 49 class WebViewImpl;
50 class LocalDOMWindow;
50 51
51 class WebPagePopupImpl FINAL 52 class WebPagePopupImpl FINAL
52 : public WebPagePopup 53 : public WebPagePopup
53 , public PageWidgetEventHandler 54 , public PageWidgetEventHandler
54 , public PagePopup 55 , public PagePopup
55 , public RefCounted<WebPagePopupImpl> { 56 , public RefCounted<WebPagePopupImpl> {
56 WTF_MAKE_NONCOPYABLE(WebPagePopupImpl); 57 WTF_MAKE_NONCOPYABLE(WebPagePopupImpl);
57 WTF_MAKE_FAST_ALLOCATED; 58 WTF_MAKE_FAST_ALLOCATED;
58 59
59 public: 60 public:
60 virtual ~WebPagePopupImpl(); 61 virtual ~WebPagePopupImpl();
61 bool initialize(WebViewImpl*, PagePopupClient*, const IntRect& originBoundsI nRootView); 62 bool initialize(WebViewImpl*, PagePopupClient*, const IntRect& originBoundsI nRootView);
62 bool handleKeyEvent(const PlatformKeyboardEvent&); 63 bool handleKeyEvent(const PlatformKeyboardEvent&);
63 void closePopup(); 64 void closePopup();
64 WebWidgetClient* widgetClient() const { return m_widgetClient; } 65 WebWidgetClient* widgetClient() const { return m_widgetClient; }
65 bool hasSamePopupClient(WebPagePopupImpl* other) { return other && m_popupCl ient == other->m_popupClient; } 66 bool hasSamePopupClient(WebPagePopupImpl* other) { return other && m_popupCl ient == other->m_popupClient; }
67 virtual void compositeAndReadbackAsync(WebCompositeAndReadbackAsyncCallback* ) OVERRIDE;
68 LocalDOMWindow* window();
69 virtual WebPoint relativePosition() OVERRIDE;
66 70
67 private: 71 private:
68 // WebWidget functions 72 // WebWidget functions
69 virtual WebSize size() OVERRIDE; 73 virtual WebSize size() OVERRIDE;
70 virtual void beginFrame(const WebBeginFrameArgs&) OVERRIDE; 74 virtual void beginFrame(const WebBeginFrameArgs&) OVERRIDE;
71 virtual void layout() OVERRIDE; 75 virtual void layout() OVERRIDE;
72 virtual void willCloseLayerTreeView() OVERRIDE; 76 virtual void willCloseLayerTreeView() OVERRIDE;
73 virtual void paint(WebCanvas*, const WebRect&) OVERRIDE; 77 virtual void paint(WebCanvas*, const WebRect&) OVERRIDE;
74 virtual void resize(const WebSize&) OVERRIDE; 78 virtual void resize(const WebSize&) OVERRIDE;
75 virtual void close() OVERRIDE; 79 virtual void close() OVERRIDE;
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 friend class PagePopupChromeClient; 113 friend class PagePopupChromeClient;
110 }; 114 };
111 115
112 DEFINE_TYPE_CASTS(WebPagePopupImpl, WebWidget, widget, widget->isPagePopup(), wi dget.isPagePopup()); 116 DEFINE_TYPE_CASTS(WebPagePopupImpl, WebWidget, widget, widget->isPagePopup(), wi dget.isPagePopup());
113 // WebPagePopupImpl is the only implementation of PagePopup, so no 117 // WebPagePopupImpl is the only implementation of PagePopup, so no
114 // further checking required. 118 // further checking required.
115 DEFINE_TYPE_CASTS(WebPagePopupImpl, PagePopup, popup, true, true); 119 DEFINE_TYPE_CASTS(WebPagePopupImpl, PagePopup, popup, true, true);
116 120
117 } // namespace blink 121 } // namespace blink
118 #endif // WebPagePopupImpl_h 122 #endif // WebPagePopupImpl_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698