#2328 BLOC Trial-3: Bitfrost requires that the 'File New' and 'Share' features be initiated through Sugar itself, not through the activities.
Zarro Boogs per Child
bugtracker at laptop.org
Tue Aug 21 16:23:42 EDT 2007
#2328: Bitfrost requires that the 'File New' and 'Share' features be initiated
through Sugar itself, not through the activities.
-------------------------------+--------------------------------------------
Reporter: mstone | Owner: Eben
Type: defect | Status: new
Priority: blocker | Milestone: Trial-3
Component: interface-design | Version:
Resolution: | Keywords: security, sugar
Verified: 0 |
-------------------------------+--------------------------------------------
Changes (by danw):
* cc: danw (added)
Comment:
I think we can actually fix this without needing any UI changes by using
GtkPlug/GtkSocket:
When an activity creates its toolbar, if it wants a "Share with" pop-up or
a "Keep" button or a "New" menu item, or any other widget that can be used
to invoke a privileged operation, rather than creating it itself, it calls
out via dbus to Rainbow, and Rainbow creates the requested widget, wraps
it in a GtkPlug, and returns the X ID of the plug window to the activity.
The activity then creates a GtkSocket for that X ID and adds it to the
right place in the toolbar, causing the Rainbow-created widget to appear.
When the user clicks on the widget, *Rainbow* gets the events, not the
activity, and if the user chooses to share/keep/whatever, Rainbow can
signal to the app what to do via d-bus, or X property changes on the plug,
or something.
(This also lets us solve #1166 "UI to kill not responding activity"; if
the "Stop" button in the toolbar is being run out of another process, then
it will still be clickable even if the rest of the UI isn't.)
--
Ticket URL: <http://dev.laptop.org/ticket/2328#comment:4>
One Laptop Per Child <http://laptop.org/>
More information about the Bugs
mailing list