Chromium Code Reviews| Index: Source/modules/webmidi/MIDIPort.cpp |
| diff --git a/Source/modules/webmidi/MIDIPort.cpp b/Source/modules/webmidi/MIDIPort.cpp |
| index 4664eacf578c1c8652d811e0e37333136cf0b25a..35b05b0746addefafc6a1a2752bd116b20b5fd0f 100644 |
| --- a/Source/modules/webmidi/MIDIPort.cpp |
| +++ b/Source/modules/webmidi/MIDIPort.cpp |
| @@ -99,22 +99,7 @@ String MIDIPort::type() const |
| ScriptPromise MIDIPort::open(ScriptState* scriptState) |
|
yhirano
2015/04/02 02:15:10
Why do you need this function? Isn't it enough to
Takashi Toyoshima
2015/04/02 04:03:21
ScriptState is still needed to return Promise at l
yhirano
2015/04/02 04:13:00
Sorry, I overlooked that.
|
| { |
| - if (m_connection == ConnectionStateClosed) { |
| - switch (m_state) { |
| - case PortState::MIDIPortStateDisconnected: |
| - setStates(m_state, ConnectionStatePending); |
| - break; |
| - case PortState::MIDIPortStateConnected: |
| - // TODO(toyoshim): Add blink API to perform a real open and close |
| - // operation. |
| - setStates(m_state, ConnectionStateOpen); |
| - break; |
| - case PortState::MIDIPortStateOpened: |
| - // TODO(toyoshim): Remove PortState::MIDIPortStateOpened. |
| - ASSERT_NOT_REACHED(); |
| - break; |
| - } |
| - } |
| + open(); |
| return accept(scriptState); |
| } |
| @@ -144,6 +129,26 @@ DEFINE_TRACE(MIDIPort) |
| RefCountedGarbageCollectedEventTargetWithInlineData<MIDIPort>::trace(visitor); |
| } |
| +void MIDIPort::open() |
| +{ |
| + if (m_connection == ConnectionStateClosed) { |
| + switch (m_state) { |
| + case PortState::MIDIPortStateDisconnected: |
| + setStates(m_state, ConnectionStatePending); |
| + break; |
| + case PortState::MIDIPortStateConnected: |
| + // TODO(toyoshim): Add blink API to perform a real open and close |
| + // operation. |
| + setStates(m_state, ConnectionStateOpen); |
| + break; |
| + case PortState::MIDIPortStateOpened: |
| + // TODO(toyoshim): Remove PortState::MIDIPortStateOpened. |
| + ASSERT_NOT_REACHED(); |
| + break; |
| + } |
| + } |
| +} |
| + |
| ScriptPromise MIDIPort::accept(ScriptState* scriptState) |
| { |
| return ScriptPromise::cast(scriptState, toV8(this, scriptState->context()->Global(), scriptState->isolate())); |