diff --git a/src/org/kde/kdeconnect/Plugins/RemoteKeyboardPlugin/RemoteKeyboardPlugin.java b/src/org/kde/kdeconnect/Plugins/RemoteKeyboardPlugin/RemoteKeyboardPlugin.java index 6f86ab2d..e985050d 100644 --- a/src/org/kde/kdeconnect/Plugins/RemoteKeyboardPlugin/RemoteKeyboardPlugin.java +++ b/src/org/kde/kdeconnect/Plugins/RemoteKeyboardPlugin/RemoteKeyboardPlugin.java @@ -414,7 +414,8 @@ public class RemoteKeyboardPlugin extends Plugin implements SharedPreferences.On public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (key.equals(context.getString(R.string.remotekeyboard_editing_only))) { final boolean editingOnly = sharedPreferences.getBoolean(context.getString(R.string.remotekeyboard_editing_only), true); - notifyKeyboardState(editingOnly ? RemoteKeyboardService.instance.visible : true); + final boolean visible = RemoteKeyboardService.instance != null && RemoteKeyboardService.instance.visible; + notifyKeyboardState(!editingOnly || visible); } } } diff --git a/src/org/kde/kdeconnect/Plugins/RunCommandPlugin/RunCommandControlsProviderService.kt b/src/org/kde/kdeconnect/Plugins/RunCommandPlugin/RunCommandControlsProviderService.kt index c2ce88e9..7a421c04 100644 --- a/src/org/kde/kdeconnect/Plugins/RunCommandPlugin/RunCommandControlsProviderService.kt +++ b/src/org/kde/kdeconnect/Plugins/RunCommandPlugin/RunCommandControlsProviderService.kt @@ -140,7 +140,9 @@ class RunCommandControlsProviderService : ControlsProviderService() { private fun getAllCommandsList(): List { val commandList = mutableListOf() - for (device in BackgroundService.getInstance().devices.values) { + val service = BackgroundService.getInstance() ?: return commandList + + for (device in service.devices.values) { if (!device.isReachable) { commandList.addAll(getSavedCommandsList(device)) continue