You can find out where the setting is changed if you open a terminal:
gsettings list-recursively>/tmp/before
echo 'Now unity-control-center should open. Please change the scaling in "Displays" and close.'
unity-control-center
gsettings list-recursively>/tmp/after
diff /tmp/before /tmp/after |grep '[>|<]'
You find out, that these settings were changed (changing from scaling 1.0 to 2.0):
< org.gnome.desktop.interface scaling-factor uint32 1
> org.gnome.desktop.interface scaling-factor uint32 2
< com.ubuntu.user-interface scale-factor {'HDMI1': 8, 'eDP1': 8}
> com.ubuntu.user-interface scale-factor {'HDMI1': 8, 'eDP1': 16}
Or changing from 1.0 to 1.5 there is changed the text-scaling-factor
instead, because scale-factor
is integer:
< org.gnome.desktop.interface text-scaling-factor 1.0
> org.gnome.desktop.interface text-scaling-factor 1.5
< org.gnome.desktop.interface cursor-size 24
> org.gnome.desktop.interface cursor-size 36
< com.ubuntu.user-interface scale-factor {'HDMI1': 8, 'eDP1': 8}
> com.ubuntu.user-interface scale-factor {'HDMI1': 8, 'eDP1': 12}
from 1.5 to 2.0:
< org.gnome.desktop.interface scaling-factor uint32 1
> org.gnome.desktop.interface scaling-factor uint32 2
< org.gnome.desktop.interface text-scaling-factor 1.5
> org.gnome.desktop.interface text-scaling-factor 1.0
< org.gnome.desktop.interface cursor-size 36
> org.gnome.desktop.interface cursor-size 24
< com.ubuntu.user-interface scale-factor {'HDMI1': 8, 'eDP1': 12}
> com.ubuntu.user-interface scale-factor {'HDMI1': 8, 'eDP1': 16}
Those settings can be edited by hand with dconf-editor
This is very interesting in context with the about:config
variable in Firefox: devPixelsPerPx
that changes the size inside Firefox (see also: Why are all HTML form elements huge with a system-wide font-scale factor 2.0?)
Also, you can write a script to change the scale factor with these settings like /usr/local/bin/setscalefactor
:
if [ "$1" == "1" ]; then
# set scaling to x1.0
gsettings set org.gnome.desktop.interface scaling-factor 1
gsettings set com.ubuntu.user-interface scale-factor "{'HDMI1': 8, 'eDP1': 8}"
else
# set scaling to x2.0
gsettings set org.gnome.desktop.interface scaling-factor 2
gsettings set com.ubuntu.user-interface scale-factor "{'HDMI1': 8, 'eDP1': 16}"
fi
additionally:
This doesn't scale the title bars and menu, but there is also unity-tweak-tool, where you can change the overall font-scaling.
Maybe that is an alternative you could use apart from the Scaling Support in System Settings
Best Answer
I appreciate the work around provided by the first answer. However, I was very specifically looking for a method of using the actually components as provided by the distribution if it exists.
At present you can copy your favorite theme from /usr/share/theme to ~/.theme. Name the theme folder something different from what it was named in the /usr/share/theme. This way when you select your chosen them you'll find it by the name you called the folder.
Example:
This is a per-user operation and doesn't require elevated access.
Now you can edit the gtk-3 folder of that new directory to make your borders any way you want them. You can also customize other components of the theme.
The borders can be resized by editing the UnityDecoration features of the unity.css file located in the apps folder:
To change the borders change the 0's to a different number of the parameter:
You'll find many other editible features in the gtk-3.x folder.
For other features of the borders such as color, text, etc... take a look at Unity/Theming at:
https://wiki.ubuntu.com/Unity/Theming
I appreciate the previous workaround. But I hope many can benefit from using the feature as distributed by the OS developers.
Oh yea, to use this newly edited theme you'll have to install the unity tweak tool.
Note: I already linked this question to a similar question about Ambiance configuration. This resolution can easily be applied to any modern Ubuntu theme... not just Ambiance (or the Radiance reference mentioned in this particular instance).