Geliştiriciler İçin Neler Yeni
Aşağıdaki değişiklikler GNOME 2.28 geliştirici platformunu kullanan geliştiriciler için önemlidir. Eğer geliştiriciler için değişiklikler ilgilenmiyorsanız, ileriye atlayabilirsiniz Bölüm 6 ― Yerelleştirme.
GNOME Masaüstü gibi, GNOME 2.28, GNU LGPL altında çapraz platform uygulama geliştirilmesi için kullanılabilir bir dizi API ve ABI kararlı kütüphanelerinin oluşturduğu GNOME Geliştirici Platformu'nun son sürümüdür.
GNOME 3.0 ile başlayarak artık kullanılmayan kimi GNOME parçaları kaldırılacak. Bu kullanılmayan bileşenler libart_lgpl, libbonobo, libbonoboui, libglade, libgnome, libgnomecanvas libgnomeprint, libgnomeprintui, libgnomeui, ve libgnomevfs gibi kütüphaneleri içerir. GNOME masaüstünün parçası olarak yayınlanan uygulamalar için bir takım temizlik görevleri gerçekleştirilerek hiçbir artık kullanılmayan kod bulunmadığından emin olunmuştur. Bu GNOME 3.0'a yumuşak bir geçişi sağlayacaktır.
Geliştiriciler kendi uygulamalarında da bu örneği izlemeye çağrılırlar. Ayrıca, herhangi bir geliştirici olarak (veya potansiyel geliştiriciler olarak) bize yardım etmek istiyorsanız, GNOME hedefleri viki sayfasındaki tamamlanacak çeşitli görev listelerine göz atın.
- 5.1. Platform Cleanup
- 5.2. GTK+ 2.18
- 5.3. GLib
- 5.4. GNOME Belgelendirmesi
- 5.5. GNOME Bluetooth
- 5.6. Epiphany Web Tarayıcı
- 5.7. Zaman Takibi Uygulamacığı
- 5.8. GNOME-Media
- 5.9. Totem
- 5.10. Vinagre
- 5.11. Brasero
5.1. Platform Cleanup
GNOME 3.0 yolunda artık kullanılmayan modülleri ve işlevleri silmek için büyük bir çaba harcandı.
GNOME 2.28'de artık hiçbir uygulama esound, libgnomevfs, libgnomeprint ya da libgnomeprintui kullanmıyor.
GNOME 2.28 içinde diğer GNOME Platformu gelişmeleri şunları içerir:
- İki modülden (eog ve gtkhtml) libart_lgpl bağımlılığı kaldırıldı.
- Beş modülden (gnome-control-center, gcalctool, gnome-media, gtkhtml ve accerciser) libbonobo(ui) bağımlılığı kaldırıldı.
- 28 modülden (accerciser, alacarte, gnome-control-center, dasher, empathy, gcalctool, gnome-games, gnome-netstatus, gnome-nettool, gnome-mag, gnome-menus, gnome-panel, gnome-power-manager, gnome-screensaver, gnome-session, gnome-settings-daemon, gnome-system-tools, gnome-utils, gtkhtml, hamster-applet, libgnomekbd, orca, pessulus, seahorse, vino, vinagre, yelp, ve zenity) libglade bağımlılığı kaldırıldı.
- 14 modülden (anjuta, gnome-control-center, dasher, evolution-webcal, gconf, gdl, gdm, gnome-desktop, gnome-media, gnome-system-tools, gok, gtkhtml, vino, ve yelp) libgnome bağımlılığı kaldırıldı.
- Üç modülden (anjuta, gtkhml, ve zenity) libgnomecanvas bağımlılığı kaldırıldı.
- Bir modülden (gnome-games) libgnomeprint(ui) bağımlılığı kaldırıldı.
- 16 modülden (anjuta, gnome-control-center, dasher, deskbar-applet, gnome-mag, gnome-media, gnome-settings-daemon, gnome-system-tools, gnome-utils, gok, gtkhtml, hamster-applet, nautilus, orca, vino, ve yelp) libgnomeui bağımlılığı kaldırıldı.
- Üç modülden (dasher, gnome-mag, ve gnome-utils) libgnomevfs bağımlılığı kaldırıldı.
- Bir çok modül artık AM_SILENT_RULES ya da Shave kullanarak derlendiğinde daha güzel ve temiz inşa çıktıları sağlıyor. Daha fazla bilgi için http://live.gnome.org/GnomeGoals/NicerBuilds adresine bakın.
- Bazı modüller GIntrospection kullanmaya başladılar — daha fazla ayrıntı için http://live.gnome.org/GnomeGoals/AddGObjectIntrospectionSupport adresine bakın.
Bir çok uygulama ayrıca artık kullanılmayan GTK+ ve GLib sembollerin kullanımını kaldırdı ve sadece üst seviye GTK+ ve GLib başlıkları kullanılması yeni kuralını uyguladı.
5.2. GTK+ 2.18
GTK+ 2.18 GNOME'un kalbi olan GTK+ araç takımının en son sürümüdür. GTK+ 2.18 geliştiriciler için yeni özellikler içerir, aynı zamanda yaklaşan GTK+ 3.0 için geniş hata tespit ve temizlik çalışmalarını da içerir.
Dosya seçici bir çok yeni gelişmeye sahip. Artık durumu sıralama ve yedek dosyalarını saklamak ve Boyut sütununu göstermek gibi daha iyi öntanımlılara sahip. Ayrıca yol çubuğunda daha gelişmiş kısaltmalara sahip.
GTK+ de bir çok diğer gelişmelere sahip, bunlara şunlar dahildir:
- GtkEntry parçaları şimdi de bir ilerleme çubuğu görüntülemek için kullanılır.
- GtkEntry bir model-görünümü ayrımına sahip.
- GtkLabel gömülü URI'leri gösterebiliyor.
- Yazdırma seçiminde yazdırma desteği.
- Sayfa ayarı denetimleri yazdırma penceresine gömülü olaiblir.
- Gelişmiş erişilebilirlik için durum simgelerinin bir başlık özelliği var.
- GtkInfoBar iletilerin bir iletişim penceresi yerine ana pencerede görünmesini sağlayan yeni bir parça.
- GTK can be compiled with a modern automake version (automake 1.7 is not needed anymore) and in silent mode with "make V=0" command.
5.3. GLib
GNIO artık GIO ile birleştirildi, ve artık IPv4 ve IPv6 adresleri ile çalışan, makine isimlerini çözen, ters IP kontrolu yapan, düşük-seviye soket G/Ç'lı, ve ağ bağlantıları ve servisleri için API'ler içeriyor.
GArray, GMappedFile ve GTree için artık referans sayımı yapılıyor.
Ana döngü artık thread-basşına öntanımlı bağlam destekliyor.
GIOStream ve onun alt sınıfları ile okuma-yazma erişim desteği eklendi.
GLib artık dosya başına metadata desteği içeriyor.
5.4. GNOME Belgelendirmesi
Yeni GNOME Belgelendirme XML dili, Mallard desteği Yelp ve gnome-doc-utils'e eklendi.
Belge yazıcıları için, Mallard tam işlevsellikte konuya yönelik yardım için özellikle tasarlanmış XML biçimleme dilidir ve öğrenmesi Docbook'dan daha kolaydır.
Empathy yardımı Mallard ile yazılan ilk GNOME belgelendirmesidir, ve ayrıca Creative Commons Share-Alike 3.0 lisansına taşınan ilk belgelendirmedir. GNOME belgelendirmelerinin hepsi gelecekte bu lisansa taşınacak.
5.5. GNOME Bluetooth
Eklenti desteği eklendi ve aygıt kurma sırasında erişilebilir olarak GNOME uygulamalarının Bluetooth aygıtlarını kullanabilme desteğini ekliyor.
Modern Bluetooth aygıt seçim parçaları, düğmeler ve seçici de dahil eklendi.
5.6. Epiphany Web Tarayıcı
Epiphany'nin Webkit'e değişimi ile artık bir çok gelişme Epiphany içinde geliştiricilere açık.
WebKitGTK+ çok hızlı Javascript işlemeye, daha az bellek kullanımına, bir GObject API'sine ve bir dahili web inceleyiciye sahip. Epiphany ayrıca Seed (JavaScript) eklentileri için destek de sağlıyor, ve bununla birlikte Python desteği kaldırıldı.
Epiphany ayrıca HTTP uygulaması için libsoup kullanıyor ve vekiller artık GNOME'un her tarafında aynı şekilde çalışıyor. libsoup içinde eksik işlevler HTTP tamponu ve içerik kodlaması.
Son olarak, web görünümündeki bağlam menüsü artık Epiphany henüz özelleştirilmedi, hala öntanımlı WebKit görünümü kullanılıyor.