2026-08-19 17:19:47 +03:00
|
|
|
package com.aerotoss
|
|
|
|
|
|
|
|
|
|
import androidx.compose.runtime.*
|
|
|
|
|
import androidx.compose.ui.window.Window
|
|
|
|
|
import androidx.compose.ui.window.application
|
|
|
|
|
import com.aerotoss.core.AeroTossManager
|
2026-08-19 23:09:29 +03:00
|
|
|
import com.aerotoss.discovery.TcpDiscovery
|
2026-08-19 23:24:01 +03:00
|
|
|
import com.aerotoss.model.DeviceType
|
2026-08-19 17:19:47 +03:00
|
|
|
import com.aerotoss.transfer.DesktopFileTransferManager
|
|
|
|
|
import com.aerotoss.ui.App
|
|
|
|
|
|
|
|
|
|
fun main() = application {
|
|
|
|
|
val transferManager = remember { DesktopFileTransferManager() }
|
2026-08-19 23:24:01 +03:00
|
|
|
val discoveryManager = remember { TcpDiscovery(DeviceType.DESKTOP) }
|
2026-08-19 17:19:47 +03:00
|
|
|
val manager = remember { AeroTossManager(discoveryManager, transferManager) }
|
|
|
|
|
|
|
|
|
|
LaunchedEffect(Unit) {
|
|
|
|
|
val port = transferManager.startServer(0)
|
|
|
|
|
manager.start(port)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Window(
|
2026-08-19 23:24:01 +03:00
|
|
|
onCloseRequest = { manager.dispose(); exitApplication() },
|
2026-08-19 17:19:47 +03:00
|
|
|
title = "AeroToss"
|
|
|
|
|
) {
|
|
|
|
|
App(manager)
|
|
|
|
|
}
|
|
|
|
|
}
|