From 54ea726f914fdfb74db4bebefcaa8e06659477b4 Mon Sep 17 00:00:00 2001 From: Nikolay Igotti Date: Mon, 2 Aug 2021 10:14:49 +0300 Subject: [PATCH] Fix icon setting --- .../compose/demo/widgets/platform/Mouse.kt | 18 +++++------------- .../org/jetbrains/compose/demo/widgets/main.kt | 6 +----- 2 files changed, 6 insertions(+), 18 deletions(-) diff --git a/examples/widgetsgallery/common/src/desktopMain/kotlin/org/jetbrains/compose/demo/widgets/platform/Mouse.kt b/examples/widgetsgallery/common/src/desktopMain/kotlin/org/jetbrains/compose/demo/widgets/platform/Mouse.kt index ab345812bb..64dd833ac2 100644 --- a/examples/widgetsgallery/common/src/desktopMain/kotlin/org/jetbrains/compose/demo/widgets/platform/Mouse.kt +++ b/examples/widgetsgallery/common/src/desktopMain/kotlin/org/jetbrains/compose/demo/widgets/platform/Mouse.kt @@ -1,14 +1,13 @@ package org.jetbrains.compose.demo.widgets.platform import androidx.compose.runtime.* +import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.Modifier import androidx.compose.ui.composed import androidx.compose.ui.geometry.Offset +import androidx.compose.ui.input.pointer.PointerIcon +import androidx.compose.ui.input.pointer.pointerIcon import androidx.compose.ui.input.pointer.pointerMoveFilter -import androidx.compose.ui.window.FrameWindowScope -import java.awt.Cursor - -val AppFrame = staticCompositionLocalOf { error("Undefined repository") } actual fun Modifier.pointerMoveFilter( onEnter: () -> Boolean, @@ -16,18 +15,11 @@ actual fun Modifier.pointerMoveFilter( onMove: (Offset) -> Boolean ): Modifier = this.pointerMoveFilter(onEnter = onEnter, onExit = onExit, onMove = onMove) +@OptIn(ExperimentalComposeUiApi::class) actual fun Modifier.cursorForHorizontalResize(): Modifier = composed { var isHover by remember { mutableStateOf(false) } - - val window = AppFrame.current.window - window.cursor = if (isHover) { - Cursor(Cursor.E_RESIZE_CURSOR) - } else { - Cursor.getDefaultCursor() - } - pointerMoveFilter( onEnter = { isHover = true; true }, onExit = { isHover = false; true } - ) + ).pointerIcon(if (isHover) PointerIcon.Crosshair else PointerIcon.Default) } \ No newline at end of file diff --git a/examples/widgetsgallery/desktop/src/jvmMain/kotlin/org/jetbrains/compose/demo/widgets/main.kt b/examples/widgetsgallery/desktop/src/jvmMain/kotlin/org/jetbrains/compose/demo/widgets/main.kt index 5579f06d7f..f2b0816e57 100644 --- a/examples/widgetsgallery/desktop/src/jvmMain/kotlin/org/jetbrains/compose/demo/widgets/main.kt +++ b/examples/widgetsgallery/desktop/src/jvmMain/kotlin/org/jetbrains/compose/demo/widgets/main.kt @@ -1,10 +1,8 @@ package org.jetbrains.compose.demo.widgets -import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.ui.unit.IntSize import androidx.compose.ui.unit.dp import androidx.compose.ui.window.* -import org.jetbrains.compose.demo.widgets.platform.AppFrame import org.jetbrains.compose.demo.widgets.ui.MainView import java.awt.Dimension import java.awt.Toolkit @@ -15,9 +13,7 @@ fun main() { title = "Widgets Gallery", state = WindowState(size = WindowSize(size.width.dp, size.height.dp)), ) { - CompositionLocalProvider(AppFrame provides this) { - MainView() - } + MainView() } }