2013-08-29 18:17:28 |
Cris Dywan |
description |
It would seem that on the first glance infobars, status icons and error messages have few in common, but plenty of unrelated features are actually similar in how they face the user:
You use Adblock. Every website you visit may or may not be blocked. You expect an icon of some kind to tell you. There should be a way to go into the settings from its icon. Said icon might be in the statusbar or urlbar.
Now think of Cookies (hot potatoe, not chocolate chip). Every website may or may not store cookies. You may expect a prompt of sorts to decide to allow them; maybe you don't care to be prompted. Likely this will be an infobar or a dialog.
Now let's abstract the UI and on a semantic level many features probably boil down to:
a) extension Foobar
b) creates Midori.ContextAction("FoobarStatus"
c) adds actions for "Block" or "Allow"
d) set a Midori.View? view or not
e) enum Lifetime { TAB, URL, DOMAIN, DISPOSABLE, INFINITE }
d) bool interactive # show an infobar?
These steps include a mock API design. I plan to implement an API like that in the near future; so this feature request is partly to conserve the brainstorming. Feedback from interested developers is obviously also welcome. |
It would seem that on the first glance infobars, status icons and error messages have few in common, but plenty of unrelated features are actually similar in how they face the user:
You use Adblock. Every website you visit may or may not be blocked. You expect an icon of some kind to tell you. There should be a way to go into the settings from its icon. Said icon might be in the statusbar or urlbar.
Now think of Cookies (hot potatoe, not chocolate chip). Every website may or may not store cookies. You may expect a prompt of sorts to decide to allow them; maybe you don't care to be prompted. Likely this will be an infobar or a dialog.
Now let's abstract the UI and on a semantic level many features probably boil down to:
a) extension Foobar
b) creates Midori.ContextAction("FoobarStatus"
c) adds actions for "Block" or "Allow"
d) set a Midori.View? view or not
e) enum Lifetime { TAB, URL, DOMAIN, DISPOSABLE, INFINITE }
d) bool interactive # show an infobar?
These steps include a mock API design. I plan to implement an API like that in the near future; so this feature request is partly to conserve the brainstorming. Feedback from interested developers is obviously also welcome.
Related bugs:
bug 1207465 |
|