Features/GTK3/Shell: Difference between revisions

Dnarvaez (talk | contribs)
No edit summary
Erikos (talk | contribs)
 
(13 intermediate revisions by 3 users not shown)
Line 12: Line 12:
==Open==
==Open==


=== Custom tree model for journal ===
===foreach/forall===
 
Using gtk_container_foreach or [http://developer.gnome.org/gtk3/3.4/GtkContainer.html#gtk-container-foreach  gtk_container_forall] does expect the callback data to be passed in Python, it does work in a subclassed container due to Carlos [http://git.gnome.org/browse/gtk+/commit/?id=db569cbee7e3842d802c5f1d53e28d0dde98ffeb  fix in the GtkCallback annotations].
Having trouble reimplementing this. See http://mail.gnome.org/archives/python-hackers-list/2011-December/msg00010.html [https://bugzilla.gnome.org/show_bug.cgi?id=680812 this bug] might be related see 8f31e85db1392eb7222593fc0d05144c2bca06a3 in pygobject.
 
Gonzalo provided an initial patch, and Manuq worked over it.
 
Current patch: http://dev.laptop.org/~manuq/journal_gtk3-2.patch
 
Previous patch that includes the switch to new toolbars: http://dev.laptop.org/~manuq/journal_gtk3.patch .
 
===key grabber===
- grab_keys needs to be introspectable, [http://lists.sugarlabs.org/archive/sugar-devel/2012-August/039190.html patch]
- is_modifier does not allow to pass no mask anymore, has to be something like "is_modifier(keycode, mask=Gdk.ModifierType.MOD1_MASK)"


===gtk_clipboard_set_with_data not introspected===
===gtk_clipboard_set_with_data not introspected===
Line 32: Line 21:


- check with pygobject devs if the above statement is still the case
- check with pygobject devs if the above statement is still the case
It seems like functions with multiple callbacks are still unsupported in pygi. I opened https://bugzilla.gnome.org/show_bug.cgi?id=682604 but unless someone suggest a way to not break API perhaps we should just add our own sugar_clipboard_set_data using closures for now --dnarvaez


=== gdk_property_change ===
=== gdk_property_change ===
Line 46: Line 37:
AttributeError: 'gi.repository.Gdk' object has no attribute 'property_change'
AttributeError: 'gi.repository.Gdk' object has no attribute 'property_change'
</pre>
</pre>
We have a wrapper for this in sugar-toolkit-gtk3 --dnarvaez


=== gdk_property_get ===
=== gdk_property_get ===
Line 64: Line 57:


  TypeError: Could not caller allocate argument 6 of callable property_get
  TypeError: Could not caller allocate argument 6 of callable property_get
Maybe add to gdkwrapper in sugar-toolkit-gtk3? --dnarvaez
===Palettes===
* Palettes in Views do popup/popdown in a loop: [http://git.sugarlabs.org/~manuq/sugar-toolkit-gtk3/manuqs-sugar-toolkit-gtk3/commit/f751ec4761934a4d7193c7b4de1ab48fba8e619a fix in sugar-toolkit-gtk3/port]
* FavoritePalette: wrong order of items: [http://git.sugarlabs.org/~manuq/sugar/manuqs-erikos-shell-port/commit/1b1ea09f09dc4001698503d14c5b067636e62471 fix in sugar/port]
* when you switch views always the owner Palette comes up
* Home View: when a Palette is up, the search entry is de-focused
* Palette label: 1) icon has gray background and 2) the positioning is not at the left, 3) there is no separation line below the label
* Journal ListView entry Palette: "AttributeError: 'CellRendererActivityIcon' object has no attribute 'get_display'"
* Frame, friend Palette draws not at the correct position
* Mix Menus and Widgets: Palettes can not mix both Menus and Widgets. Gonzalo has implemented a [http://git.sugarlabs.org/read/mainline/blobs/master/sugarmenuitem.py SugarMenuItem] which can be used instead.
===Icon/EventIcon: badge is not drawn at the correct position===
Filed as [http://bugs.sugarlabs.org/ticket/3835 SL #3835]
===Artwork===
Changes in the theme to adopt to:
* [http://bugs.sugarlabs.org/ticket/3836 Palette Icon: background]
* [http://lists.sugarlabs.org/archive/sugar-devel/2012-August/039359.html GtkLabel: background]
* [http://bugs.sugarlabs.org/ticket/3837 Browse: Notebook label: background]


=== Port hardcoded styles to the CSS stylesheet ===
=== Port hardcoded styles to the CSS stylesheet ===
Line 196: Line 210:


==Done==
==Done==
=== Custom tree model for journal ===
<span style="color:#2ce713;"> Fix from: Manuel Quiñones, Simon Schampijer, Gonzalo Odiard </span>
Custom tree model sample: http://dev.laptop.org/~manuq/shell-port/test_custom_treemodel-gtk3.py
Having trouble reimplementing this. See http://mail.gnome.org/archives/python-hackers-list/2011-December/msg00010.html [https://bugzilla.gnome.org/show_bug.cgi?id=680812 this bug] might be related see 8f31e85db1392eb7222593fc0d05144c2bca06a3 in pygobject.
Gonzalo provided an initial patch, and Manuq worked over it.
===key grabber===
<span style="color:#2ce713;"> Fix from: Simon Schampijer </span>
- grab_keys needs to be introspectable, [http://lists.sugarlabs.org/archive/sugar-devel/2012-August/039190.html patch]
- is_modifier does not allow to pass no mask anymore, has to be something like "is_modifier(keycode, mask=Gdk.ModifierType.MOD1_MASK)"


=== Xkl.ConfigRec does not have set_model() method ===
=== Xkl.ConfigRec does not have set_model() method ===