Re: Required egg-editable-toolbar changes for extensions



> > Conclusion: the XML file epiphany-toolbar.xml must store toolbar buttons
> > which are in non-loaded extensions.
> I completely agree.

I think this is not a clear cut as it would seem.

- Where do you insert an item dragged in the place of one of these
hidden items, after or before it, we are forced to be arbitrary...
- What do we do if the hidden item is the last or the only one on the
toolbar ? We autoremove the toolbar or not ?
- What do we do if the user remove the whole toolbar ? We remove the
hidden item too ?
- If the user heavily changes the layout in any case the hidden item
will reappear in some screwed position
- How do we deal with the difference of a toolbar item that cannot be
created because of a missing extension and one that cannot be recreated
because the action is no more available (in extension or epiphany
itself) ?
- For extensions that can add a considerable amount of items (bookmarks
extension for example) you are going to bloat user data, without no
other way to recover than reloading the extension and remove these
items.

I think the decision here needs to take in consideration the use cases
of extensions. Are there actual cases where the user would need to load
and unload extensions often ?
It would seem to work this way to me. I install an extension, add a
toolbar item, try it out for a bit, decide it sucks and remove the
extension. Now it's possible that after some time I'll want to retry the
same extension, but in that case I dont think readding the item would be
a big deal. Maybe in some cases it could even be confusing and unexpect
to see the item reappear, possibly in an unexpected position.
I think keeping the item would be really useful only in the case the
user needs to load and unload the extension frequently. But why you
would do it ? If you need the functionality you will just keep it
around.

> I think it would be simpler to just extend the EphyExtension interface
> with a method to insert available actions into the tbe.

Maybe load_actions could be enough ? You could just make it load a per
extension xml.

> What's missing is extensibility of the toolbars
> model itself to new types of items; we'll need this when we proceed with
> the plan to make bookmarks pluggable.

Let's delay that a bit. We need to think more carefully about what we do
about bookmarks. It should be easy to deal with it using signals or an
interface. Though here the problem of loading/unloading become much more
difficult and critical.

Marco




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]