fun onDataTransfer()

in sample/src/main/kotlin/org/jetbrains/desktop/sample/linux/SkikoSampleLinux.kt [565:593]


    fun onDataTransfer(content: DataTransferContent, app: Application): EventHandlerResult {
        when (content.mimeType) {
            URI_LIST_MIME_TYPE -> {
                val files = content.data.decodeToString().trimEnd().split("\r\n")
                Logger.info { "Pasted ${files.size} files:" }
                for (file in files) {
                    val path = URI(file).path
                    Logger.info { path }
                }
            }

            TEXT_MIME_TYPE -> {
                deleteSelection()
                val pastedText = content.data.decodeToString()
                text.insert(cursorOffset, pastedText)
                cursorOffset += pastedText.length
                selectionStartOffset = null
                selectionEndOffset = null
                if (textInputEnabled) {
                    app.textInputUpdate(createTextInputContext(changeCausedByInputMethod = false))
                }
            }

            PNG_MIME_TYPE -> {
                pastedImage = Image.makeFromEncoded(content.data)
            }
        }
        return EventHandlerResult.Stop
    }