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

Side by Side Diff: Source/modules/permissions/PermissionController.h

Issue 1318793005: [part 2] Make classes and structures in modules fast-allocated. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef PermissionController_h 5 #ifndef PermissionController_h
6 #define PermissionController_h 6 #define PermissionController_h
7 7
8 #include "core/frame/LocalFrameLifecycleObserver.h" 8 #include "core/frame/LocalFrameLifecycleObserver.h"
9 #include "modules/ModulesExport.h" 9 #include "modules/ModulesExport.h"
10 #include "platform/Supplementable.h" 10 #include "platform/Supplementable.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 class WebPermissionClient; 14 class WebPermissionClient;
15 15
16 class MODULES_EXPORT PermissionController final 16 class MODULES_EXPORT PermissionController final
17 : public NoBaseWillBeGarbageCollectedFinalized<PermissionController> 17 : public NoBaseWillBeGarbageCollectedFinalized<PermissionController>
18 , public WillBeHeapSupplement<LocalFrame> 18 , public WillBeHeapSupplement<LocalFrame>
19 , public LocalFrameLifecycleObserver { 19 , public LocalFrameLifecycleObserver {
20 WTF_MAKE_NONCOPYABLE(PermissionController); 20 WTF_MAKE_NONCOPYABLE(PermissionController);
21 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(PermissionController); 21 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(PermissionController);
22 WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(PermissionController);
22 public: 23 public:
23 virtual ~PermissionController(); 24 virtual ~PermissionController();
24 25
25 static void provideTo(LocalFrame&, WebPermissionClient*); 26 static void provideTo(LocalFrame&, WebPermissionClient*);
26 static PermissionController* from(LocalFrame&); 27 static PermissionController* from(LocalFrame&);
27 static const char* supplementName(); 28 static const char* supplementName();
28 29
29 WebPermissionClient* client() const; 30 WebPermissionClient* client() const;
30 31
31 DECLARE_VIRTUAL_TRACE(); 32 DECLARE_VIRTUAL_TRACE();
32 33
33 private: 34 private:
34 PermissionController(LocalFrame&, WebPermissionClient*); 35 PermissionController(LocalFrame&, WebPermissionClient*);
35 36
36 // Inherited from LocalFrameLifecycleObserver. 37 // Inherited from LocalFrameLifecycleObserver.
37 void willDetachFrameHost() override; 38 void willDetachFrameHost() override;
38 39
39 WebPermissionClient* m_client; 40 WebPermissionClient* m_client;
40 }; 41 };
41 42
42 } // namespace blink 43 } // namespace blink
43 44
44 #endif // PermissionController_h 45 #endif // PermissionController_h
OLDNEW
« no previous file with comments | « Source/modules/permissions/PermissionCallback.h ('k') | Source/modules/presentation/PresentationController.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698