From 841d4ecdde4906468e730acc9c461f86335fe6a6 Mon Sep 17 00:00:00 2001 From: evgeny Date: Wed, 28 Oct 2026 15:20:12 +0100 Subject: [PATCH] Model radio screen receiver registration in host tests --- .../src/main/kotlin/android/content/Context.kt | 4 ++++ .../src/main/kotlin/android/content/HostIntents.kt | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/tools/chatgui-android/router-tests/src/main/kotlin/android/content/Context.kt b/tools/chatgui-android/router-tests/src/main/kotlin/android/content/Context.kt index 4d276d97..e588e67d 100644 --- a/tools/chatgui-android/router-tests/src/main/kotlin/android/content/Context.kt +++ b/tools/chatgui-android/router-tests/src/main/kotlin/android/content/Context.kt @@ -18,6 +18,7 @@ class Context { const val AUDIO_SERVICE = "audio"; const val SENSOR_SERVICE = "sensor"; const val VIBRATOR_SERVICE = "vibrator" const val POWER_SERVICE = "power" const val WIFI_SERVICE = "wifi" + const val RECEIVER_NOT_EXPORTED = 4 } val packageName = "com.utun.chat" var cacheDir = File(System.getProperty("java.io.tmpdir"), "utun-router-host-cache") @@ -36,6 +37,9 @@ class Context { var subscriptionManager: SubscriptionManager? = SubscriptionManager() var telephonyManager: TelephonyManager? = TelephonyManager() val configProvider = HostConfigProvider() + val receivers = mutableMapOf() + fun registerReceiver(receiver: BroadcastReceiver, filter: IntentFilter, flags: Int = 0) { receivers[receiver] = filter } + fun unregisterReceiver(receiver: BroadcastReceiver) { check(receivers.remove(receiver) != null) { "receiver not registered" } } val applicationContext: Context get() = this fun startActivity(intent: Intent) { activityAttempts.add(Intent(intent)) diff --git a/tools/chatgui-android/router-tests/src/main/kotlin/android/content/HostIntents.kt b/tools/chatgui-android/router-tests/src/main/kotlin/android/content/HostIntents.kt index aecdb457..11774243 100644 --- a/tools/chatgui-android/router-tests/src/main/kotlin/android/content/HostIntents.kt +++ b/tools/chatgui-android/router-tests/src/main/kotlin/android/content/HostIntents.kt @@ -8,6 +8,8 @@ class Intent() { const val FLAG_ACTIVITY_NEW_TASK = 0x10000000 const val FLAG_ACTIVITY_CLEAR_TOP = 0x04000000 const val FLAG_ACTIVITY_SINGLE_TOP = 0x20000000 + const val ACTION_SCREEN_ON = "android.intent.action.SCREEN_ON" + const val ACTION_SCREEN_OFF = "android.intent.action.SCREEN_OFF" } var action: String? = null var data: Uri? = null @@ -28,3 +30,8 @@ class Intent() { } abstract class BroadcastReceiver { abstract fun onReceive(context: Context, intent: Intent) } + +class IntentFilter { + val actions = mutableSetOf() + fun addAction(action: String) { actions.add(action) } +}