Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Issue 222504 Support for Vibration API
Starred by 31 users Project Member Reported by meh@chromium.org, Mar 20 2013 Back to list
Status: Fixed
Owner:
Closed: Oct 2013
Cc:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Launch-OWP
Launch-Accessibility: ----
Launch-Legal: ----
Launch-M-Approved: ----
Launch-M-Target: ----
Launch-Privacy: ----
Launch-Security: ----
Launch-Status: ----
Launch-Test: ----
Launch-UI: ----


Sign in to add a comment
(See go/owp-launch-guide for an overview)

Change description:
An API that lets web apps make devices vibrate (eg phones).

Changes to API surface:
Adds a vibrate method to the navigator object.

Links:
crbug.com/114524
wkbug.com/72010
Public standards discussion: http://www.w3.org/TR/vibration/

Support in other browsers: current (expected)
Internet Explorer: unknown
Firefox: Yes (https://developer.mozilla.org/en-US/docs/DOM/window.navigator.vibrate)
Safari: none
Opera: none

Needs further thought about security and UX.
 
Cc: meh@chromium.org
Owner: mvanouwe...@chromium.org
Project Member Comment 3 by bugdroid1@chromium.org, Jun 18 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=152627

------------------------------------------------------------------------
r152627 | mvanouwerkerk@chromium.org | 2013-06-18T11:48:06.472503Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/public/platform/Platform.h?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/navigator-vibration-expected.txt?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.cpp?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.h?r1=152627&r2=152626&pathrev=152627
   D http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/Vibration.cpp?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/navigator-vibration.html?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.idl?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/RuntimeEnabledFeatures.in?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/modules.gypi?r1=152627&r2=152626&pathrev=152627
   D http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/VibrationClient.h?r1=152627&r2=152626&pathrev=152627
   D http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/Vibration.h?r1=152627&r2=152626&pathrev=152627
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/dom/navigator-detached-no-crash-expected.txt?r1=152627&r2=152626&pathrev=152627

Vibration API: use runtime flag, change from client to platform.

Intent to implement & ship thread:
https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/vibration$20api/blink-dev/hH9bJGWKAbk/AFPov-g5VMMJ

The runtime flag is by default disabled.

BUG= 222504 

Review URL: https://chromiumcodereview.appspot.com/15724023
------------------------------------------------------------------------
Project Member Comment 4 by bugdroid1@chromium.org, Jul 11 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=154029

------------------------------------------------------------------------
r154029 | mvanouwerkerk@chromium.org | 2013-07-11T18:01:19.034536Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.cpp?r1=154029&r2=154028&pathrev=154029
   A http://src.chromium.org/viewvc/blink/trunk/public/platform/WebVibration.h?r1=154029&r2=154028&pathrev=154029

Move max vibration duration constant to platform so content/ can read it.

BUG= 222504 

Review URL: https://chromiumcodereview.appspot.com/19041004
------------------------------------------------------------------------
Project Member Comment 5 by bugdroid1@chromium.org, Jul 17 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=154401

------------------------------------------------------------------------
r154401 | loislo@chromium.org | 2013-07-17T14:21:36.484410Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/DocumentLifecycleObserver.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/ContextLifecycleObserver.cpp?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/ScriptExecutionContext.cpp?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/Document.cpp?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/Page.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/core.gypi?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/ContextLifecycleObserver.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/ScriptExecutionContext.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/Document.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/ContextLifecycleNotifier.cpp?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/DocumentLifecycleObserver.cpp?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.cpp?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/dom/ContextLifecycleNotifier.h?r1=154401&r2=154400&pathrev=154401
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/Page.cpp?r1=154401&r2=154400&pathrev=154401

Extract a minimal set of classes for observing the lifecycle of a context.

From ContextLifecycleObserver extract LifecycleObserver. From ContextLifecycleNotifier extract
LifecycleNotifier. From ScriptExecutionContext extract LifecycleContext.

Use these minimal classes to observe Page. In this case it is used to observe page visibility in the
Vibration API. When the page is no longer visible all running vibrations must be cancelled.

BUG= 222504 
R=abarth@chromium.org, loislo@chromium.org

Review URL: https://codereview.chromium.org/18777003
------------------------------------------------------------------------
Project Member Comment 6 by bugdroid1@chromium.org, Jul 19 2013
------------------------------------------------------------------------
r212670 | mvanouwerkerk@chromium.org | 2013-07-19T22:20:04.735948Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/content_browser.gypi?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=212670&r2=212669&pathrev=212670
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/public/android/java/src/org/chromium/content/browser/VibrationMessageFilter.java?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/renderer_webkitplatformsupport_impl.cc?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/renderer_webkitplatformsupport_impl.h?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/android/browser_jni_registrar.cc?r1=212670&r2=212669&pathrev=212670
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/android/vibration_message_filter.cc?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/DEPS?r1=212670&r2=212669&pathrev=212670
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/android/vibration_message_filter.h?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/common/view_messages.h?r1=212670&r2=212669&pathrev=212670
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/content_jni.gypi?r1=212670&r2=212669&pathrev=212670

Vibration API: plumbing from Blink to Java.

Intent to implement & ship thread: 
https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/vibration$20api/blink-dev/hH9bJGWKAbk/AFPov-g5VMMJ 

BUG= 222504 

Review URL: https://chromiumcodereview.appspot.com/16781002
------------------------------------------------------------------------
Project Member Comment 7 by bugdroid1@chromium.org, Jul 22 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=154674

------------------------------------------------------------------------
r154674 | mvanouwerkerk@chromium.org | 2013-07-22T19:25:08.032539Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/PageLifecycleObserver.h?r1=154674&r2=154673&pathrev=154674
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.cpp?r1=154674&r2=154673&pathrev=154674
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/loader/FrameLoader.cpp?r1=154674&r2=154673&pathrev=154674
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/Page.cpp?r1=154674&r2=154673&pathrev=154674
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.h?r1=154674&r2=154673&pathrev=154674
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/Page.h?r1=154674&r2=154673&pathrev=154674
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/PageLifecycleNotifier.h?r1=154674&r2=154673&pathrev=154674

Cancel vibration when frame load is committed.

We currently don't handle subframes in a beautiful way, vibrations initiated in one frame may be cancelled from another frame. The expected behavior is not currently defined in the specification but we have started that discussion: http://lists.w3.org/Archives/Public/public-device-apis/2013Jul/0031.html

BUG= 222504 

Review URL: https://chromiumcodereview.appspot.com/19641006
------------------------------------------------------------------------
Project Member Comment 8 by bugdroid1@chromium.org, Aug 2 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=155388

------------------------------------------------------------------------
r155388 | mvanouwerkerk@chromium.org | 2013-08-02T04:52:34.693497Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/page/RuntimeEnabledFeatures.in?r1=155388&r2=155387&pathrev=155388

Set Vibration API status to experimental. The current version of the specification is fully implemented. However, we still have a few questions under discussion so shipping to stable seems premature.

The approved intent to implement and ship is here:
https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/vibration$20api/blink-dev/hH9bJGWKAbk/AFPov-g5VMMJ

BUG= 222504 

Review URL: https://chromiumcodereview.appspot.com/21103010
------------------------------------------------------------------------
Cc: mvanouwe...@chromium.org tomhud...@chromium.org morrita@chromium.org miguelg@chromium.org scheib@chromium.org
Issue 114524 has been merged into this issue.
Blockedon: chromium:305642
Blockedon: chromium:309587
Blockedon: chromium:309646
Labels: -M-X M-32
Blockedon: chromium:310137
Blockedon: chromium:310138
Blockedon: chromium:310144
Project Member Comment 17 by bugdroid1@chromium.org, Oct 23 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=160289

------------------------------------------------------------------------
r160289 | kihong.kwon@samsung.com | 2013-10-23T03:40:46.218362Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/vibration?r1=160289&r2=160288&pathrev=160289
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/vibration/cancel-vibration-during-pattern-vibrating-expected.txt?r1=160289&r2=160288&pathrev=160289
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/modules.gyp?r1=160289&r2=160288&pathrev=160289
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.cpp?r1=160289&r2=160288&pathrev=160289
   M http://src.chromium.org/viewvc/blink/trunk/Source/bindings/derived_sources.gyp?r1=160289&r2=160288&pathrev=160289
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing/InternalsVibration.cpp?r1=160289&r2=160288&pathrev=160289
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing?r1=160289&r2=160288&pathrev=160289
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.h?r1=160289&r2=160288&pathrev=160289
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/vibration/cancel-vibration-during-pattern-vibrating.html?r1=160289&r2=160288&pathrev=160289
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing/InternalsVibration.h?r1=160289&r2=160288&pathrev=160289
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing/InternalsVibration.idl?r1=160289&r2=160288&pathrev=160289
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/modules.gypi?r1=160289&r2=160288&pathrev=160289
   M http://src.chromium.org/viewvc/blink/trunk/Source/web/web.gyp?r1=160289&r2=160288&pathrev=160289

Vibration cannot be canceled during pattern vibration.

Vibration could not be canceled during pattern vibration is working.
In the resting time which are even numbers of pattern,
 m_isVibrating will be false and cancel will thus return early.
WebKit bug : https://bugs.webkit.org/show_bug.cgi?id=117822

BUG= 222504 , 261467 , 310137 

Review URL: https://codereview.chromium.org/18478003
------------------------------------------------------------------------
Project Member Comment 18 by bugdroid1@chromium.org, Oct 23 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=160362

------------------------------------------------------------------------
r160362 | nbarth@chromium.org | 2013-10-23T19:21:38.124203Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/bindings/derived_sources.gyp?r1=160362&r2=160361&pathrev=160362
   M http://src.chromium.org/viewvc/blink/trunk/Source/bindings/scripts/generate_bindings.pl?r1=160362&r2=160361&pathrev=160362
   M http://src.chromium.org/viewvc/blink/trunk/Source/build/scripts/list_idl_files_with_partial_interface.py?r1=160362&r2=160361&pathrev=160362

Fix IDL dependency computation for partial interfaces

Current IDL dependencies consider partial interfaces as dependencies
for *all* IDL files (to avoid having to resolve it to a particular file).

The code has 2 mistakes, however:
1. It fails to do this for supplemental IDL files (notably testing),
  which have just gotten a partial interface.
2. There's a typo in a regex, which means it fails on simple IDL files.

This fixes both bugs, and simplifies the partial interface determination code.

This fixes the problem that required this revert:
Revert r160289 "Vibration cannot be canceled during pattern vibration."
https://codereview.chromium.org/30063003/

This should allow this CL to be relanded:
Vibration cannot be canceled during pattern vibration.
https://codereview.chromium.org/18478003/

To verify that this CL works (excluding testing),
verify that NavigationVibration.idl is a global dependency:
cd "$CHROMIUM_DIR"
regyp  # eg gclient runhooks
ninja -C out/Release -j100 all_webkit
touch third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl
ninja -C out/Release -j100 all_webkit  # should rebuild all bindings

To verify that it has fixed the problem,
apply the patch and verify InternalVibration.idl is a global dependency:
cd "$BLINK_DIR"
git co -b reland-vibe
git cl patch 18478003

cd "$CHROMIUM_DIR"
regyp  # eg gclient runhooks
ninja -C out/Release -j100 all_webkit
touch third_party/WebKit/Source/modules/vibration/testing/InternalsVibration.idl
ninja -C out/Release -j100 all_webkit  # should rebuild all bindings

BUG= 222504 ,  261467 ,  310137 

Review URL: https://codereview.chromium.org/29323008
------------------------------------------------------------------------
Project Member Comment 19 by bugdroid1@chromium.org, Oct 24 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=160407

------------------------------------------------------------------------
r160407 | kihong.kwon@samsung.com | 2013-10-24T02:42:34.394118Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing/InternalsVibration.h?r1=160407&r2=160406&pathrev=160407
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing/InternalsVibration.idl?r1=160407&r2=160406&pathrev=160407
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/modules.gypi?r1=160407&r2=160406&pathrev=160407
   M http://src.chromium.org/viewvc/blink/trunk/Source/web/web.gyp?r1=160407&r2=160406&pathrev=160407
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/vibration?r1=160407&r2=160406&pathrev=160407
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/vibration/cancel-vibration-during-pattern-vibrating-expected.txt?r1=160407&r2=160406&pathrev=160407
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/modules.gyp?r1=160407&r2=160406&pathrev=160407
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.cpp?r1=160407&r2=160406&pathrev=160407
   M http://src.chromium.org/viewvc/blink/trunk/Source/bindings/derived_sources.gyp?r1=160407&r2=160406&pathrev=160407
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing/InternalsVibration.cpp?r1=160407&r2=160406&pathrev=160407
   A http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/testing?r1=160407&r2=160406&pathrev=160407
   M http://src.chromium.org/viewvc/blink/trunk/Source/modules/vibration/NavigatorVibration.h?r1=160407&r2=160406&pathrev=160407
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/vibration/cancel-vibration-during-pattern-vibrating.html?r1=160407&r2=160406&pathrev=160407

Vibration cannot be canceled during pattern vibration.

Vibration could not be canceled during pattern vibration is working.
In the resting time which are even numbers of pattern,
 m_isVibrating will be false and cancel will thus return early.
WebKit bug : https://bugs.webkit.org/show_bug.cgi?id=117822

BUG= 222504 , 261467 , 310137 

Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=160289

Review URL: https://codereview.chromium.org/18478003
------------------------------------------------------------------------
Project Member Comment 20 by bugdroid1@chromium.org, Oct 28 2013
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=160711

------------------------------------------------------------------------
r160711 | mvanouwerkerk@chromium.org | 2013-10-28T10:15:19.672682Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/platform/RuntimeEnabledFeatures.in?r1=160711&r2=160710&pathrev=160711

Enable the Vibration API in stable.

The approved intent to implement and ship is here:
https://groups.google.com/a/chromium.org/forum/#!searchin/blink-dev/vibration$20api/blink-dev/hH9bJGWKAbk/AFPov-g5VMMJ

BUG= 222504 

Review URL: https://codereview.chromium.org/34923002
------------------------------------------------------------------------
Status: Fixed
OMG
Project Member Comment 23 by bugdroid1@chromium.org, Nov 25 2013
------------------------------------------------------------------------
r237101 | sl.ostapenko@samsung.com | 2013-11-25T18:12:53.087382Z

Changed paths:
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/port/browser/vibration_provider.h?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=237101&r2=237100&pathrev=237101
   D http://src.chromium.org/viewvc/chrome/trunk/src/content/public/android/java/src/org/chromium/content/browser/VibrationMessageFilter.java?r1=237101&r2=237100&pathrev=237101
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/public/android/java/src/org/chromium/content/browser/VibrationProvider.java?r1=237101&r2=237100&pathrev=237101
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/vibration/vibration_message_filter.cc?r1=237101&r2=237100&pathrev=237101
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/vibration/vibration_provider_android.cc?r1=237101&r2=237100&pathrev=237101
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/vibration/vibration_message_filter.h?r1=237101&r2=237100&pathrev=237101
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/vibration/vibration_provider_android.h?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/common/view_messages.h?r1=237101&r2=237100&pathrev=237101
   A http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/vibration?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/content_jni.gypi?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/content_browser.gypi?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/renderer_webkitplatformsupport_impl.cc?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/renderer/renderer_webkitplatformsupport_impl.h?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/android/browser_jni_registrar.cc?r1=237101&r2=237100&pathrev=237101
   D http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/android/vibration_message_filter.cc?r1=237101&r2=237100&pathrev=237101
   D http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/android/vibration_message_filter.h?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/public/browser/content_browser_client.cc?r1=237101&r2=237100&pathrev=237101
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/public/browser/content_browser_client.h?r1=237101&r2=237100&pathrev=237101

Make VibrationMessageFilter available to other platforms.

Adds VibrationProvider interface that simplifies adding vibration API handlers for other platforms and moves Android implementation into VibrationProviderAndroid.
Also adds ContentBrowserClient::OverrideVibrationProvider() method that allows embedder application override handling of blink Vibration API.

BUG= 222504 

Review URL: https://codereview.chromium.org/23496051
------------------------------------------------------------------------
Blockedon: chromium:372431
Sign in to add a comment