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

Side by Side Diff: third_party/WebKit/Source/web/WebPluginContainerImpl.h

Issue 2871453002: Delete widget tree (FrameView::parent_) (Closed)
Patch Set: Remove deferred state Created 3 years, 7 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) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * Copyright (C) 2014 Opera Software ASA. All rights reserved. 3 * Copyright (C) 2014 Opera Software ASA. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 70
71 public: 71 public:
72 static WebPluginContainerImpl* Create(HTMLPlugInElement* element, 72 static WebPluginContainerImpl* Create(HTMLPlugInElement* element,
73 WebPlugin* web_plugin) { 73 WebPlugin* web_plugin) {
74 return new WebPluginContainerImpl(element, web_plugin); 74 return new WebPluginContainerImpl(element, web_plugin);
75 } 75 }
76 ~WebPluginContainerImpl() override; 76 ~WebPluginContainerImpl() override;
77 77
78 // PluginView methods 78 // PluginView methods
79 void SetParent(FrameView*) override; 79 void SetParent(FrameView*) override;
80 FrameView* Parent() const override { return parent_; }; 80 FrameView* Parent() const override;
81 FrameView* ParentFrameView() const;
82 void SetFrameOrPluginState(FrameOrPluginState) override;
83 FrameOrPluginState GetFrameOrPluginState() const { return plugin_state_; }
81 void SetParentVisible(bool) override; 84 void SetParentVisible(bool) override;
82 WebLayer* PlatformLayer() const override; 85 WebLayer* PlatformLayer() const override;
83 v8::Local<v8::Object> ScriptableObject(v8::Isolate*) override; 86 v8::Local<v8::Object> ScriptableObject(v8::Isolate*) override;
84 bool SupportsKeyboardFocus() const override; 87 bool SupportsKeyboardFocus() const override;
85 bool SupportsInputMethod() const override; 88 bool SupportsInputMethod() const override;
86 bool CanProcessDrag() const override; 89 bool CanProcessDrag() const override;
87 bool WantsWheelEvents() override; 90 bool WantsWheelEvents() override;
88 void UpdateAllLifecyclePhases() override; 91 void UpdateAllLifecyclePhases() override;
89 void InvalidatePaint() override { IssuePaintInvalidations(); } 92 void InvalidatePaint() override { IssuePaintInvalidations(); }
90 void InvalidateRect(const IntRect&); 93 void InvalidateRect(const IntRect&);
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 213
211 void IssuePaintInvalidations(); 214 void IssuePaintInvalidations();
212 215
213 void CalculateGeometry(IntRect& window_rect, 216 void CalculateGeometry(IntRect& window_rect,
214 IntRect& clip_rect, 217 IntRect& clip_rect,
215 IntRect& unobscured_rect); 218 IntRect& unobscured_rect);
216 219
217 friend class WebPluginContainerTest; 220 friend class WebPluginContainerTest;
218 221
219 Member<FrameView> parent_; 222 Member<FrameView> parent_;
223 FrameOrPluginState plugin_state_;
220 Member<HTMLPlugInElement> element_; 224 Member<HTMLPlugInElement> element_;
221 WebPlugin* web_plugin_; 225 WebPlugin* web_plugin_;
222 WebLayer* web_layer_; 226 WebLayer* web_layer_;
223 IntRect frame_rect_; 227 IntRect frame_rect_;
224 IntRect pending_invalidation_rect_; 228 IntRect pending_invalidation_rect_;
225 TouchEventRequestType touch_event_request_type_; 229 TouchEventRequestType touch_event_request_type_;
226 bool wants_wheel_events_; 230 bool wants_wheel_events_;
227 bool self_visible_; 231 bool self_visible_;
228 bool parent_visible_; 232 bool parent_visible_;
229 bool is_disposed_; 233 bool is_disposed_;
230 }; 234 };
231 235
232 DEFINE_TYPE_CASTS(WebPluginContainerImpl, 236 DEFINE_TYPE_CASTS(WebPluginContainerImpl,
233 PluginView, 237 PluginView,
234 plugin, 238 plugin,
235 plugin->IsPluginContainer(), 239 plugin->IsPluginContainer(),
236 plugin.IsPluginContainer()); 240 plugin.IsPluginContainer());
237 // Unlike FrameViewBase, we need not worry about object type for container. 241 // Unlike FrameViewBase, we need not worry about object type for container.
238 // WebPluginContainerImpl is the only subclass of WebPluginContainer. 242 // WebPluginContainerImpl is the only subclass of WebPluginContainer.
239 DEFINE_TYPE_CASTS(WebPluginContainerImpl, 243 DEFINE_TYPE_CASTS(WebPluginContainerImpl,
240 WebPluginContainer, 244 WebPluginContainer,
241 container, 245 container,
242 true, 246 true,
243 true); 247 true);
244 248
245 } // namespace blink 249 } // namespace blink
246 250
247 #endif 251 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/plugins/PluginView.h ('k') | third_party/WebKit/Source/web/WebPluginContainerImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698