What's New in GNOME 2 for Users
Lots of rumors have been going around that GNOME 2 won't have any
new user-visible features, but while this was the plan and would have
resulted in releasing sooner (cough), it's not really what
happened. ;-) So here's some hype for you. I'll try to keep this page
up to date, send me additions/fixes.
This document is as best I can manage about features that are
already in the code or almost certainly will be, rather than hoped-for
features. Still, some things may end up in 2.0.1/2.2/whatever, one
can't say for sure. This list is totally unofficial/informal,
which is why it's on my personal web site, and so don't take any of
this too seriously. Also, I'm writing in January 2002, and the chances
are that by February this will be outdated. </disclaimer>
GNOME 2 devel is tracked on the dotplan
site (they also have screenshots there). I'm too lazy too make
more screenshots but if people send me links to shots for the stuff
mentioned here I'll add them.
This page is only about user features, there are far more new
developer features, the porting guide
covers a lot of those.
I listed the stuff you've probably heard already first, just so
you have to keep reading to the end...
Improved fonts and graphics
Everyone knows these:
- Fonts can be antialiased (or not, or only antialiased at certain
sizes, or whatever you like).
- No flicker in GTK apps.
- Images are composited onto backgrounds with full alpha channel,
accelerated via MMX and the RENDER extension.
- New enhanced icons from tigert and jimmac.
- New default theme.
Keyboard Navigation
This one is pretty nice. GTK 2 has all kinds of built-in
keynav support, thanks to the accessibility
project.
Among the keynav features:
- Mnemonics (underlined letters, you press Alt+letter to activate
a button or menu); now trivial for programmers to implement,
used in many new dialogs, being added to ported dialogs.
- New tree widget supports jumping to rows by first letter, etc.
- Tab to move focus works more correctly and intuitively.
- Text entries select their contents on tab in.
- Key bindings generally consistent with Swing/Motif/Windows
where common practice existed.
- Multiline text boxes have more powerful keybindings.
- Shift+F10 shortcut to open right-click popup menus.
- Various other small touches.
There are still dialogs and such in the alpha that don't have
proper keynav support, and still some outstanding keynav patches to
GTK, but quite good keynav support should be in for 2.0.
Internationalization
Internationalization has two major changes:
- the move to Unicode throughout, so you can mix multiple languages
and scripts in the same document, and use funky symbols such as
bullets and dingbats in a document.
- the ability to handle "hard" languages such as right-to-left
languages and languages that have ligatures and reordering.
One major implication of Unicode is that the same code paths will
now be used for European and Asian text, so GNOME will almost
certainly work out-of-the-box for people in all countries.
User Interface Simplicity
In general, we are trying to make the UI as elegant as we can, so
nontechnical users can use it, and so technical users can use it more
quickly and smoothly. Our focus is on better UI, not "more UI" or just
adding more config options. So you'll see the UI getting cleaner,
starting in 2.0 and continuing in releases after that.
Menu layout
This one is not yet in the alpha, but promises to make it a lot
easier for users to find things. Read the proposal
here. I am fairly sure it is targetted for 2.0.
Also, the menus are supposed to be more configurable with the new
GNOME/KDE shared scheme for where they are stored.
Control center UI revamp
This is another reworking, beyond the reworking found in recent
Ximian. The number of control panels is being reduced to a sane level,
and each panel is simpler, more attractive, and easier to use.
It's looking quite nice.
Panel preferences improvements
Panel preferences are being made more powerful in some respects
(for example a "profiles" feature allowing you to save panel setups,
e.g. one for each machine you log in to), but also the basic prefs
dialogs are being made easier to understand and less cluttered.
Style guide and UI project
App developers have somewhere to go to
learn how to make a consistent, usable application.
New Help Browser
Instead of gnome-help-browser or Nautilus, a new application called
Yelp that uses GtkHTML2 to render info/man/docbook help pages will be
used. Yelp has a dead-simple, incredibly easy interface, since you
can't read help on the help browser. ;-)
The super-simple interface also means that Yelp starts up quickly
and doesn't use a lot of resources.
GConf Configuration, gconf-editor
GConf
will be widely deployed, which should make GNOME work properly if you
log in from multiple machines, allows administrators to set up (and
optionally lock down) systemwide defaults, and instantly applies
preferences changes to all running copies of interested applications.
There's also a tool called gconf-editor which can be used to browse
and configure all the raw configuration keys that affect GNOME
applications.
Accessibility
Keyboard navigation is a key part of accessibility support that will
be useful to all users, but there are many other aspects to it.
The core of accessibility support is a set of hooks in GTK that
allow an external program to query applications about their GUI.
For example, an external program can ask what buttons and menu items
there are, their state, what their labels contain, and so on. This can
be used by a screen reader to tell a blind user what's on the screen,
for example.
An example of why this is interesting even if you don't have a
disability: you could write a high-level scripting feature with
commands such as "activate the File menu, choose Open, select all,
copy" - no one's working on this yet so it won't be in GNOME 2, but a
macro recorder and playback system would be a simple project using the
GNOME 2 platform. This kind of scripting would use high-level
user-comprehensible GUI features and wouldn't depend on special
application support for scripting, it'd just work automatically with
any GTK app.
Procman
Procman is a really, really nice system monitor application that
replaces GTop. It's attractive and easy to use.
Metatheme
Metatheme is a way of collecting themes for various desktop components
(window manager, GTK, background image, etc.) into one "metatheme"
and then selecting them as a whole. It's both the system for building
the composite themes, and a control panel for picking one.
Assorted GUI tweaks
Small things that matter, for example:
- Menus scroll when they are too big
- File selector doesn't lose filenames on directory select
(also to be backported to next GTK stable release)
- Trees and lists support clicking column headers to sort
(could be done in GNOME 1.4 apps, but was hard to implement,
so most apps didn't)
- Color selector revamp
- Right-click menus with cut/copy/paste in text fields
- Can drag windows between workspaces in the pager
- Menus do the thing where you can move diagonally
into a submenu without popping down the submenu
- Labels can be selectable, so you can e.g. copy the text
from an error dialog
- File selector has drag-and-drop support
- Configuration option to put scrollbar arrows in funky places
(NeXT-style, windows style, and several other questionable
styles)
- Themes can make buttons transparent or partially so
(see this
scary, scary example theme)
- ... there are hundreds of these, I can't remember everything. ;-)
Footnote on clipboard, cut-and-paste
Several people have asked about the clipboard. GTK has always done the
right thing for the clipboard. See http://www.freedesktop.org/standards/clipboards.txt.
If the clipboard doesn't work it's because some application is not
following the spec correctly; please file bug reports for those
applications. Note that Qt 2 does not follow the clipboard specs
correctly, so correct applications do not interoperate with Qt 2. Qt
3 fixes this problem.
gdm eye candy
It appears that
this kind of login screen will be supported, you define the
screen in a special XML format and can use scalable SVG images in it.
This isn't in the alpha yet but I have seen it running, I promise!
GEGL Invaders
Um, apparently we have this, but I haven't seen it and am not sure I
want to... ;-)
More!
There are no doubt plenty of things I've left out, though we're kind
of hoping to feature freeze shortly, and at that point we'll have to
wait for 2.0.1 or 2.2 or whatever we call it to see more stuff.
Since the platform will be held ABI-compatible for quite a while
(most likely the next couple years), the focus will be on building
out the user environment and applications.
Havoc Pennington