Prd/components/dialer-patch/patches/0008-incall-landscape.patch
Lucy Doupalů be9f14ce34 Helpdesk - operator console + patched GrapheneOS Dialer for call handling
A small helpdesk system: an office Pixel running a patched GrapheneOS Dialer
answers technician calls, records both call legs as separate channels, and a
Ruby backend transcribes them through Whisper and files an AI summary against
the caller.

Squashed to a single commit for sharing. No credentials are included; secrets
live outside the repo in /etc/helpdesk/env on the server or a gitignored
.claude/env.local locally. See .claude/env.local.example for the shape.

Start at README.md, then docs/architecture.md.
2026-07-27 18:50:32 +02:00

31 lines
1.9 KiB
Diff

diff --git a/java/com/android/incallui/AndroidManifest.xml b/java/com/android/incallui/AndroidManifest.xml
index 45cf19983..1dcd17c93 100644
--- a/java/com/android/incallui/AndroidManifest.xml
+++ b/java/com/android/incallui/AndroidManifest.xml
@@ -64,7 +64,7 @@
android:launchMode="singleInstance"
android:name="com.android.incallui.InCallActivity"
android:resizeableActivity="true"
- android:screenOrientation="nosensor"
+ android:screenOrientation="sensorLandscape"
android:taskAffinity="com.android.incallui"
android:theme="@style/Theme.InCallScreen"
android:windowSoftInputMode="adjustResize">
diff --git a/java/com/android/incallui/InCallOrientationEventListener.java b/java/com/android/incallui/InCallOrientationEventListener.java
index 854bdd193..5fe2f03ee 100644
--- a/java/com/android/incallui/InCallOrientationEventListener.java
+++ b/java/com/android/incallui/InCallOrientationEventListener.java
@@ -52,8 +52,12 @@ public class InCallOrientationEventListener extends OrientationEventListener {
// We use SCREEN_ORIENTATION_USER so that reverse-portrait is not allowed.
public static final int ACTIVITY_PREFERENCE_ALLOW_ROTATION = ActivityInfo.SCREEN_ORIENTATION_USER;
+ // Helpdesk patch: the office Pixel is a desk-mounted appliance locked to landscape (InCallActivity
+ // screenOrientation=sensorLandscape). "Disallow rotation" must therefore mean landscape, not the
+ // default portrait NOSENSOR — otherwise a video-call excursion would call setRequestedOrientation()
+ // here and permanently flip the in-call screen back to portrait.
public static final int ACTIVITY_PREFERENCE_DISALLOW_ROTATION =
- ActivityInfo.SCREEN_ORIENTATION_NOSENSOR;
+ ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE;
/**
* This is to identify dead zones where we won't notify others of orientation changed. Say for e.g