mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	Perform haptic feedback where appropriate (#8378)
This commit is contained in:
		| @@ -26,6 +26,8 @@ import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.composed | ||||
| import androidx.compose.ui.graphics.Color | ||||
| import androidx.compose.ui.hapticfeedback.HapticFeedbackType | ||||
| import androidx.compose.ui.platform.LocalHapticFeedback | ||||
| import androidx.compose.ui.res.painterResource | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import androidx.compose.ui.semantics.Role | ||||
| @@ -239,9 +241,14 @@ private fun Modifier.commonClickable( | ||||
|     onLongClick: () -> Unit, | ||||
|     onClick: () -> Unit, | ||||
| ) = composed { | ||||
|     val haptic = LocalHapticFeedback.current | ||||
|  | ||||
|     this.combinedClickable( | ||||
|         enabled = enabled, | ||||
|         onLongClick = onLongClick, | ||||
|         onLongClick = { | ||||
|             onLongClick() | ||||
|             haptic.performHapticFeedback(HapticFeedbackType.LongPress) | ||||
|         }, | ||||
|         onClick = onClick, | ||||
|         role = Role.Button, | ||||
|         interactionSource = remember { MutableInteractionSource() }, | ||||
|   | ||||
| @@ -6,6 +6,8 @@ import androidx.compose.material.icons.outlined.HelpOutline | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.runtime.getValue | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.hapticfeedback.HapticFeedbackType | ||||
| import androidx.compose.ui.platform.LocalHapticFeedback | ||||
| import androidx.compose.ui.platform.LocalUriHandler | ||||
| import androidx.compose.ui.util.fastAll | ||||
| import eu.kanade.domain.category.model.Category | ||||
| @@ -40,6 +42,8 @@ fun LibraryScreen( | ||||
|     onClickRefresh: (Category?) -> Boolean, | ||||
|     onClickOpenRandomManga: () -> Unit, | ||||
| ) { | ||||
|     val haptic = LocalHapticFeedback.current | ||||
|  | ||||
|     Scaffold( | ||||
|         topBar = { scrollBehavior -> | ||||
|             val title by presenter.getToolbarTitle() | ||||
| @@ -101,7 +105,10 @@ fun LibraryScreen( | ||||
|             onChangeCurrentPage = { presenter.activeCategory = it }, | ||||
|             onMangaClicked = onMangaClicked, | ||||
|             onToggleSelection = { presenter.toggleSelection(it) }, | ||||
|             onToggleRangeSelection = { presenter.toggleRangeSelection(it) }, | ||||
|             onToggleRangeSelection = { | ||||
|                 presenter.toggleRangeSelection(it) | ||||
|                 haptic.performHapticFeedback(HapticFeedbackType.LongPress) | ||||
|             }, | ||||
|             onRefresh = onClickRefresh, | ||||
|             onGlobalSearchClicked = onGlobalSearchClicked, | ||||
|             getNumberOfMangaForCategory = { presenter.getMangaCountForCategory(it) }, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user