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

Unified Diff: Source/modules/webmidi/MIDIAccess.h

Issue 77773003: Make WebMIDI use blink Promise. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years 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 side-by-side diff with in-line comments
Download patch
Index: Source/modules/webmidi/MIDIAccess.h
diff --git a/Source/modules/webmidi/MIDIAccess.h b/Source/modules/webmidi/MIDIAccess.h
index 9f6aaaf0c853e22c63c7242311dbb0c1e48aa189..30d94f9994fa3deae0028454e5cffae0d3ee9777 100644
--- a/Source/modules/webmidi/MIDIAccess.h
+++ b/Source/modules/webmidi/MIDIAccess.h
@@ -37,6 +37,7 @@
#include "modules/webmidi/MIDIAccessor.h"
#include "modules/webmidi/MIDIAccessorClient.h"
#include "modules/webmidi/MIDIInput.h"
+#include "modules/webmidi/MIDIOptions.h"
#include "modules/webmidi/MIDIOutput.h"
#include "wtf/RefCounted.h"
#include "wtf/RefPtr.h"
@@ -45,13 +46,13 @@
namespace WebCore {
class ExecutionContext;
-class MIDIAccessPromise;
+class NavigatorWebMIDI;
class MIDIAccess : public RefCounted<MIDIAccess>, public ScriptWrappable, public ActiveDOMObject, public EventTargetWithInlineData, public MIDIAccessorClient {
REFCOUNTED_EVENT_TARGET(MIDIAccess);
public:
virtual ~MIDIAccess();
- static PassRefPtr<MIDIAccess> create(ExecutionContext*, MIDIAccessPromise*);
+ static PassRefPtr<MIDIAccess> create(const MIDIOptions&, ExecutionContext*, NavigatorWebMIDI*);
MIDIInputVector inputs() const { return m_inputs; }
MIDIOutputVector outputs() const { return m_outputs; }
@@ -78,17 +79,19 @@ public:
// |timeStampInMilliseconds| is in the same time coordinate system as performance.now().
void sendMIDIData(unsigned portIndex, const unsigned char* data, size_t length, double timeStampInMilliseconds);
+ void startRequest();
+
private:
- MIDIAccess(ExecutionContext*, MIDIAccessPromise*);
+ MIDIAccess(const MIDIOptions&, ExecutionContext*, NavigatorWebMIDI*);
- void startRequest();
virtual void permissionDenied();
+ NavigatorWebMIDI* m_navigator;
abarth-chromium 2013/12/03 16:57:57 This raw pointer is concerning. This object looks
yhirano 2013/12/04 05:20:24 We need a holder that holds pending MIDIAccessors
MIDIInputVector m_inputs;
MIDIOutputVector m_outputs;
- MIDIAccessPromise* m_promise;
OwnPtr<MIDIAccessor> m_accessor;
+ MIDIOptions m_options;
bool m_hasAccess;
bool m_sysExEnabled;
bool m_requesting;

Powered by Google App Engine
This is Rietveld 408576698