Commit 686f62c8 authored by Igor Demin's avatar Igor Demin

SkiaLayer. fix dipose

parent 3158b8d7
...@@ -50,7 +50,6 @@ open class SkiaLayer( ...@@ -50,7 +50,6 @@ open class SkiaLayer(
if (!isInited && isShowing) { if (!isInited && isShowing) {
backedLayer.defineContentScale() backedLayer.defineContentScale()
init() init()
isInited = true
} }
} }
...@@ -86,19 +85,22 @@ open class SkiaLayer( ...@@ -86,19 +85,22 @@ open class SkiaLayer(
contextHandler = createContextHandler(this, initialRenderApi) contextHandler = createContextHandler(this, initialRenderApi)
redrawer = platformOperations.createRedrawer(this, initialRenderApi, properties) redrawer = platformOperations.createRedrawer(this, initialRenderApi, properties)
redrawer?.syncSize() redrawer?.syncSize()
isInited = true
redraw() redraw()
} }
open fun dispose() { open fun dispose() {
check(!isDisposed) check(!isDisposed)
check(isEventDispatchThread()) check(isEventDispatchThread())
redrawer?.dispose() // we should dispose redrawer first (to cancel `draw` in rendering thread)
contextHandler?.dispose()
picture?.instance?.close()
pictureRecorder.close()
isDisposed = true
if (isInited) { if (isInited) {
redrawer?.dispose() // we should dispose redrawer first (to cancel `draw` in rendering thread)
contextHandler?.dispose()
picture?.instance?.close()
pictureRecorder.close()
backedLayer.dispose() backedLayer.dispose()
isDisposed = true
} }
} }
......
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