compose-multiplatform icon indicating copy to clipboard operation
compose-multiplatform copied to clipboard

Window content sometimes has wrong offset (by 1px) and overlapped by window border and titlebar (Windows 10)

Open igordmn opened this issue 5 years ago • 1 comments

import androidx.compose.desktop.Window
import androidx.compose.foundation.Canvas
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.nativeCanvas
import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.unit.IntSize
import org.jetbrains.skija.Canvas
import org.jetbrains.skija.Paint

fun main() = Window(size = IntSize(100, 100)) {
    Canvas(
        modifier = Modifier.fillMaxSize()
    ) {
        val canvas =  drawContext.canvas.nativeCanvas
        val paint = Paint().apply {
            strokeWidth = 1f
            color = Color.Red.toArgb()
        }
        canvas.drawLine(10f, 0f, 20f, 0f, paint)
        canvas.drawLine(20f, 0.5f, 30f, 0.5f, paint)
        canvas.drawLine(30f, 1f, 40f, 1f, paint)
        canvas.drawLine(40f, 1.5f, 50f, 1.5f, paint)
        canvas.drawLine(50f, 2f, 60f, 2f, paint)

        canvas.drawLine(0f, 10f, 0f, 20f, paint)
        canvas.drawLine(0.5f, 20f, 0.5f, 30f, paint)
        canvas.drawLine(1f, 30f, 1f, 40f, paint)
        canvas.drawLine(1.5f, 40f, 1.5f, 50f, paint)
        canvas.drawLine(2f, 50f, 2f, 60f, paint)
    }
}

image

Image painted with Skija directly into file: image

Offset differs if we change size of the window or scale in the system.

igordmn avatar Dec 09 '20 08:12 igordmn

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.

okushnikov avatar Aug 26 '24 17:08 okushnikov