Unverified Commit 848a57cd authored by Roman Sedaikin's avatar Roman Sedaikin Committed by GitHub

Fix for swing interop on macos. (#269)

parent 42076471
...@@ -118,6 +118,8 @@ fun createWindow(title: String, exitOnClose: Boolean) = SwingUtilities.invokeLat ...@@ -118,6 +118,8 @@ fun createWindow(title: String, exitOnClose: Boolean) = SwingUtilities.invokeLat
window.background = java.awt.Color(0, 0, 0, 0) window.background = java.awt.Color(0, 0, 0, 0)
} }
window.layer.transparency = true window.layer.transparency = true
} else {
window.layer.background = java.awt.Color.WHITE
} }
// MANDATORY: set window preferred size before calling pack() // MANDATORY: set window preferred size before calling pack()
......
...@@ -9,9 +9,10 @@ import org.jetbrains.skiko.GraphicsApi ...@@ -9,9 +9,10 @@ import org.jetbrains.skiko.GraphicsApi
import org.jetbrains.skiko.SkiaLayer import org.jetbrains.skiko.SkiaLayer
import org.jetbrains.skiko.hostArch import org.jetbrains.skiko.hostArch
import org.jetbrains.skiko.hostOs import org.jetbrains.skiko.hostOs
import org.jetbrains.skiko.OS
internal abstract class ContextHandler(val layer: SkiaLayer) { internal abstract class ContextHandler(val layer: SkiaLayer) {
open val clearColor = if (layer.transparency) 0 else -1 open val clearColor = if (layer.transparency || hostOs == OS.MacOS) 0 else -1
var context: DirectContext? = null var context: DirectContext? = null
var renderTarget: BackendRenderTarget? = null var renderTarget: BackendRenderTarget? = null
var surface: Surface? = null var surface: Surface? = null
...@@ -21,7 +22,7 @@ internal abstract class ContextHandler(val layer: SkiaLayer) { ...@@ -21,7 +22,7 @@ internal abstract class ContextHandler(val layer: SkiaLayer) {
abstract fun initCanvas() abstract fun initCanvas()
fun clearCanvas() { fun clearCanvas() {
val color = if (layer.fullscreen) -1 else clearColor val color = if (layer.fullscreen && hostOs != OS.MacOS) -1 else clearColor
canvas?.clear(color) canvas?.clear(color)
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment