From 97d24a7d4d82a335ee6a7a38a5ec63d51f3e5bb9 Mon Sep 17 00:00:00 2001 From: Viktor De Pasquale Date: Thu, 6 Feb 2020 14:40:38 +0100 Subject: [PATCH] Removed single-use reboot menu This addition will be used in modules as soon as the homepage gets merged --- .../magisk/model/events/RebootEvent.kt | 19 +++++++++++++++++++ .../topjohnwu/magisk/ui/home/HomeViewModel.kt | 9 --------- .../main/res/layout/include_home_device.xml | 4 +++- 3 files changed, 22 insertions(+), 10 deletions(-) create mode 100644 app/src/main/java/com/topjohnwu/magisk/model/events/RebootEvent.kt diff --git a/app/src/main/java/com/topjohnwu/magisk/model/events/RebootEvent.kt b/app/src/main/java/com/topjohnwu/magisk/model/events/RebootEvent.kt new file mode 100644 index 000000000..af588d2f3 --- /dev/null +++ b/app/src/main/java/com/topjohnwu/magisk/model/events/RebootEvent.kt @@ -0,0 +1,19 @@ +package com.topjohnwu.magisk.model.events + +import com.topjohnwu.magisk.R +import com.topjohnwu.superuser.Shell +import com.topjohnwu.magisk.extensions.reboot as systemReboot + +object RebootEvent { + + @JvmStatic + fun reboot(menuItemId: Int) = when (menuItemId) { + R.id.action_reboot_normal -> systemReboot() + R.id.action_reboot_bootloader -> systemReboot("bootloader") + R.id.action_reboot_download -> systemReboot("download") + R.id.action_reboot_edl -> systemReboot("edl") + R.id.action_reboot_recovery -> Shell.su("/system/bin/reboot recovery").submit() + else -> Unit + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt b/app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt index d0e8403f6..e06e63274 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt @@ -136,15 +136,6 @@ class HomeViewModel( .subscribeK { Navigation.install().publish() } .add() - fun rebootPressed(menuItemId: Int) = when (menuItemId) { - R.id.action_reboot_normal -> reboot() - R.id.action_reboot_bootloader -> reboot("bootloader") - R.id.action_reboot_download -> reboot("download") - R.id.action_reboot_edl -> reboot("edl") - R.id.action_reboot_recovery -> Shell.su("/system/bin/reboot recovery").submit() - else -> Unit - } - fun toggle(kof: KObservableField) = kof.toggle() fun hideNotice() { diff --git a/app/src/main/res/layout/include_home_device.xml b/app/src/main/res/layout/include_home_device.xml index 047ae6a8d..2a8e423fa 100644 --- a/app/src/main/res/layout/include_home_device.xml +++ b/app/src/main/res/layout/include_home_device.xml @@ -13,6 +13,8 @@ + + @@ -51,7 +53,7 @@ style="@style/WidgetFoundation.Button.Text" invisibleUnless="@{XSUKt.hasRoot}" popupMenu="@{R.menu.menu_reboot}" - popupMenuOnClickListener="@{(it) -> viewModel.rebootPressed(it)}" + popupMenuOnClickListener="@{RebootEvent::reboot}" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="@dimen/l_50"