summaryrefslogtreecommitdiffstats
path: root/components
Commit message (Collapse)AuthorAgeFilesLines
* Fixups in components/ for scoped_refptr operator T* removal.dcheng2014-09-046-7/+10
| | | | | | | | | BUG=110610 TBR=rpaquay@chromium.org Review URL: https://codereview.chromium.org/536623003 Cr-Commit-Position: refs/heads/master@{#293255}
* Merge components/usb_service into device/usb.reillyg2014-09-0425-2756/+0
| | | | | | | | | | | Unify these two parts of out USB device support. The //device tree is the cannonical location for hardware device APIs. BUG= Review URL: https://codereview.chromium.org/497363004 Cr-Commit-Position: refs/heads/master@{#293246}
* Make Easy unlock disabled by default for enterprise user.xiyuan2014-09-041-2/+1
| | | | | | | | | BUG=402797 TBR=joaodasilva@chromium.org Review URL: https://codereview.chromium.org/478773002 Cr-Commit-Position: refs/heads/master@{#293239}
* Drop NaCl support for posting stdout/stderr to JS.teravest2014-09-031-20/+0
| | | | | | | | | | | | | After sending an email to the native-client-discuss list, it was determined that this feature for redirecting stdout and stderr to JavaScript isn't very useful. This drops support for that feature; a follow up change to the NaCl repository will remove support there (and the SRPC message). BUG=406558 Review URL: https://codereview.chromium.org/513273003 Cr-Commit-Position: refs/heads/master@{#293224}
* Fix crash in Cronet CreateUrlRequestAdapter.mef2014-09-032-10/+7
| | | | | | | | | | | - Initialize URL standard schemes on load. - Use NULL-resistant string conversions. BUG=410374 Review URL: https://codereview.chromium.org/536023003 Cr-Commit-Position: refs/heads/master@{#293220}
* Cronet version now uses first 8 characters of LASTCHANGE string.mef2014-09-032-5/+7
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/537573004 Cr-Commit-Position: refs/heads/master@{#293210}
* Add DebugInfo to DistilledPageProto.nyquist2014-09-034-1/+31
| | | | | | | | | | | | | | | Adds a DebugInfo message to the DistilledPageProto. The data for this message is copied from the DomDistillerResult proto DebugInfo. For now, only a field for the distiller log exists. Depends on https://codereview.chromium.org/493853006/ BUG=409274 Review URL: https://codereview.chromium.org/504263002 Cr-Commit-Position: refs/heads/master@{#293205}
* Update the Website Settings page when the origin power map for thedhnishi2014-09-032-0/+22
| | | | | | | | | | profile is updated. BUG=409093 Review URL: https://codereview.chromium.org/519883002 Cr-Commit-Position: refs/heads/master@{#293177}
* Fix crash with forcing variations when the trial exists.asvitkine2014-09-032-0/+31
| | | | | | | | | | | | | | This can happen, for example, when a user used the --force-fieldtrials= command-line to set a different group than what they have selected from chrome://flags. Includes a test. BUG=409976 Review URL: https://codereview.chromium.org/529183002 Cr-Commit-Position: refs/heads/master@{#293173}
* Remove MetricsServiceObserver in favor of MetricsProvider.asvitkine2014-09-037-126/+5
| | | | | | | | | | | The only user of this interface has been folded into NetworkMetricsProvider. BUG=409872 Review URL: https://codereview.chromium.org/532623003 Cr-Commit-Position: refs/heads/master@{#293149}
* C++ readability CL.vasilii2014-09-034-699/+457
| | | | | | | | | | | | | My changes are mostly in these CLs: https://codereview.chromium.org/131003006 https://codereview.chromium.org/139443004 https://codereview.chromium.org/183223003 https://codereview.chromium.org/246253014 https://codereview.chromium.org/226523003 Review URL: https://codereview.chromium.org/403323004 Cr-Commit-Position: refs/heads/master@{#293107}
* Omnibox: Prevent Asynchronous Suggestions from Changing Default Matchmpearson2014-09-035-46/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a re-land of https://codereview.chromium.org/471673002/ which was reverted because it caused a failure in interactive_ui_tests InstantExtendedPrefetchTest.SetPrefetchQuery (run #1): [ RUN ] InstantExtendedPrefetchTest.SetPrefetchQuery ../../chrome/browser/ui/search/instant_extended_interactive_uitest.cc:867: Failure Value of: SearchProvider::ShouldPrefetch(*( omnibox()->model()->result().default_match())) Actual: false Expected: true [ FAILED ] InstantExtendedPrefetchTest.SetPrefetchQuery, where TypeParam = and GetParam() = (1613 ms) http://build.chromium.org/p/chromium.linux/buildstatus?builder=Linux%20Tests&number=12979 It has two changes: - revises the failing tests - does some requested cleanup of the unit tests The original changelist description follows: --- Calls to the suggest server may normally result in a new inline autocompletion. This can be disruptive because it means pressing enter may bring the user to different places depending on how long he/she waits after typing the last key. This change prevents new suggestions from becoming the default match. In other words, the default match is only allowed to change on a keystroke, not due to a reply coming back from the server. The consequence of this change is that if previously we'd show an inline suggestion on a server reply, now we only show it one keystroke later. I think this trade-off (one keystroke versus inconsistent omnibox behavior) is a good one to make. We still end up with default matches (inline autocompletions within the omnibox) from the suggest server after this change. Here's an example of why: User types "facebo" We send a suggest server request. Server asynchronously returns "facebook" as a top suggestion, beating the server-provided verbatim score for "facebo". We decide not to show it within the omnibox. It's instead shown somewhere in the dropdown. User types "o". We send a suggest server request. We reuse our cached suggestions and suggestion scores. <<< THE KEY We show "facebook" as an inline suggestion because it beats the default verbatim score that gets assigned to "faceboo". (This is the score that we assign by default without having yet received the most recent suggest server response.) We receive the response, which includes "facebook" as a top suggestion, beating the server-provided verbatim score for "faceboo". We show "facebook" as an inline suggestion. i.e., we decide not to demote it because it was already being shown inline TESTED: unit tests plus interactive tests (facebook.com/l, google.com/a) BUG=398135 Review URL: https://codereview.chromium.org/481693004 Cr-Commit-Position: refs/heads/master@{#293049}
* Add more generic filters to the chrome.usb.getDevices API.reillyg2014-09-033-3/+37
| | | | | | | | | | | | | | Instead of specifying each of the USB vendor and product ID pairs an app has permission to open this API extension allows filtering of devices by vendor and product IDs as well as USB interface classes, sub- classes and protocols. The 'vendorId' and 'productId' properties of EnumerateDevicesOptions are still supported for backwards compatibility. BUG= Review URL: https://codereview.chromium.org/517923002 Cr-Commit-Position: refs/heads/master@{#293032}
* Add a histogram to log the size of an UMA upload.asvitkine2014-09-021-1/+3
| | | | | | | | | | | | | This is better than the existing pair of histograms UMA.ProtoCompressionRatio and UMA.ProtoGzippedKBSaved which require manual calculation to get at the approx. value. BUG=409179 Review URL: https://codereview.chromium.org/523153002 Cr-Commit-Position: refs/heads/master@{#293011}
* Remove DistilledPageInfo and related structs.nyquist2014-09-026-215/+126
| | | | | | | | | | | | | | | | The DistilledPageInfo and related structs are unnecessary, and it is possible to pass the DomDistillerResult proto around instead. Currently they contain the same data, and it is all just copied over. Removing this intermediate step simplifies the code and makes it easier to add more data to the DomDistillerResult proto and passing it through to DistilledPageProto. BUG=409274 Review URL: https://codereview.chromium.org/493853006 Cr-Commit-Position: refs/heads/master@{#293008}
* Revert "[Sync] Move DataTypeStatusTable ownership into DataTypeManager."Dominic Mazzoni2014-09-027-248/+135
| | | | | | | | | | | This reverts commit fe2ae5fbf23243039bdc94f8f8672bc371f5339f. BUG=368834,409965 TBR=zea,scottmg Review URL: https://codereview.chromium.org/534733002 Cr-Commit-Position: refs/heads/master@{#292981}
* Minor fixes for the GN Windows build.Brett Wilson2014-09-021-1/+1
| | | | | | | | R=scottmg@chromium.org Review URL: https://codereview.chromium.org/533853002 Cr-Commit-Position: refs/heads/master@{#292979}
* Fix Chrome linker errors in GN build.Brett Wilson2014-09-021-0/+2
| | | | | | | | | | This fixes all non-RTC-related linker errors for Chrome. R=jamesr@chromium.org Review URL: https://codereview.chromium.org/533743004 Cr-Commit-Position: refs/heads/master@{#292978}
* [Sync] Move DataTypeStatusTable ownership into DataTypeManager.zea2014-09-027-135/+248
| | | | | | | | | | | | | | | | | | The DataTypeManager now maintains its own status table, which it posts a copy of on each configuration completion. This makes testing configuration results easier as we can now just check the type status table, and makes the DTM more self contained. To make this work a HistoryDeleteDirectives datatype controller was added to encapsulate the encryption dependency the type has. Additionally, the PSS is now able to tell the DTM to reset type errors (e.g. when the user is attempting to re-configure with or without certain types). BUG=368834 Review URL: https://codereview.chromium.org/523043005 Cr-Commit-Position: refs/heads/master@{#292962}
* Credential Manager: Refactor password_manager::CredentialManagerClient.mkwst2014-09-028-182/+43
| | | | | | | | | | | | | | | | password_manager::CredentialManagerClient was a RenderProcessObserver, and sent messages via RenderThread. This couldn't possibly have ever worked; the messages it sent were simply dropped on the floor. After this patch, it's a RenderViewObserver and its messages successfully land in the ChromePasswordManagerClient, just as they ought to. BUG=400674 Review URL: https://codereview.chromium.org/533493004 Cr-Commit-Position: refs/heads/master@{#292932}
* Move IDS_LEARN_MORE to components_strings.grdhashimoto2014-09-021-0/+5
| | | | | | | | | | | To componentize sad_tab related code, move IDS_LEARN_MORE to outside of chrome. BUG=402485 TBR=sky@chromium.org for include fix under chrome/browser Review URL: https://codereview.chromium.org/530963002 Cr-Commit-Position: refs/heads/master@{#292908}
* Clean content_settings_pattern_parser.* from unnecessary dependencies on ↵vasilii2014-09-022-0/+3
| | | | | | | | | | extensions/ and net/. BUG=387079 Review URL: https://codereview.chromium.org/440423003 Cr-Commit-Position: refs/heads/master@{#292906}
* pdf: Move the string/image resources for the pdf plugin.Sadrul Habib Chowdhury2014-09-02104-186/+223
| | | | | | | | | | | | | Move the resources for the pdf plugin out of //content into //components. Also, reuse the same code for getting the resource from PepperPDFHost and PPB_PDF_Impl. BUG=401242 R=blundell@chromium.org, jam@chromium.org, raymes@chromium.org Review URL: https://codereview.chromium.org/506473003 Cr-Commit-Position: refs/heads/master@{#292897}
* [Password Manager] Fix to recognise failed login attempt for sites where ↵pritam.nikam2014-09-012-4/+61
| | | | | | | | | | | | | | content server pushes new login form. With current implementation chromium browser does not recognize the failed login attempt for sites where content server pushes different login form (e.g. http://www.xda-developers.com), and apparently it assumes a login success and offers to save an incorrect password. With this patch in addition to submitted form's action URL to that of visible form's action URL it ignores the schemes for HTTP or HTTPS URLs as well. BUG=400769 Review URL: https://codereview.chromium.org/488083002 Cr-Commit-Position: refs/heads/master@{#292877}
* Credential Manager: Stub out the browser-side IPC handlers.mkwst2014-09-012-4/+19
| | | | | | | | | BUG=400674 TBR=palmer@chromium.org Review URL: https://codereview.chromium.org/496703002 Cr-Commit-Position: refs/heads/master@{#292852}
* Retry Set RequestContextObject for PNaCl pexe fetches, to fix On-Demand update.jvoung2014-08-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There was a race condition in the added test check in the previous attempt. That made the test Super Flaky. This is more noticeable in the Release builds than the Debug build that I was working with. (see https://codereview.chromium.org/471233003/) With a Release build I was able to repro the flakiness (40% failure over 200 runs). After the fix, I tested 500 runs and the success rate is now 100%. I can't say it won't flake for other reasons, but this fixes the main flake that was introduced. Historically, the test does ocassionally need to be retried due to timeouts, according to the bot log history. We may want to split the CORS and the non-CORS test case to see if that will help w/ timeouts. I didn't want to do that for this patch, since it would get much more complicated and this is intended for merging to M38. Retry with the race condition fixed. Also re-enable the test since it got disabled by another CL for being flaky. BUG=401755 BUG=315328 Review URL: https://codereview.chromium.org/524683002 Cr-Commit-Position: refs/heads/master@{#292807}
* Revert of Disable UI flags for non-desktop OSes (patchset #4 id:60001 of ↵mlerman2014-08-301-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/480453002/) Reason for revert: This will cause android to lose account consistency. I should not have removed the file! Original issue's description: > Disable UI flags for non-desktop OSes > > This is mostly to prevent the high res avatars from being downloaded when not necessary, and will also prevent any other non-UI side effects which are undesired on non-desktop OSes. > > BUG=404066 > > Committed: https://chromium.googlesource.com/chromium/src/+/8003a95bb88e1d25ad59251b5d7e8609d76e5669 TBR=noms@chromium.org,rogerta@chromium.org,newt@chromium.org,dzhioev@chromium.org,aruslan@chromium.org,xiyuan@chromium.org,nkostylev@chromium.org NOTREECHECKS=true NOTRY=true BUG=404066 Review URL: https://codereview.chromium.org/524023002 Cr-Commit-Position: refs/heads/master@{#292789}
* Remove weak_ptr from CopresenceManager.rkc2014-08-302-8/+12
| | | | | | | | | | | | | | | | | | | The WhispernetClient object provided by the CopresenceDelegate passed to the CopresenceManager has a lifetime exceeding that of the CopresenceManager. We explicitly want to decouple their lifetimes since we may have lifetime restrictions imposed on WhispernetClient which may require it to outlive the CopresenceManager. For this reason, when passing a callback to the WhispernetClient from CopresenceManager, we were using a WeakPtr. This is unnecessary since the same can be accomplished by passing a CancelableCallback to the WhispernetClient and Canceling the callback in the CopresenceManager destructor. R=derat@chromium.org, willchan@chromium.org BUG=None. Review URL: https://codereview.chromium.org/517753002 Cr-Commit-Position: refs/heads/master@{#292772}
* SetUploadData now throws an exception if contentType is null.mef2014-08-302-1/+34
| | | | | | | | | | It used to crash in nativeSetUploadData instead. BUG=409151 Review URL: https://codereview.chromium.org/526503002 Cr-Commit-Position: refs/heads/master@{#292729}
* Remove dead code in Autofill.estade2014-08-302-9/+7
| | | | | | | | | | | | This line can't be reached because it's already guarded by a check to IsAutofillable(). Also, change a method signature to take a const ref. BUG=none Review URL: https://codereview.chromium.org/512993002 Cr-Commit-Position: refs/heads/master@{#292724}
* Disable UI flags for non-desktop OSesmlerman2014-08-291-0/+10
| | | | | | | | | | This is mostly to prevent the high res avatars from being downloaded when not necessary, and will also prevent any other non-UI side effects which are undesired on non-desktop OSes. BUG=404066 Review URL: https://codereview.chromium.org/480453002 Cr-Commit-Position: refs/heads/master@{#292706}
* Introduce proximity_auth component.tengs2014-08-2912-0/+167
| | | | | | | | | | | | | | | | This component handles the protocol between Chrome and an associated phone for the Easy Unlock and Easy Sign-in features. The system is currently implemented as a Chrome packaged app, and this is the first step in migrating this functionality to native code. We will gradually reimplement the system and switch from the app to this component once the refactoring is complete. BUG=385719 Review URL: https://codereview.chromium.org/505373004 Cr-Commit-Position: refs/heads/master@{#292704}
* Check if precaching is allowed for the current browser context beforetanviraumi2014-08-293-0/+18
| | | | | | | | | | measuring any precache-related metrics. BUG=309216 Review URL: https://codereview.chromium.org/514353002 Cr-Commit-Position: refs/heads/master@{#292677}
* Manual fixups in components/policy for scoped_refptr operator T* removaldcheng2014-08-295-12/+20
| | | | | | | | BUG=110610 Review URL: https://codereview.chromium.org/514143002 Cr-Commit-Position: refs/heads/master@{#292663}
* Add account_id to signin manager notifications.rogerta2014-08-297-12/+28
| | | | | | | | | BUG=341408 TBR=TBR=bauerb@chromium.org, benwells@chromium.org, gene@chromium.org, asvitkine@chromium.org, noms@chromium.org, tim@chromium.org, sky@chromium.org, fgorski@chromium.org Review URL: https://codereview.chromium.org/502343002 Cr-Commit-Position: refs/heads/master@{#292635}
* OwnerKeyUtil is moved to components/ownership.ygorshenin2014-08-2915-0/+577
| | | | | | | | | BUG=398856 TEST=existing browser_tests Review URL: https://codereview.chromium.org/494093002 Cr-Commit-Position: refs/heads/master@{#292616}
* Filter blacklisted forms out from the crash reports.vasilii2014-08-291-1/+3
| | | | | | | | BUG=408804 Review URL: https://codereview.chromium.org/522463003 Cr-Commit-Position: refs/heads/master@{#292604}
* Move TemplateURLService related tests to components/search_engineshashimoto2014-08-297-18/+4332
| | | | | | | | | | | | | | | | | | | Put tests next to the code being tested. Move tests to components/ without actually removing dependencies with temporary DEPS rules added. This results in these tests still built as parts of unit_tests, not components_unittests. Fix TemplateURLServiceTestUtil to simplify the code and reduce chrome dependencies: - Create KeywordWebDataService instead of depending on WebDataServiceFactory. - Remove TemplateURLService::SetKeywordSearchTermsForURL() and TestingTemplateURLService. Instead, TestingTemplateURLServiceClient is responsible to implement SetKeywordSearchTermsForURL(). - Remove content::TestBrowserThreadBundle from test util. Tests are responsible to set up one. This enables TemplateURLServiceTestSyncTest to use multiple test util instances. BUG=387985 TEST=unit_tests Review URL: https://codereview.chromium.org/513133002 Cr-Commit-Position: refs/heads/master@{#292597}
* Bring up of ImageService.noyau2014-08-294-0/+513
| | | | | | | | | | | | ImageService is an abstract superclass that will have subclasses for each mobile platform. This class stores a salient image for a bookmark which is removed when the bookmark node is deleted. BUG=None Review URL: https://codereview.chromium.org/513793002 Cr-Commit-Position: refs/heads/master@{#292596}
* Fix midnight determinationboriay2014-08-291-10/+6
| | | | | | | | | | | | | | Midnight determination by scaling value of internal base::Time representation doesn't take in account time zones, it counts as UTC, but other time logic in local time. There is failure of test ChromeNetworkDailyDataSavingMetricsTest.PartialDayTimeChange if system time zone will overcome test time to another day (like our +4 for example). This fix make it work fine and in same way for win and others operating systems. R=bolian@chromium.org BUG= Review URL: https://codereview.chromium.org/479793002 Cr-Commit-Position: refs/heads/master@{#292589}
* Remove cevans@ from OWNERS files.thestig2014-08-297-7/+0
| | | | | | | | NOTRY=true Review URL: https://codereview.chromium.org/524433003 Cr-Commit-Position: refs/heads/master@{#292549}
* Remove BrowserThread dependency from usb_service.reillyg2014-08-297-125/+155
| | | | | | | | | | | | | | | | | Instead of explicitly depending on specific browser threads the USB service can assume that it is instantiated on BrowserThread::FILE (or equivalent) and save a TaskRunner reference from this instantiation for later use when called from other threads. To reach BrowserThread::UI (required for DBus on Chrome OS) a reference to the appropriate TaskRunner must be provided when calling UsbService::GetInstance(). BUG= Review URL: https://codereview.chromium.org/507503002 Cr-Commit-Position: refs/heads/master@{#292546}
* mac: Fix 2 bugs where "Access Address Book" prompt is incorrectly shown.erikchen2014-08-294-1/+40
| | | | | | | | | | | | Don't show "Access Address Book" prompt if Autofill is disabled, the form has the attribute autocomplete="off", or if Chrome doesn't think the form is Autofillable. BUG=398476 Review URL: https://codereview.chromium.org/512933004 Cr-Commit-Position: refs/heads/master@{#292538}
* Revert of Set RequestContextObject for PNaCl pexe fetches, to fix On-Demand ↵jvoung2014-08-291-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | update. (patchset #5 of https://codereview.chromium.org/471233003/) Reason for revert: Test is failing on a Blink bot on ChromeOS Original issue's description: > Set RequestContextObject for PNaCl pexe fetches, to fix On-Demand update. > > Add more checks to test to detect that the resource type of > the URL request is indeed OBJECT. > Would like to get this merged to the M38 branch. > > BUG=401755 > > Committed: https://chromium.googlesource.com/chromium/src/+/bfc3e122d6721ccc93f0f8b19dac4a3c2a0c947d TBR=teravest@chromium.org,ncbray@chromium.org NOTREECHECKS=true NOTRY=true BUG=401755 Review URL: https://codereview.chromium.org/524483002 Cr-Commit-Position: refs/heads/master@{#292522}
* Fixed problem with incorrect use of $HOME (breaking multi user ChromeOS)skuhne2014-08-291-7/+16
| | | | | | | | | BUG=355227 TEST=visual Review URL: https://codereview.chromium.org/515973003 Cr-Commit-Position: refs/heads/master@{#292516}
* Cronet license now includes boringssl instead of openssl.mef2014-08-281-1/+1
| | | | | | | | BUG=390267 Review URL: https://codereview.chromium.org/513413002 Cr-Commit-Position: refs/heads/master@{#292489}
* Set RequestContextObject for PNaCl pexe fetches, to fix On-Demand update.jvoung2014-08-281-0/+1
| | | | | | | | | | | | Add more checks to test to detect that the resource type of the URL request is indeed OBJECT. Would like to get this merged to the M38 branch. BUG=401755 Review URL: https://codereview.chromium.org/471233003 Cr-Commit-Position: refs/heads/master@{#292470}
* Revert of Revert of Remove the last piece of deprecated synchronous IO code. ↵xians2014-08-282-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #1 of https://codereview.chromium.org/509893002/) Reason for revert: https://codereview.chromium.org/510893003/ fixed the ledger bot, so I am going to revert this revert CL. Original issue's description: > Revert of Remove the last piece of deprecated synchronous IO code. (patchset #5 of https://codereview.chromium.org/460373002/) > > Reason for revert: > Build failure on Google Chrome ChromeOS: > > http://build.chromium.org/p/chromium.chrome/buildstatus?builder=Google%20Chrome%20ChromeOS&number=71164 > > Original issue's description: > > Remove the last piece of deprecated synchronous IO code. > > > > BUG=337096 > > TEST=bots > > > > Committed: https://chromium.googlesource.com/chromium/src/+/c4a64ffdd0d511c66d774341fa0a318af7911193 > > TBR=dalecurtis@chromium.org,ajm@chromium.org,rkc@chromium.org,avi@chromium.org,palmer@chromium.org,xians@chromium.org > NOTREECHECKS=true > BUG=337096 > > Committed: https://chromium.googlesource.com/chromium/src/+/3e8c19c89c16fe8a7c2dfe0cae2990cd4a004339 TBR=dalecurtis@chromium.org,ajm@chromium.org,rkc@chromium.org,avi@chromium.org,palmer@chromium.org,tnagel@chromium.org NOTREECHECKS=true BUG=337096 Review URL: https://codereview.chromium.org/518433002 Cr-Commit-Position: refs/heads/master@{#292463}
* [Sync] Rename FailedDataTypesHandler -> DataTypeStatusTablezea2014-08-287-67/+67
| | | | | | | | | | | Simple rename patch, in preparation for making the DataTypeStatusTable copy-able and having it track more than just errors. BUG=368834 Review URL: https://codereview.chromium.org/513543004 Cr-Commit-Position: refs/heads/master@{#292453}
* Cleanup: Remove misc unneeded grit includes.thestig2014-08-283-3/+0
| | | | | | Review URL: https://codereview.chromium.org/512663002 Cr-Commit-Position: refs/heads/master@{#292448}