File tree Expand file tree Collapse file tree
AnkiDroid/src/main/java/com/ichi2/anki/ui/windows/reviewer/whiteboard Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -106,20 +106,24 @@ class WhiteboardFragment :
106106 val isUsingGesturesNavigation = context?.let { compat.isUsingSystemGestureNavigation(it) } == true
107107 doubleBackCallback =
108108 doubleBackPressCallback(
109- enabled = ! isHidden && isUsingGesturesNavigation,
109+ enabled = ! isHidden && isUsingGesturesNavigation && ! isEmpty() ,
110110 onFirstBack = { showSnackbar(R .string.back_pressed_once, Snackbar .LENGTH_SHORT ) },
111111 shouldReEnable = {
112- ! isHidden && isUsingGesturesNavigation
112+ ! isHidden && isUsingGesturesNavigation && ! isEmpty()
113113 },
114114 ).also {
115115 requireActivity().onBackPressedDispatcher.addCallback(viewLifecycleOwner, it)
116116 }
117+ combine(viewModel.canUndo, viewModel.canRedo) { canUndo, canRedo -> canUndo || canRedo }
118+ .onEach { hasContent ->
119+ doubleBackCallback?.isEnabled = ! isHidden && isUsingGesturesNavigation && hasContent
120+ }.launchIn(lifecycleScope)
117121 }
118122
119123 override fun onHiddenChanged (hidden : Boolean ) {
120124 super .onHiddenChanged(hidden)
121125 val isUsingGesturesNavigation = context?.let { compat.isUsingSystemGestureNavigation(it) } == true
122- doubleBackCallback?.isEnabled = ! hidden && isUsingGesturesNavigation
126+ doubleBackCallback?.isEnabled = ! hidden && isUsingGesturesNavigation && ! isEmpty()
123127 }
124128
125129 private fun setupUI () {
You can’t perform that action at this time.
0 commit comments