GNOME/Road to a solid desktop
From Sukimashita
Here is a list of things that from my point of view require improvements within the GNOME desktop environment. Of course this is mainly a list to remember where to submit patches to or add bug entries... ;)
Contents |
[edit] Art
- Application's bundled icons should comply to icon theme specifications
- There should be a standard Tango theme bundling tango-project.org icons, window decorations, GTK+ engine and related in one package.
- Proper icon scaling for panel applets to not cause blurry icons
[edit] Development
- Despite statements that "you can think of OOP in any language, even in C", I still consider the C GObject implementation as an ugly hack using mass and mystical fakes making it quite complex and inefficient to work with.
As memory benchmarks have shown, GNOME and KDE (even less...) seem to have similar requirements and in such a case a more OOP-native language as C++ should be considered.
Common arguments, such as being unusable on embedded devices as they require less footprint, don't look good when you see the requirement improvements by using C are not visible when compared to C++ KDE.
It might be time for GNOME (3) to switch to a real OOP language as it is without question way easier for new developers to jump on the GNOME wagon with a nice native OOP API at hand and not using complex C hacks.
People who fear classes and inheritance seem to not have enough experience in my point of view to see the benefits. No, bindings just don't do it as you still have to contribute new stuff to the main upstream C core and high-level bugs are relation-wise easier to fix then low-level bugs. - Recent "buzz" around Vala, a C# like language with GTK+ bindings which translates into a C based autotools project, has just proven that the above argument is pretty serious.
- GLADE should support WYSIWYG editing of everything related to UI in an application, this includes the menus (GtkAction) which are currently not handled. The optimal solution bundles all this in directly within GTK+.
[edit] Documentation
- A complete tutorial for new application developers
- A list of standards for a new application to comply to
- Common GNOME build tools
[edit] Desktop Effects
- How to implement simple but powerful APIs like CoreImage, CoreVideo, Quartz etc. provided on Mac OS X for GNOME (3)?
- Applications should start to incorporate composite support more (real transparency, cairo alpha, argb colormaps, animations etc.)
[edit] Multimedia
- gnome-media seems widely "external" to me and needs a rewrite/refresh
- While GStreamer is one of the best things that happened lately, there is a need for a more high level API for applications to use.
It should offer an API for things like very simple playback/recording of media files, proper down to application-level selection of audio/video devices using HAL for applications to use while using GStreamer as backend. - Rewrite CD Player, remove esd,
offer simple utilities to record video from "v4l(2)src"(Cheese)...
[edit] Multi-head
- All applications should use what GTK+ offers for multi screen setups; gdk_screen_get_monitor_geometry()
[edit] Bluetooth
- Closer UI integration of Bluetooth tools with rest of GNOME
- Phone/PDA Synchronization requires painless GUI driven Wizard/Setup for the regular user ontop of OpenSync/Multisync/SynCE tools
- Some tools of gnome-bluetooth are basicly broken (while hcitool/sdptool work locating devices etc.)
[edit] Applications
- GIMP: A Novell survey reviled the most requested application for Linux: Adobe Photoshop.
This is understandable as the usability of GIMP, even after endless debates and even websites created only for the purpose to improve it, simply sux(tm). If you ask me the main issue is the multi-window interface and the non-intuitive handling of basic actions (moving layers, selection etc.).
The "but it's for pros!" argument is really weak for an application which intends to be the best image editor on Linux but fails for people using really professional software such as Photoshop.
In any case, the survey shows that something is terribly wrong in GIMP and the devteam should really attempt to do the step towards a complete layout redesign.
- Compiz: This is a list of stuff that might be required to improve compiz's adoption:
- Comment all source code- Maintained compiz settings GUI- Improved autodetection on startup (NVIDIA, AIGLX or XGL)- Flat-file configuration plugin (Optional, questionable in times of DBUS but maybe favoured in cross-desktop times...)- New advanced next-gen decorator using SVG, allow animation and use blur- Unify Wiki and Forum Layout, seamless transition
- Evolution:
-Support for TNEF Outlook mails with "winmail.dat" attachements (how can you offer evolution in a mixed environment without this feature????)(A plugin is bundled in Evolution 2.12+)