Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / xwalk / runtime / browser / ui / native_app_window_tizen.cc
index 40beb31..50ff11f 100644 (file)
@@ -53,7 +53,7 @@ static void SetWindowRotation(aura::Window* window, gfx::Display display) {
 #if defined(OS_TIZEN_MOBILE)
   // Assumes portrait display; shows overlay indicator in landscape only.
   bool useOverlay = display.rotation() == gfx::Display::ROTATE_90 ||
-      display.rotation() == gfx::Display::ROTATE_180);
+      display.rotation() == gfx::Display::ROTATE_180;
   top_view_layout()->SetUseOverlay(enableOverlay);
   indicator_widget_->SetDisplay(display);
 #endif
@@ -115,22 +115,25 @@ void NativeAppWindowTizen::Initialize() {
   DCHECK(root_window);
   root_window->AddObserver(this);
 
-  if (SensorProvider* sensor = SensorProvider::GetInstance()) {
-    sensor->AddObserver(this);
-    OnScreenOrientationChanged(sensor->GetScreenOrientation());
+  SensorProvider::GetInstance()->AddObserver(this);
+
+  if (SensorProvider::GetInstance()->connected()) {
+    OnScreenOrientationChanged(
+        SensorProvider::GetInstance()->GetScreenOrientation());
   }
 }
 
 NativeAppWindowTizen::~NativeAppWindowTizen() {
-  if (SensorProvider::GetInstance())
+  if (SensorProvider::GetInstance()->connected())
     SensorProvider::GetInstance()->RemoveObserver(this);
 }
 
 void NativeAppWindowTizen::LockOrientation(
       blink::WebScreenOrientationLockType lock) {
   orientation_lock_ = lock;
-  if (SensorProvider* sensor = SensorProvider::GetInstance())
-    OnScreenOrientationChanged(sensor->GetScreenOrientation());
+  if (SensorProvider::GetInstance()->connected())
+    OnScreenOrientationChanged(
+        SensorProvider::GetInstance()->GetScreenOrientation());
 }
 
 void NativeAppWindowTizen::ViewHierarchyChanged(
@@ -228,6 +231,11 @@ void NativeAppWindowTizen::OnScreenOrientationChanged(
   SetDisplayRotation(display_);
 }
 
+void NativeAppWindowTizen::OnSensorConnected() {
+  OnScreenOrientationChanged(
+      SensorProvider::GetInstance()->GetScreenOrientation());
+}
+
 void NativeAppWindowTizen::SetDisplayRotation(gfx::Display display) {
   aura::Window* window = GetNativeWindow()->GetRootWindow();
   if (!window->IsVisible())