summaryrefslogtreecommitdiffstats
path: root/views
Commit message (Collapse)AuthorAgeFilesLines
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-142-1/+10
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69107 0039d316-1c4b-4281-b951-d872f2087c98
* Rename all methods accessing Singleton<T> as GetInstance().satish@chromium.org2010-12-131-2/+2
| | | | | | | | | | | | | | | This is in preparation to a subsequent CL where Singleton<T> will restrict access to only the type being made singleton. This primarily covers files in chrome os and other directories, missed in the previous CL. In a couple of files i changed Singleton<T> usage to LazyInstance<T>, because changing the method name to GetInstance() in there would require a whole lot of updates throughout the chrome os codebase. BUG=65298 TEST=all existing tests should pass. Review URL: http://codereview.chromium.org/5734002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69007 0039d316-1c4b-4281-b951-d872f2087c98
* Rename all methods accessing Singleton<T> as GetInstance().satish@chromium.org2010-12-136-9/+9
| | | | | | | | | | | | | This is in preparation to a subsequent CL where Singleton<T> will restrict access to only the type being made singleton. I also moved pepper::ResourceTracker to a lazy instance since there were too many places in code where this class was being accessed from and this was a smaller change than renaming methods in that case. BUG=65298 TEST=all existing tests should pass. Review URL: http://codereview.chromium.org/5685007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68982 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68932 - Make members of Singleton<T> private and only visible to the ↵satish@chromium.org2010-12-112-10/+1
| | | | | | | | | | | | | | | | | | singleton type. This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 TBR=satish@chromium.org Review URL: http://codereview.chromium.org/5721005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68936 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-112-1/+10
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68932 0039d316-1c4b-4281-b951-d872f2087c98
* views: Include base/win/scope_comptr.h instead of base/scoped_comptr_win.htfarina@chromium.org2010-12-106-15/+15
| | | | | | | | | | | Also add base::win:: to ScopedComPtr where necessary. BUG=None TEST=trybots Review URL: http://codereview.chromium.org/5625006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68910 0039d316-1c4b-4281-b951-d872f2087c98
* Add a new GetInstance() method for singleton classes, take 2.satish@chromium.org2010-12-082-3/+6
| | | | | | | | | | | | | | | | | | This is a small step towards making all singleton classes use the Singleton<T> pattern within their code and not expect the callers to know about it. This CL includes all files except those under chrome/browser, chrome/net, chrome/service and third_party/WebKit (these will be done in future CLs). Suggested files to focus for reviewers: - joi@ for files under src/ceee - tommi@ for files under src/chrome_frame - maruel@ for the rest of the files. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5581008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68577 0039d316-1c4b-4281-b951-d872f2087c98
* Fix static compile with touchui on chromeos.sadrul@chromium.org2010-12-061-0/+2
| | | | | | | | | BUG=static compile doesn't work with 'touchui=1 chromeos=1' TEST=static compile should work with 'touchui=1 chromeos=1' Review URL: http://codereview.chromium.org/5515007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68373 0039d316-1c4b-4281-b951-d872f2087c98
* A non-GTK version of menus for touchui.sadrul@chromium.org2010-12-0511-20/+296
| | | | | | | | | | | | For the menus to work correctly, the X messge pump also needs updating to allow nested event dispatching. BUG=None TEST=On a touchui build, non-GTK context menus in web-pages should work correctly. Review URL: http://codereview.chromium.org/5110011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68309 0039d316-1c4b-4281-b951-d872f2087c98
* Handle shift-selection in GroupTables.atwilson@chromium.org2010-12-033-21/+110
| | | | | | | | | | | | | | Change the shift-click support in TableView so shift-clicks that span multiple groups are prohibited. Clicking in one group, then shift-clicking in another group will cause the shift-click to be treated as a normal click (i.e. just select the item in the second group). BUG=63787 TEST=Open task manager, click on item in one group, shift click on item in another group. Review URL: http://codereview.chromium.org/5504001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68123 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 67662 - FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-302-3/+4
| | | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 TBR=thestig@chromium.org Review URL: http://codereview.chromium.org/5270010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67674 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 10)thestig@chromium.org2010-11-302-4/+3
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5139006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67662 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup AdjustStringForLocaleDirection() to modify input parameter in place.jeremy@chromium.org2010-11-247-24/+11
| | | | | | | | | | | As described in the bug, the current behavior is confusing and bug-prone. BUG=47194 TEST=Check that there are no visible regressions in RTL and LTR language UIs on Linux & Windows. Review URL: http://codereview.chromium.org/5154009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67237 0039d316-1c4b-4281-b951-d872f2087c98
* Determine the theme for a widget in gtk from its parent,zork@chromium.org2010-11-245-14/+54
| | | | | | | | | | | instead of just using the defaul BUG=chromium-os:4890 TEST=On ChromeOS, enable a theme, and open the find box. Check that the theme is applied. Review URL: http://codereview.chromium.org/4705005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67210 0039d316-1c4b-4281-b951-d872f2087c98
* touchui: Create touch-events.sadrul@chromium.org2010-11-235-6/+120
| | | | | | | | | | | | | | | | | | | | Create and process touch-events. The touch-events are created from pointer-events. The way to decide whether a 'pointer event' originated from a touch-device is not yet well-defined. So for now, use the --touch-devices command line parameter to specify which pointer devices should be treated as touch-device. For example, you can run: ./out/Debug/chrome --touch-devices=7,8 to treat the events coming in from devices with id 7 and 8 as touch events. (these are the slave ids you get from 'xinput list') BUG=None TEST=None Review URL: http://codereview.chromium.org/4738001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67133 0039d316-1c4b-4281-b951-d872f2087c98
* [cros] Use WideButton for all screens, increase textfield vmargin on login ↵nkostylev@chromium.org2010-11-231-0/+3
| | | | | | | | | | | screen. BUG=chromium-os:8101 TEST=Manual. Review URL: http://codereview.chromium.org/5338002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67123 0039d316-1c4b-4281-b951-d872f2087c98
* Change the name of the tests and examples projects to be more consistent.ben@chromium.org2010-11-231-2/+2
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5341002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67119 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 66982 - [cros] Use WideButton on EULA, Sign In screens.nkostylev@chromium.org2010-11-231-3/+0
| | | | | | | | | | | | | | Adjust "sign in" button height. BUG=chromium-os:8101 TEST=Manual Review URL: http://codereview.chromium.org/5192005 TBR=nkostylev@chromium.org Review URL: http://codereview.chromium.org/5331001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67080 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring of cursor usage (primarily for linux).sadrul@chromium.org2010-11-235-11/+18
| | | | | | | | | | | | | | Add API to WebCursor to return a native-cursor, and implementation for windows, linux and mac. For linux: Move gtk_util::GetCursor into gfx:: namespace. Also, get rid of ref/unref'ing the cursors from everywhere. Instead, do almost all of it in one place (in gfx). Also, show proper cursors for web-pages with touchui=1 (i.e. add support for updating cursor in RenderWidgetHostViewViews). Review URL: http://codereview.chromium.org/5110010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67034 0039d316-1c4b-4281-b951-d872f2087c98
* [cros] Use WideButton on EULA, Sign In screens.nkostylev@chromium.org2010-11-221-0/+3
| | | | | | | | | | | Adjust "sign in" button height. BUG=chromium-os:8101 TEST=Manual Review URL: http://codereview.chromium.org/5192005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66982 0039d316-1c4b-4281-b951-d872f2087c98
* Fix mouse-wheel scrolling and shifted/capslocked keyevents for touchui.sadrul@chromium.org2010-11-223-6/+26
| | | | | | | | | BUG=None TEST=Mouse wheel should work in a webpage, and shift+a should show up as 'A' in a textfield. Caps-lock should also work. Review URL: http://codereview.chromium.org/4341001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66977 0039d316-1c4b-4281-b951-d872f2087c98
* Convert SizeStringInt from taking a wstring to a string16.tony@chromium.org2010-11-223-5/+9
| | | | | | | | BUG=23581 Review URL: http://codereview.chromium.org/5158006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66973 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt 2 at:sky@chromium.org2010-11-2114-93/+84
| | | | | | | | | | | | | | | Converts usage of SetProp/GetProp to a map. Even after making sure we clean up props we still leak in a handful of cases that are causing test grief. By and large our usage of properties is for inside the application, so that a map works fine. BUG=61528 44991 TEST=none TBR=cpu@chromium.org Review URL: http://codereview.chromium.org/5144005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66920 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes crash in focus that occurs if Focus ends up deleting/removingsky@chromium.org2010-11-191-1/+5
| | | | | | | | | | | the view. BUG=61963 TEST=see bug Review URL: http://codereview.chromium.org/5227003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66809 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 66784 - Converts usage of SetProp/GetProp to a map. Even after making ↵sky@chromium.org2010-11-1914-86/+93
| | | | | | | | | | | | | | | | | sure we clean up props we still leak in a handful of cases that are causing test grief. By and large our usage of properties is for inside the application, so that a map works fine. BUG=61528 44991 Review URL: http://codereview.chromium.org/5075003 TBR=sky@chromium.org Review URL: http://codereview.chromium.org/5184009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66786 0039d316-1c4b-4281-b951-d872f2087c98
* Converts usage of SetProp/GetProp to a map. Even after making sure wesky@chromium.org2010-11-1914-93/+86
| | | | | | | | | | | | clean up props we still leak in a handful of cases that are causing test grief. By and large our usage of properties is for inside the application, so that a map works fine. BUG=61528 44991 Review URL: http://codereview.chromium.org/5075003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66784 0039d316-1c4b-4281-b951-d872f2087c98
* More animation cleanup.sky@chromium.org2010-11-183-3/+7
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5154006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66683 0039d316-1c4b-4281-b951-d872f2087c98
* Add 1px black border for ChromeOS status button.xiyuan@chromium.org2010-11-182-0/+24
| | | | | | | | | | | | | | - Move Linux's CanvasSkia::DrawStringInt into DrawStringWithHalo and added code to support text halo and change DrawStringInt to use it; - Make views::TextButton support text halo; - Use the text halo for chromeos::StatusButton; BUG=chromium-os:8657 TEST=Verify 1px black border is added to ChromeOS status buttons. Review URL: http://codereview.chromium.org/5071002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66632 0039d316-1c4b-4281-b951-d872f2087c98
* Fix context menus for touchui=1sadrul@chromium.org2010-11-181-1/+1
| | | | | | | | | | | | | Nested tasks are generally allowed for context menus (e.g. in MenuController::Run, NativeMenuDOMUI::RunMenuAt). Do the same here. This fixes a X-freeze caused by context menus when touchui=1 with the X message-pump. BUG=none TEST=manual, context menus in web-pages should work and not freeze X. Review URL: http://codereview.chromium.org/5206002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66621 0039d316-1c4b-4281-b951-d872f2087c98
* Pulls AnimationDelegate out into its own header.sky@chromium.org2010-11-172-2/+2
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5121004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66541 0039d316-1c4b-4281-b951-d872f2087c98
* Adding capslock flag to KeyEvent class. Without this flag, when converting frombryeung@google.com2010-11-172-7/+14
| | | | | | | | | | | | | GDK event to KeyEvent, the case information is lost (see keyboard_code_conversion_gtk.cc). BUG=none. TEST=none. Patch from Varun Jain <varunjain@chromium.org> Review URL: http://codereview.chromium.org/3226015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66496 0039d316-1c4b-4281-b951-d872f2087c98
* Dont composite if rgba is not supported.oshima@chromium.org2010-11-171-1/+2
| | | | | | | | | | TBR=derat@chromium.org BUG=none TEST=ScreenLockerTest.TestBasic passes. Review URL: http://codereview.chromium.org/5121003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66443 0039d316-1c4b-4281-b951-d872f2087c98
* Fix style nit.sky@chromium.org2010-11-171-1/+1
| | | | | | | | | | BUG=none TEST=none TBR=rjkroege@chromium.org Review URL: http://codereview.chromium.org/5155001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66388 0039d316-1c4b-4281-b951-d872f2087c98
* Removes unneeded forward declaration.sky@chromium.org2010-11-171-1/+0
| | | | | | | | | | BUG=none TEST=none TBR=ben@chromium.org Review URL: http://codereview.chromium.org/5145002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66385 0039d316-1c4b-4281-b951-d872f2087c98
* Handful of related instant changes:sky@chromium.org2010-11-151-5/+5
| | | | | | | | | | | | | | | | | | | | . Makes the code for running the promo more real. We're not ready to flip it on yet, so it isn't enabled. . Nukes verbatim from about:flags and instead randomly chooses verbatim/predictive when the user opts in. We're doing this to try and see if we get feedback as to which one folks like more. Windows preferences shows you which one you get (by way of an obscure label). I'll change gtk do to that shortly too. . Adds metrics. And a couple of random style issues I encountered in some files. BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/5023001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66187 0039d316-1c4b-4281-b951-d872f2087c98
* Implement new task manager mocks on windows.atwilson@chromium.org2010-11-153-3/+16
| | | | | | | | | | | | | Added API to differentiate between background resources and normal foreground tabs, and added support for grouping processes containing background resources in a separate section of task manager. BUG=63140 TEST=bring up task manager on windows Review URL: http://codereview.chromium.org/4987001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66132 0039d316-1c4b-4281-b951-d872f2087c98
* Adding style notion to the TextButton.glotov@google.com2010-11-132-4/+3
| | | | | | | | | | | Welcome screen uses different style of buttons. BUG=chromium-os:8468 TEST=none Review URL: http://codereview.chromium.org/4402001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66061 0039d316-1c4b-4281-b951-d872f2087c98
* touchui: First pass at XInput2 message pump.sadrul@chromium.org2010-11-122-3/+143
| | | | | | | | | | | Capture X events using XInput2. BUG=None TEST=None Review URL: http://codereview.chromium.org/4186004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65959 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 65938 (arm compile fail) - touchui: First pass at XInput2 message pump.sadrul@chromium.org2010-11-122-143/+3
| | | | | | | | | | | | | | | | Capture X events using XInput2. BUG=None TEST=None Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=65888 Review URL: http://codereview.chromium.org/4186004 TBR=sadrul@chromium.org Review URL: http://codereview.chromium.org/4894001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65940 0039d316-1c4b-4281-b951-d872f2087c98
* touchui: First pass at XInput2 message pump.sadrul@chromium.org2010-11-122-3/+143
| | | | | | | | | | | | | Capture X events using XInput2. BUG=None TEST=None Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=65888 Review URL: http://codereview.chromium.org/4186004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65938 0039d316-1c4b-4281-b951-d872f2087c98
* gtk views: NULL-check fixed_ before hidingevan@chromium.org2010-11-121-1/+2
| | | | | | | | | | | | Due to a bug in the test setup, these critical errors were not causing DCHECKs. Fixing that bug caused this bug to become more visible. BUG=62868 TEST=no more critical errors in ExtensionApiTest.GetViews and others Review URL: http://codereview.chromium.org/4856001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65891 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "touchui: First pass at XInput2 message pump."evan@chromium.org2010-11-122-143/+3
| | | | | | This reverts commit r65888, build breakage. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65890 0039d316-1c4b-4281-b951-d872f2087c98
* touchui: First pass at XInput2 message pump.sadrul@chromium.org2010-11-122-3/+143
| | | | | | | | | | | Capture X events using XInput2. BUG=None TEST=None Review URL: http://codereview.chromium.org/4186004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65888 0039d316-1c4b-4281-b951-d872f2087c98
* views: Override gtk-menu-images=0 for menu items with icons.derat@chromium.org2010-11-111-0/+6
| | | | | | | | | | | | | | This lets us disable icons by default, which gets rid of the ugly GTK+ copy/cut/paste icons in stock menus while still showing icons for Views menu items that have explicitly asked for them, like the ones in the Chrome OS network menu. BUG=chromium-os:4345 TEST=built and ran it Review URL: http://codereview.chromium.org/4708008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65828 0039d316-1c4b-4281-b951-d872f2087c98
* Implements vertical margins setter for textfield.altimofeev@chromium.org2010-11-107-11/+106
| | | | | | | | | | | | | After bug fix #r64550, changing horizontal margin doesn't change vertical margins. Unfortunately FindBar has used this bug, so explicit vertical setter was implemented to deal with this issue. BUG=chromium-os:8536 TEST=In chrome use 'ctrl+f' to invoke find bar. Notice that the border is inplace. Review URL: http://codereview.chromium.org/4246002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65686 0039d316-1c4b-4281-b951-d872f2087c98
* Adds the ability for classes other than native control to processsky@chromium.org2010-11-106-39/+118
| | | | | | | | | | | | messages bounced to the parent and wires it up for autocompleteedit, which I'm going to need shortly. BUG=none TEST=none Review URL: http://codereview.chromium.org/4637002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65612 0039d316-1c4b-4281-b951-d872f2087c98
* Fix menu click bug.oshima@chromium.org2010-11-101-1/+1
| | | | | | | | | | TBR=chocobo@chromium.org BUG=chromium-os:8718 TEST=open context/status menu and test if mouse click selects the menu item. Review URL: http://codereview.chromium.org/4692002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65600 0039d316-1c4b-4281-b951-d872f2087c98
* Do not send many requests to flimflam when network chagned.oshima@chromium.org2010-11-092-2/+25
| | | | | | | | | | | | | | | Send sync request to flimflam only if new request didn't come in 50ms. Network menu was updating menu twice when opening. BUG=chromium-os:8435 TEST=manual: enable vlog (--vlog=1) and observe that chrome log reports one "UpdateNetworkStatus" when network changes (disable, enable ethernet etc) There may be two when wifi is enabled as different wifi source may be recognized at different timing. Review URL: http://codereview.chromium.org/4229005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65478 0039d316-1c4b-4281-b951-d872f2087c98
* Re-insert IP address in Network Menu.stevenjb@chromium.org2010-11-082-5/+7
| | | | | | | | | BUG=chromium-os:8476 TEST=Open the network menu on ChromeOS; the IP address should be at the bottom of the menu. Review URL: http://codereview.chromium.org/4544001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65398 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 65109 - Adds the ability for classes other than native control to processsky@chromium.org2010-11-046-118/+39
| | | | | | | | | | | | | | | messages bounced to the parent and wires it up for autocompleteedit, which I'm going to need shortly. BUG=none TEST=none Review URL: http://codereview.chromium.org/4470001 TBR=sky@chromium.org Review URL: http://codereview.chromium.org/4528001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65122 0039d316-1c4b-4281-b951-d872f2087c98