270 likes | 378 Views
The Future of libgnome and libgnomeui Anders Carlsson Jonathan Blandford. History of gnome-libs. What are libgnome/libgnomeui? Initial GNOME library Held all shared code in the early desktop Dumping ground before we really knew what we wanted in a desktop. Problems.
E N D
The Future of libgnome and libgnomeui Anders Carlsson Jonathan Blandford
History of gnome-libs • What are libgnome/libgnomeui? • Initial GNOME library • Held all shared code in the early desktop • Dumping ground before we really knew what we wanted in a desktop
Problems • Lack of defined scope • Dependency liability • Relatively unmaintained code base • Desktop integration issue
Our Goal • Deprecate • Whack entirely!! • Remove • Fit with a pair of concrete shoes • Send to the great Attic/ in the sky
What the heck is there? • Dead code • General purpose objects and widgets • Code to integrate non-codependent libraries • Code to integrate with the desktop
Dead Code • Large chunks of both libraries are deprecated • ABI/API compatibility only • 'nuff said
Objects and Widgets • About a dozen widgets • Tend to be lower quality than GTK+ • All except GnomeApp are straightforward • All are targeted for the dustbin or GTK+
Objects • gnome-config • gnome-i18n • gnome-score
Widgets • GnomeAbout • GnomeApp/GnomeDock • GnomeClient • GnomeDruid • GnomeEntry • GnomeIconList
gnome-config • Description: • .desktop file parser • Problem: • not flexible • indeterminate use case • Many alternate implementations (6 at last count) • Action: • Rewrite proposed by Ray Strode: #139973
gnome-i18n • Description: • provides a set of standard gettext macros • gnome_i18n_get_language_list() • Problems: • Used by libraries lower in the library stack • Cut-n-pasted all over • Solution: • Move to glib • Discussed in #95587
gnome-score • Description: • Set of widgets and library code for handling game score code • Problem: • Not generically useful • Action: • move into gnome-games as a private library
GnomeAbout • Description: • Simple 'About...' dialog • Problem: • Unfinished API • Action: • Move to GTK+ once the API is done • Discussed in #109435
GnomeApp/GnomeDock • Description: • Framework for application main windows. • Problem: • Unclear that users actually want this • Depends on BonoboDock • HIG is moving in a different direction • Different apps have different forms. Think IDE vs. Office vs... • Action: • Unclear.
GnomeClient • Description: • Provides session manager support to applications • Problem: • Buggy and unmaintained • Too complicated • Action: • Move GsmClient into GTK+
GnomeDruid • Description: • Assistant widget • Problem: • Complex API • Bad for Accessibility as colors can be changed • Action: • Discussed in #115348 • HIG Work needed
GnomeEntry • Description: • Multiple specialized history entries • Problem: • Complex API • Dubious targets • Standards non-compliance • Depends on GTK+ • Action: • James Cape proposed a replacement.
GnomeIconList • Description: • Problem: • Action:
Integration code (I) • gnome-libs is high in the library chain
Integration code (II) • code to integrate GNOME applications with the rest of the desktop. • hardest to deal with
Current code • gnome-help • gnome-program • gnome-triggers
gnome-help • Description: • Integrated help system • Problem: • GNOME specific. • Action: • Move to GTK+?
gnome-program • Description: • Problem: • Action:
gnome-triggers • Description: • Problem: • Action: