GTK
היסטוריה

GTK+‎ תוכננה במקור לשמש את תוכנת העיצוב של גנו, GIMP, כתחליף לערכת הכלים Motif. תחילת דרכה הייתה כאשר פטר מאטיס, אז מפתח Motif, לא היה מרוצה ממנה והחל לכתוב ערכת כלים משלו בשם GIMP Toolkit, אשר החליפה בהצלחה את Motif. לבסוף GTK ‏ (קיצור של GIMP Toolkit) נכתבה מחדש בצורה מונחית עצמים והייתה ל־GTK+‎, אשר שוחררה לראשונה במקביל לגרסה 0.99 של GIMP.
גרסה 2.0.0 של GTK+‎ הציגה מספר רב של תכונות חדשות, ביניהן עיבוד טקסט משופר באמצעות Pango, מנוע ערכת נושא חדש, שיפור הנגישות באמצעות כלים מתאימים, תמיכה מלאה ביוניקוד UTF-8 וגמישות יתרה. החל מגרסה 2.8, GTK+‎ תלויה בָּספרייה לעיבוד גרפיקה וקטורית Cairo.
לאחר כמעט עשור של פיתוח ענף גרסה 2 של GTK+‎, שוחררה גרסה 3.0.0 של GTK+‎, בה נתונים פנימיים רבים הפכו לפרטיים, קוד רב שוכתב, נוספו יישומונים חדשים רבים ושופרו הביצועים. כמו כן נוספה תמיכה בערכת נושא הכתובה בתחביר דמוי CSS וערכת נושא כהה, ונוסף לזה הטיפול בציור הועבר מ־GDK לספרייה Cairo. בהמשך, נוספה תמיכה ב־Wayland, מנהל התצוגה הבא של לינוקס, וב־HTML5 (כלומר - נוספה אפשרות להציג יישומי GTK+3 בתוך דפדפנים התומכים ב־HTML5). גרסה זו ניתנת להתקנה במקביל לגרסה 2 של GTK+‎.
על אף שעברו למעלה משנתיים משחרור GTK+ 3.0, לא כל יישומי GTK+ 2 הוסבו לגרסה החדשה, כך שיישומים פופולריים רבים עודם עושים שימוש ב־GTK+ 2. כך, הדפדפן מוזילה פיירפוקס עודנו עושה שימוש ב־GTK+ 2 המיושן מעט, והסבתו ל־GTK+ 3 עודנה בפיתוח. כך גם חבילת היישומים המשרדיים LibreOffice.
ישנם יישומים להם קיים ענף פיתוח להסבתם ל־GTK+ 3, כמו תוכנת הגרפיקה הממוחשבת GIMP, ותוכנה עיבוד הגרפיקה הווקטורית אינקסקייפ, אשר לכל אחת מהן קיימת גרסה עובדת תחת GTK+ 3. יש לציין כי מרב יישומי GNOME כבר הוסבו ל־GTK+ 3.
| סדרת הפצה | תאריך פרסום ראשון | השיפורים העיקריים | גרסה משנית אחרונה |
| --- | --- | --- | --- |
| 1.0 (אורכב 22.02.2012 בארכיון Wayback Machine) |  14 באפריל 1998 | גרסה יציבה ראשונה | 1.0.6 |
| 1.2 |  27 בפברואר 1999 | יישומונים חדשים (GtkFontSelector, GtkPacker, GtkItemFactory, GtkCTree, GtkInvisible, GtkCalendar, GtkLayout, GtkPlug, GtkSocket), תמיכה בערכות נושא. |  1.2.10  |
| 2.0 |  11 במרץ 2002 | הסבת עיבוד הטקסט ל־Pango הכוללת תמיכה ביוניקוד UTF-8, תמיכה בשפות מימין לשמאל ושפות מורכבות יותר; שכתוב הקוד לשימוש ב־GObject, יישומון טקסט חדש. |  2.0.9 |
| 2.2 |  22 בדצמבר 2002 | תמיכה בריבוי תהליכים |  2.2.4 |
| 2.4 |  16 במרץ 2004 | יישומונים חדשים (GtkFileChooser, GtkComboBox, GtkComboBoxEntry, GtkExpander, GtkFontButton, GtkColorButton) |  2.4.14  |
| 2.6  | 16 בדצמבר 2004 | יישומונים חדשים (GtkIconView, GtkAboutDialog, GtkCellView, GtkFileChooserButton,   GtkMenuToolButton), שיפורי ביצועים רבים.  | 2.6.10  |
| 2.8  | 13 באוגוסט 2005 | שילוב הספרייה לעיבוד גרפיקה וקטורית Cairo  | 2.8.20  |
| 2.10  | 3 ביולי 2006 | יישומונים חדשים (GtkStatusIcon, GtkAssistant, GtkLinkButton, GtkRecentChooser,   GtkCellRendererAccel, GtkCellRendererSpin), תמיכה בהדפסה (GtkPrintOperation), תמיכת גרירה ושחרור ב־GtkNotebook, תמיכה ב־OS X וב־DirectFB.  | 2.10.14  |
| 2.12  | 14 בספטמבר 2007 | תמיכה ברמז־צץ. GtkBuilder. יישומונים חדשים (GtkScaleButton, GtkVolumeButton, GtkRecentAction). הוסרה התמיכה ב־Windows 98/ME. תמיכה בריבוי צגים. |  2.12.12  |
| 2.14  | 4 בספטמבר 2008 | תמיכה בטעינת JPEG. נוסף ממשק (GtkToolShell) עבור מכולות המכילות יישומוני GtkToolItem. תמיכה בהשלמה אוטומטית בפתיחת קבצים. יישומון חדש (GtkMountOperation).  | 2.14.7  |
| 2.16  | 13 במרץ 2009 | ב־GdkKeymap נוספה אזהרה ב־Caps Lock בעת הכנסת סיסמה. הטיפול בקיצורי־המקשים שונה. | 2.16.6  |
| 2.18  | 23 בספטמבר 2009 | נוסף יישומון GtkInfoBar. שיפור דו־שיח לבחירת קובץ. GDK נכתב מחדש לשימוש בצד הלקוח של מנהל החלונות. יישומון נוסף חדש (GtkEntryBuffer), אשר הופרד מ־GtkEntry. | 2.18.9  |
| 2.20  | 23 במרץ 2010 | יישומונים חדשים (GtkSpinner, GtkCellRendererSpinner, GtkToolPalette, GtkOffscreenWindow),   שופר יישומון בחירת קובץ, טיפול במקלדת GDK, נתוני Gobject Introspection נכללו ב־GTK+‎. הגדרות מאקרו רבות הפכו למיושנות. תמיכה ראשונית ב־Tracker לחיפוש קבצים. |  2.20.1  |
| 2.22  | 23 בספטמבר 2010 | Gdk Pixbuf הופרד מ־GTK+‎ למודול נפרד, רוב ציורי GTK+‎ הוסב ל־Cairo ונתונים פנימיים רבים הפכו לפרטיים, לקראת GTK+3‎. |  2.22.1  |
| 2.24  | 30 בינואר 2011 | עדכון ושיפור התמיכה ב־Microsoft Windows. התווסף יישומון חדש המפשט את GtkComboBox   (GtkComboBoxText), ‏ GtkBuilder תומך בתגי טקסט ובכפתורי תפריטים. | 2.24.23  |
| 3.0  | 10 בפברואר 2011 | גרסה משמעותית חדשה, אשר ניתנת להתקנה במקביל ל־GTK+ 2.x. ‏ הושלמה הסבת הציור מ־GDK ל־Cairo, תמיכה טובה יותר בריבוי התקני קלט, ערכת נושא מבוססת CSS ואפשרות לערכת נושא כהה. כל הפונקציות והמחלקות שסומנו כמיושנות הוסרו. היישומון GtkProgress הוסר. GdkRegion הוסר והוחלף ב־cairo_region_t. נתונים רבים הפכו לפרטיים.   יישומונים חדשים (GtkAppChooserButton, GtkNumerableIcon, GtkVolumeButton, GtkSwitch). |  3.0.12  |
| 3.2  | 25 בספטמבר 2011 | ניסיון לתמוך במערכת Wayland וב־HTML5, תיבת דו־שיח חדשה לבחירת גופן, יישומונים חדשים   (GtkLockButton, GtkOverlay, GtkFontChooser, GtkFontChooserDialog).  | 3.2.0  |
| 3.4  | 26 במרץ 2012 | תמיכה בתפריט GtkApplication, בוחר־צבע חדש, תמיכה במכשירי מגע, תמיכה בגלילה חלקה,   GtkScrolledWindow תומך בגלילה קינטית עם מכשירי מגע, שופרה התמיכה ב־OS X, גרסה ראשונה של GTK+3‎ הפועלת היטב על חלונות, תמיכה ב־Wayland עודכנה, כפתורי ספין קיבלו מבט נגישות חדש, תמיכת הנגישות ב־TreeView נכתבה מחדש ועובדת הרבה יותר טוב, התמיכה בערכת נושא דמוית CSS מלאה יותר. תמיכה ראשונה ב־HTML5 שעובדת. תיקונים רבים בתמיכה ב־Windows. יישומון בדיקה חדש (widget-factory). | 3.4.4 |
| 3.6  | 25 בספטמבר 2012 | יישומונים חדשים (GtkLevelBar, GtkSearchEntry, GtkMenuButton), ‏ נוספה תמיכה לפריסת גובה לרוחב ב־GtkIconView, נוספה תמיכה לפריסה אנכית עבור GtkSpinButton. ‏ GtkEntry תומך בהגדרת תכונות Pango לטקסט. נוספה תמיכה ברקע ומעברים מרובים לערכת הנושא ואף תמיכה מוגבלת בהנפשות CSS. | 3.6.5 |
| 3.8  | 26 במרץ 2013 | לראשונה תמיכה מלאה ב־Wayland. נוסף broadwayd, שרת תצוגה חדש המאפשר ריבוי יישומים בדפדפן באמצעות HTML5. שיפורים רבים בביצועים. תמיכה בתפריטים קופצים ידידותיים במכשירי מגע. מסגרת סנכרון עם Mutter מבטיחה הנפשות ושינויי גודל חלקים. שיפור התמיכה בגופנים, המאפשר להגדיר מאפייני גופן באמצעות CSS. | 3.8.9 |
| 3.10  | 23 בספטמבר 2013 | הושלמה התמיכה ב־Wayland. שופרה התמיכה ב־Broadway. תמיכה ביצירת יישומונים מורכבים מ־GtkBuilder. תמיכה בקישוטי צד־לקוח, הכוללת סיפוק שורת כותרת מותאמת. תמיכה בתצוגה ברזולוציה גבוהה. גלילה משופרת, הכוללת תמיכה בגלילה חלקה יותר ובמצב הגדלה.   יישומונים חדשים (GtkHeaderBar, GtkPlacesSidebar, GtkStack, GtkStackSwitcher, GtkRevealer, GtkSearchBar ו־GtkListBox).   ניהול גאומטריה משופר, המאפשר יישור טקסט טוב יותר. תמיכה לפריסת גובה לרוחב ל־GtkEventBox ול־GtkCheckButton. פונקציות והגדרות רבות הפכו למיושנות, אשר תוסרנה ב־GTK+ 4. | 3.10.9 |
| 3.12  | 25 במרץ 2014 | שיפור התמיכה ב־Wayland. שיפור התמיכה ב־Brodway, העושה כעת שימוש בקישוטי צד־לקוח ותומך במסך מגע. שיפור הנגישות. יישומונים חדשים: GtkFlowBox, GtkActionBar ו־GtkPopover. מראה חדש ללשוניות. מראה חדיש עם קישוטי צד־לקוח בתיבות דו־שיח. GtkBox יכול להכיל יישומון במרכז. ניתן להסתיר פריטים בתפריטים מבוססי מודל. תמיכה ב־Google Cloud בדו־שיח להדפסה. שיפורים רבים לקישוטי צד־לקוח. הרבה מכולות קיבלו היכולת לצייר רקע ומסגרת. GtkApplication מאחסן ומטפל במאיצים עבור GActions. לא נדרש מזהה עבור כל עצם ב־GtkBuilder. מספר פונקציות והגדרות הפכו למיושנות, אשר תוסרנה ב־GTK+ 4. | 3.12.2 |
| 3.14  | 22 בספטמבר 2014 | תמיכה במסך מגע ובגרירה ושחרור ב־Wayland. ערכת הנושא בבררת מחדל הוחלפה עם ב־Adwaita, ששוכתבה ב־CSS/SASS. תמיכת CSS בערכת הצלמיות. תמיכה במחוות במסך מגע, מרבית היישומים תומכים בכך. נוסף מנפה שגיאות „מפקח” / Inspector. נוסף יישומון קטן לסיור בצלמיות המותקנות. תמיכה בבחירה מרובה ב־GtkListBox. תמיכה טובה ביותר בשילוב תפריטים ב־OS X. פונקציות והגדרות רבות הפכו למיושנות, אשר תוסרנה גם הן ב־GTK+ 4. | 3.14.1 |