Skip to content

[bug] On macOS, border of transparent window is not correct #14394

@scris

Description

@scris

Describe the bug

On macOS, windows got some sophisticated border, the outer one black and the inner one light grey, like this:

Image

When the transparency of a window is disabled, the border of the window is normal.

Image

However, if the window is set to be transparent, the window don't seem to get normal light grey inner border. We only get the black outer border, making the application looks unusual.

Image

Reproduction

Create a tauri project, add config json like this, and make the application running:

{
  "$schema": "https://schema.tauri.app/config/2",
  /* unrelated lines are removed */
  "app": {
    "macOSPrivateApi": true,
    "windows": [
      {
        "title": "",
        "width": 828,
        "height": 596,
        "resizable": false,
        "titleBarStyle": "Overlay",
        "transparent": true,
        "windowEffects": {
          "state": "active",
          "effects": ["fullScreenUI"]
        },
        "trafficLightPosition": {
          "x": 18,
          "y": 25
        }
      }
    ]
  }
}

Expected behavior

The border of transparent window on macOS should be as the normal ones.

Full tauri info output

[✔] Environment
    - OS: Mac OS 15.6.1 arm64 (X64)
    ✔ Xcode Command Line Tools: installed
    ✔ Xcode: 26.0
    ✔ rustc: 1.90.0 (1159e78c4 2025-09-14)
    ✔ cargo: 1.90.0 (840b83a10 2025-07-30)
    ✔ rustup: 1.28.2 (e4f3ad6f8 2025-04-28)
    ✔ Rust toolchain: stable-aarch64-apple-darwin (default)
    - node: 22.18.0
    - pnpm: 10.18.2
    - npm: 10.9.3

[-] Packages
    - tauri 🦀: 2.9.2
    - tauri-build 🦀: 2.5.1
    - wry 🦀: 0.53.5
    - tao 🦀: 0.34.5
    - @tauri-apps/api  ⱼₛ: not installed!
    - @tauri-apps/cli  ⱼₛ: 2.9.2

[-] Plugins
    - tauri-plugin-os 🦀: 2.3.2
    - @tauri-apps/plugin-os  ⱼₛ: 2.3.2

[-] App
    - build-type: bundle
    - CSP: unset
    - frontendDist: ../dist
    - devUrl: http://localhost:5173/
    - framework: React
    - bundler: Rollup

Stack trace


Additional context

In system settings, things are the default ones. I did not trigger the "Increase Contrast" setting in the Display section of the system settings.

Besides, although unrelated with this topic, we found that other approaches like Electron does not have this problem:

Image

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions