mirror of
https://github.com/jlengrand/compose-multiplatform.git
synced 2026-03-10 08:11:20 +00:00
Move image viewer to 0.0.0-master-build413
This commit is contained in:
@@ -7,7 +7,7 @@ buildscript {
|
||||
|
||||
dependencies {
|
||||
// __LATEST_COMPOSE_RELEASE_VERSION__
|
||||
classpath("org.jetbrains.compose:compose-gradle-plugin:1.0.0-alpha4-build361")
|
||||
classpath("org.jetbrains.compose:compose-gradle-plugin:0.0.0-master-build413")
|
||||
classpath("com.android.tools.build:gradle:4.1.0")
|
||||
classpath(kotlin("gradle-plugin", version = "1.5.31"))
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package example.imageviewer.utils
|
||||
|
||||
import androidx.compose.ui.window.WindowSize
|
||||
import androidx.compose.ui.unit.DpSize
|
||||
import androidx.compose.ui.unit.dp
|
||||
import java.awt.Dimension
|
||||
import java.awt.Graphics2D
|
||||
@@ -41,7 +41,7 @@ fun scaleBitmapAspectRatio(
|
||||
return result
|
||||
}
|
||||
|
||||
fun getDisplayBounds(bitmap: BufferedImage, windowSize: WindowSize): Rectangle {
|
||||
fun getDisplayBounds(bitmap: BufferedImage, windowSize: DpSize): Rectangle {
|
||||
|
||||
val boundW: Float = windowSize.width.value.toFloat()
|
||||
val boundH: Float = windowSize.height.value.toFloat()
|
||||
@@ -123,7 +123,7 @@ fun cropImage(bitmap: BufferedImage, crop: Rectangle) : BufferedImage {
|
||||
|
||||
fun cropBitmapByScale(
|
||||
bitmap: BufferedImage,
|
||||
size: WindowSize,
|
||||
size: DpSize,
|
||||
scale: Float,
|
||||
drag: DragHandler
|
||||
): BufferedImage {
|
||||
@@ -143,7 +143,7 @@ fun cropBitmapByScale(
|
||||
fun cropBitmapByBounds(
|
||||
bitmap: BufferedImage,
|
||||
bounds: Rectangle,
|
||||
size: WindowSize,
|
||||
size: DpSize,
|
||||
scaleFactor: Float,
|
||||
drag: DragHandler
|
||||
): Rectangle {
|
||||
@@ -196,11 +196,11 @@ fun cropBitmapByBounds(
|
||||
return Rectangle(leftOffset, topOffset, leftOffset + boundW, topOffset + boundH)
|
||||
}
|
||||
|
||||
fun getPreferredWindowSize(desiredWidth: Int, desiredHeight: Int): WindowSize {
|
||||
fun getPreferredWindowSize(desiredWidth: Int, desiredHeight: Int): DpSize {
|
||||
val screenSize: Dimension = Toolkit.getDefaultToolkit().screenSize
|
||||
val preferredWidth: Int = (screenSize.width * 0.8f).toInt()
|
||||
val preferredHeight: Int = (screenSize.height * 0.8f).toInt()
|
||||
val width: Int = if (desiredWidth < preferredWidth) desiredWidth else preferredWidth
|
||||
val height: Int = if (desiredHeight < preferredHeight) desiredHeight else preferredHeight
|
||||
return WindowSize(width.dp, height.dp)
|
||||
return DpSize(width.dp, height.dp)
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package example.imageviewer.view
|
||||
|
||||
import androidx.compose.ui.ExperimentalComposeUiApi
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.geometry.Offset
|
||||
import androidx.compose.ui.input.pointer.pointerMoveFilter
|
||||
|
||||
@OptIn(ExperimentalComposeUiApi::class)
|
||||
actual fun Modifier.hover(
|
||||
onEnter: () -> Boolean,
|
||||
onExit: () -> Boolean,
|
||||
|
||||
Reference in New Issue
Block a user