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

Unified Diff: chromeos/accelerometer/accelerometer_reader.cc

Issue 759063002: Move Screen Rotation from MaximizeModeController to ScreenOrientationController (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix Linux Compile Created 5 years, 11 months 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
« no previous file with comments | « chromeos/accelerometer/accelerometer_reader.h ('k') | ui/gfx/geometry/vector3d_f.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/accelerometer/accelerometer_reader.cc
diff --git a/chromeos/accelerometer/accelerometer_reader.cc b/chromeos/accelerometer/accelerometer_reader.cc
index 340ba18856cddb06727db4dac7781ba448c1fc05..9a91383a88d61b04705967e0b17f02c36c44ecc1 100644
--- a/chromeos/accelerometer/accelerometer_reader.cc
+++ b/chromeos/accelerometer/accelerometer_reader.cc
@@ -58,6 +58,10 @@ const int kDelayBetweenReadsMs = 100;
// The mean acceleration due to gravity on Earth in m/s^2.
const float kMeanGravity = 9.80665f;
+// The maximum deviation from the acceleration expected due to gravity under
+// which to detect hinge angle and screen rotation in m/s^2
+const float kDeviationFromGravityThreshold = 1.0f;
+
// Reads |path| to the unsigned int pointed to by |value|. Returns true on
// success or false on failure.
bool ReadFileToInt(const base::FilePath& path, int* value) {
@@ -206,12 +210,20 @@ void AccelerometerReader::Initialize(
void AccelerometerReader::AddObserver(Observer* observer) {
observers_.AddObserver(observer);
+ observer->OnAccelerometerUpdated(update_);
}
void AccelerometerReader::RemoveObserver(Observer* observer) {
observers_.RemoveObserver(observer);
}
+bool AccelerometerReader::IsReadingStable(const ui::AccelerometerUpdate& update,
+ ui::AccelerometerSource source) {
+ return update.has(source) &&
+ std::abs(update.get(source).Length() - kMeanGravity) <=
+ kDeviationFromGravityThreshold;
+}
+
void AccelerometerReader::OnInitialized(
scoped_refptr<AccelerometerReader::Configuration> configuration,
bool success) {
« no previous file with comments | « chromeos/accelerometer/accelerometer_reader.h ('k') | ui/gfx/geometry/vector3d_f.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698