Polityka rozwoju skupiająca się wokół projektów związanych z GNOME jest prosta — “tak” dla ewolucji, “nie” dla rewolucji. Takie podejście do rozwoju GNOME ma swoich zwolenników i przeciwników, jednak póki co zdaje egzamin. Niestety niektórych rzeczy nie da się przeskoczyć w drodze ewolucji i potrzeba zrobić większy krok naprzód. Tak właśnie wygląda sprawa z biblioteką GTK+ , której rozwój powoli osiąga ślepą uliczkę i wymaga poważnych zmian.
Linia 2.x biblioteki GTK+ powstała pod koniec 2002 roku i jest rozwijana aż do dzisiaj. Dużą zaletą takiego podejścia jest fakt, że aplikacja napisana dla GTK+ w wersji 2.0 będzie bezproblemowo działać z wersją 2.12. Takie podejście ogranicza jednak pole manewrów programistom, którzy dodając nowe funkcje do biblioteki muszą zachować kompatybilność z poprzednimi wydaniami. Ponadto 5 lat temu nikt nie przewidywał, że nastąpi tak znaczna integracja klasycznego GUI z grafiką w 3D (mam na myśli projekt Compiz Fusion).
W związku z tym wszystkim (oraz z faktem wydania Qt4) programiści rozwijający GTK+ coraz cieplej myślą o rozpoczęciu prac nad nową linią — 3.0. Oto najważniejsze propozycje zmian:
- Firma Imendio, aktywnie uczestnicząca w rozwoju GTK+ (stworzyła port biblioteki dla systemu Mac OS X), zaproponowała swój własny zestaw pomysłów:
- dodanie “wodotrysków”: efektów 2D oraz 3D, przezroczystości oraz usprawnienie obsługi animacji, obsługi motywów
- lepsza integracja z poszczególnymi platformami
- łatwiejsze tworzenie własnych widgetów
- API powinno być jeszcze bardziej abstrakcyjne
- warstwa abstrakcji danych
- całkowite usunięcie przestarzałego kodu
- zmiana polityki rozwoju projektu: poszczególne linie utrzymują zgodność wsteczną przez okres 5 lat, później następuje nowe wydanie niekompatybilne wstecz
- bardziej szczegółowy opis pomysłów: Imedio – wizja GTK+
- Drugi zestaw pomysłów został opisany przez Havoca Penningtona, programistę pracującego dla Red Hata. Zauważa on konieczność rozwoju możliwości graficznych GTK+ oraz integracji z innymi projektami. Propozycje przez niego przedstawione skupiają się na technicznej stronie i są bardziej szczegółowe niż wizja firmy Imedio:
- integracja z takimi projektami jak: WebKit, Gecko, Clutter czy Compiz Fusion
- obsługa akceleracji 2D i 3D
- dodanie obiektu typu Canvas z prawdziwego zdarzenia
- szczegółowa prezentacja
- Już od pewnego czasu rozwijane są dodatki do GTK+, które mają szansę stać się oficjalną częścią tej biblioteki:
- Istnieje jeszcze projekt Ridley, który ma na celu integrację wielu mniejszych bibliotek pomocniczych z GTK+ (np.: libglade, libegg, libgnome etc.)
Jak widać plany są dosyć śmiałe. Ich realizacja z pewnością nie będzie łatwa i bezbolesna. Co ważniejsze GTK+ 3.0 prawdopodobnie pociągnie za sobą znaczące zmiany w środowisku GNOME. Pozostaje nam tylko obserwować rozwój wypadków.