I think the list is pretty comprehensive and covers the most use
cases, I just have a question regarding this:
> Sidebar
>
> Sidebars are a bedeviling choice. Lamented by some Firefox contributors for
> not being useful and usable enough, Firefox's existing sidebar API
> nevertheless satisfies a use case that is not currently being served by
> another Firefox interface affordance and will not be satisfied by panels:
> that of a persistent, visible space that does not overlay other chrome.
>
> The prototype had an API for sidebars, although it used its own experimental
> "slidebar" implementation. The SDK should also provide an API for adding
> sidebars, although its variant should integrate well with Firefox's existing
> sidebar implementation (with slidebar-like enhancements pushed into
> Firefox's implementation where appropriate).
>
I remember that when the reboot started, there was a lot of discussion
around the sidebar. Almost everyone was saying that the sidebar
wouldn't be on the SDK, or at least not in the same way that in the
prototype. The thing was that practically every person that I showed
the sidebar was pleased with the experience, and also I was. So, what
is going to happen UX-wise with the sidebar? Will it be the same
experience but better implemented, and maybe changing firefox
implementation? Will it be radically different?
Hernán
+1000 on this.
> Notifications
>
> Transient notifications (of the growl and toaster varieties) and the
> Firefox notification bar have become popular ways to inform users about
> events and in some cases request responses. Some of the use cases for
> these notifications can be handled by panels, but others are better
> suited to the kind of affordance the notifications provide.
What more do we need than something like
/**
* Show a system notification with the given message
*
* @param String or Object with a message to be shown in a default
* notification or object with properties title, icon, and body
* @return None
*/
exports.notification = function notification(msg) {
var body = msg;
var title = "Bugzilla Notification";
var icon = null;
if (typeof(msg) === "object") {
body = msg.body;
if ("title" in msg) {
title = msg.title;
}
if ("icon" in msg) {
icon = msg.icon;
}
}
try {
var classObj = Cc["@mozilla.org/alerts-service;1"];
var alertService = classObj.getService(Ci.nsIAlertsService);
alertService.showAlertNotification(icon, title, body);
return true;
} catch (e) {
console.error("Unable to display notification:", msg);
return false;
}
};
> Clipboard
>
> Clipboard access seems fairly popular amongst both traditional
> extensions and those created with the prototype, so it's worth providing
> an API for accessing the clipboard in the core library as well.
https://fedorahosted.org/bugzilla-triage-scripts/browser/lib/clipboard.js
Will we get official support for basic prompts? Something like
https://fedorahosted.org/bugzilla-triage-scripts/browser/lib/prompts.js
???
> It seems like we'd be better off encouraging usage of simple-storage and
> enhancing the simple-storage API where appropriate to meet any
> additional use cases identified by developers before we start
> considering an API for creating SQLite databases.
Isn't there some HTML5-ish structured storage available in FF4?
Matěj
--
Our lives are spectacles of powerlessness.
-- Richard Rohr
BTW, one more question: it might be useful to have some
password/encrypted-storage management. Something like (most likely
better written) like
https://fedorahosted.org/bugzilla-triage-scripts/browser/lib/passwords.js
?
Matěj
--
There is no reason to suppose that most human beings are engaged
in maximizing anything unless it be unhappiness, and even this
with incomplete success.
-- Ronald Coase
Introduction to ``The Firm, the Market, and the Law''
I'd suggest:
+ @callback - An optional javascript callback to be invoked when user clicks on
notification
appears to already be supported in the underlying nsIAlertsService...
lloyd
We should also identify key improvements in the slidebar prototype and
get those landed into Firefox, so all sidebars (whether added by addons
or built into Firefox) can benefit from them. But that can be a separate
project, and it'll be much easier to work on it separately than to try
to land its Firefox changes in conjunction with the SDK API.
-myk
https://fedorahosted.org/bugzilla-triage-scripts/ticket/33
--
He uses statistics as a drunken man uses lamp-posts... for
support, rather than illumination.
-- Andrew Lang
What do you think about
https://fedorahosted.org/bugzilla-triage-scripts/changeset/640b26f
(note, I would rather not add too many parameters to that function)?
Matěj
--
If Patrick Henry thought that taxation without representation was
bad, he should see how bad it is with representation.
https://wiki.mozilla.org/Labs/Jetpack/SDK/APIs#High-level_APIs
> --
> You received this message because you are subscribed to the Google Groups
> "mozilla-labs-jetpack" group.
> To post to this group, send email to mozilla-la...@googlegroups.com.
> To unsubscribe from this group, send email to
> mozilla-labs-jet...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/mozilla-labs-jetpack?hl=en.
>
http://groups.google.com/group/mozilla.dev.planning/msg/3944d42aaf874b49
He's recommending two main points where extensions should add UI to
Firefox 4: 1) the extension bar and 2) an extension area in the Firefox
menu.
If that's what UX recommends for Firefox 4 extensions, Jetpack SDK 1.0
should definitely provide API(s) for both parts. The widget module
already handles part 1. Part 2 should be really simple. While it hooks
into the Firefox menu, it doesn't require a full-blown menu API, and it
might be even possible to handle it as a part of widget: Register a
widget, get a menu item for free.
(I'm not actually sure how a user can be guaranteed the experience Alex
describes for part 2 unless all the user's extensions are Jetpack-based...)
Drew
IIRC from the Prototype, context menus were widely used, yes, toolbar
menus less so. Given that observation, and the UX recommendation that
Firefox 4 extensions restrict themselves to an extensions area of the
Firefox menu, and the fact that the SDK allows anyone to write and share
libraries, I think it's reasonable to focus on other things for SDK 1.0.
Plus what Myk said. :)
Drew
Will we get official support for basic prompts? Something like
https://fedorahosted.org/bugzilla-triage-scripts/browser/lib/prompts.js
Isn't there some HTML5-ish structured storage available in FF4?
-myk
If that's what UX recommends for Firefox 4 extensions, Jetpack SDK 1.0 should definitely provide API(s) for both parts.
The widget module already handles part 1. Part 2 should be really simple. While it hooks into the Firefox menu, it doesn't require a full-blown menu API, and it might be even possible to handle it as a part of widget: Register a widget, get a menu item for free.
(I'm not actually sure how a user can be guaranteed the experience Alex describes for part 2 unless all the user's extensions are Jetpack-based...)
Also, in my experience, addons typically only modify the Tools menu,
adding a single menu item (perhaps with sub items) that serves as an
interface to the extension's functionality. So the kind of "menu" API it
would make sense to support would be a targeted one that satisfies this
common use case (as opposed to a generic one for general menu manipulation).
And given recent Firefox proposals for an addons submenu of the Firefox
menu, this sounds like exactly what we should do.
-myk
--
Juli�n Ceballos
Mozilla M�xico Software
No need to apologize, you did nothing wrong! Writing a JEP and filing a
bug are perfectly valid ways to contribute an API to the project! I only
suggested what I did because I think a library in the Add-on Builder
will be a better way to develop this particular API.
(In general, Add-on Builder libraries are the better way to develop most
APIs, since one doesn't have to write a spec beforehand, conform to core
code and API design standards, go through design and implementation
review cycles, and release on a schedule.)
Nevertheless, it's perfectly reasonable to have started with a JEP and
bug, so don't worry, you did everything right, and I'm looking forward
to seeing your API evolve!
-myk
-myk