Unverified Commit 1bb1711b authored by Igor Demin's avatar Igor Demin Committed by GitHub

Merge pull request #78 from JetBrains/some_fixes_after_metal

Some fixes after metal
parents 3158b8d7 20b277ce
......@@ -50,7 +50,6 @@ open class SkiaLayer(
if (!isInited && isShowing) {
backedLayer.defineContentScale()
init()
isInited = true
}
}
......@@ -85,32 +84,26 @@ open class SkiaLayer(
val initialRenderApi = fallbackRenderApiQueue.removeAt(0)
contextHandler = createContextHandler(this, initialRenderApi)
redrawer = platformOperations.createRedrawer(this, initialRenderApi, properties)
redrawer?.syncSize()
redraw()
isInited = true
}
open fun dispose() {
check(!isDisposed)
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) {
redrawer?.dispose() // we should dispose redrawer first (to cancel `draw` in rendering thread)
contextHandler?.dispose()
picture?.instance?.close()
pictureRecorder.close()
backedLayer.dispose()
isDisposed = true
}
}
override fun setBounds(x: Int, y: Int, width: Int, height: Int) {
super.setBounds(x, y, width, height)
backedLayer.setSize(width, height)
if (backedLayer.checkContentScale()) {
contentScaleChanged()
}
redrawer?.syncSize()
redraw()
revalidate()
}
override fun paint(g: Graphics) {
......@@ -144,21 +137,6 @@ open class SkiaLayer(
private var redrawScheduled = false
/**
* Redraw as soon as possible (but not right now)
*/
fun redraw() {
if (!redrawScheduled) {
redrawScheduled = true
invokeLater {
redrawScheduled = false
if (!isDisposed) {
redrawer?.redrawImmediately()
}
}
}
}
/**
* Redraw on the next animation Frame (on vsync signal if vsync is enabled).
*/
......
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