Commit 06f7945c authored by Igor Demin's avatar Igor Demin

Move dispose of `device` into Direct3DContextHandler

parent 27681468
......@@ -69,5 +69,8 @@ internal class Direct3DContextHandler(layer: SkiaLayer) : ContextHandler(layer)
if (context != null) {
destroyContext(Native.getPtr(context!!))
}
if (device != 0L) {
directXRedrawer.disposeDevice(device)
}
}
}
......@@ -14,7 +14,6 @@ internal class Direct3DRedrawer(
) : Redrawer {
private var isDisposed = false
private var device: Long = 0
private val frameDispatcher = FrameDispatcher(Dispatchers.Swing) {
update(System.nanoTime())
......@@ -23,7 +22,6 @@ internal class Direct3DRedrawer(
override fun dispose() {
frameDispatcher.cancel()
disposeDevice(device)
isDisposed = true
}
......@@ -54,10 +52,7 @@ internal class Direct3DRedrawer(
makeDirectXRenderTarget(device, width, height)
)
fun createDevice(): Long {
device = createDirectXDevice(layer.windowHandle)
return device
}
fun createDevice(): Long = createDirectXDevice(layer.windowHandle)
fun finishFrame(device: Long, context: Long, surface: Long) {
finishFrame(device, context, surface, properties.isVsyncEnabled)
......
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