Firefox/Feature Brainstorming:Add-ons

From MozillaWiki
< Firefox
Revision as of 11:10, 11 December 2006 by Pigsonthewing (talk | contribs) (auto-removal of defunct extensions)
Jump to navigation Jump to search

« Firefox/Feature Brainstorming

Add-on management

  • Version compatibility
  • Options management
  • Integration with AMO
  • Make extensions "cleanware". Let all of their configuration lie in their own file directory instead of mashing it together with other extensions' configuration in One Big File. This reeks of Windows' "Registry Hell". Cleanly uninstalling an extension should be as simple as deleting its subdirectory.
  • Extensions should have compatibility mode to allow older extensions to run when a new revision of firefox is released and extension is not available. Maybe offer a "force install" to see if an out of revision extension will work.
    • See Nightly Tester Tools extension that is able to force such install mode over any given extension (or at least over most of them).
  • Should be able to view date and time that extension was added, and sort extensions by that date (to aid debugging, by removing extensions in reverse order, until a recently-seen problem ceases to exist). Andy Mabbett
  • Offer a program that allows users to merely alter the color scheme of the Firefox. All gloss effects and UI aesthetics remain, save for the change in color. Once the desired hue is selected, it's as easy as naming, then applying that theme. The program takes care of the rest.
  • If it's possible, changing the theme without restarting (like it's managed in Songbird) would be great.

Add-on manager

  • When prompted to restart because installing/uninstalling Extensions (or plugins), don't prompt to "close tabs?" -- this interrupts the restart flow...
  • "Update All" extensions button
  • Allow a non-root user to deploy extensions system-wide (on Linux)
  • Provide changelogs for extension updates (Do I really want to update?)
  • When the plugin finder doesn't find any suitable plugin, show a description for making easier to the user to find it (show data type?)
  • «Visit Home Page» opens extension's home page in a new window; must have another context menu item to open it in a new tab.
  • Allow us to specify which order each plugin will sit in.
  • Add a option to install plugin for Single User or All User mode while installing the XPI via the GUI.
  • Swap any special feature to an extension and add an Extension Manager that works like the Eclipse Callisto Project, so Firefox would be lightweight and functional
  • Ability to group extensions and themes into folders that can be enabled, disabled, and uninstalled as a group
  • "Restart Firefox" button for updated extensions (not just for new installed extensions)
  • Disabling of all extensions for specific sites. For example, at a bank you want to disable extensions to maximize security. Better would be built in, user-configurable, blacklisting and whitelisting for extensions. This would fit in with the Filter chains concept above (First stage in chain is a test for site with a 'return' target, {or first test in each stage for extension specific black/white-listing}).
  • Keep "Options", "Disable", and "Uninstall" visible with each extension even when not highlighted, to avoid the need to change row height.
  • Expand the Add-on manager to include sections for Plug-Ins, Dictionaries & Search Engines. Add-on Manager Screenshot
  • Simple suggestion: Typing the first letter of the add-on name should take you there, to avoid scrolling
  • Ability to stop search for updates. Currently if an update search hangs on a particular extension, there is no way to interact with the manager without closing and re-opening it.
  • For the "Themes" tab of the Add-on manager, always keep the "Firefox (default)" theme on top, maybe with a separator under it, and then alphabetize the user-added themes below that.

Remote extensions

  • Support for remote extensions (i.e. dev tools package)
  • Store XPI files in a central location so multiple users on the same machine do not have to download the same XPI multiple times. Maybe allow user to set location so only one download is needed for multiple users on a corporate network.
    • Option when installing an add-on to install it for all users or the current user. Must have privileges to alter the user's settings.
  • a complementary web service to store your extension profile in so you could customize your experience at public computers with a simple login

Enable/Disable Add-ons

  • Allow user to disable plugins via "about:plugins", Options/Prefs, or Extensions
  • Dynamic loading/unloading of extensions. No more restarting just because an extension was installed/uninstalled/updated. (Like nglayout.debug.disable_xul_cache = true, only better.)
  • How would you secure this? This seems a great way to share virii

Syncable Add-ons data/prefs

  • Export/Import of Addons Information.

Extensions Packs

  • Firefox should support extension packs, in order to deliver a set of extension in a simple way. This is critical in order to add features without annoying the users with "hundreds of extensions" to find and configure.
    • One of the main issues I've seen upon the adoption of Firefox is "to get Firefox working like <insert browser name here> I have to find and setup too many extensions... I'll keep <same browser name>".
  • Have "Extension Packs" available for download immediately upon completing a Firefox install (also see "Installer" and "Uncategorized: Firefox Core/More" notes)
  • Firefox Core/More solution (under Other or Uncategorized) will handle both extensions packs on install, intuitive configuration and trust.
  • IMPORTANT ! Hi ! I constated that many website are using WMV or WMA (with or without DRM), I mean some majors music websites or some movies rental websites. And it is COMPLETELY impossible to use Firefox to see those websites because of lack of ActiveX. I know that ActiveX has been disabled because of security issues, and I know too that some add-ons are managing activex for Firefox (but it's not official add ons). You should create an official addon in order to enable activex use with security in FF3. (sorry for the language, I'm french ;)

Restrictions

  • Limit amount of Plugins/Addons from overwhelming the Interface. Allow Firefox to limit 2-20 lines of toolbars for real estate recovery. Have Arrow Up and Arrow Down at the start of the Toolbar rotator or use the scroll wheel (when mouseover the Plugin toolbar) to rotate between plugins.
  • Prevent, limit, or allow user control over the way extensions add sub-menus to the right click menu (or whatever it's called). It gets too cluttered.
  • Have an override (like shift + right click) to get firefox's menu instead of plugin menu. This would make it possible to save flash animations, or have a field for "stop playing flash", or have a volume adjustment for the plugin if the plugin / content doesn't allow this.

Extension Crash Control

  • Monitor the resource usage of the extensions, and allow Firefox to "take over" and terminate, suspend, or otherwise neutralize a misbehaving extension. At the moment, much of the Firefox "instability" is caused by a misbehaving extension, such as acrobat or flash, which is causing the whole browser to stop responding.
  • Often when a flash plugin is handling a lot of data (like streaming website statistics), the browser can stop responding while the flash plugin is calcuating. In cases like this it seems that firefox needs to force-ably pause the plugin for a moment to allow the firefox main screen to refresh.
  • Make the browser not become unstable after a plugin crashes.

Plugins

  • Flash plugin to let the Windows version of Flash run using Wine (or similar.)
    • Since the Linux version will always be several versions behind what is used on most web sites and honestly expecting this to change is bordering on insanity, provide a way to run the Windows version under Firefox.
  • Fix the Flash Installation on Linux
    • One always winds up having to do a manual install. If Firefox needs root permissions to do the install ask for the root password, don't just fail out.
  • Allow 32-bit plugin in 64-bit Gecko
    • requiring the full 32-bit stack needed by Firefox instead of the few dependencies actually needed by the plugin is ludicruous on 64-bit systems
  • Better XPCOM debugging/introspection/build support
    • Include some good xpcom query/introspection/debug tools in the distribution. Debugging plugins is painful (the debug build crashes under gdb for me - for those developers who think I'm whinging without rtfm-ing).
    • Fix the build, it's a dog (I realize that this has been discussed before on bugzilla but this complicated and non-standard build you use is a real barrier to entry for new-to-firefox/mozilla programmers). It makes plugin development a pain (I can build .so files using the mozilla dist or the plugin sdk but firefox silently ignores them - I just want to know why).
  • A function like blocking grafics also for Flash advertising. Block Flash from Host XYZ.
  • Button "Don't show again" for Plugin bar... Sometimes I just don't want a plugin like Flash and don't want to be reminded on that on every page with advertizing.
  • Support for executing a .NET Framework code.

Plug-in for non integrated formats

  • Allow plug-ins to add support for file formats not supported by gecko (in ex. PDF, iCalendar, MS .doc files) or supported but needed to render differently (in ex. XHTML, feed RSS, IE rendering support)
  • Change MozIStorage to enable different caching modes for different connections. This makes it possible to share data with external applications without data corruption.

Various

  • Send Theme name and version currently in use in the HTTP headers.
    • Why? Why would a website owner, for instance, need to know what theme and version I'm using? Why would I want to release this information? J.B. Nicholson-Owens 15:27, 26 October 2006 (PDT)

General tasks

  • Improve extension installation/management UI
  • Unify add-ons management (extensions, themes, search engines, dictionaries, plugins)
  • Improve interaction design around customizing browser interfaces
References

Variable icon size

  • Have an option for a theme to use svg images for icons so that users can adjust icon sizes. As it is now, I must provide 3 themes (e.g. -SphereGnome, SphereGnome_Big and SphereGnome_Jumbo) to present 4 icon sizes from 24x24-pixel to 64x64-pixel images.
  • Have an option to use variable system icons. For example, my themes use 16px, 24px and 32px images for menuitem images, tab favicons, etc.

Maybe you guys could include some nice-looking themes from start? Maybe some more colorful themes than the default-theme in Firefox 2?


Maybe icons based on SVG, and so continuously resizable?


  • Hello. I use LiteStep under WindowsXP, thus I am able to adjust my IconSize bigger than 48x48 Pixels. For now, I used a png-File, made a new ico-file with also a 64x64 icon in it and used Res-Hacker to replace the icon-group in the mozilla.exe file. -->> Although Windows XP nativly does not support icon sizes over 48x48 pixels, it would be nice if future Firefox versions would contain icons with a size above 48x48. I don't know, how many users would appreciate this, but on the other hand, it does not cost much. Same for Thunderbird and Sunbird. As much as I know, Vista will support icon-size over 48x48, so maybe you will do it anyway.

Switchable background images

  • Have an option for a user to choose background images supplied by a theme. Currently, I have four themes set up essentially to deliver different backgrounds. With variable icon sizes and switchable background images I could reduce my SphereGnome-based themes to two, and my Scribblies themes to one.
  • Have an option for a user to choose no background image. A number of users request "plain" themes.

Automatic Garbage Collection

  • Have an automatic garbage collection for extensions to mitigate the memory leak problem of poorly built extensions. Deconstruct any objects created by extensions that are not referenced by anything. "Trusted" code from the mozilla should probably run as is to maintain performance.

Theme editor

Defunct extensions

The auto-update feature for extension should include the self-removal of extensions rendered obsolete, e.g. when their functionality is incorporated in new version of FF. Pigsonthewing

References