https://kotlinlang.org logo
Join Slack
Powered by
# compose-desktop
  • u

    Umid Olimzhanov

    10/05/2025, 6:11 AM
    Is there any progress in compose native for windows?
    🚫 1
    s
    s
    h
    • 4
    • 6
  • s

    Sebastian Sellmair [JB]

    10/06/2025, 3:16 PM
    Hot Reload version 1.0.0-rc01 released 🎆 🔥 We have many improvements in mind, but we really want to commit to a given user experience and target stable soon ™️ https://github.com/JetBrains/compose-hot-reload/releases/tag/v1.0.0-rc01
    compose hot reload 11
    ❤️ 9
    🔥 28
  • a

    Alex Styl

    10/08/2025, 5:56 AM
    is there a way to get the AWT window in a compose test? I want to fire a 'Escape' press without any of my composables having focus inb4 why: I am building tooltips. they need to be dismissed on Escape and can be shown when an area is hovered (not focused)
    s
    a
    • 3
    • 4
  • r

    Robert Munro

    10/08/2025, 7:47 PM
    Hi everyone, I am getting a strange configuration error below for my desktop app on windows only (mac/linux fine) - was working fine until yesterday. i am on:
    Copy code
    kotlin = "2.1.21"
    compose = "1.9.0"
    composeMultiplatform = "1.9.0"
    The file does not exist
    ActualResourceCollectors.kt
    - the whole build folder is empty except for one empty folder
    hub/build/generated/compose/resourceGenerator/kotlin/mainResourceCollectors
    Copy code
    generateActualResourceCollectorsForMain task was failed:
    java.nio.file.InvalidPathException: Illegal char <?> at index 9: provider(?)/hub/generated/resources/ActualResourceCollectors.kt
    	at java.base/sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:204)
    	at java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:175)
    	at java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
    	at java.base/sun.nio.fs.WindowsPath.parse(WindowsPath.java:92)
    	at java.base/sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:231)
    	at java.base/java.nio.file.Path.resolve(Path.java:516)
    Thread in Slack Conversation
  • u

    אליהו הדס

    10/09/2025, 7:56 AM
    Hi, I have a project that only targets desktop, the previews work but don't refresh when I modify the code, is this normal?
  • t

    Trejkaz

    10/11/2025, 7:36 PM
    loadImageBitmap(InputStream)
    is deprecated. The replacement is the resource API, which is fine for resources, but what if I want to load a user-provided image?
    e
    m
    • 3
    • 19
  • t

    Trejkaz

    10/12/2025, 2:55 PM
    just overflowing to two rows of text is enough to break the centre alignment
    j
    e
    • 3
    • 7
  • a

    adte

    10/15/2025, 12:18 AM
    Do you guys have some pointers on how to profile a Compose jvm app with YourKit? I'm not sure how to figure out the optimization opportunities for my app - a lot of the methods it's showing are related to coroutines or the compose runtime. Should I exclude these methods from the trace, since they're from the runtime? how do I link back to the app code?
  • u

    ursus

    10/15/2025, 2:38 AM
    Would running android’s R8 over a compose desktop jar help anything perf wise?
    j
    c
    • 3
    • 25
  • v

    v79

    10/15/2025, 5:44 AM
    I've added a
    ToolTipArea
    to a button on a compose desktop application. It works fine in the running application, but the preview compilation fails -
    Unresolved reference 'TooltipArea'
    . Is this something I need to do with expect/actual? Or have I found a bug? I've just updated to compose multiplatform 1.9.1.
    • 1
    • 1
  • u

    ursus

    10/15/2025, 4:45 PM
    Is there a way to speed up start of
    compose desktop
    app? Other then doing less at the start of app - I mean if there isn't some sort of
    release
    flag which turns on optimizations like there is on android
  • u

    ursus

    10/15/2025, 11:57 PM
    Copy code
    plugins {
        id "org.jetbrains.kotlin.jvm" version "2.2.20"
        id "org.jetbrains.kotlin.plugin.compose" version "2.2.20"
        id "org.jetbrains.compose" version "1.9.1"
    }
    
    //
    //
    //
    fun main(args: Array<String>) = singleWindowApplication {
        AppTheme {
            ...
        }
    }
    
    @Composable
    fun AppTheme(content: @Composable () -> Unit) {
        MaterialTheme(
            colors = if (isSystemInDarkTheme()) { <-----------------------
                darkColors()
            } else {
                lightColors()
            },
        ) {
            Surface(color = MaterialTheme.colors.background, content = content)
        }
    }
    Why is the compose desktop app not reacting to dark mode changes? I'm testing on
    mac os
    and
    windows
    , and when I toggle the system setting it does nothing. After restart it picks up the current setting but not during runtime. Is this known?
    z
    a
    u
    • 4
    • 8
  • d

    dhia chemingui

    10/16/2025, 3:56 PM
    Hi Folks. I have question How I could extract glyphs paths as compose paths from fonts using jetbrains skia or even compose . Or its impossible ? I try to load typface with skiko typface but there is no api provided for that so I try TypefaceFontProvider but it does not work the data loaded as byte but when asign it the typface is null .
    Copy code
    val provider = TypefaceFontProviderWithFallback()
    
    val data = Data.makeFromBytes(Res.readBytes("font/cairomedium.ttf"))
    
    val typeface = provider.makeFromData(data)
    k
    • 2
    • 1
  • j

    jdemeulenaere

    10/18/2025, 7:50 PM
    Is there any plugin or even existing example to add screenshot tests to Compose Multiplatform/Desktop?
    z
    • 2
    • 1
  • j

    jdemeulenaere

    10/20/2025, 5:35 PM
    I'm using a custom
    configurations.resolutionStrategy.eachDependency { ... }
    block to automatically set the versions of my 3P dependencies, and for some reason this doesn't work well in the IDE when syncing my project (e.g. it prints the error
    Could not find org.jetbrains.compose.runtime:runtime:.
    and the references don't work) but the code compiles fine with Gradle. Any idea what could be causing this by any chance?
    • 1
    • 2
  • k

    Konstantin Kostov Gerry

    10/21/2025, 12:45 PM
    Hi folks. Is it possible to set a different
    packageName
    per platform? I've been trying various combinations but it leads to strange results. For example, setting
    nativeDistributions.packageName
    and
    nativeDistributions.macOS.packageName
    results in
    nativeDistributions.packageName
    being used. If I also set
    nativeDistributions.windows.packageName
    the outcome is that the package name for windows is used for all platforms e.g.:
    Copy code
    compose.desktop {
        application {
            mainClass = "org.example.project.MainKt"
    
            nativeDistributions {
                targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb)
                packageName = "org.example.project"
                packageVersion = "1.0.0"
    
                macOS {
                    packageName = "Foo"
                }
    
                windows {
                    packageName = "Bar"
                }
            }
        }
    }
    e
    j
    • 3
    • 3
  • u

    ursus

    10/22/2025, 2:07 PM
    When I'm in darkmode, and I resize the window quickly, it seems that the compose ui is not keeping up & I'm seeing flashes of the "window" underneath. Am I doing something wrong?
    Copy code
    fun main(args: Array<String>) {
        singleWindowApplication(
            title = "Git Gooey",
            state = WindowState(size = DpSize(width = 1600.dp, 960.dp))
        ) {
            App()
        }
    }
    
    @Composable
    private fun App() {
        AppTheme {
            Surface(color = MaterialTheme.colorScheme.background) {
                MainPanes()
            }
        }
    }
    Code I believe is nothing special. Any way around that?
    Screen Recording 2025-10-22 at 16.05.48.mov
    j
    a
    u
    • 4
    • 9
  • u

    אליהו הדס

    10/22/2025, 9:37 PM
    It is possible tu use app cds with compose desktop ?
    👀 1
    e
    m
    • 3
    • 13
  • s

    S.

    10/26/2025, 11:29 AM
    When using an undecorated window and
    WindowDraggableArea
    , is it possible to get the Windows window management tools (see screenshot) when moving the app to the top of my screen?
    u
    a
    • 3
    • 8
  • u

    אליהו הדס

    10/26/2025, 12:32 PM
    Hi, how to compile my app for Mac Intel?
    a
    m
    • 3
    • 11
  • c

    Cherrio LLC

    10/26/2025, 4:23 PM
    Hello, is there a way to make a desktop app behave like Jetbrains Toolbox. It's a floating window that can be opened or closed by clicking the tray icon or touch outside? And I also noticed its not a window. Am I wrong??
    s
    a
    +3
    • 6
    • 6
  • u

    ursus

    10/28/2025, 7:27 PM
    Was someone able to get AOT cache going for faster startup? (java 25)
    p
    a
    • 3
    • 71
  • u

    ursus

    10/29/2025, 2:31 AM
    Is there a way to make the semaphore padding same as is on the "modern" macos apps? (Foreground is Preferences app, background is my Compose desktop app)
    u
    • 2
    • 2
  • u

    ursus

    10/29/2025, 5:25 PM
    Soo even though this is java, skiko is not & I need to build it separately for macos, windows, linux, right? Is there an easy way of doing this, other than having/renting a dedicated machine available to build on? (Maybe the skiko bit is prebuilt somewhere and I only need to include it or something like that .. ?)
    e
    a
    +2
    • 5
    • 6
  • u

    אליהו הדס

    10/30/2025, 7:24 AM
    Hi, I need to add options to the context menu, how I do that?
    a
    • 2
    • 5
  • n

    Nguyen Duc Tuan Minh

    10/30/2025, 8:03 AM
    Hi, I am developing Compose Multiplatform app, btw, the Swing panel is very buggy on Linux, the issue here is the Swing Panel always-on-top the Compose View (Box, etc). Any plan or any version fixed it? (Mac and Windows fixed)
  • b

    bj0

    10/30/2025, 11:57 PM
    I just notice if you put a
    TooltipArea
    over a button it completely blocks the button and it becomes unusable. My searching showed a comment from 3 years ago where the only suggestion was to use a custom made alternative. Is the built in one still not really usable?
    a
    a
    • 3
    • 4
  • b

    bj0

    10/31/2025, 12:38 AM
    Also, does the latest version of compose desktop require glibc 2.29? the previous version worked fine with 2.28. There's also this issue from 2 years ago about it with no responses: https://youtrack.jetbrains.com/issue/CMP-2279
    e
    • 2
    • 10
  • k

    Konstantin Kostov Gerry

    11/03/2025, 9:16 AM
    Hi folks, does anyone have a recommendation for an accessible date / time / date time picker desktop lib?
    s
    • 2
    • 1
  • s

    Stefan Oltmann

    11/05/2025, 1:37 PM
    I feel that https://youtrack.jetbrains.com/issue/CMP-4126 was closed to soon as this is still an issue you can run into in production.