0
Commit Graph

80101 Commits

Author SHA1 Message Date
55bc690930 Replace all uses of web_pref::EditingBehaviorType with mojom::EditingBehavior
This CL replaces all uses of EditingBehaviorType with
mojom::EditingBehavior to reduce unnecessary type
conversion.

Bug: 1097943
Change-Id: I013e40a725d7b12f1f9d88a37f068e4163d1d399
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450130
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Gyuyoung Kim <gyuyoung@igalia.com>
Cr-Commit-Position: refs/heads/master@{#814131}
2020-10-06 08:15:19 +00:00
4a8554ff7b Delete WebContentObserver::RenderFrameForInterstitialPageCreated.
It is no longer called. Only 1 real implementation existed.

Delete SetAsInterstitial from ContentSettingsAgent, it's unused now.

Change-Id: I995a6944115e192a4c213b8f3689130414458927
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2397110
Commit-Queue: Fergal Daly <fergal@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814115}
2020-10-06 06:48:35 +00:00
6da09f7510 Wait for correct event in test
The test ChildFrameCrashMetrics_ScrolledIntoView might fail if we wait
for WidgetHostMsg_WaitForNextFrameForTests_ACK, because it is sent
from compositor thread, almost independently from
FrameHostMsg_UpdateViewportIntersection, which is sent from main thread.

Problem can be reproduced deterministically if we put sleep in
RenderFrameProxy::UpdateRemoteViewportIntersection, to simulate preemption
by OS scheduler.

What we really want to wait for in this test is viewport intersection
update in UI thread. Only after that we can check histograms. If
we wait for lifecycle update, that will guarantee that all IPCs are
processed in browser, including FrameHostMsg_UpdateViewportIntersection.

Change-Id: I1ff2e6632b2f1391a3dee82b2bc6667bb20bf71d
Bug: 1115096
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2307373
Reviewed-by: danakj <danakj@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Reviewed-by: Stefan Zager <szager@chromium.org>
Commit-Queue: Charlie Reis <creis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814114}
2020-10-06 06:42:55 +00:00
e22c1f56f2 Expose doc-pagefooter, doc-pageheader
This will help online word processors such as Google Docs mark which
elements in the page are repeated content.

There are no specific ATK/IA2 role mappings currently. For now, ATs
on Windows and Linux can use the xml-roles object attribute.

See https://w3c.github.io/dpub-aria/#doc-pagefooter and
https://w3c.github.io/dpub-aria/#doc-pageheader

AX-Relnotes: Add new doc-pageheader and doc-pagefooter roles from DPUB-ARIA 1.1.
Skip-Translation-Screenshots-Check: True
Bug: 1134999
Change-Id: If360a51eb44c1cf2beb1315f1ba48134513dddad
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2448689
Auto-Submit: Aaron Leventhal <aleventhal@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814112}
2020-10-06 06:28:46 +00:00
6cb7c14c7e Add raster side dark mode switch and initial functionality.
This patch adds enable-raster-side-dark-mode-for-images switch to
enable raster side dark mode for images and initial functionality
to enable RSDM for bitmap images. PaintFlags will carry the
|use_dark_mode_for_image_| bit for specifying whether the
compositor should use a dark mode filter when rasterizing images.

Bug: 1094005
Change-Id: I424c9397235733fb07df4f1cad7bb758399fded9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445890
Reviewed-by: Philip Rogers <pdr@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Khushal <khushalsagar@chromium.org>
Commit-Queue: Prashant Nevase <prashant.n@samsung.com>
Cr-Commit-Position: refs/heads/master@{#814106}
2020-10-06 06:20:09 +00:00
d95f343806 Always propagate user_gesture for browser initiated requests
This was propagated only on Android and not desktop because of tests that inadvertently depended on this.
-history test said it wanted no user gesture, but ui_test_utils::NavigateToURL always enabled it
-dice code was setting user gesture but this wasn't propagated so it wasn't necessary
-download tests: I'm unsure if the tests were correct or if there are bugs to fix in the production code. For now setting user_gesture to false to simulate old behavior before this change
-signin_view_controller: no-op change since this is a browser initiated navigation so the user_gesture was always ignored

Fixes: 
Bug: 1132491
Change-Id: Ib3486090d4d18a66e0e76f9135b45a7abcbdaf1e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2430451
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Reviewed-by: Camille Lamy <clamy@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Reviewed-by: David Roger <droger@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814091}
2020-10-06 04:56:46 +00:00
3548882a6a service worker: Add error code for remote storage disconnection
This CL:
* Introduces an error code that indicates a mojo connection to the
  storage is disconnected. This won't happen yet but could happen in
  the future. It could happen due to a Storage Service crash after
  ServiceWorkerStorage is migrated into the Storage Service, and the
  Storage Service is hosted outside the browser process.
* Updates GetStorageUsageForOrigin() to make sure that the callback of
  the method is always called. Currently it uses
  WrapCallbackWithDefaultInvokeIfNotRun() but we may use the different
  approach in the future.
  Other methods in ServiceWorkerRegistry also need to be updated.
  Subsequent CLs will do that.
* Sets a mojo disconnection handler. Currently it just resets the
  remote. Subsequent CLs will implement crash recovery logic.

See [1] for the overall plan.

[1] https://docs.google.com/document/d/1RQgiuAZVbQZbYJeLOfmydBMwXTTfsL2RqZKx90yPT7U/edit?usp=sharing

Bug: 1133143
Change-Id: I28cef47d66c6f95b33d7a4a8b152e7d38d32e49f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2437082
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814063}
2020-10-06 02:54:24 +00:00
5c6698bf39 Allow --enable-tracing-output to take a directory name.
PROBLEM: It is not possible to retrieve traces from swarming with
--gtest_repeat.

For a file to be retrievable from swarming, it must be placed in
${ISOLATED_OUTDIR} but specifying anything for --enable-tracing-output
disables the unique-filename-per-test behaviour.

With this change it becomes possible to do e.g.

tools/mb/mb.py run ... \
  --gtest_filter=WebNavigationApiTest.Crash \
  --gtest_repeat=100
  --enable-tracing=*,disabled-by-default-toplevel.flow \
  --enable-tracing-output='${ISOLATED_OUTDIR}/'

and have unique files for each test that are retrievable with swarming
collect.

Also drive-by fix typo in name of function.

BUG=1043616

Change-Id: Idd1bcbbdb6f18d297170f074e9409c61204fcacb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445649
Commit-Queue: Fergal Daly <fergal@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814052}
2020-10-06 01:57:36 +00:00
41b435a1b0 [hid] Replicate self-destruct logic in connection fake
HidConnectionImpl is self-owned and will self-destruct on
disconnection of the HidConnection or HidConnectionWatcher.
This CL modifies the FakeHidConnection used in tests so it
behaves the same way.

This is a reland of crrev.com/c/2441151 that applies the
same change to HidServiceTest.OpenAndNavigateCrossOrigin.

BUG=1126689

Change-Id: I9761d08b7d44dbe850d56708623878baac028a14
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2446537
Commit-Queue: Reilly Grant <reillyg@chromium.org>
Auto-Submit: Matt Reynolds <mattreynolds@chromium.org>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814050}
2020-10-06 01:47:21 +00:00
db8f4f0a09 Window Placement: Allow requestFullscreen from onscreenschange
Similar to allowing requestFullscreen on screen orientation changes.
Allows sites to requestFullscreen when the user changes screen config
(e.g. when the user connects an external display to a laptop)

Add TransientAllowFullscreen for async support like UserActivationState.
(ScopedAllowFullscreen only supports sync, stack-allocation scopes)
Add a basic unit test for the new class, and an integration test.

Bug: 1077402
Test: window.onscreenschange = async () => { element.requestFullscreen({screen:(await getScreens())[1]}); };
Change-Id: Iffc5bb419e2b016704b923bd8454cb422672b5e7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2429967
Commit-Queue: Michael Wasserman <msw@chromium.org>
Auto-Submit: Michael Wasserman <msw@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814036}
2020-10-06 01:18:37 +00:00
49b2c81ad8 Update SGX test data readme
Change-Id: I4b5185850d75e5b20d4f0516b596e502f2cdb47b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2388770
Reviewed-by: Joe DeBlasio <jdeblasio@chromium.org>
Commit-Queue: Mustafa Emre Acer <meacer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814034}
2020-10-06 01:15:07 +00:00
c86f76fb91 Suppress conformance/textures/canvas/* on Nexus 5X / validating.
These tests are flaking on the Nexus 5X in the webgl_conformance_tests
suite run with the validating command decoder. Attempt to retry them.

Bug: 1095679
No-Try: True
Tbr: khushalsagar@chromium.org
Change-Id: Iaaaf7d0766a361efa6feb24a2491287ceae31f59
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2451297
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814024}
2020-10-06 00:53:55 +00:00
6e0530e8e8 services/tracing: Clean up session priority setting
This replaces the previous mojo interface parameter for specifying the
priority of a tracing session with an equivalent setting in the Perfetto
trace config. This patch doesn't change the effective priority of existing
tracing sessions; only the redundant parallel setting is removed.

Bug: 1058632
Change-Id: I0f71edcf65c564df286191be4634555a09f93473
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2414253
Auto-Submit: Sami Kyöstilä <skyostil@chromium.org>
Reviewed-by: Leonard Grey <lgrey@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: ssid <ssid@chromium.org>
Commit-Queue: Nasko Oskov <nasko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#814014}
2020-10-06 00:37:45 +00:00
d60c7e15df Reland "Add security mitigations for eye dropper IPC."
This is a reland of c64eed0668

The difference from the original change is that this CL updates the
color-picker-show-eye-dropper.html test to provide user activation.

Original change's description:
> Add security mitigations for eye dropper IPC.
>
> As discussed on the security review this CL adds the following mitigations:
> - require a transient user activation on the browser side, and consume
> it when showing the eye dropper for the renderer (this will prevent a
> compromised renderer to repeatedly ask for a color)
> - require the eye dropper UI to be visible for a minimum amount of time
> before color selection is allowed in order to ensure the user has a
> chance to see the UI.
>
> There is also a fix for the popup not correctly updating the user
> activation state. This happens because it is using a
> EmptyLocalFrameClient and its frame is not related to the
> owner element's frame.
>
> Bug: 992297
> Change-Id: Ia5d2aead0be153ce4b49048552062de3a6c72e63
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442132
> Reviewed-by: Kent Tamura <tkent@chromium.org>
> Reviewed-by: Mason Freed <masonfreed@chromium.org>
> Reviewed-by: Avi Drissman <avi@chromium.org>
> Commit-Queue: Mason Freed <masonfreed@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#812847}

TBR=avi@chromium.org,tkent@chromium.org,masonfreed@chromium.org

Bug: 992297
Change-Id: Icecebf941b277790e12a12d06bca5b20da404ff1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450731
Reviewed-by: Ionel Popescu <iopopesc@microsoft.com>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Ionel Popescu <iopopesc@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#814008}
2020-10-06 00:29:39 +00:00
7356d7f3b5 Move ui/ozone/ozone/gni to build/config/ozone/gni
This CL moves ui/ozone/ozone.gni to build/config/ui.gni because a few
args in ui/ozone/ozone.gni will be used by toolchain files under
build/, and the reason is that in a LaCrOS build, ozone_platform is set
to use Wayland, and meanwhile, we build an ash-chrome in an alternate
toolchain, which requires re-setting the ozone_platform back to empty.
For more details, please see:
https://chromium-review.googlesource.com/c/chromium/src/+/2416999

Bug: 1129223
Change-Id: I8c1e94c568165de2a5c26ca103fa84a60eb68b21
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2427423
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Michael Spang <spang@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@google.com>
Cr-Commit-Position: refs/heads/master@{#814006}
2020-10-06 00:20:59 +00:00
adcc21539f Revert "Avoid illegal serializations with aria-owns and unincluded nodes"
This reverts commit 6a69beb22f.

Reason for revert: Failing content_browsertests on linux-trusty-rel
https://ci.chromium.org/p/chromium/builders/ci/linux-trusty-rel/16561

Original change's description:
> Avoid illegal serializations with aria-owns and unincluded nodes
>
> When adding children, make sure we only add aria-owned children to the
> owning nodes. This avoids a common crash in chrome://bookmarks that
> has a confusing crash stack. In order to do this, when
> ComputeAccessibilityIsIgnored() is called, the relation cache
> must already be updated with the knowledge that the object is owned.
>
> Do not ever allow owned objects to ever have a "not included in tree"
> parent. Therefore, they can never be added as second line children
> via the recursion in InsertChild().
>
> Also re-remove WalkAllDescendants(), which was it was recently
> re-added as a band-aid for the chrome://bookmarks crashes.
> Without this change, removing WalkAllDescendants() causes assertions
> in AXTreeSerializer, when aria-owns points to an unincluded node,
> that the same object is being added twice.
>
> Finally, add better logging and DCHECKs that will help diagnose issues
> more quickly.
>
> Bug: 1100968, 1131848
> Change-Id: I3bb5d069814e144d426b5c3de0991bc41123206f
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2446200
> Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
> Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#813955}

TBR=dmazzoni@chromium.org,aleventhal@chromium.org

Change-Id: Icdc657185e51265e1939d32bd4508bf6cc0b307c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1100968
Bug: 1131848
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2451509
Reviewed-by: Kristi Park <kristipark@chromium.org>
Commit-Queue: Kristi Park <kristipark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813982}
2020-10-05 23:05:34 +00:00
6a69beb22f Avoid illegal serializations with aria-owns and unincluded nodes
When adding children, make sure we only add aria-owned children to the
owning nodes. This avoids a common crash in chrome://bookmarks that
has a confusing crash stack. In order to do this, when
ComputeAccessibilityIsIgnored() is called, the relation cache
must already be updated with the knowledge that the object is owned.

Do not ever allow owned objects to ever have a "not included in tree"
parent. Therefore, they can never be added as second line children
via the recursion in InsertChild().

Also re-remove WalkAllDescendants(), which was it was recently
re-added as a band-aid for the chrome://bookmarks crashes.
Without this change, removing WalkAllDescendants() causes assertions
in AXTreeSerializer, when aria-owns points to an unincluded node,
that the same object is being added twice.

Finally, add better logging and DCHECKs that will help diagnose issues
more quickly.

Bug: 1100968, 1131848
Change-Id: I3bb5d069814e144d426b5c3de0991bc41123206f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2446200
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813955}
2020-10-05 22:11:35 +00:00
15f50ffc0c Reland "Remove net::ct::CTVerifyResult and merge with net::CertVerifyResult"
This reverts commit 8fd5389329 (which
reverted the original change in commit 0d9bc82732).
The cause for the revert was fixed in
commit 06c4cc7450.

Original change's description:
> Remove net::ct::CTVerifyResult and merge with net::CertVerifyResult
>
> As part of moving CT verification to occur within the state machine
> of cert verification, move the CTVerifyResult fields into the
> CertVerifyResult as appropriate.
>
> As a nice side benefit, this allows CT verification details to be
> handled in browser tests using ContentMockCertVerifier.
>
> Bug: 848277, 1016635
> Change-Id: I365358ca12ecd9205d8103ed0e3396cdb48144b3
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2423060
> Reviewed-by: Robbie McElrath <rmcelrath@chromium.org>
> Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
> Reviewed-by: Emily Stark <estark@chromium.org>
> Reviewed-by: Ryan Sleevi <rsleevi@chromium.org>
> Commit-Queue: Emily Stark <estark@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#810364}

TBR=rsleevi@chromium.org,kouhei@chromium.org,estark@chromium.org,cthomp@chromium.org,rmcelrath@chromium.org

Bug: 848277, 1016635
Change-Id: I170cafdd9aed46fed4de0e6afa34b3308ebbd6ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450735
Reviewed-by: Chris Thompson <cthomp@chromium.org>
Commit-Queue: Chris Thompson <cthomp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813946}
2020-10-05 21:53:48 +00:00
86e5c53aeb Add DCHECKs and memoize text-changed events for UIA TextPatternProvider
This change was split out of the following CL after it was reverted :
https://chromium-review.googlesource.com/c/chromium/src/+/2346933
Reland "Fix Role::kButton name invalidation when descendant text is modified"

This change wraps inserting into memoized sets in
BrowserAccessibilityManagerWin with a method and adds DCHECKs to ensure
the sets are only inserted within the scope of OnAccessibilityEvents.

- FireUiaTextContainerEvent made it possible to fire text events more
  than once for a given text provider so it has been removed.
- Instead, populate a set |text_changed_events_| which contains the
  text providers via |GetUiaTextPatternProvider| and fire the UIA text
  events in BrowserAccessibilityManagerWin::FinalizeAccessibilityEvents
- |text_selection_changed_events_| could also potentially end up with
  the same double-event problem, so it uses GetUiaTextPatternProvider
  now as well.
- Removing usage of std::unordered_set based on the guidance in
  base/containers/README.md. In general these sets shouldn't grow large
  enough to benefit from being unordered.

Bug: none
Change-Id: Ic41ced4dede40c4597d5f79aa4b7f36a7d0c994a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2391766
Commit-Queue: Adam Ettenberger <Adam.Ettenberger@microsoft.com>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Ian Prest <iapres@microsoft.com>
Reviewed-by: Kurt Catti-Schmidt <kschmi@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#813935}
2020-10-05 21:38:16 +00:00
7782bc62b2 Clean up the UseSurfaceLayerForVideo feature from the testing config.
Also, add http://crbug/1134146 to clean up the feature-related code in
media/blink/video_frame_compositor_unittest.cc.

Bug: 1126640
Change-Id: Ibaaacb382ac80c443a25c7c27d3f943bb789cc24
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442870
Reviewed-by: Frank Liberato <liberato@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Steven Holte <holte@chromium.org>
Commit-Queue: Caitlin Fischer <caitlinfischer@google.com>
Cr-Commit-Position: refs/heads/master@{#813932}
2020-10-05 21:36:15 +00:00
a60f84e9f9 Mark ParallelDownloadTest.MiddleSliceDelayedError as flaky on Linux
TBR=qinmin@chromium.org

Bug: 1106059
Change-Id: Ie241c0a80c0f6b6788f8a8ee6df7208f57f42d57
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2449911
Reviewed-by: Chris Sharp <csharp@chromium.org>
Commit-Queue: Chris Sharp <csharp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813913}
2020-10-05 21:09:10 +00:00
e2a822da4d Remove ContentBrowserClient::NonNetworkURLLoaderFactoryDeprecatedMap.
After a recent migration (ending with https://crrev.com/c/2443398)
factories are never put into the
NonNetworkURLLoaderFactoryDeprecatedMap, except in a handful of tests.
This CL removes these remaining uses in the test code (in
DownloadTestContentBrowserClient, NavigationUrlRewriteBrowserTest,
FirstPartySchemeContentBrowserClient) and proceeds to entirely remove
the NonNetworkURLLoaderFactoryDeprecatedMap type alias from
ContentBrowserClient.

This also allows removing the following things:

- |uniquely_owned_factories| parameter from
  RegisterNonNetworkNavigationURLLoaderFactories and
  RegisterNonNetworkSubresourceURLLoaderFactories methods

- Code processing |uniquely_owned_factories| in callers of
  the two Register...Factories methods above (e.g. in
  DownloadManagerImpl::BeginResourceDownloadOnChecksComplete,
  EmbeddedWorkerInstance::CreateFactoryBundleOnUI,
  WorkerScriptFetchInitiator::CreateFactoryBundle)

- Fields that (unsuccessfully/incorrectly) attempted to extend
  the lifetime of the factories in: NavigationURLLoaderImpl
  and RenderFrameHostImpl.

Fixed: 1106995
Tbr: kmarshall@chromium.org for //fuchsia/engine
Tbr: karandeepb@chromium.org for //extensions/shell
Tbr: boliu@chromium.org for //android_webview
Tbr: seantopping@chromium.org for //chromecast/browser
Change-Id: Id1a0b8c91d07a68df3b7c907ed6315242fce8141
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2359402
Commit-Queue: Łukasz Anforowicz <lukasza@chromium.org>
Reviewed-by: Bo <boliu@chromium.org>
Reviewed-by: Karan Bhatia <karandeepb@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Sean Topping <seantopping@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813910}
2020-10-05 20:58:26 +00:00
13ed58dad7 Disable the child processes LLVM profile collection in non-PGO builds
This create some issues in some tests, they fail with the following
stack trace:

BrowserTestBase received signal: Segmentation fault. Backtrace:
 0x56400bd836c9 base::debug::CollectStackTrace()
 0x56400bcb90c3 base::debug::StackTrace::StackTrace()
 0x56400b74b5e6 content::(anonymous namespace)::DumpStackTraceSignalHandler()
 0x7fdc5b8c84c0 (/lib/x86_64-linux-gnu/libc-2.23.so+0x354bf)
 0x564010b453b0 __llvm_profile_merge_from_buffer
 0x564010b43705 writeFile
 0x564010b43547 __llvm_profile_write_file
 0x564010b43874 __llvm_profile_dump
 0x56400bda6373 base::WriteClangProfilingProfile()
 0x56400d8cb484 content::ChildProcess::~ChildProcess()
 0x564010780118 content::RenderProcessImpl::~RenderProcessImpl()
 0x564010688274 content::InProcessRendererThread::CleanUp()
 0x56400bd6c2b8 base::Thread::ThreadMain()
 0x56400bd9a8d9 base::(anonymous namespace)::ThreadFunc()
 0x7fdc60fa16ba start_thread
 0x7fdc5b99a4dd clone

This call to base::WriteClangProfilingProfile has been recently[1] added
to ChildProcess::~ChildProcess to ensure that the child utility
processes properly flushed their profiling data at shutdown. This was an
issue when running the PGO profiling scenarios as some child processes
were terminated too aggressively and sometime didn't had a chance to
fully write their profiling data. It doesn't seem to affect the coverage
data (and this change brings the coverage build back to the state it was
in before [1]).

We should ideally also look at this crash and understand why it's
happening, this CL really just prevent this crash from happening by not
calling the problematic function when it's not needed.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/2378272

Bug: 1065485
Change-Id: I051ab0993216a887a38863070b554e02ba60bb77
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450332
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Sébastien Marchand <sebmarchand@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813907}
2020-10-05 20:51:30 +00:00
d79a3b9f35 CacheStorage: Remove CacheStorageSequence feature and virtual test suite.
This feature launched to 100% on windows, mac, and android in M80.  It
was just enabled by default on ChromeOS in ToT after an extended period
investigating performance regressions.

Bug: 960012
Change-Id: I6e1edacd5f3c180f64a024cb948022aeaf130d1e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450495
Reviewed-by: Steven Holte <holte@chromium.org>
Reviewed-by: Marijn Kruisselbrink <mek@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813905}
2020-10-05 20:50:22 +00:00
353144938b Remove DataElementType::kBlob
It's no longer being used.

Fixed: 846167
Change-Id: I3636e12cdab07188c90199329826de4ef18432f9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2444430
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Marijn Kruisselbrink <mek@chromium.org>
Commit-Queue: Matt Menke <mmenke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813901}
2020-10-05 20:47:04 +00:00
e8c86032cb Completely disable all Web Component v0 APIs access via WebIDL
This CL removes the Web Components V0 APIs (Shadow DOM v0, Custom
Elements v0, and HTML Imports) from the web platform. The features
are still available for use by limited internal code directly, for
a limited additional period. See crbug.com/1111843 for reference.

These features were deprecated in August, 2018, in [1], and removed
by default in Chromium M80, in [2] and [3]. For those sites that
needed additional time, there was then a "deprecation extension" [4]
(sometimes called a "reverse origin trial") that allowed sites to
continue using these APIs through M87. Now that M87 has branched
to Beta, the origin trial has now ended. These public APIs are
now disabled for all sites.

With this CL, several test suites are being skipped in
TestExpectations, including several folders that have been prepared
in advance:
  crbug.com/1081941 web-components-v0-only/* [ Skip ]
  crbug.com/1081941 virtual/web-components-v0-disabled/* [ Skip ]
  crbug.com/1081941 http/tests/htmlimports/* [ Skip ]

Once this CL has landed and stabilized, these folders/tests will be
deleted entirely.

[1] https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/h-JwMiPUnuU/sl79aLoLBQAJ
[2] https://chromium-review.googlesource.com/c/chromium/src/+/1850795
[3] https://chromium-review.googlesource.com/c/chromium/src/+/1869562
[4] https://developers.chrome.com/origintrials/#/view_trial/2431943798780067841

Bug: 911943, 1111843

Change-Id: Ia7bde5af655eba43538d18ce1335ed3e72846503
Cq-Do-Not-Cancel-Tryjobs: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2195005
Reviewed-by: Annie Sullivan <sullivan@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Bo <boliu@chromium.org>
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Auto-Submit: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Mason Freed <masonfreed@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813894}
2020-10-05 20:42:56 +00:00
7ceb6d612d Remove the WebRTC-EnableWebRtcEcdsa feature.
Bug: 1126640
Change-Id: I178fab3f54a6fcf52ac41f6642c5d6b02f1408de
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442889
Reviewed-by: Henrik Boström <hbos@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Mark Pearson <mpearson@chromium.org>
Commit-Queue: Caitlin Fischer <caitlinfischer@google.com>
Cr-Commit-Position: refs/heads/master@{#813891}
2020-10-05 20:41:34 +00:00
1c3b94fdf5 Fix integer size overflow crash.
Clamped the values in |ConvertRectToScreen| to avoid integer overflow
while calculating the width/height of the rectangle.

Bug: 1134463
Change-Id: Ic53a8513be7393b0e58ee9d3b2019a0b71c9d703
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450920
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Anupam Snigdha <snianu@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#813890}
2020-10-05 20:38:29 +00:00
cce16589cd a11y inspect: new home for tree formatter and event recorder classes
Create new location for accessibility tree formatters and event
recorders in ui/accessibility/platform/inspect, which is appropriate
place for code used project wide.

Bug: 1133330
Change-Id: Iaa6918e9af1041044ae7e9c21be19e9529d09b7e
AX-Relnotes: n/a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2438591
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Alexander Surkov <asurkov@igalia.com>
Cr-Commit-Position: refs/heads/master@{#813874}
2020-10-05 20:15:23 +00:00
82ca9bb442 Expand OS_LINUX to OS_LINUX || OS_CHROMEOS.
Currently OS_LINUX is defined in Chrome OS build,
but it will be unset. This CL is the preparation to keep
the current behavior.

Bug: 1110266
Test: Built locally.
Change-Id: I4dd508f10e28438632c98a5b8692d5fbdc04b388
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2449870
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Commit-Queue: Sergey Ulanov <sergeyu@chromium.org>
Auto-Submit: Hidehiko Abe <hidehiko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813868}
2020-10-05 20:03:32 +00:00
61f6cf4fac Remove RenderWidgetFullscreenPepper.
With flash removal happening in M88, remove RenderWidgetFullscreenPepper
which was used to implement the Flash Fullscreen setting. Note this
is different that the PPAPI Fullscreen which uses the normal blink
fullscreen request via the WebContainer::RequestFullscreen call.

BUG=1134674

Change-Id: I166596f6f5a677cc1028aed02f74297e0c458696
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2446593
Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813822}
2020-10-05 18:24:41 +00:00
37c74c527f Expose RenderFrameHost::GetGlobalFrameRoutingId
Storing a GlobalFrameRoutingId is the preferred method of keeping a
reference to a RenderFrameHost

Change-Id: I70266e1e7e5d7c9863df43e300c26a1e7b82e563
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2449389
Reviewed-by: Rouslan Solomakhin <rouslan@chromium.org>
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813801}
2020-10-05 17:46:00 +00:00
0787dc3188 fido: implement PIV/UV Auth Protocol Two
Add support for CTAP 2.1 PIN/UV Auth Protocol Two (6.5.11).

Bug: 1129946
Change-Id: I6e0f0bfa3164b84d1e428f83f86e11d4f3151419
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2440535
Reviewed-by: Adam Langley <agl@chromium.org>
Commit-Queue: Martin Kreichgauer <martinkr@google.com>
Cr-Commit-Position: refs/heads/master@{#813799}
2020-10-05 17:44:11 +00:00
6eb58b98da Enable the AccessibilityExposeHTMLElement flag on trunk.
Fix one remaining tiny test failure, all others should now be fixed.
We should leave this flag around for at least one milestone just in
case, but if there are no issues then we can remove the flag and
hard-code it this way.

This is a big step towards getting rid of the "ignored and not
included in the tree" state.

Bug: 1063155
Change-Id: I92241af7ec752dc537919740ef96c7e149d460e5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2448656
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813794}
2020-10-05 17:29:39 +00:00
050af93841 Remove CSSOMViewScrollCoordinates flag
This CL removes the CSSOMViewScrollCoordinates experimental flag and
cleans up related code. The flag is enabled in the current release M85
via a finch flag. It has been enabled by default on M86+ and ToT
since [1].

Bug: 721759

[1] https://chromium-review.googlesource.com/c/chromium/src/+/2310799

Change-Id: I79c631bf7b30a3c5d6f4c1c819bec124a5096c32
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2377706
Commit-Queue: Frédéric Wang <fwang@igalia.com>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Majid Valipour <majidvp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813775}
2020-10-05 16:52:34 +00:00
c7fee17a24 Fix overscroll-deltas.html
This test incorrectly allows overscroll actions like gesture-navigation
which would interfere with the reported overscroll delta. This CL
disables overscroll actions with |overscroll-behavior:none|; however,
Chrome has a bug where it consumes overscroll delta, even when
overscroll-behavior is set to none.

Because of this bug, this test uses very approximate values for
expectations and were right on the edge of what was frequently being
seen. However, due to the nature of the bug a timing change here nudged
it below the thresholds so I've loosened these.

Bug: 1112183
Change-Id: If4ecf7a263385ddc3211f7776aca21eb8ec3aa95
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442152
Reviewed-by: Liviu Tinta <liviutinta@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: David Bokan <bokan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813770}
2020-10-05 16:39:13 +00:00
ebce367e17 [Fuchsia] Add ui.policy.Presenter in content_shell manifest
content_shell uses ui.policy.Presenter API to present UI. The API wasn't
listed in content_shell.cmx, so it was failing to connect to the
presenter.
Also added content/shell/fuchsia/OWNERS file (required by presubmit
checks for all cmx files).


Bug: 1067477
Change-Id: I477644a28549f9314e9ffd007d1da9abcc6c8b72
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2443449
Reviewed-by: Wez <wez@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Commit-Queue: Charlie Reis <creis@chromium.org>
Auto-Submit: Sergey Ulanov <sergeyu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813763}
2020-10-05 16:12:10 +00:00
f9890a19c7 Clean up deprecated sources assignment filter in //content/common
Remove deprecated_default_sources_assignment_filter and replace
it with explicit is_win, is_mac, etc. sections.

Bug: 1018739
Change-Id: If858a8ff19c757b7fbae59e86005608f5dfa687c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445870
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813740}
2020-10-05 14:59:35 +00:00
10c65934d8 Revert "Add security mitigations for eye dropper IPC."
This reverts commit c64eed0668.

Reason for revert: Broke virtual/eye-dropper/color-picker-show-eye-dropper.html on WebKit Linux MSAN

Original change's description:
> Add security mitigations for eye dropper IPC.
>
> As discussed on the security review this CL adds the following mitigations:
> - require a transient user activation on the browser side, and consume
> it when showing the eye dropper for the renderer (this will prevent a
> compromised renderer to repeatedly ask for a color)
> - require the eye dropper UI to be visible for a minimum amount of time
> before color selection is allowed in order to ensure the user has a
> chance to see the UI.
>
> There is also a fix for the popup not correctly updating the user
> activation state. This happens because it is using a
> EmptyLocalFrameClient and its frame is not related to the
> owner element's frame.
>
> Bug: 992297
> Change-Id: Ia5d2aead0be153ce4b49048552062de3a6c72e63
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442132
> Reviewed-by: Kent Tamura <tkent@chromium.org>
> Reviewed-by: Mason Freed <masonfreed@chromium.org>
> Reviewed-by: Avi Drissman <avi@chromium.org>
> Commit-Queue: Mason Freed <masonfreed@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#812847}

TBR=avi@chromium.org,danakj@chromium.org,tkent@chromium.org,masonfreed@chromium.org,iopopesc@microsoft.com
NOTRY=true

Bug: 992297
Change-Id: If16db478fb59c4caa6f4fd90190adb72ce38e68a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2448054
Commit-Queue: Chris Sharp <csharp@chromium.org>
Reviewed-by: Chris Sharp <csharp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813723}
2020-10-05 13:42:47 +00:00
7c75819b3e Clean up deprecated sources assignment filter in //content/shell
Remove deprecated_default_sources_assignment_filter and replace
it with explicit is_win, is_mac, etc. sections.

Bug: 1018739
Change-Id: I8f6218da609139d1edb24b56f782bbd0eb12d1eb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445413
Reviewed-by: Peter Beverloo <peter@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813710}
2020-10-05 12:31:58 +00:00
16da429544 Clean up deprecated sources assignment filter in //content/web_test
Remove deprecated_default_sources_assignment_filter and replace
it with explicit is_win, is_mac, etc. sections.

Bug: 1018739
Change-Id: I860273fecc0bc080000b84e618c4eeb2ae777272
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445414
Reviewed-by: Mike West <mkwst@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813689}
2020-10-05 11:39:48 +00:00
af1dda917d [Render Frame Host] Add comment about storage.
Change-Id: If4178a717f159d7df8c37095ec02957a16ef2c41
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2437741
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813685}
2020-10-05 11:29:05 +00:00
618ffb05d5 Clean up deprecated sources assignment filter in //content/gpu
Remove deprecated_default_sources_assignment_filter and replace
it with explicit is_win, is_mac, etc. sections.

Bug: 1018739
Change-Id: I0cb37ff563d65cc981e368e6ba1c5731f1ae6250
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445612
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813683}
2020-10-05 11:25:52 +00:00
391f9d6e0e Clean up deprecated sources assignment filter in //content/child
Remove deprecated_default_sources_assignment_filter and replace
it with explicit is_win, is_mac, etc. sections.

Bug: 1018739
Change-Id: Ie95a1489a1754c83dbe709e5f2c2b8dbfd00114f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2445931
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813676}
2020-10-05 11:07:32 +00:00
7d0328baad Disable DoNotReloadHiddenTabWithHiddenCrashedSubframe
Test cause consistent failures on multiple builders.

TBR=alexmos@chromium.org

Bug: 1135072
Change-Id: I43e121120d0a3be030839727f109f9220b3b2b58
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2449469
Reviewed-by: Matthias Körber <koerber@google.com>
Commit-Queue: Matthias Körber <koerber@google.com>
Cr-Commit-Position: refs/heads/master@{#813668}
2020-10-05 10:38:52 +00:00
16fae7cac2 Make DomSerializerTests not commit unexpected navigations.
The DomSerializerTest are executing browser-side and renderer-side code
in the same process. This was written 10 years ago. The renderer is no
more expected to load new documents without requesting navigations from
the browser process.

This patch updates the DomSerializerTest.
Now the browser process is free to kill more renderer when they try to
commit unexpected navigation.

This patch looks big, but it isn't. This patch consists of:

1. Update LoadContent to use regular navigations. It is now called from
   the browser process instead of the renderer.
2. For every test:
      Replace the callback (executed by the renderer process) by a
      lambda expression. Split the lambda around every call to
      LoadContent.  It is now executed from the browser process.

3. Update GetRenderView(). The navigation can now happens in a different
   RenderView[Host], this wasn't the case previously. The value returned
   can now change.

Bug: 1133115
Change-Id: I683149fbe353cf19fe1db96cda803eab079d8f96
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2435350
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813648}
2020-10-05 09:21:04 +00:00
35b04f2133 Fix dragging of images out of the browser
When porting StartDragging to Mojo in https://crrev.com/c/2320268, the
image contents weren't being set in the drop data. This resulted in a
link being saved on Windows and an error shown on Linux.

Bug: 1039255, 1132953
Change-Id: I2d21e0424c89306d5df8caf940e93999d16f78f5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2444996
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Henrique Ferreiro <hferreiro@igalia.com>
Cr-Commit-Position: refs/heads/master@{#813645}
2020-10-05 09:18:39 +00:00
d1d89d7d5c Remove ax::mojom::Event::kMenuListItemSelected
The specific event was fired from Blink but never used anywhere else
in the code, because the event can be implicitly generated. Replace it
with a call to MarkDirty and update web tests.

Bug: 699438
AX-Relnotes: N/A
Change-Id: Ic1d3649da6ee4bcf8e8a0935276e7a95f5ea9671
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2440588
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813633}
2020-10-05 07:20:16 +00:00
a5dd0e75a1 Debug Mac V2 GPU sandbox issues by crashing the process.
This enumerates all known denials encountered with local testing and
makes unknown denials fatal. This will enable crash data collection to
identify resources that we do not know about. It also turns on sandbox
logging to make it easier to identify issues.

Also allows reading the SubmitDiagInfo search tree in /System/Library
because the file in /Library is already allowed.

Change-Id: If14054b213c65064d971f717089731ad6e3c2bb2
Bug: 1126350
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2398915
Commit-Queue: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Greg Kerr <kerrnel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813591}
2020-10-04 19:05:44 +00:00
9fd73cca56 bfcache: Check for blocklisted features in CanStoreRenderFrameHostLater
This CL make us check for blocklisted features in
CanStoreRenderFrameHostLater, which is called when determining whether
we should do a proactive BrowsingInstance swap or not.

We don't currently have support for knowing that a blocklisted API is no
longer used after pagehide. This means if a blocklisted feature before
navigation, it will always be ineligible for bfcache. We should not try
to do a BrowsingInstance swap, etc. in this case.

In the future, as we add support for blocklisted APIs to be deemed
as no longer used after it was torn down in pagehide, we can move the
check for the newly supported APIs one by one to
CanStoreRenderFrameHostNow.

More context: https://groups.google.com/a/google.com/g/chrome-bfcache/c/L-ZreZDY4n0/m/8cBbBGB5CQAJ

Bug: 1129331
Change-Id: Ic1756d8c8460036dc97603b38b4251fb7894f9fc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2442397
Commit-Queue: Rakina Zata Amni <rakina@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Yuzu Saijo <yuzus@chromium.org>
Cr-Commit-Position: refs/heads/master@{#813505}
2020-10-03 09:06:59 +00:00