[orx-midi] Fix shutdown hook with inner class
This commit is contained in:
@@ -86,6 +86,11 @@ class MidiTransceiver(val receiverDevice: MidiDevice, val transmitterDevicer: Mi
|
|||||||
|
|
||||||
private val receiver = receiverDevice.receiver
|
private val receiver = receiverDevice.receiver
|
||||||
private val transmitter = transmitterDevicer.transmitter
|
private val transmitter = transmitterDevicer.transmitter
|
||||||
|
private inner class Destroyer: Thread() {
|
||||||
|
override fun run() {
|
||||||
|
destroy()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
init {
|
init {
|
||||||
transmitter.receiver = object : MidiDeviceReceiver {
|
transmitter.receiver = object : MidiDeviceReceiver {
|
||||||
@@ -109,11 +114,7 @@ class MidiTransceiver(val receiverDevice: MidiDevice, val transmitterDevicer: Mi
|
|||||||
}
|
}
|
||||||
|
|
||||||
// shut down midi if user calls `exitProcess(0)`
|
// shut down midi if user calls `exitProcess(0)`
|
||||||
Runtime.getRuntime().addShutdownHook(object : Thread() {
|
Runtime.getRuntime().addShutdownHook(Destroyer())
|
||||||
override fun run() {
|
|
||||||
destroy()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val controlChanged = Event<MidiEvent>("midi-transceiver::controller-changed")
|
val controlChanged = Event<MidiEvent>("midi-transceiver::controller-changed")
|
||||||
|
|||||||
Reference in New Issue
Block a user