summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiecore/device/odevice_zaurus.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/libopie2/opiecore/device/odevice_zaurus.cpp b/libopie2/opiecore/device/odevice_zaurus.cpp
index 7302d2c..b7f3104 100644
--- a/libopie2/opiecore/device/odevice_zaurus.cpp
+++ b/libopie2/opiecore/device/odevice_zaurus.cpp
@@ -552,3 +552,14 @@ Transformation Zaurus::rotation() const
case Model_Zaurus_SLC3000: // fallthrough
- case Model_Zaurus_SLC1000: // fallthrough
+ case Model_Zaurus_SLC1000:
+ {
+ OHingeStatus hs = readHingeSensor();
+ qDebug( "Zaurus::rotation() - hinge sensor = %d", (int) hs );
+ if ( hs == CASE_PORTRAIT ) rot = Rot0;
+ else if ( hs == CASE_UNKNOWN ) rot = Rot270;
+ else rot = Rot270;
+ }
+ break;
+
+ // SLC7x0 needs a special case here, because we were able to set the W100
+ // hardware default rotation on kernel 2.6 to Rot0
case Model_Zaurus_SLC7x0:
@@ -561,3 +572,3 @@ Transformation Zaurus::rotation() const
if ( hs == CASE_PORTRAIT ) rot = Rot0;
- else if ( hs == CASE_UNKNOWN ) rot = Rot0;
+ else if ( hs == CASE_UNKNOWN ) rot = Rot270;
else rot = Rot270;
@@ -571,3 +582,3 @@ Transformation Zaurus::rotation() const
}
- break;
+ break;
case Model_Zaurus_SL6000: