Skip to content

Drag-view alpha flattened to white: koncept drag glyph shows white corner notches on JavaFX 27-ea #885

Description

@knowledge-graphlet

Symptom

Every drag image built by KonceptDragGlyph shows opaque white notches at the four corners of the rounded pill — visible when dragging over a non-white backdrop (the navigator panels), invisible over white (the assistant compose area), which is why the glyph looked clean where it was first exercised.

Analysis — the transparency is correct at the source

The pill's corners are genuinely transparent in the produced image:

  • glyphStyle() paints only the pill fill and border (-fx-background-radius: 6), no white layer;
  • render() snapshots with SnapshotParameters.setFill(Color.TRANSPARENT) into a fresh WritableImage (transparent by construction).

So the alpha is being flattened to white downstream of Dragboard.setDragView(Image, …) — in the FX-image-to-native-drag-image conversion. Komet currently runs the pinned JavaFX 27-ea (see komet-bom's JavaFX 27-ea+24 pin rationale); transparent drag views have historically worked on JavaFX/macOS, so an ea-line regression in the drag-view conversion is the prime suspect. The legacy DragImageMaker snapshot path would flatten identically, but its images were full rectangles, so nothing was visible.

Suggested handling

  • Re-test on JavaFX 27 GA (expected 2026-09-15, when the ea pin is scheduled to be dropped). If GA restores alpha, close.
  • If GA still flattens: reduce exposure by minimizing transparent margin in the glyph (the notches are only the 6px corner radius), or accept the artifact and reference the upstream JBS issue once identified.
  • Not proposed: pre-compositing the corners onto an assumed backdrop — the backdrop is unknowable and both light and dark panels are in play.

Acceptance

Dragging any koncept over the navigator's grey backdrop shows the rounded pill with no white corner notches.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions