summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extensions_service.h
Commit message (Collapse)AuthorAgeFilesLines
* Don't prompt before installing a Theme, move existing prompt so that users ↵glen@chromium.org2009-06-051-7/+6
| | | | | | | | | | | | aren't prompted twice in the case when they have extensions disabled. Theme installation confirmation will be done through an infobar (allowing you to preview a lot of themes quickly without dealing with dialogs) - see CL 119235. BUG=none TEST=Install a theme, verify that you don't get prompted. Install an extension and verify that you do get prompted. Review URL: http://codereview.chromium.org/119232 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17755 0039d316-1c4b-4281-b951-d872f2087c98
* Allow themes to be installed without any commandline flag, still require ↵glen@chromium.org2009-05-291-1/+24
| | | | | | | | | | | flag for Extensions. Expand themes unittests. BUG=12205,12231 TEST=Without any flags, try installing an extension and a theme. The extension should fail and the theme should succeed. Attempts to install a theme with extension components in the manifest should similarly result in failure. Review URL: http://codereview.chromium.org/115798 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17240 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused code from ExtensionsService.mpcomplete@google.com2009-05-261-4/+0
| | | | | | | | Move extension.* from browser to common, so it can be included by the utility process. Review URL: http://codereview.chromium.org/115716 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16880 0039d316-1c4b-4281-b951-d872f2087c98
* Have the browser process rewrite manifest.json and theme/page action imagesmpcomplete@google.com2009-05-221-4/+10
| | | | | | | | | that the extension unpacker process parsed. BUG=11680 Review URL: http://codereview.chromium.org/115595 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16768 0039d316-1c4b-4281-b951-d872f2087c98
* Hook up more of extension uninstall.aa@chromium.org2009-05-211-66/+58
| | | | | | | | | | | Also removed all external dependencies from ExtensionsService. It now only sends out notifications, which other services consume. This should allow us to unit test the ExtensionsService frontend, but I haven't added that yet. Review URL: http://codereview.chromium.org/113493 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16676 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Hook up more of extension uninstall."aa@chromium.org2009-05-211-58/+66
| | | | | | | | This reverts commit ebb5f616663f9d5ee78584187da16bba4ce96811. Review URL: http://codereview.chromium.org/113680 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16557 0039d316-1c4b-4281-b951-d872f2087c98
* Hook up more of extension uninstall.aa@chromium.org2009-05-201-66/+58
| | | | | | | | | | | Also removed all external dependencies from ExtensionsService. It now only sends out notifications, which other services consume. This should allow us to unit test the ExtensionsService frontend, but I haven't added that yet. Review URL: http://codereview.chromium.org/113493 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16547 0039d316-1c4b-4281-b951-d872f2087c98
* TBR: Revert "Hook up more of extension uninstall."aa@chromium.org2009-05-201-58/+66
| | | | | | | | This reverts commit 5b2fc12fbca26b20ed4176ac740c58fe49360c4a. Review URL: http://codereview.chromium.org/113664 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16538 0039d316-1c4b-4281-b951-d872f2087c98
* Hook up more of extension uninstall.aa@chromium.org2009-05-201-66/+58
| | | | | | | | | | | Also removed all external dependencies from ExtensionsService. It now only sends out notifications, which other services consume. This should allow us to unit test the ExtensionsService frontend, but I haven't added that yet. Review URL: http://codereview.chromium.org/113493 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16529 0039d316-1c4b-4281-b951-d872f2087c98
* Introducing the Utility process, which handles the unpacking and verificationmpcomplete@google.com2009-05-151-13/+27
| | | | | | | | | | | | of extension packages. This is a first pass. In the second pass, I will add support for transcoding the manifest and any images in the browser process. BUG=11680 Review URL: http://codereview.chromium.org/114027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16198 0039d316-1c4b-4281-b951-d872f2087c98
* Add ExtensionsService::Uninstall() plus unit tests.aa@chromium.org2009-05-151-20/+21
| | | | | | | | Haven't hooked this up to anything yet though. Still trying to figure out the best way to shut everything down, so I figured I'd send this easy part out alone. Review URL: http://codereview.chromium.org/113376 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16147 0039d316-1c4b-4281-b951-d872f2087c98
* This is the first pass at themes.glen@chromium.org2009-05-091-0/+11
| | | | | | | | | | | | This CL is paired with http://codereview.chromium.org/67284 This CL (for commit purposes) includes http://codereview.chromium.org/67284 BUG=4463,11232,11233,11234,11235 Review URL: http://codereview.chromium.org/99030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15704 0039d316-1c4b-4281-b951-d872f2087c98
* Resurrect ExtensionProcessManager. Move the code for starting extensionmpcomplete@google.com2009-05-061-25/+0
| | | | | | | | | | instances from ExtensionsService to the manager. Unlike ExtensionsService, EPM is not shared between an incognito Profile and its parent. Review URL: http://codereview.chromium.org/109044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15454 0039d316-1c4b-4281-b951-d872f2087c98
* PageActions now work across tabs and windows.finnur@chromium.org2009-05-061-3/+7
| | | | | | | | | | | The extension system now provides TabId to extensions so it is now possible to activate PageActions in other tabs besides the first in the tab strip. :) BUG=None TEST=None (requires a PageAction extension to test against). Review URL: http://codereview.chromium.org/109046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15415 0039d316-1c4b-4281-b951-d872f2087c98
* Several minor visual fixes to toolstrips:aa@chromium.org2009-05-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Layout toolstrips on the left of the bookmark bar so that something always obviously happens when you install one. This is in response to some feedback I've gotten demoing toolstrips for various people. * Open the NTP on install if the bookmarkbar isn't visible. Again, I'm trying to make something happen when you install an extension. This won't be the permanent behavior but it seems like doing nothing if you have your bookmark bar detached is likely to confuse people. * Fix a bug where we kept trying to resize the toolstrip back to the width it had when it was first made visible. * Fix a bug where we didn't always repaint the bookmarkbar after the toolstrip preferred width changed. This also seems to fix the issue where the buildbot sample shows up overlayed on top of tab contents, though I didn't mean to fix that with this CL. Review URL: http://codereview.chromium.org/100310 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15249 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor ExtensionView to support a UI-less extension instance.mpcomplete@google.com2009-04-291-0/+10
| | | | | | | | | | | - Introduce ExtensionHost, which is the guy that talks to the RenderViewHost. - ExtensionView holds an ExtensionHost, and also renders its contents in an HWND. - Added code to load a page optionally specified in the manifest as a background process whenever it exists. Review URL: http://codereview.chromium.org/92043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14902 0039d316-1c4b-4281-b951-d872f2087c98
* Remove ExtensionProcessManager and move its functionality ontompcomplete@google.com2009-04-161-5/+21
| | | | | | | | | | | ExtensionsService. Also add "chrome-extension" to the list of schemes that BrowsingInstance groups per-site, instead of per-tab. This means that navigating to an extension URL will use the same process as a running extension toolstrip. Review URL: http://codereview.chromium.org/77002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13887 0039d316-1c4b-4281-b951-d872f2087c98
* Try one more time to check in http://codereview.chromium.org/60112aa@chromium.org2009-04-081-1/+1
| | | | | | | | | | | | Added this test to the list of skipped purify tests as it is experience the same issue as ExtensionView test. I also found an unrelated memory leak and created a patch separately: http://codereview.chromium.org/63073 Review URL: http://codereview.chromium.org/63075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13369 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Implement chromium.self in content scripts..."aa@chromium.org2009-04-071-1/+1
| | | | | | | | | | This reverts commit 61ab30f52667e739602ab2af4fd8f2d8a0a2a2f0. Still seeing memory errors. Review URL: http://codereview.chromium.org/63056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13243 0039d316-1c4b-4281-b951-d872f2087c98
* Implement chromium.self in content scripts, so that developers don'taa@chromium.org2009-04-071-1/+1
| | | | | | | | | | | | | | | | | | | | | have to know and copy/paste their extension ID. This required moving the code that defaults the extension ID earlier in the load process. Also fixed some bugs: * fixed a bug that was causing all user scripts to get executed in the same context. * made the greasemonkey api only available in 'standalone' user scripts. * re-added the anonymous function wrapper that is supposed to wrap content scripts. Also added unit tests for the fixed bugs. Review URL: http://codereview.chromium.org/60112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13238 0039d316-1c4b-4281-b951-d872f2087c98
* Unrevert 11294.mpcomplete@google.com2009-03-101-4/+0
| | | | | | | | | - include stub fix so that linux/mac still build. - fix DCHECK in views code. - fix unit test. Review URL: http://codereview.chromium.org/41020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11360 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 11294.mpcomplete@google.com2009-03-091-0/+4
| | | | | | Review URL: http://codereview.chromium.org/40321 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11295 0039d316-1c4b-4281-b951-d872f2087c98
* Support loading extensions into the bookmark toolbar.mpcomplete@google.com2009-03-091-4/+0
| | | | | | | | | Misc cleanup: - remove duplicate comments on Extension accessors - remove useless function in ExtensionsService Review URL: http://codereview.chromium.org/39285 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11294 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes CRLF and trailing white spaces.maruel@chromium.org2009-03-051-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10982 0039d316-1c4b-4281-b951-d872f2087c98
* Also fixes a bug where an externally installedaa@chromium.org2009-03-041-48/+45
| | | | | | | | | | | | | | | | | | | | | | | extension was loaded twice the first run after installation. I still ExtensionServiceBackend is begging to be split apart into individual tasks, this was just a quick spruce-up while I was in the file. The main things I changed are: * Moved extension_path_ from a member back into parameters where relevant. This just didn't feel right as state to me. It isn't relevant to all the methods the way alert_on_error_ and frontend_ are. This created the majority of the noise in the change, but is the least important. * Renamed OnExtensionsLoadedFromDirectory to OnExtensionsLoaded since it is called in response to LoadExtension() too. * Made install_directory_ be a parameter to backend's constructor instead of passed into each appropriate method. Again, this felt more appropriate because the install directory is relevant to the whole object. * Hoisted checking for uninstalled external extensions up out of LoadExtension() into LoadExtensionsFromInstallDirectory(). It wasn't doing any harm in LoadExtension(), but it didn't seem relevant to other places where LoadExtension() is used (for example --load-extension and --install-extension). * Hoisted installation success notification up out of InstallOrUpdateExtension() into InstallExtension(). This prevented having to pass around a be_noisy argument since InstallExtension() is only used for handling --install-extension, and InstallOrUpdateExtension() is just the private impl. Review URL: http://codereview.chromium.org/40002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10885 0039d316-1c4b-4281-b951-d872f2087c98
* Prototype extension process. This is a proof of concept, with a lot ofmpcomplete@google.com2009-02-271-2/+9
| | | | | | | | | | rough edges. Mostly this just fires up a renderer with an "extension" object exposed, which right now only has a single method "getTestString". I also did some misc cleanup along the way. Review URL: http://codereview.chromium.org/27187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10620 0039d316-1c4b-4281-b951-d872f2087c98
* Add a centralized error reporter to theaa@chromium.org2009-02-271-14/+2
| | | | | | | | | | extensions sytem. This can be called from any component on any thread. The hope is that this will encourage more thorough error handling. Review URL: http://codereview.chromium.org/27165 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10611 0039d316-1c4b-4281-b951-d872f2087c98
* Auto install and update extensions from a registry defined location. This ↵erikkay@google.com2009-02-261-47/+88
| | | | | | | | allows developers to install a chrome extension and manage its update process completely indepdendently of Chrome's built-in mechanism. Review URL: http://codereview.chromium.org/28040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10412 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a leak in the extension installation code.erikkay@google.com2009-02-041-0/+1
| | | | | | Review URL: http://codereview.chromium.org/21027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9113 0039d316-1c4b-4281-b951-d872f2087c98
* Add a command line flag to load a single extension from an arbitrary ↵erikkay@google.com2009-02-031-4/+10
| | | | | | | | (non-versioned) directory. This is designed for developers to iterate on extension development without having to go through the install process. Review URL: http://codereview.chromium.org/20020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9107 0039d316-1c4b-4281-b951-d872f2087c98
* Extension loading improvements.erikkay@google.com2009-02-031-0/+15
| | | | | | | | | | | Add a method that allows loading a single specific extension. Load extensions upon successful install. Review is for which ever one of you gets in first, or both if you care. ;-) Review URL: http://codereview.chromium.org/19759 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9082 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for loading Current Version. (haven't removed the old style ↵erikkay@google.com2009-01-311-0/+4
| | | | | | | | loading yet) Review URL: http://codereview.chromium.org/19525 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9005 0039d316-1c4b-4281-b951-d872f2087c98
* Simple installation of extensions using chrome.exe ↵erikkay@google.com2009-01-291-2/+65
| | | | | | | | --install-extensionChanged manifest filename to end in .json.Updated authoring script to include sha256 hash of zip file. Review URL: http://codereview.chromium.org/18477 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8926 0039d316-1c4b-4281-b951-d872f2087c98
* Add user script support to extensions.aa@chromium.org2009-01-251-1/+6
| | | | | | | | | | | | | | | This is implemented mostly by relying on the existing user script code. But since extension user scripts are declared, not discovered in a directory, I had to add support for adding 'lone' user scripts to UserScriptMaster. This led to a bit of refactoring. Note that this CL relies on: http://codereview.chromium.org/18352 Review URL: http://codereview.chromium.org/18198 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8614 0039d316-1c4b-4281-b951-d872f2087c98
* Report errors during extension load. Change all the error strings to utf-8.aa@chromium.org2008-12-081-3/+4
| | | | | | Review URL: http://codereview.chromium.org/13229 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6522 0039d316-1c4b-4281-b951-d872f2087c98
* Introduce ExtensionsService. Load extensions on startup from a directory inaa@chromium.org2008-12-051-0/+106
the profile if a command-line flag is present. Please carefully scrutinize the threading/ref-counting schenanigans. Review URL: http://codereview.chromium.org/12876 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6403 0039d316-1c4b-4281-b951-d872f2087c98