Chromium Code Reviews| Index: Source/modules/vibration/Vibration.cpp |
| diff --git a/Source/modules/vibration/Vibration.cpp b/Source/modules/vibration/Vibration.cpp |
| index ca1a6595aa2b6ac3e7d290495ccf2c20306baf29..269fd4fa8b8ada8930e84eaf37903a70fac73e06 100644 |
| --- a/Source/modules/vibration/Vibration.cpp |
| +++ b/Source/modules/vibration/Vibration.cpp |
| @@ -20,15 +20,12 @@ |
| #include "config.h" |
| #include "modules/vibration/Vibration.h" |
| -#if ENABLE(VIBRATION) |
| - |
| -#include "modules/vibration/VibrationClient.h" |
| +#include "public/platform/Platform.h" |
| namespace WebCore { |
| -Vibration::Vibration(VibrationClient* client) |
| - : m_vibrationClient(client) |
| - , m_timerStart(this, &Vibration::timerStartFired) |
| +Vibration::Vibration() |
| + : m_timerStart(this, &Vibration::timerStartFired) |
| , m_timerStop(this, &Vibration::timerStopFired) |
| , m_isVibrating(false) |
| { |
| @@ -36,12 +33,13 @@ Vibration::Vibration(VibrationClient* client) |
| Vibration::~Vibration() |
| { |
| - m_vibrationClient->vibrationDestroyed(); |
| + if (m_isVibrating) |
| + cancelVibration(); |
| } |
| -PassOwnPtr<Vibration> Vibration::create(VibrationClient* client) |
| +PassOwnPtr<Vibration> Vibration::create() |
| { |
| - return adoptPtr(new Vibration(client)); |
| + return adoptPtr(new Vibration()); |
| } |
| void Vibration::vibrate(const unsigned& time) |
| @@ -78,7 +76,7 @@ void Vibration::cancelVibration() |
| { |
| m_pattern.clear(); |
| if (m_isVibrating) { |
| - m_vibrationClient->cancelVibration(); |
| + WebKit::Platform::current()->cancelVibration(); |
|
Peter Beverloo
2013/06/11 10:19:10
To confirm: cancelling the current vibration when
Michael van Ouwerkerk
2013/06/11 13:26:51
That's the plan. We'll see whether I can inline th
|
| m_isVibrating = false; |
| m_timerStop.stop(); |
| } |
| @@ -107,7 +105,7 @@ void Vibration::timerStartFired(Timer<Vibration>* timer) |
| if (m_pattern.size()) { |
| m_isVibrating = true; |
| - m_vibrationClient->vibrate(m_pattern[0]); |
| + WebKit::Platform::current()->vibrate(m_pattern[0]); |
| m_timerStop.startOneShot(m_pattern[0] / 1000.0); |
| m_pattern.remove(0); |
| } |
| @@ -136,12 +134,9 @@ bool Vibration::isActive(Page* page) |
| return static_cast<bool>(Vibration::from(page)); |
| } |
| -void provideVibrationTo(Page* page, VibrationClient* client) |
| +void provideVibrationTo(Page* page) |
| { |
| - Vibration::provideTo(page, Vibration::supplementName(), Vibration::create(client)); |
| + Vibration::provideTo(page, Vibration::supplementName(), Vibration::create()); |
| } |
| } // namespace WebCore |
| - |
| -#endif // ENABLE(VIBRATION) |
| - |