[GH-ISSUE #3536] [Bug] CSD GTK titlebar on GNOME does not follow dark/light theme setting #1604

Open
opened 2026-03-23 20:51:36 +00:00 by mirror · 6 comments
Owner

Originally created by @RushingAlien on GitHub (Sep 26, 2023).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/3536

Bug Description

GNOME doesn't draw window decorations for native Wayland clients, so when AppFlowy runs as a native wayland client, Flutter uses GTK to draw a window decoration instead, but it seems that its theme is unaffected via org.freedesktop.appereance setting key

How to Reproduce

  1. Use GNOME on Wayland (Vanilla GNOME)
  2. Install appflowy
  3. Use appflowy
  4. Use gnome-control-center (GNOME settings) to change theme settings

Expected Behavior

For AppFlowy and CSD to go dark,

Currently, only AppFlowy goes dark, CSD titlebar stays

Operating System

Arch Linux, Freedesktop Flatpak runtime

AppFlowy Version(s)

0.3.2 (Flatpak)

Screenshots

Screencast dari 2023-09-25 01-12-36.webm

Additional Context

Also see Flutter upstream's status for org.freedesktop.appereance setting key :
https://github.com/flutter/flutter/issues/92261
https://github.com/flutter/flutter/issues/135390

Originally created by @RushingAlien on GitHub (Sep 26, 2023). Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/3536 ### Bug Description GNOME doesn't draw window decorations for native Wayland clients, so when AppFlowy runs as a native wayland client, Flutter uses GTK to draw a window decoration instead, but it seems that its theme is unaffected via `org.freedesktop.appereance` setting key ### How to Reproduce 1. Use GNOME on Wayland (Vanilla GNOME) 2. Install appflowy 3. Use appflowy 4. Use gnome-control-center (GNOME settings) to change theme settings ### Expected Behavior For AppFlowy and CSD to go dark, Currently, only AppFlowy goes dark, CSD titlebar stays ### Operating System Arch Linux, Freedesktop Flatpak runtime ### AppFlowy Version(s) 0.3.2 (Flatpak) ### Screenshots [Screencast dari 2023-09-25 01-12-36.webm](https://github.com/AppFlowy-IO/AppFlowy/assets/80886145/7aef6ba8-3811-4809-b191-5287e4499206) ### Additional Context Also see Flutter upstream's status for org.freedesktop.appereance setting key : https://github.com/flutter/flutter/issues/92261 https://github.com/flutter/flutter/issues/135390
Author
Owner

@frandmb commented on GitHub (Mar 16, 2024):

I can confirm that this also happens on KDE when using Wayland. Xwayland draws it fine.

<!-- gh-comment-id:2001997488 --> @frandmb commented on GitHub (Mar 16, 2024): I can confirm that this also happens on KDE when using Wayland. Xwayland draws it fine.
Author
Owner

@Microwave-WYB commented on GitHub (Mar 20, 2024):

Have you tried adw-gtk3?

https://github.com/AppFlowy-IO/AppFlowy/assets/68882116/10d553dc-2972-4ce1-b301-72d18935355c

<!-- gh-comment-id:2010748376 --> @Microwave-WYB commented on GitHub (Mar 20, 2024): Have you tried [adw-gtk3](https://github.com/lassekongo83/adw-gtk3)? https://github.com/AppFlowy-IO/AppFlowy/assets/68882116/10d553dc-2972-4ce1-b301-72d18935355c
Author
Owner

@eburakova commented on GitHub (Jun 2, 2024):

I have this issue on GNOME 42.9 (on Ubuntu 22)

<!-- gh-comment-id:2143774656 --> @eburakova commented on GitHub (Jun 2, 2024): I have this issue on GNOME 42.9 (on Ubuntu 22)
Author
Owner

@frandmb commented on GitHub (Aug 15, 2024):

Seems related to https://github.com/flutter/flutter/issues/111453

<!-- gh-comment-id:2292411266 --> @frandmb commented on GitHub (Aug 15, 2024): Seems related to https://github.com/flutter/flutter/issues/111453
Author
Owner

@zhaob1n commented on GitHub (Dec 25, 2024):

I don't think this is fixed, I use Appflowy v0.7.8 and the issue is still there.
My system is archlinux + gnome.
image

<!-- gh-comment-id:2561956053 --> @zhaob1n commented on GitHub (Dec 25, 2024): I don't think this is fixed, I use Appflowy v0.7.8 and the issue is still there. My system is archlinux + gnome. ![image](https://github.com/user-attachments/assets/3d20048e-6630-4dab-8623-eb4beb3c182e)
Author
Owner

@zhaob1n commented on GitHub (Dec 28, 2024):

ok, I find a solution, install this extension https://extensions.gnome.org/extension/4998/legacy-gtk3-theme-scheme-auto-switcher/, then use adw-gtk3. it will be perfect now.

so I guess the thing is, Appflowy does respect dark or light mode, however because Appflowy is a "legacy Applications", which means its csd is gtk3 style, and gnome doesn't provide a dark theme for "legacy Applications", Appflowy only uses the light gtk3 style title bar. The adw-gtk3 provides an adwaita theme for gtk3(lagacy apps), both light and dark mode. and the extension switches the mode automatically, thus solving the issue. Correct me if I am wrong (. So this issue could be closed because its not Appflowy's fault. I guess we should wait flutter to use gtk4 ? I don't know...

<!-- gh-comment-id:2564320176 --> @zhaob1n commented on GitHub (Dec 28, 2024): ok, I find a solution, install this extension https://extensions.gnome.org/extension/4998/legacy-gtk3-theme-scheme-auto-switcher/, then use adw-gtk3. it will be perfect now. so I guess the thing is, Appflowy does respect dark or light mode, however because Appflowy is a "legacy Applications", which means its csd is gtk3 style, and gnome doesn't provide a dark theme for "legacy Applications", Appflowy only uses the light gtk3 style title bar. The adw-gtk3 provides an adwaita theme for gtk3(lagacy apps), both light and dark mode. and the extension switches the mode automatically, thus solving the issue. Correct me if I am wrong (. So this issue could be closed because its not Appflowy's fault. I guess we should wait flutter to use gtk4 ? I don't know...
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AppFlowy-IO/AppFlowy#1604
No description provided.