** Description changed:

- Xfce stores it's idea of the system default font, monospace font, and
- Gtk theme, icon theme etc into Xfconf:
+ tl;dr The part of this bug which applies specifically to Xubuntu is part
+ 2. below. The gsettings.override should match the xfconf default, ie by
+ adding something like:
+ 
+ [org.gnome.desktop.interface]
+ font-name='Noto Sans 9'
+ monospace-font-name='Monospace 10'
+ 
+ 
+ Xfce stores it's idea of the system default font, monospace font, and Gtk 
theme, icon theme etc into Xfconf:
  
  /xsettings/Gtk/FontName
  /xsettings/GtkMonospaceFontName
  /xsettings/Gtk/ThemeName
  /xsettings/Gtk/IconThemeName
  
  GNOME stores it's idea of these settings in gsettings keys:
  
  /org/gnome/desktop/interface/gtk-font-name
  /org/gnome/desktop/interface/monospace-font-name
  /org/gnome/desktop/interface/theme-name
  /org/gnome/desktop/interface/icon-theme
  
  When a Gtk+3 application is started, the desktop environment is
  responsible for transfering these settings to Gtk+3 using xsettings. You
  can see this happening by running:
  
      GDK_DEBUG=settings <gtk program>
  
  There are several problems here:
  
  1. The apps.
  
  Gtk+3 has no concept of an xsetting for monospace font name. All Gtk+3
  software which supports this concept finds the default by looking
  directly at the GNOME gsettings key. Including xfce4-terminal. This
  means none of that software pays any attention to Xfce's default.
  Including xfce4-terminal.
  
  In addition, some apps seem to directly query gsettings to find the
  proportional font too, and some will even mix up xsettings and
  gsettings. An example of this is pidgin, where all bold text uses the
  font defined in gsettings, and all non-bold text uses the font defined
  in xsettings.
  
  2. The distro defaults.
  
  xubuntu-default-settings supplies default values for the distribution.
  It sets some of the GNOME gsettings keys to appropriate default values.
  For example it sets theme-name to Greybird and icon-theme to elementary-
  xfce. However it does not set defaults for the fonts. Proportional font
  defaults to Cantrell 11 and monospace is Monospace 11.
  
  2. The settings tool.
  
  Xfce appearance setting sets the Xfconf keys of course. But it does not
  touch any of GNOME's gsettings keys. So if you change your theme for
  example, the GNOME gsettings key will remain at the default set by
  xubuntu-default-settings ie Greybird. The setting is now wrong for both
  Xfce and GNOME.
  
  Unfortunately the only correct fix for this is to persuade Gtk
  developers to adopt an xsetting for the monospace font, and anything
  else that is missing. This is extremely unlikely to happen as they are
  trying to remove as many cross-desktop features as possible. Also Gtk+3
  is in maintenance mode so it wouldn't be available until we port Xfce to
  Gtk+4 at the earliest.
  
  The only other alternative that will work is to make Xfce appearance
  settings capable of writing to gsettings, and mirroring all the
  appearance settings there. This is a horrible solution because those
  settings are supposed to be private to GNOME, and because appearance
  settings will need two different settings backends.
  
  The one thing we CAN do is patch all Xfce apps to use Xfconf to read
  this setting. All GNOME apps and cross-desktop apps like Terminator will
  continue to use the wrong fonts unless the user install dconf-editor or
  gnome-tweak.
  
  Screenshot attached. Desktop is Xfce.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 18.04
  Package: terminator 1.91-1
  ProcVersionSignature: Ubuntu 4.15.0-20.21-generic 4.15.17
  Uname: Linux 4.15.0-20-generic x86_64
  ApportVersion: 2.20.9-0ubuntu7
  Architecture: amd64
  CurrentDesktop: XFCE
  Date: Tue May  8 00:52:18 2018
  InstallationDate: Installed on 2018-05-07 (0 days ago)
  InstallationMedia: Xubuntu 18.04 LTS "Bionic Beaver" - Release amd64 
(20180426)
  PackageArchitecture: all
  SourcePackage: terminator
  UpgradeStatus: No upgrade log present (probably fresh install)

** Description changed:

  tl;dr The part of this bug which applies specifically to Xubuntu is part
  2. below. The gsettings.override should match the xfconf default, ie by
  adding something like:
  
  [org.gnome.desktop.interface]
  font-name='Noto Sans 9'
  monospace-font-name='Monospace 10'
  
+ ---
  
- Xfce stores it's idea of the system default font, monospace font, and Gtk 
theme, icon theme etc into Xfconf:
+ Xfce stores it's idea of the system default font, monospace font, and
+ Gtk theme, icon theme etc into Xfconf:
  
  /xsettings/Gtk/FontName
  /xsettings/GtkMonospaceFontName
  /xsettings/Gtk/ThemeName
  /xsettings/Gtk/IconThemeName
  
  GNOME stores it's idea of these settings in gsettings keys:
  
  /org/gnome/desktop/interface/gtk-font-name
  /org/gnome/desktop/interface/monospace-font-name
  /org/gnome/desktop/interface/theme-name
  /org/gnome/desktop/interface/icon-theme
  
  When a Gtk+3 application is started, the desktop environment is
  responsible for transfering these settings to Gtk+3 using xsettings. You
  can see this happening by running:
  
      GDK_DEBUG=settings <gtk program>
  
  There are several problems here:
  
  1. The apps.
  
  Gtk+3 has no concept of an xsetting for monospace font name. All Gtk+3
  software which supports this concept finds the default by looking
  directly at the GNOME gsettings key. Including xfce4-terminal. This
  means none of that software pays any attention to Xfce's default.
  Including xfce4-terminal.
  
  In addition, some apps seem to directly query gsettings to find the
  proportional font too, and some will even mix up xsettings and
  gsettings. An example of this is pidgin, where all bold text uses the
  font defined in gsettings, and all non-bold text uses the font defined
  in xsettings.
  
  2. The distro defaults.
  
  xubuntu-default-settings supplies default values for the distribution.
  It sets some of the GNOME gsettings keys to appropriate default values.
  For example it sets theme-name to Greybird and icon-theme to elementary-
  xfce. However it does not set defaults for the fonts. Proportional font
  defaults to Cantrell 11 and monospace is Monospace 11.
  
  2. The settings tool.
  
  Xfce appearance setting sets the Xfconf keys of course. But it does not
  touch any of GNOME's gsettings keys. So if you change your theme for
  example, the GNOME gsettings key will remain at the default set by
  xubuntu-default-settings ie Greybird. The setting is now wrong for both
  Xfce and GNOME.
  
  Unfortunately the only correct fix for this is to persuade Gtk
  developers to adopt an xsetting for the monospace font, and anything
  else that is missing. This is extremely unlikely to happen as they are
  trying to remove as many cross-desktop features as possible. Also Gtk+3
  is in maintenance mode so it wouldn't be available until we port Xfce to
  Gtk+4 at the earliest.
  
  The only other alternative that will work is to make Xfce appearance
  settings capable of writing to gsettings, and mirroring all the
  appearance settings there. This is a horrible solution because those
  settings are supposed to be private to GNOME, and because appearance
  settings will need two different settings backends.
  
  The one thing we CAN do is patch all Xfce apps to use Xfconf to read
  this setting. All GNOME apps and cross-desktop apps like Terminator will
  continue to use the wrong fonts unless the user install dconf-editor or
  gnome-tweak.
  
  Screenshot attached. Desktop is Xfce.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 18.04
  Package: terminator 1.91-1
  ProcVersionSignature: Ubuntu 4.15.0-20.21-generic 4.15.17
  Uname: Linux 4.15.0-20-generic x86_64
  ApportVersion: 2.20.9-0ubuntu7
  Architecture: amd64
  CurrentDesktop: XFCE
  Date: Tue May  8 00:52:18 2018
  InstallationDate: Installed on 2018-05-07 (0 days ago)
  InstallationMedia: Xubuntu 18.04 LTS "Bionic Beaver" - Release amd64 
(20180426)
  PackageArchitecture: all
  SourcePackage: terminator
  UpgradeStatus: No upgrade log present (probably fresh install)

** Description changed:

  tl;dr The part of this bug which applies specifically to Xubuntu is part
  2. below. The gsettings.override should match the xfconf default, ie by
  adding something like:
  
  [org.gnome.desktop.interface]
  font-name='Noto Sans 9'
  monospace-font-name='Monospace 10'
+ 
+ 
+ There will still be a mismatch if the user changes their font setting, but at 
least the defaults would match. Fixing the rest would require cooperation from 
GNOME which is unlikely to happen since all this code is deprecated under 
Wayland.
  
  ---
  
  Xfce stores it's idea of the system default font, monospace font, and
  Gtk theme, icon theme etc into Xfconf:
  
  /xsettings/Gtk/FontName
  /xsettings/GtkMonospaceFontName
  /xsettings/Gtk/ThemeName
  /xsettings/Gtk/IconThemeName
  
  GNOME stores it's idea of these settings in gsettings keys:
  
  /org/gnome/desktop/interface/gtk-font-name
  /org/gnome/desktop/interface/monospace-font-name
  /org/gnome/desktop/interface/theme-name
  /org/gnome/desktop/interface/icon-theme
  
  When a Gtk+3 application is started, the desktop environment is
  responsible for transfering these settings to Gtk+3 using xsettings. You
  can see this happening by running:
  
      GDK_DEBUG=settings <gtk program>
  
  There are several problems here:
  
  1. The apps.
  
  Gtk+3 has no concept of an xsetting for monospace font name. All Gtk+3
  software which supports this concept finds the default by looking
  directly at the GNOME gsettings key. Including xfce4-terminal. This
  means none of that software pays any attention to Xfce's default.
  Including xfce4-terminal.
  
  In addition, some apps seem to directly query gsettings to find the
  proportional font too, and some will even mix up xsettings and
  gsettings. An example of this is pidgin, where all bold text uses the
  font defined in gsettings, and all non-bold text uses the font defined
  in xsettings.
  
  2. The distro defaults.
  
  xubuntu-default-settings supplies default values for the distribution.
  It sets some of the GNOME gsettings keys to appropriate default values.
  For example it sets theme-name to Greybird and icon-theme to elementary-
  xfce. However it does not set defaults for the fonts. Proportional font
  defaults to Cantrell 11 and monospace is Monospace 11.
  
  2. The settings tool.
  
  Xfce appearance setting sets the Xfconf keys of course. But it does not
  touch any of GNOME's gsettings keys. So if you change your theme for
  example, the GNOME gsettings key will remain at the default set by
  xubuntu-default-settings ie Greybird. The setting is now wrong for both
  Xfce and GNOME.
  
  Unfortunately the only correct fix for this is to persuade Gtk
  developers to adopt an xsetting for the monospace font, and anything
  else that is missing. This is extremely unlikely to happen as they are
  trying to remove as many cross-desktop features as possible. Also Gtk+3
  is in maintenance mode so it wouldn't be available until we port Xfce to
  Gtk+4 at the earliest.
  
  The only other alternative that will work is to make Xfce appearance
  settings capable of writing to gsettings, and mirroring all the
  appearance settings there. This is a horrible solution because those
  settings are supposed to be private to GNOME, and because appearance
  settings will need two different settings backends.
  
  The one thing we CAN do is patch all Xfce apps to use Xfconf to read
  this setting. All GNOME apps and cross-desktop apps like Terminator will
  continue to use the wrong fonts unless the user install dconf-editor or
  gnome-tweak.
  
  Screenshot attached. Desktop is Xfce.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 18.04
  Package: terminator 1.91-1
  ProcVersionSignature: Ubuntu 4.15.0-20.21-generic 4.15.17
  Uname: Linux 4.15.0-20-generic x86_64
  ApportVersion: 2.20.9-0ubuntu7
  Architecture: amd64
  CurrentDesktop: XFCE
  Date: Tue May  8 00:52:18 2018
  InstallationDate: Installed on 2018-05-07 (0 days ago)
  InstallationMedia: Xubuntu 18.04 LTS "Bionic Beaver" - Release amd64 
(20180426)
  PackageArchitecture: all
  SourcePackage: terminator
  UpgradeStatus: No upgrade log present (probably fresh install)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1769774

Title:
  Xfce doesn't set GNOME/Gtk3 dconf keys for theme and font

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/terminator/+bug/1769774/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to