| Index: content/browser/device_orientation/data_fetcher_impl_android.cc | 
| diff --git a/content/browser/device_orientation/data_fetcher_impl_android.cc b/content/browser/device_orientation/data_fetcher_impl_android.cc | 
| index 287b63a1db9c36a59db6164419d3faaa4567c9e7..e140083fd7809faa6f32ce89738912d816d433a1 100644 | 
| --- a/content/browser/device_orientation/data_fetcher_impl_android.cc | 
| +++ b/content/browser/device_orientation/data_fetcher_impl_android.cc | 
| @@ -7,7 +7,7 @@ | 
| #include "base/android/jni_android.h" | 
| #include "base/logging.h" | 
| #include "content/browser/device_orientation/orientation.h" | 
| -#include "jni/DeviceOrientation_jni.h" | 
| +#include "jni/DeviceMotionAndOrientation_jni.h" | 
|  | 
| using base::android::AttachCurrentThread; | 
|  | 
| @@ -23,7 +23,7 @@ const int kPeriodInMilliseconds = 100; | 
|  | 
| DataFetcherImplAndroid::DataFetcherImplAndroid() { | 
| device_orientation_.Reset( | 
| -      Java_DeviceOrientation_getInstance(AttachCurrentThread())); | 
| +      Java_DeviceMotionAndOrientation_getInstance(AttachCurrentThread())); | 
| } | 
|  | 
| void DataFetcherImplAndroid::Init(JNIEnv* env) { | 
| @@ -31,9 +31,11 @@ void DataFetcherImplAndroid::Init(JNIEnv* env) { | 
| DCHECK(result); | 
| } | 
|  | 
| +// TODO(timvolodine): Modify this method to be able to distinguish | 
| +// device motion from orientation. | 
| DataFetcher* DataFetcherImplAndroid::Create() { | 
| scoped_ptr<DataFetcherImplAndroid> fetcher(new DataFetcherImplAndroid); | 
| -  if (fetcher->Start(kPeriodInMilliseconds)) | 
| +  if (fetcher->Start(DeviceData::kTypeOrientation, kPeriodInMilliseconds)) | 
| return fetcher.release(); | 
|  | 
| LOG(ERROR) << "DataFetcherImplAndroid::Start failed!"; | 
| @@ -41,7 +43,9 @@ DataFetcher* DataFetcherImplAndroid::Create() { | 
| } | 
|  | 
| DataFetcherImplAndroid::~DataFetcherImplAndroid() { | 
| -  Stop(); | 
| +  // TODO(timvolodine): Support device motion as well. Only stop | 
| +  // the active event type(s). | 
| +  Stop(DeviceData::kTypeOrientation); | 
| } | 
|  | 
| const DeviceData* DataFetcherImplAndroid::GetDeviceData( | 
| @@ -76,17 +80,35 @@ void DataFetcherImplAndroid::GotOrientation( | 
| next_orientation_ = orientation; | 
| } | 
|  | 
| -bool DataFetcherImplAndroid::Start(int rate_in_milliseconds) { | 
| +void DataFetcherImplAndroid::GotAcceleration( | 
| +    JNIEnv*, jobject, double x, double y, double z) { | 
| +  NOTIMPLEMENTED(); | 
| +} | 
| + | 
| +void DataFetcherImplAndroid::GotAccelerationIncludingGravity( | 
| +    JNIEnv*, jobject, double x, double y, double z) { | 
| +  NOTIMPLEMENTED(); | 
| +} | 
| + | 
| +void DataFetcherImplAndroid::GotRotationRate( | 
| +    JNIEnv*, jobject, double alpha, double beta, double gamma) { | 
| +  NOTIMPLEMENTED(); | 
| +} | 
| + | 
| +bool DataFetcherImplAndroid::Start( | 
| +    DeviceData::Type event_type, int rate_in_milliseconds) { | 
| DCHECK(!device_orientation_.is_null()); | 
| -  return Java_DeviceOrientation_start(AttachCurrentThread(), | 
| -                                      device_orientation_.obj(), | 
| -                                      reinterpret_cast<jint>(this), | 
| -                                      rate_in_milliseconds); | 
| +  return Java_DeviceMotionAndOrientation_start( | 
| +      AttachCurrentThread(), device_orientation_.obj(), | 
| +      reinterpret_cast<jint>(this), static_cast<jint>(event_type), | 
| +      rate_in_milliseconds); | 
| } | 
|  | 
| -void DataFetcherImplAndroid::Stop() { | 
| +void DataFetcherImplAndroid::Stop(DeviceData::Type event_type) { | 
| DCHECK(!device_orientation_.is_null()); | 
| -  Java_DeviceOrientation_stop(AttachCurrentThread(), device_orientation_.obj()); | 
| +  Java_DeviceMotionAndOrientation_stop( | 
| +      AttachCurrentThread(), device_orientation_.obj(), | 
| +      static_cast<jint>(event_type)); | 
| } | 
|  | 
| }  // namespace content | 
|  |