As of GTK+ 3.0 this project is considered complete.
Project Ridley
Goals
Project Ridley is an effort to consolidate a number of external libraries into GTK+.
These libraries are generally small, undermaintained, and buggy. They have an unclear mission (such as libgnome and libgnomeui) or would benefit by being in GTK+ (such as libgnomeprint and libgnomeprintui.)
We would be working towards releasing GTK+-3.0 as a result of this work.
Target Libraries
- libgnome (4/7)
- libgnomeui (4/7)
- libgnomeprint22 (2/2)
- libgnomeprintui22 (2/2)
- libglade (1/1)
- libgnomecanvas (0/1)
- libegg (4/9)
- libeel (0/1)
- gtkglext (0/1)
- libsexy (2/5)
API/ABI Clarification
There has been some confusion about the ramifications on GTK+'s API/ABI. There is no plan to break API/ABI as a result of this change. We plan to add API to GTK+ (as has happened during the course of the 2.x series) but we don't plan on removing deprecated widgets.
Criteria
As Owen said in a recent GTK+ meeting, when looking over the list of APIs that we are discussing here, there are basically three categories:
- Cross-platform API - things that make sense on Windows / OS X
- X / freedesktop.org-specific API
- GNOME-specific API
APIs in category A. are clearly suitable for moving to GTK+, APIs in category B. may or may not be suitable, and things in category C. are better off in a GNOME-specific library. An examples for B. would be a session management API that closely follows XSMP, an example for C would be gnome-vfs. Also note that in some cases an API may in principle be cross-platform, even if the current implementation makes heavy use of platform-specific libraries.
libgnome and libgnomeui
There's a comprehensive treatment of these libraries at LibgnomeMustDie
Object |
Bug Number |
More Information |
Primary Contact |
Status |
GnomeApp |
Committed |
|||
GnomeClient |
|
|||
GnomeDruid |
Committed |
|||
GnomeHRef |
Committed |
|||
GnomeHelp |
|
Committed |
||
GnomeProgram |
none |
|
|
|
GnomeSegv |
Committed |
libgnomeprint and libgnomeprintui
Object |
Bug Number |
More Information |
Primary Contact |
Status |
GnomePrint |
none |
/GnomePrint See Owen's GUADEC 2004 talk |
Committed |
|
GnomePrintDialog |
none |
/GnomePrintDialog See Owen's GUADEC 2004 talk |
Committed |
libglade
We've wanted to move libglade into GTK+ for some time.
Object |
Bug Number |
More Information |
Primary Contact |
Status |
GladeXML |
Committed |
libgnomecanvas
There is interest in having a more sophisticated Canvas widget inside GTK+. The current GnomeCanvas codebase is deficient for a number of reasons.
Object |
Bug Number |
More Information |
Primary Contact |
Status |
GnomeCanvas |
|
libegg
We don't want to kill off the library, but some widgets have such widespread use that we should move them into GTK+.
There's a list of current libegg usage in GNOME here: http://www.gnome.org/~fpeters/reports/eggs.html
Tracker bug: Bug #349256
Object |
Bug Number |
More Information |
Primary Contact |
Status |
EggAccelerator |
Committed |
|||
EggCellRendererKeys |
none |
Committed |
||
EggToolbarEditor |
|
|||
EggStatusIcon |
Committed |
|||
EggTreeMultiDnd |
|
|||
EggTreeViewEditor |
|
|||
EggTreeViewState |
|
|||
EggRecent |
Committed |
|||
EggIconChooser |
|
libeel
libeel is only used by nautilus and many of the glib extensions in eel are in glib already. There is one piece of eel remaining requested for GTK+.
Object |
Bug Number |
More Information |
Primary Contact |
Status |
EelEditableLabel |
|
gtkglext
Object |
Bug Number |
More Information |
Primary Contact |
Status |
OpenGL integration |
|
|
libsexy
Some widgets from libsexy library are integrated in Gtk+, so we can eliminate libsexy dependency in some applications. There is also a GnomeGoal to do that: GnomeGoals/DropLibsexy
Object |
Bug Number |
More Information |
Primary Contact |
Status |
SexyIconEntry |
|
Committed |
||
SexyUrlLabel |
|
Committed |
||
SexySpellEntry |
Used by xchat: report |
|
|
|
SexyTreeView |
|
Not very used: report. Use GtkTooltip API |
|
Not needed |
SexyTooltip |
|
Not very used: report. Use GtkTooltip API |
|
Not needed |