summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions
Commit message (Collapse)AuthorAgeFilesLines
* Fix a crash during extension installation (debug only).erikkay@google.com2009-06-151-4/+1
| | | | | | | | | | BUG=none TEST=browser_tests.exe --gtest_filter=ExtensionViewTest.Incognito Review URL: http://codereview.chromium.org/126151 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18427 0039d316-1c4b-4281-b951-d872f2087c98
* Use linked_ptr for the ExternalExtensionProviders.finnur@chromium.org2009-06-152-35/+36
| | | | | | | | | BUG=None TEST=Covered by automated tests. Review URL: http://codereview.chromium.org/125137 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18400 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up extension loading:erikkay@google.com2009-06-158-303/+365
| | | | | | | | | | | | | | | | | | | * load extensions from prefs rather than by scanning filesystem * fix multiple loading bug * in-place upgrade * split out Init() behavior into individual pieces that can be called by tests Also: * add look up of extension by URL * rename GetExtensionByID -> GetExtensionById BUG=12399 BUG=14053 TEST=ExtensionServiceTest.* Review URL: http://codereview.chromium.org/125102 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18397 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce header dependencies in browser/phajdan.jr@chromium.org2009-06-134-0/+4
| | | | | | | | | | | | - remove unneeded header includes - move implementation bits out of headers - more explicit header deps In my scan of headers I got up to (including) dom_ui. Review URL: http://codereview.chromium.org/126071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18353 0039d316-1c4b-4281-b951-d872f2087c98
* Make extensions visible in the Task Manager.phajdan.jr@chromium.org2009-06-132-3/+21
| | | | | | | | | | | | | - register for notifications when extension hosts are created/destroyed - collapse extension tabs into just one table row, also for tabs opened while the task manager stays open TEST=Start chrome.exe with --enable-extensions. Install the buildbot monitor extension. Open the task manager. You should see an extension process. http://crbug.com/12127 Review URL: http://codereview.chromium.org/125047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18352 0039d316-1c4b-4281-b951-d872f2087c98
* Change extension id format back to mp-decimal, and change theaa@chromium.org2009-06-134-37/+47
| | | | | | | | length to 32 chars (exactly 128 bits). Review URL: http://codereview.chromium.org/126074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18351 0039d316-1c4b-4281-b951-d872f2087c98
* Verify signed .crx extension installationsrafaelw@chromium.org2009-06-127-110/+336
| | | | | | | | | | | | | | | This is second try of: http://codereview.chromium.org/115682 that was comitted in in 18189 and reverted. BUG=12114 R=erikkay,wtc,aa Review URL: http://codereview.chromium.org/126014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18316 0039d316-1c4b-4281-b951-d872f2087c98
* Changing the focus manager to not subclass HWNDs (but for the ↵jcampan@chromium.org2009-06-122-0/+4
| | | | | | | | top-windows).Components that have HWND now need to specifically let the FocusManager know when they get the native focus.This is the reason for the new GotFocus() notification on the RenderWidgetHostViewWin class.BUG=NoneTEST=Run the interactive tests, the unit-tests. Test that the focus is remembered correctly when switching windows, switching tabs. Test that focus traversal in the browser and in the option dialog works as expected. Review URL: http://codereview.chromium.org/122002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18301 0039d316-1c4b-4281-b951-d872f2087c98
* Fix object ownership and cleanup issues between ExtensionHost and ↵erikkay@google.com2009-06-122-3/+9
| | | | | | | | | | | | ExtensionView. This was leading to crashes at shutdown as well as shutdown code not cleaning up properly. BUG=13974 TEST=none Review URL: http://codereview.chromium.org/126064 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18296 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing memleak found by purify.finnur@chromium.org2009-06-121-0/+2
| | | | | | | | | | | | | | | | This should fix leaks at: extensions_service.cc:495 and 498 ... and since the providers are getting cleaned up, it should take care of: extensions_service.cc:211 ... as well. TBR=erikkay TEST=Covered by automated tests. BUG=None Review URL: http://codereview.chromium.org/126037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18251 0039d316-1c4b-4281-b951-d872f2087c98
* Factor out the code that deals with installing external extensions through ↵finnur@chromium.org2009-06-128-234/+577
| | | | | | | | | | | | Registry and Preferences into separate classes. While I was at it, I removed the EXTERNAL_INSTALL file, since we now keep track of this in the Preferences. This also takes care of the virtualization problem in the unit tests for vista (see bug). BUG=13063 TEST=None, covered by automated tests. Review URL: http://codereview.chromium.org/122004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18247 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "BUG=12114"tc@google.com2009-06-117-337/+112
| | | | | | | | | | | This reverts commit r18189. TBR=rafaelw Review URL: http://codereview.chromium.org/125004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18193 0039d316-1c4b-4281-b951-d872f2087c98
* BUG=12114rafaelw@chromium.org2009-06-117-112/+337
| | | | | | | | R=erikkay,wtc Review URL: http://codereview.chromium.org/115682 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18189 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory leak in ExtensionsService when skipping loadedaa@chromium.org2009-06-111-8/+6
| | | | | | | | extensions. Review URL: http://codereview.chromium.org/122021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18186 0039d316-1c4b-4281-b951-d872f2087c98
* Get tab HWND directly as result of CreateExternalTab automation call.stoyan@chromium.org2009-06-111-2/+3
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/119448 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18181 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Add support to the automation provider to test sending browser"aa@chromium.org2009-06-111-169/+0
| | | | | | | | This reverts commit 4775c631c09be565706f8a6ce3c4659bc89097e4. Review URL: http://codereview.chromium.org/122024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18149 0039d316-1c4b-4281-b951-d872f2087c98
* Add support to the automation provider to test sending browseraa@chromium.org2009-06-111-0/+169
| | | | | | | | | | | | events to extensions. Implements an initial test that send all known window, tab, page action, and bookmark events and makes sure the extension received them. Original review: http://codereview.chromium.org/119325 Review URL: http://codereview.chromium.org/123010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18148 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Add support to the automation provider to test sending browser"aa@chromium.org2009-06-111-169/+0
| | | | | | | | This reverts commit 9b7fbb1e720ab2071b30531fd0266918c4e68d12. Review URL: http://codereview.chromium.org/122022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18147 0039d316-1c4b-4281-b951-d872f2087c98
* Add support to the automation provider to test sending browseraa@chromium.org2009-06-111-0/+169
| | | | | | | | | | | | | events to extensions. Implements an initial test that send all known window, tab, page action, and bookmark events and makes sure the extension received them. Original review: http://codereview.chromium.org/119325 Review URL: http://codereview.chromium.org/123009 Patch from Roger Tawa <rogerta@gmail.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18146 0039d316-1c4b-4281-b951-d872f2087c98
* Fix extension loading code to properly filter out non-themesaa@chromium.org2009-06-112-19/+31
| | | | | | | | | | | when extensions are disabled. BUG=12076 TEST=Added a unit test. Also, install an extension, then create a new version of it and overinstall. You should not see two of them. Review URL: http://codereview.chromium.org/123004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18140 0039d316-1c4b-4281-b951-d872f2087c98
* Disable extensions in incognito mode.mpcomplete@google.com2009-06-115-10/+72
| | | | | | | | | | | Add a browsertest to make sure we don't crash with an incognito window open. Had to finagle utility_process_host to make it work in a browsertest. BUG=12326 TEST=none Review URL: http://codereview.chromium.org/118476 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18116 0039d316-1c4b-4281-b951-d872f2087c98
* Fix UMR in ExtensionCreator.aa@chromium.org2009-06-101-2/+3
| | | | | | Review URL: http://codereview.chromium.org/119443 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18101 0039d316-1c4b-4281-b951-d872f2087c98
* Fix uninitialized ExtensionView::pending_preferred_width_.mpcomplete@google.com2009-06-101-1/+1
| | | | | | | BUG=13103 Review URL: http://codereview.chromium.org/119389 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18095 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the prepended manifest from the crx format. Now we just have the ↵aa@chromium.org2009-06-105-129/+91
| | | | | | | | header, the public key, the signature, and the zip. Review URL: http://codereview.chromium.org/118490 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18088 0039d316-1c4b-4281-b951-d872f2087c98
* Dummy change to fix "svn: Inconsistent line ending style"maruel@chromium.org2009-06-101-13/+13
| | | | | | | | TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18067 0039d316-1c4b-4281-b951-d872f2087c98
* Fix svn: Inconsistent line ending stylemaruel@chromium.org2009-06-101-0/+1
| | | | | | | | TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18065 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up bookmark API to match style of other extension APIserikkay@google.com2009-06-103-89/+76
| | | | | | | | | | BUG=11823 TEST=--load-extension test/data/extensions/samples/bookmarks TEST=unit_tests.exe --gtest_filter=ExtensionAPIClientTest.* Review URL: http://codereview.chromium.org/118209 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18056 0039d316-1c4b-4281-b951-d872f2087c98
* part 2 of dragging change: reordering, but not persistingerikkay@google.com2009-06-1012-200/+580
| | | | | | | | | | | | | | * split up extension_shelf into a model and a view (easier to port) * ExtensionHost now owns ExtensionView rather than vice versa * dragging reorders extensions on the shelf * moved ExtensionView* into browser_tests (currently not working) BUG=12123 TEST=browser_tests.exe --gtest_filter=ExtensionShelfModel* (browser_tests.exe is currently broken) Review URL: http://codereview.chromium.org/119290 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18002 0039d316-1c4b-4281-b951-d872f2087c98
* chrome.exe --package-extension generates .crx from extension directoryrafaelw@chromium.org2009-06-095-12/+421
| | | | | | | | | R=aa BUG=12114 Review URL: http://codereview.chromium.org/118328 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17927 0039d316-1c4b-4281-b951-d872f2087c98
* Fix user scripts not getting initialized.aa@chromium.org2009-06-082-49/+23
| | | | | | | | | BUG=13290,13128 TEST=Add --enable-user-scripts to command line without --enable-extensions or --load-extension. Start Chrome, user scripts should work. Also run ui tests with --enable-extensions. Review URL: http://codereview.chromium.org/119256 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17898 0039d316-1c4b-4281-b951-d872f2087c98
* Display extension processes in task manager.phajdan.jr@chromium.org2009-06-065-17/+57
| | | | | | | | | | | | | This is the first part of the change. I will submit code to listen for new extension processes while task manager is open in following patch(es). TEST=Install an extension which renders to the extension shelf, like Buildbot Monitor from http://dev.chromium.org/developers/design-documents/extensions/samples. Open the task manager. You should see the extension process. http://crbug.com/12127 Review URL: http://codereview.chromium.org/115858 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17826 0039d316-1c4b-4281-b951-d872f2087c98
* Make extensions installable again.aa@chromium.org2009-06-061-1/+1
| | | | | | Review URL: http://codereview.chromium.org/119279 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17825 0039d316-1c4b-4281-b951-d872f2087c98
* Fix an issue where themes would sporadically fail to install.mpcomplete@google.com2009-06-051-4/+33
| | | | | | | | | | | | | | | | Trying to send decoded images over IPC didn't work too well. Instead, we'll write them to a file and have the browser slurp them in from there. My first instinct was to use SharedMemory, but that would require us to impose a limit on the size of the decoded image data. Also made sure that the undecoded images are deleted when we install. BUG=13455 TEST=Try the repro steps in bug 13455 several times and make sure it works every time. Review URL: http://codereview.chromium.org/119255 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17797 0039d316-1c4b-4281-b951-d872f2087c98
* Fix build.finnur@chromium.org2009-06-051-18/+22
| | | | | | | | TBR=erikkay Review URL: http://codereview.chromium.org/118337 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17779 0039d316-1c4b-4281-b951-d872f2087c98
* Add this ability to install Extensions using preferences. Also known as: ↵finnur@chromium.org2009-06-053-87/+555
| | | | | | | | | | | | | | | | | | | | | | | port the installation mechanism to other platforms. We already have the ability to install extensions using a registry key. That works only on Windows so this new change adds the same but using preferences instead of the Registry. This will eventually allow us to pre-install certain extensions when we install Chrome. BUG=12060 TEST=Covered by unit tests, but to test manually: close Chrome, open your Preferences file (in your profile) and add this (after substituting all <values> in elbow brackets): "extensions": { "settings": { "<your_extension_id_lowercased>": { "external_crx": "<path_to_crx>", "external_version": "<crx version>" } }, }, ... then start Chrome. Your extension should get installed. Review URL: http://codereview.chromium.org/119195 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17777 0039d316-1c4b-4281-b951-d872f2087c98
* Don't prompt before installing a Theme, move existing prompt so that users ↵glen@chromium.org2009-06-053-11/+25
| | | | | | | | | | | | 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
* Make AsyncExtensionFunction possible.mpcomplete@google.com2009-06-057-25/+78
| | | | | | | | | | | Change the bookmarks API to be async functions, so that they can delay their response until the bookmark system is loaded. BUG=12353 TEST=none Review URL: http://codereview.chromium.org/114079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17751 0039d316-1c4b-4281-b951-d872f2087c98
* Validate that extension resources exist.glen@chromium.org2009-06-052-3/+28
| | | | | | | | | BUG=11678 TEST=Make a theme with bad references to images and try to install it. Or just verify that the InstallTheme unit_test passes. Review URL: http://codereview.chromium.org/119137 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17708 0039d316-1c4b-4281-b951-d872f2087c98
* make extension apis tolerate browser absence during start-up & shutdownrafaelw@chromium.org2009-06-045-30/+63
| | | | | | | | | | | Note: I was never able to directly reproduce the 13082 bug, the error mode is clear (there was no selected tab during a call to tabs.getSelected()). This fix will address that issue and we should stop seeing this crash reports. R=erikkay BUG=13082 Review URL: http://codereview.chromium.org/119117 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17631 0039d316-1c4b-4281-b951-d872f2087c98
* Part 1 of dragging extensions on the shelf. This part was just about ↵erikkay@google.com2009-06-033-20/+151
| | | | | | | | getting the mechanics of the shelf handle and the dragging correct. Part 2 will actually allow the order to be changed.TEST=hover over an extension toolstrip, grab the handle and drag. release. Review URL: http://codereview.chromium.org/119103 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17559 0039d316-1c4b-4281-b951-d872f2087c98
* Change plugin handling in extension from "plugin_dir" to a "plugin" list ofmpcomplete@google.com2009-06-032-3/+18
| | | | | | | | | | | | dictionaries, which allows us to specify properties per plugin. This is the first part of allowing extensions to have plugins only accessible by the extension process. BUG=12960 Review URL: http://codereview.chromium.org/114072 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17510 0039d316-1c4b-4281-b951-d872f2087c98
* Headers cleanup in chrome/browser/phajdan.jr@chromium.org2009-06-032-0/+3
| | | | | | | | | | | - reduce header dependencies - miscellanous cleanups (add missing includes for OS_ defines etc) Further changesets may follow. I was only looking at header files up to character_encoding.h. Review URL: http://codereview.chromium.org/118072 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17470 0039d316-1c4b-4281-b951-d872f2087c98
* Support for searching bookmarks for IDN.brettw@chromium.org2009-06-021-1/+4
| | | | | | | | | | | | | | The main part of this change is DoesBookmarkContainWords() in bookmark_utils.cc. It tries to match a query words to IDN and %-decoded strings as well as ASCII URL. BUG=3991 TEST=add a unit test, check for IDN in the search box of Bookmark Manager. Checked in for tkent@google.com. Original review: http://codereview.chromium.org/113815 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17435 0039d316-1c4b-4281-b951-d872f2087c98
* Add some browser-level checks to prohibit access to extension bindings bympcomplete@google.com2009-06-021-0/+7
| | | | | | | | | | | | non-extension renderers. Also add a check so that bindings are only exposed if the top-level frame is the chrome-extension scheme. BUG=11545 BUG=11993 TEST=none Review URL: http://codereview.chromium.org/119014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17408 0039d316-1c4b-4281-b951-d872f2087c98
* The extensions service wasn't getting inited despite being used by themes ↵glen@chromium.org2009-06-022-16/+46
| | | | | | | | | | | (this manifested itself as theme reinstall failing, because CheckCurrentVersion found the directory, but ExtensionService::extensions_ was empty). BUG=none TEST=none Review URL: http://codereview.chromium.org/115974 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17373 0039d316-1c4b-4281-b951-d872f2087c98
* Implements a Zip() utility function. Refactor existingaa@chromium.org2009-06-011-1/+1
| | | | | | | | Unzip-relatedness into shared locations. Review URL: http://codereview.chromium.org/118028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17305 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity underground warfare: Uninitalized membercpu@google.com2009-05-301-1/+3
| | | | | | | | | | | | - Fix ctor to init members - CID 4187 BUG = none TEST = none Review URL: http://codereview.chromium.org/118035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17275 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes a slew of random link/compile errors for views on gtk.sky@chromium.org2009-05-293-6/+6
| | | | | | | | | BUG=none TEST=none TBR=ben Review URL: http://codereview.chromium.org/115948 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17246 0039d316-1c4b-4281-b951-d872f2087c98
* Revert the Omnibox when changing tabs while its contents have been deleted.pkasting@chromium.org2009-05-292-11/+12
| | | | | | | | | To do this, I needed to add a new TabStripModelObserver call that fired before the tab had been changed, since when the Omnibox asks for the current permanent_text_ it gets it from the selected tab's navigation controller. BUG=6850 Review URL: http://codereview.chromium.org/113983 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17241 0039d316-1c4b-4281-b951-d872f2087c98
* Allow themes to be installed without any commandline flag, still require ↵glen@chromium.org2009-05-293-13/+95
| | | | | | | | | | | 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