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 .
| |
− | | |
− | Calling Gio.VolumeMonitor.get() crashes Sugar:
| |
− | | |
− | 1342801014.701506 DEBUG root: visibility_notify_event_cb <JournalActivity object at 0x3c5fc80 (jarabe+journal+journalactivity+JournalActivity at 0x3672900)>
| |
− | 1342801014.703394 DEBUG root: visibility_notify_event_cb <JournalActivity object at 0x3c5fc80 (jarabe+journal+journalactivity+JournalActivity at 0x3672900)>
| |
− | 1342801014.795809 DEBUG root: window_state_event_cb <JournalActivity object at 0x3c5fc80 (jarabe+journal+journalactivity+JournalActivity at 0x3672900)>
| |
− | 1342801014.797290 DEBUG root: visibility_notify_event_cb <JournalActivity object at 0x3c5fc80 (jarabe+journal+journalactivity+JournalActivity at 0x3672900)>
| |
− | TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
| |
− | **
| |
− | ERROR:/home/manuq/prog/manuqs-shell-port/source/pygobject/gi/_gobject/pygobject.c:946:pygobject_new_full: assertion failed: (tp != NULL)
| |
− | | |
− | === Xkl.ConfigRec does not have set_model() method ===
| |
− | This should be called in the setup keyboard at the startup. setup_keyboard_cb in sugar/bin/sugar-session . Reported as: https://bugzilla.gnome.org/show_bug.cgi?id=681566
| |
| | | |
| ===gtk_clipboard_set_with_data not introspected=== | | ===gtk_clipboard_set_with_data not introspected=== |
Line 41: |
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 55: |
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 73: |
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 194: |
Line 199: |
| | | |
| See http://mail.gnome.org/archives/python-hackers-list/2011-August/msg00003.html and the other posts in the thread. Some problems resolved, some probably still pending. | | See http://mail.gnome.org/archives/python-hackers-list/2011-August/msg00003.html and the other posts in the thread. Some problems resolved, some probably still pending. |
− |
| |
− | ===Owner icon allocation issue===
| |
− |
| |
− | The owner icon is displayed above the center in home and neighborhood views. If we don't take into account the container offset it looks ok, (test removing this line: y -= allocation.y) but then is bad aligned if an alert is displayed in the view.
| |
| | | |
| ===Drag-and-drop in home view, random layout=== | | ===Drag-and-drop in home view, random layout=== |
| Partially done in [http://git.sugarlabs.org/sugar/manuqs-erikos-shell-port/commit/204899e21435d12114747127feee2122e6c3efe3 commit 204899e2]. Pending issue: the activity icon is not being displayed while dragging. | | Partially done in [http://git.sugarlabs.org/sugar/manuqs-erikos-shell-port/commit/204899e21435d12114747127feee2122e6c3efe3 commit 204899e2]. Pending issue: the activity icon is not being displayed while dragging. |
| + | |
| + | (sugar-session:13647): Gtk-CRITICAL **: gtk_drag_source_set_icon_pixbuf: assertion `site != NULL' failed |
| | | |
| ===Other issues=== | | ===Other issues=== |
− | * activities launch screen does not go away | + | * activity launch icon in the frame does not stop fading in and out, like loading |
− | * activity icon in the frame does not stop blinking
| |
− | * the corners of the frame have grey color
| |
| * widgets like icons and texts have grey background instead of black (toolbar-grey) - this is because of a change in gtk (seen in Browse too) | | * widgets like icons and texts have grey background instead of black (toolbar-grey) - this is because of a change in gtk (seen in Browse too) |
| | | |
| ==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 === |
| + | <span style="color:#2ce713;"> Fix from: Manuel Quiñones, Sergey V. Udaltsov </span> |
| + | |
| + | This should be called in the setup keyboard at the startup. setup_keyboard_cb in sugar/bin/sugar-session . Reported in pygobject as: https://bugzilla.gnome.org/show_bug.cgi?id=681566 |
| + | |
| + | Seems that libxklavier needs a setter. Reported to libxklavier as https://bugzilla.freedesktop.org/show_bug.cgi?id=53547 |
| + | |
| + | ===Owner icon allocation issue=== |
| + | <span style="color:#2ce713;"> Fix from: Simon Schampijer </span> in commit cd29d065. |
| + | |
| + | === Port the gstreamer code to pygi === |
| + | <span style="color:#2ce713;"> Fix from: Daniel Narvaez </span> in commit f74489e6 . |
| + | |
| + | === Remove resize grips === |
| + | <span style="color:#2ce713;"> Fix from: Manuel Quiñones </span> |
| + | |
| + | Resize grip has been moved from GtkStatusbar to GtkWindow. See "Resize grip" section of the [http://developer.gnome.org/gtk3/3.1/ch25s02.html GTK+2 > GTK+3 porting guide]. |
| + | |
| + | Done in [http://git.sugarlabs.org/sugar/manuqs-erikos-shell-port/commit/3efb87f349f56e4167010ac020ad31521e2533a2 commit 3efb87f3]. |
| | | |
| === Custom Icon cell renderer === | | === Custom Icon cell renderer === |