Difference between revisions of "GTK3 Porting Checklist"

From Claws Mail FAQ
Jump to: navigation, search
(created)
 
(update)
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
== Does not work ==
 
== Does not work ==
  
Color labels do not show actual color boxes in common prefs.
+
* Color labels do not show actual color boxes in common prefs.
  
Using gtk_container_add() with GtkBox results in widgets not using full height available to them - gtk_box_pack_start() should be used instead.
+
*Using gtk_container_add() with GtkBox results in widgets not using full height available to them - gtk_box_pack_start() should be used instead. (Eventually, all GtkBoxes should be migrated to GtkGrid) Fixed so far:
Fixed so far:
+
** compose window textview
- compose window textview
+
** prefsdialog page content area
- prefsdialog page content area
+
** template preferences dialog
- template preferences dialog
 
(Eventually, all GtkBoxes should be migrated to GtkGrid.)
 
  
Folderview uses too bright colors for row backgrounds (alternating light gray and even lighter gray).
+
* Folderview uses too bright colors for row backgrounds (alternating light gray and even lighter gray).
  
Folderview uses white text for folders without new messages in them, instead of black. Maybe related to bug #3880.
+
* Quicksearch sometimes doesn't display the search type combobox and information button.
  
GtkCMCList has redrawing issues when mouse scrolling.
+
* Foldersel dialog doesn't show alternating colors in the folder list.
  
Quicksearch sometimes doesn't display the search type combobox and information button.
+
* Fancy doesn't work, hangs indefinitely in webkit_web_view_new().
  
Foldersel dialog doesn't show alternating colors in the folder list.
+
* Vcalendar week/month views do not work, sometimes even crashes the whole program.
  
Fancy doesn't work, hangs indefinitely in webkit_web_view_new().
+
* Network log window minimal requested size is too large. Same for Mainwindow.
  
Messageview doesn't show Mimeview with body part icons on the right.
+
* About window won't shrink back if you increase its width. Opened https://bugzilla.gnome.org/show_bug.cgi?id=793407 for that.
  
Vcalendar week/month views do not work, debug messages look like a new Claws Mail instance is trying to start when trying to display them.
+
== Works, but is ugly ==
  
Network log window minimal requested size is too large. Same for Mainwindow.
+
* GtkSpinButton is too wide with the -/+ buttons being large and next to each other, instead of small and one above another like in GTK2.
  
== Works, but is ugly ==
+
== Deprecated API ==
 +
 
 +
* GtkHBox, GtkVBox, GtkTable -> GtkGrid
  
GtkSpinButton is too wide with the -/+ buttons being large and next to each other, instead of small and one above another.
+
* Alertpanel needs to be rewritten to not use GTK_STOCK_*, but GtkIconTheme and named icons.
  
== Deprecated API ==
+
* GtkUIManager is deprecated in GTK3, to be removed in GTK4
 +
<pre>
 +
#claws@Freenode on 2018-09-24:
 +
(@Ticho) well, for now, we could just stick our heads in the sand and pretend that GtkUIManager is still okay
 +
(@Ticho) we can start caring about it again once it's time to go from GTK3 to GTK4
 +
(@Ticho) (although I'm pretty sure our future selves will hate us for that) :)
 +
(@Ticho) but hopefully by then, there will be better available solutions - even if it was just this Amtk library being widely available and packaged in major distros
 +
(@claws) seems like a plan
 +
</pre>

Latest revision as of 00:54, 27 March 2019

Does not work

  • Color labels do not show actual color boxes in common prefs.
  • Using gtk_container_add() with GtkBox results in widgets not using full height available to them - gtk_box_pack_start() should be used instead. (Eventually, all GtkBoxes should be migrated to GtkGrid) Fixed so far:
    • compose window textview
    • prefsdialog page content area
    • template preferences dialog
  • Folderview uses too bright colors for row backgrounds (alternating light gray and even lighter gray).
  • Quicksearch sometimes doesn't display the search type combobox and information button.
  • Foldersel dialog doesn't show alternating colors in the folder list.
  • Fancy doesn't work, hangs indefinitely in webkit_web_view_new().
  • Vcalendar week/month views do not work, sometimes even crashes the whole program.
  • Network log window minimal requested size is too large. Same for Mainwindow.

Works, but is ugly

  • GtkSpinButton is too wide with the -/+ buttons being large and next to each other, instead of small and one above another like in GTK2.

Deprecated API

  • GtkHBox, GtkVBox, GtkTable -> GtkGrid
  • Alertpanel needs to be rewritten to not use GTK_STOCK_*, but GtkIconTheme and named icons.
  • GtkUIManager is deprecated in GTK3, to be removed in GTK4
#claws@Freenode on 2018-09-24:
(@Ticho) well, for now, we could just stick our heads in the sand and pretend that GtkUIManager is still okay
(@Ticho) we can start caring about it again once it's time to go from GTK3 to GTK4
(@Ticho) (although I'm pretty sure our future selves will hate us for that) :)
(@Ticho) but hopefully by then, there will be better available solutions - even if it was just this Amtk library being widely available and packaged in major distros
(@claws) seems like a plan