Chromium Code Reviews| Index: public/web/WebMIDIPermissionRequest.h |
| diff --git a/public/web/WebMIDIPermissionRequest.h b/public/web/WebMIDIPermissionRequest.h |
| index 87cafd6919e1798dc3c1b17827430d25decd57da..791e1da62ad22a047095bf7dd37a41005f5ba5c1 100644 |
| --- a/public/web/WebMIDIPermissionRequest.h |
| +++ b/public/web/WebMIDIPermissionRequest.h |
| @@ -32,6 +32,7 @@ |
| #define WebMIDIPermissionRequest_h |
| #include "../platform/WebCommon.h" |
| +#include "../platform/WebPrivatePtr.h" |
| namespace blink { |
| @@ -46,7 +47,15 @@ class WebSecurityOrigin; |
| class WebMIDIPermissionRequest { |
|
yhirano
2015/07/16 11:14:15
+final
sof
2015/07/16 11:18:44
Do we use that on public/ exported types?
yhirano
2015/07/16 11:30:57
Is there a rule forbidding final? If you're not co
|
| public: |
| BLINK_EXPORT WebMIDIPermissionRequest(const WebMIDIPermissionRequest& other) |
| - : m_initializer(other.m_initializer) { } |
| + { |
| + assign(other); |
| + } |
| + |
| + ~WebMIDIPermissionRequest() |
| + { |
| + reset(); |
| + } |
| + |
| BLINK_EXPORT WebSecurityOrigin securityOrigin() const; |
| BLINK_EXPORT void setIsAllowed(bool); |
| @@ -55,11 +64,14 @@ public: |
| #if BLINK_IMPLEMENTATION |
| explicit WebMIDIPermissionRequest(MIDIAccessInitializer*); |
| - MIDIAccessInitializer* midiAccessInitializer() const { return m_initializer; } |
| + MIDIAccessInitializer* midiAccessInitializer() const { return m_private.get(); } |
| #endif |
| private: |
| - MIDIAccessInitializer* m_initializer; |
| + BLINK_EXPORT void reset(); |
| + BLINK_EXPORT void assign(const WebMIDIPermissionRequest&); |
| + |
| + WebPrivatePtr<MIDIAccessInitializer> m_private; |
| }; |
| inline bool operator==(const WebMIDIPermissionRequest& a, const WebMIDIPermissionRequest& b) |