View Issue Details

IDProjectCategoryView StatusLast Update
0002751ScribusIntegrationpublic2006-02-25 13:31
Reportermhanski Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionsuspended 
Platformx86 LinuxOSUbuntuOS Version5.10
Summary0002751: Scribus and Gnome: setting GUI font size and encoding
DescriptionScribus seems to ignore default GUI font size/encoding in desktop environments other than KDE, e.g. Gnome:

1. GUI font size: On Gnome, menu fonts are always much to big in comparison to other applications, until changed in kdeglobals

2. GUI font encoding: If I launch Scribus on my Polish Gnome desktop -- either with LANG=pl_PL or LANG=pl_PL.utf8 -- all the specific Polish diacritics are replaced by rectangulars. It also seems to be the case on XFCE, as indicated in the bug 2735.

IMHO, since Scribus is a QT, and not a KDE application, it should make use of the current desktop environment settings and not depend on any KDE settings.
TagsNo tags attached.
Patch

Relationships

related to 0001083 closedTsoots Smaller font size for tool palettes 
related to 0002735 closed Live DTP CD: missing Polish fonts in GUI and text frames 
related to 0003291 closedplinnell Preferences>General: Font face setting needed 
related to 0002750 closedmalex Ubuntu Breezy 5.10: Prebuild 1.3.1 deb package harms Gnome desktop 
related to 0002134 closedcbradney All fonts in interface replace by square 
related to 0002869 closedmalex Please put Scribus on Ubuntu/Gnome into Graphics menu 

Activities

cbradney

2005-10-21 23:33

administrator   ~0007169

Scribus gets its info from Qt, KDE only provides more style options to Qt. Without include GTK2 code, I doubt we can get any GUI info.???

plinnell

2005-10-21 23:42

viewer   ~0007172

As per my comment in 0002735, this is an issue with debian packaging of Qt. We cannot fix this until they ship some sane defaults for Qt applications. We inherit whatever Qt environment is available.

I would note if kdebase is shipped with artwork, this generally not an issue.

I recommend a bug be filed with debian complaining loudly about their packaging of Qt.

Kubuntu live CD with Scribus just works (tm).

plinnell

2005-10-21 23:53

viewer   ~0007174

One other issue with the live DTP cd, which I have already noted is the abundance of subpar quality fonts which are installed by default.
I have written *extensively* about this in the docs.

On my system I can switch and run Scribus from UTF-8_en to any number of locales including Cyrillic, CJK or even Arabic and I do not see this issue.

mhanski

2005-10-27 22:34

developer   ~0007242

<quoting>Scribus gets its info from Qt, KDE only provides more style options to Qt. Without include GTK2 code, I doubt we can get any GUI info.???</qouting>

Craig, I'm reopening this again to share some ideas on possible solutions. Close it again, if you don't find them useful. Now, that I know, why this happens, i think there might be some place for improvement, to make things easier for Ubuntu/Gnome users too.

1. Let the user change the GUI font face in Edit>Preferences...>General, not only the font size and theme -- it would allow to change the GUI font to one with proper encoding, even if there is no qtconfig

OR/AND

2. Check on the first launch of Scribus, if there is the necessary qt information to inherit from, and if not, let the user set the GUI font face and size -- you can even launch qtconfig before launching scribus

OR/AND

3. Check on the first launch of Scribus the current desktop environment (at least the mainstream desktops like Gnome), and if not KDE and there is no qt info to inherit from, try to take over the font face/size of the current desktop into Scribus prefs, e.g. for Gnome ~/.gconf/desktop/gnome/interface/%gconf.xml contains the following information:

<?xml version="1.0"?>
<gconf>
        <entry name="icon_theme" mtime="1130359782" type="string">
                <stringvalue>gnome</stringvalue>
        </entry>
        <entry name="gtk_theme" mtime="1130450130" type="string">
                <stringvalue>Human</stringvalue>
        </entry>
        <entry name="monospace_font_name" mtime="1129304585" type="string">
                <stringvalue>Courier New 10</stringvalue>
        </entry>
        <entry name="font_name" mtime="1129304548" type="string">
                <stringvalue>Verdana 10</stringvalue>
        </entry>
</gconf>

ringerc

2005-10-28 13:44

reporter   ~0007245

Note that accessing the gconf database directly is probably a bad idea. There's no strong guarantee it'll stay in the same format, be in the same place, or otherwise remain how you expect. While not fatal, it's also just icky to try to use it directly.

A possibly cleaner way might be to ask gconf about the value of a key. If it must be done at runtime it can be done with dlopen(..) or by simply calling out to gconftool, eg:

$ gconftool-2 --get /desktop/gnome/interface/font_name
Sans 10

mhanski

2005-10-28 22:04

developer   ~0007246

<quoting>
$ gconftool-2 --get /desktop/gnome/interface/font_name
Sans 10
</quoting>

This really looks like a smart solution.

ringerc

2005-10-29 04:12

reporter   ~0007247

If actively asking GNOME for the font must be done, that's probably how I'd do it. I still hope there's a better way. For one thing, it could be difficult to reliably tell that we're actually running within GNOME.

XSettings seems to actually be implemented in modern desktops (no idea about KDE, but XFCE and GNOME at least) so it might be a viable way to get font settings. Here's the (short and less than ideally useful) spec:

http://www.freedesktop.org/Standards/xsettings-spec

with reference implementation:

http://freedesktop.org/wiki/Software_2fxsettings

XSettings would solve the "so what desktop are we running under today" problem by providing one interface to grab settings from . It's probably at least checking if the major desktops use this, and seeing if we can lift a client interface to it from KDE. Failing that, it should be possible to write a nice clean pure-Qt one for others to use later.

mhanski

2005-10-31 09:56

developer   ~0007281

I think it would be necessary to either run "$ gconftool-2 --get /desktop/gnome/interface/font_name" on _every_ Scribus launch or to include font face into Scribus preferences and allow users to change it in Edit>Preferences>General. It would allow users to control the GUI after the first launch of Scribus, even if they change font face of their desktop environment afterwards.

mhanski

2006-02-25 13:31

developer   ~0008901

closing, since there is no sign of interest from the author of the live cd

the issue with the proper font face for menus and palettes went into 3291

Issue History

Date Modified Username Field Change
2005-10-21 21:37 mhanski New Issue
2005-10-21 21:38 mhanski Relationship added related to 0001083
2005-10-21 21:38 mhanski Relationship added related to 0002735
2005-10-21 21:44 mhanski Description Updated
2005-10-21 23:33 cbradney Note Added: 0007169
2005-10-21 23:42 plinnell Note Added: 0007172
2005-10-21 23:42 plinnell Status new => resolved
2005-10-21 23:42 plinnell Resolution open => won't fix
2005-10-21 23:53 plinnell Note Added: 0007174
2005-10-26 21:43 mhanski Relationship added related to 0002750
2005-10-27 11:25 mhanski Relationship added related to 0002134
2005-10-27 22:34 mhanski Status resolved => feedback
2005-10-27 22:34 mhanski Resolution won't fix => reopened
2005-10-27 22:34 mhanski Note Added: 0007242
2005-10-28 13:44 ringerc Note Added: 0007245
2005-10-28 22:04 mhanski Note Added: 0007246
2005-10-29 04:12 ringerc Note Added: 0007247
2005-10-31 09:56 mhanski Note Added: 0007281
2005-11-22 23:27 mhanski Summary Scribus and Gnome: GUI font size and encoding => Scribus and Gnome: setting GUI font size and encoding
2005-12-27 16:40 mhanski Relationship added related to 0002869
2006-02-25 13:27 mhanski Relationship added related to 0003291
2006-02-25 13:31 mhanski Status feedback => closed
2006-02-25 13:31 mhanski Note Added: 0008901
2006-02-25 13:31 mhanski Resolution reopened => suspended