1. Publish DEPS for 77.0.3865.35
    
  2. Incrementing VERSION to 77.0.3865.35
    
    [email protected]
    
    Change-Id: I8284e8c2aad7f3d55a8fb4a59003cd690a712679
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1753203
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#372}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  3. Fix restoreEntry API for entries saved before MyFiles
    
    After enabling MyFiles the physical path pointing to old Downloads
    folder still exists however it isn't accessible from ChromeOS volumes,
    this causes entries saved with retainEntry API before MyFiles to not
    be available when calling restoreEntry after MyFiles. This caused an
    enterprise customer app to stop working when upgrading before M74
    (without MyFiles) to after M74 (with MyFiles).
    
    This CL fixes this incompatibility by special-casing the physical path
    $PROFILE_DIR/Downloads and converting it to
    $PROFILE_DIR/MyFiles/Downloads. The function EnqueueFileEntry persists
    the path back to preferences, so the valid path is persisted back and
    we can remove this special case in the future.
    
    (cherry picked from commit 186422eefc88e18d82540f5a1306216f2c9ec987)
    
    Test: manually by flipping MyFilesVolume flag and using retain and restore APIs.
    Bug: 983844
    Change-Id: I4e046caf732e0d6dc489577f0fe271c3051d0f9b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746107
    Auto-Submit: Luciano Pacheco <[email protected]>
    Reviewed-by: Ben Wells <[email protected]>
    Commit-Queue: Luciano Pacheco <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685911}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752486
    Reviewed-by: Luciano Pacheco <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#371}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  4. wilco_dtc_supportd: update notification strings
    
    Update notification strings to use brand instead of maker
    
    BUG=b:126320709,b:131430497,b:131430518,chromium:991348
    
    (cherry picked from commit 0a728d2b603ce3f57545bae7f6f84193f0fe5488)
    
    Change-Id: I4aa89e060924f1cb6147898b02699b4fc16ff2e3
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740074
    Auto-Submit: Daniel Campello <[email protected]>
    Reviewed-by: Xiyuan Xia <[email protected]>
    Commit-Queue: Xiyuan Xia <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684553}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752698
    Cr-Commit-Position: refs/branch-heads/3865@{#370}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  5. Revert "[Web Payment][DevTools] Log payment handler responses."
    
    This reverts commit 533cba7f1f167ac4dd4c8b3b4a86bbb695fc90fd.
    
    Reason for revert: This introduced a new use-after-free case.
    See crbug/992285
    
    Original change's description:
    > [Web Payment][DevTools] Log payment handler responses.
    > 
    > Bug: 980249
    > Change-Id: Ia90333263e0fb5e8253c8897f3e53967e32015d0
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1687795
    > Commit-Queue: Rouslan Solomakhin <[email protected]>
    > Reviewed-by: Sahel Sharify <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#675663}
    
    [email protected],[email protected]
    
    # Not skipping CQ checks because original CL landed > 1 day ago.
    
    (cherry picked from commit 1f3d381e1f42a45e48aa649ee942741828a40a0d)
    
    Bug: 980249,992285
    Change-Id: I83678cf4c1a3ea94fde6ca094db6e5775d6c10f4
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746959
    Reviewed-by: Danyao Wang <[email protected]>
    Commit-Queue: Danyao Wang <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685758}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752944
    Reviewed-by: Rouslan Solomakhin <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#369}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  6. [Merge 77][Chrome Colors] Picker color value should be the user selected value.
    
    et picker value to the exact value that user selected instead of the
    darkest of the calculated colors. These 2 colors are similar but not
    always the same. Therefor picker value to the exact value so that selected color doesn't jump
    after OnThemeUpdate.
    
    (cherry picked from commit a58ba7dd637b739c1a2d23be835c306dfe86c8e1)
    
    Bug: 990379
    Change-Id: I99d5c9b9783e0d81a40268a487793dee447f07ed
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737330
    Commit-Queue: Gayane Petrosyan <[email protected]>
    Reviewed-by: Kristi Park <[email protected]>
    Reviewed-by: Mustafa Emre Acer <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684413}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752744
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#368}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  7. [omnibox]: Include variation header for drive requests.
    
    [email protected]
    
    (cherry picked from commit a755a70df587e64131cf8f89fa2b0a2251eab33a)
    
    Bug: 992509
    Change-Id: I22e738a9a4c22954d310a66b28caf69224baadcb
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746123
    Reviewed-by: Marc Treib <[email protected]>
    Reviewed-by: Justin Donnelly (OOO until Aug 19) <[email protected]>
    Commit-Queue: manuk hovanesian <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685984}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751909
    Reviewed-by: manuk hovanesian <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#367}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  8. [Chrome Colors] Fix color tile sizing when selected.
    
    https://screenshot.googleplex.com/R2K3Ps4khBi.png
    
    (cherry picked from commit 4abc94e0f24b2c6dde9aa8183a7f6a67437b391d)
    
    Bug: 990952
    Change-Id: I1a5277a73a5a4e7c710529f66f1260dc900fae61
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737162
    Commit-Queue: Gayane Petrosyan <[email protected]>
    Reviewed-by: Kristi Park <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684377}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752632
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#366}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  9. [Themes] Revert back to using array instead of HSL struct.
    
    This is a partial revert of
    https://chromium-review.googlesource.com/c/chromium/src/+/1702769
    
    [email protected]
    
    (cherry picked from commit 619240950f50dd42ed0e16681b420382ecec1370)
    
    Bug: 988055
    Change-Id: Id6e67a5a69fa97c23083f44b9054526792cb58ff
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1750790
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Commit-Queue: Gayane Petrosyan <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#686339}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752605
    Reviewed-by: Bernie Thompson <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#365}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  10. 🦁 Fix voiceover behaviour for answers.
    
    The new cells were using the legacy cell accessibility behaviour which
    relied on one of the details labels be hidden when an answer is shown.
    In new cells, both cells are not hidden, so this cannot be used to
    determine the correct a11y value anymore. Instead use isAnswer directly.
    
    Also adds unit tests to prevent regression.
    
    (cherry picked from commit 107720462fde8e7e87ff2ed3286c1a3de348cca4)
    
    Bug: 992847
    Change-Id: I47fb9ab7ce548c192e2089c72c091a94fc8b1b8d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1748749
    Auto-Submit: Stepan Khapugin <[email protected]>
    Reviewed-by: Robbie Gibson <[email protected]>
    Commit-Queue: Stepan Khapugin <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685954}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752296
    Reviewed-by: Kariah Davis <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#364}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  11. Fix missing image of "new tab" button in incognito mode
    
    TabGridNewTabButton is inited with page=TabGridPageIncognitoTabs, and
    depends on "setPage:" method to set the image of button. However this
    "setPage" has an early return for same page value, so when app is
    launched in incognito mode, the image will be missing.
    
    (cherry picked from commit ebcf8f6f72e0a219fcaf110db22334b16eb7f6bf)
    
    Bug: 991994
    Change-Id: I7fd4f90a57486392f12ffab339f81517dbf25bcf
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746262
    Commit-Queue: Yi Su <[email protected]>
    Reviewed-by: edchin <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#686345}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751911
    Reviewed-by: Kariah Davis <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#363}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  12. [Merge M77] [NTP] Fix background previews for richer picker
    
    Due to the fix in https://crrev.com/c/1728427, previous background
    previews were not cleared properly. Explicitly clear the current preview
    when a background is selected.
    
    (cherry picked from commit b70ada29da9b9d345f3763191f8c2e27cf2658a0)
    
    Bug: 991277
    Change-Id: If74048d2c27c86268ff19f9e9f8ad1048c29bb0e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740312
    Auto-Submit: Kristi Park <[email protected]>
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Commit-Queue: Kristi Park <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684586}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752625
    Reviewed-by: Kristi Park <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#362}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  13. [Merge M77] [NTP] Improve keyboard navigation for richer picker
    
    - Move order of menu header items (e.g. back button and daily toggle) so
      that they follow the submenu nav buttons using keyboard navigation.
    - Support selection on SPACE for color/background tiles.
    - Like backgrounds/colors, use arrowkeys instead of TAB to navigate the
      shortcut options (i.e. TAB to focus the shortcuts menu, then use
      arrowkeys to move between the shortcut options).
    - Add role=button to upload & default background tiles for screenreader
      support.
    
    (cherry picked from commit 7c0d5728721be540aa9c9212b0dbbb28295076cf)
    
    Bug: 953822
    Change-Id: Iae8c1b8390d917f1513e234b46f0b75cc9bae3ee
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737743
    Commit-Queue: Kristi Park <[email protected]>
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684407}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752624
    Reviewed-by: Kristi Park <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#361}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  14. [Merge M77] [NTP] Add titles to shortcut & background elements in richer picker
    
    (cherry picked from commit 012a183501b016d996695b5d24432709262659f9)
    
    Bug: 953822
    Change-Id: Iee2efb5cad4fc37d11c97d56ec03eeb286969b20
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737349
    Auto-Submit: Kristi Park <[email protected]>
    Commit-Queue: Gayane Petrosyan <[email protected]>
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684374}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752623
    Reviewed-by: Kristi Park <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#360}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  15. [Merge M77] Record more histograms to debug renderer hang increase
    
    [email protected]
    (cherry picked from commit 984239a8334262a538d5602f160d01cc3a7ba604)
    
    Bug: 934317
    Change-Id: I054b539a39752582d6e44f1ac416bbc24be7c470
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742371
    Reviewed-by: John Abd-El-Malek <[email protected]>
    Reviewed-by: Steven Holte <[email protected]>
    Commit-Queue: Clark DuVall <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685399}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751924
    Reviewed-by: Clark DuVall <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#359}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  16. [Signin]: Kill UI to educate users in sync paused state with automatic cookie clearing setting turned on
    
    Use the kill switch to disable
    |ShowSyncPausedReasonCookiesClearedOnExit| as there is some risk
    attached to it. The reason for the risk is that this could be perceived
    negatively as Chrome trying to keep users from using privacy settings in
    order for them to continue syncing. We have plans on how we can address
    the risks and still educate users, but that will require string changes
    which won't be possible for M77 anymore. Therefore, this feature will be
    disabled for M77.
    
    (cherry picked from commit 74b56bead78da4faee46e617a32bf66aa45a51de)
    
    Bug: 992417
    Change-Id: I003affdfd63963458eb84ed76b50f715aefd79b2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747010
    Commit-Queue: Monica Basta <[email protected]>
    Commit-Queue: Thomas Tangl <[email protected]>
    Reviewed-by: Thomas Tangl <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685998}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751734
    Cr-Commit-Position: refs/branch-heads/3865@{#358}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  17. [LayoutNG] Fix invalidation issue with grids.
    
    with: https://chromium-review.googlesource.com/c/chromium/src/+/1554113
    
    We introduced a new flag for SelfNeedsLayoutForAvailableSpace. For any
    alignment change this was set to true for grid-items.
    
    SelfNeedsLayout reports true if this flag is set, or if the normal
    SelfNeedsLayoutForStyle is true.
    
    This caused an issue where we weren't performing layout on the whole tree
    however.
    
    If a child of the grid-item (whose alignment changed) was marked for
    needing style-layout, it would try and mark its container chain for
    layout, hit the grid item, and abort, as it already "needed" layout.
    
    Within NG we'd come across the grid-item, hit the cache, or perform
    simplified layout, never clearing layout, having a bad ptr, etc.
    
    This is a conservative fix so that this can be merged.
    
    (cherry picked from commit d1d943fbf8efd84b3c6d4bacfacf06f1d81b16e7)
    
    Bug: 991446
    Change-Id: I75edebc864eb470ebfad757966ddc0e0248de153
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741439
    Commit-Queue: Ian Kilpatrick <[email protected]>
    Commit-Queue: Emil A Eklund <[email protected]>
    Auto-Submit: Ian Kilpatrick <[email protected]>
    Reviewed-by: Emil A Eklund <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684966}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751967
    Reviewed-by: Ian Kilpatrick <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#357}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  18. Revert "[Layout] Make LayoutUnit::Min() be -LayoutUnit::Max()"
    
    This reverts commit b8ad61c01ae2557e07af1e3f3b1ea21ffe4f5b92.
    
    Reason for revert:
      The operators for +,-,+=,-= used base::Clamp{Add,Sub} which didn't
      apply the new limits. As such it was possible for the code to get
      into a state where:
      LayoutUnit test = LayoutUnit::Min();
      test -= LayoutUnit(1);
      LOG(INFO) << "result: " << (test < LayoutUnit::Min());
      The above would log "true".
    
      Code which operated near these limits was now fragile.
      Causing crbug.com/989742.
    
    Original change's description:
    > [Layout] Make LayoutUnit::Min() be -LayoutUnit::Max()
    > 
    > Some table code adds positive size to negative padding to get final
    > size. A pathological page with padding and size of equal magnitudes
    > could saturate size to LayoutUnit::Max() and padding to
    > LayoutUnit::Min(), causing the result to be -1 instead of 0.
    > 
    > Bug: 966564
    > Change-Id: I1b48a13691c63c916d705e0fd62831c63f1a3363
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1639481
    > Commit-Queue: David Grogan <[email protected]>
    > Reviewed-by: Emil A Eklund <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#670977}
    
    [email protected],[email protected],[email protected]
    
    # Not skipping CQ checks because original CL landed > 1 day ago.
    
    (cherry picked from commit 2242898488a42a358f705742f045d5f7f1f3882c)
    
    Bug: 966564, 989742
    Change-Id: Ic363c34409eda992dbf1dc3b4b4b56d5ea715887
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730527
    Reviewed-by: Ian Kilpatrick <[email protected]>
    Reviewed-by: Emil A Eklund <[email protected]>
    Reviewed-by: David Grogan <[email protected]>
    Commit-Queue: Ian Kilpatrick <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684057}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752348
    Cr-Commit-Position: refs/branch-heads/3865@{#356}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  19. Update chrome_cleaner_internal path to //chrome/chrome_cleaner/internal
    
    * Add a chrome_cleaner_internal_root var that can be overridden on builders
      that still use the internal path.
    * Add //chrome/chrome_cleaner/internal to .gitignore
    
    A followup will add //chrome/chrome_cleaner/internal to the src-internal DEPS.
    
    R=​proberge
    
    (cherry picked from commit 0ebe2d5dcfab6b8ec596712a776776e78bb08d38)
    
    Bug: 985787
    Change-Id: I25064555dba516aec739ccfa0c768766730e6709
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745399
    Reviewed-by: proberge <[email protected]>
    Commit-Queue: Joe Mason <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685704}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752072
    Reviewed-by: Joe Mason <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#355}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  20. Add integration tests from the internal chrome_cleaner repo.
    
    Also adds SanitizePathVsRawPupDataCsidlTest which was really a pup_data
    unit test, not an integration test.
    
    (cherry picked from commit 1cfbc09c8488384fffaec9f2b0bef5b60147a8b2)
    
    Change-Id: I03489b1759ce2640369c9f2aa502269d065eb0ec
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1744327
    Commit-Queue: Joe Mason <[email protected]>
    Reviewed-by: proberge <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685671}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752070
    Reviewed-by: Joe Mason <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#354}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  21. Add integration test targets to chrome_cleaner_unittests
    
    This will cause chrome_cleaner_unittests to also run the integration
    tests on the internal builders, allowing us to deprecate the
    internal-only integration test suite. A followup will make most of
    those integration tests public.
    
    Exposes "is_internal_chrome_cleaner_build" as a buildflag.
    
    There were two near-identical engine_definitions targets.
    chrome_cleaner:engine_definitions was in a more logical place, but
    had a typo that meant targets using it on the internal builders were
    linked with the wrong definitions. By chance it was only referenced
    from a test that worked anyway.
    
    This fixes the implementation of chrome_cleaner:engine_definitions and
    removes chrome_cleaner/executables:engine_definitions.
    
    This also removes the complicated OverrideTestCommandLine function
    which was used to add a longer timeout for the integration tests. The
    timeout was de-facto internal-only because the integration test binary
    was only used on the internal builders. Now we explicitly add the
    timeout in test_main.cc when running on the internal builders.
    
    BUG=949669
    
    (cherry picked from commit 589555202de5ac139ec7f6970ad644938b3aaa16)
    
    Change-Id: Ieff42b1cce452485358f005f2f2d9b67723dc2a9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742688
    Reviewed-by: proberge <[email protected]>
    Commit-Queue: Joe Mason <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685640}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752069
    Reviewed-by: Joe Mason <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#353}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  22. [Background Sync] Separate constructs for sync types.
    
    Currently we have points in code where we also schedule a task to wake up Chrome
    to process periodic sync events when only one-shot sync registrations are
    present.
    
    This doesn't cause any unexpected events to be fired, and we'll cancel the task
    soon thereafter but it does cause Chrome to be woken up more often than
    expected.
    
    This CL makes two changes to address this:
    1. Introduce separate counters for num_firing_registrations, so we don't
    schedule two failsafe Chrome wake up tasks upon firing one type of sync
    event. Ensure we only schedule a wakeup for the right type of sync.
    2. Introduce separate global wakeup deltas for the two types of sync.
    
    [email protected]
    
    (cherry picked from commit 2aefbdf4433b1f49728a7e8fca9c6f61436fcb2f)
    
    Bug: 992100
    Change-Id: Id7fadd3dff6a6977cddae2dae949304dbd3e377b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1744415
    Commit-Queue: Mugdha Lakhani <[email protected]>
    Reviewed-by: Rayan Kanso <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685963}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751985
    Reviewed-by: Mugdha Lakhani <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#352}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  23. Merge 'Always includes user scope policies for device local account policies conversions' to M77
    
    Always includes user scope policies for device local account policies conversions.
    
    Change in chrome/browser/chromeos/policy/system_log_uploader.cc is not merged because it's not
    necessary.
    
    Original CL:
    Change-Id: I05219823615a429d991d225119ffcc4541a5b790
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1726797
    Reviewed-by: Julian Pastarmov <[email protected]>
    Commit-Queue: Owen Min <[email protected]>
    Cr-Commit-Position: refs/heads/master@{#684315}
    
    Bug: 989249
    Change-Id: Ibdab5e86ecafcb4e12a049b70a2a83a186ffc79f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751831
    Reviewed-by: Owen Min <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#351}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  24. Incrementing VERSION to 77.0.3865.34
    
    [email protected]
    
    Change-Id: I23247c687248acece39035a88163f53da1a8e41b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1752123
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#350}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  25. [ios] Fixes the initial frame for IncognitoView.
    
    The IncognitoView was being created with an initial frame based off of
    keyWindow.bounds, which returns a different value under iOS iPad
    multitasking and was causing the incognito view to be smaller than its
    superview.  Setting the view's initial frame to superview.bounds fixes
    this bug.
    
    BUG=991560
    
    (cherry picked from commit 3740a91a969828502145ccac87efa1d2747d6bdc)
    
    Change-Id: I522967b9238f31b1f9b2ce2bf2f1f12f6e063490
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1744328
    Reviewed-by: Justin Cohen <[email protected]>
    Commit-Queue: Rohit Rao <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685192}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751826
    Reviewed-by: Rohit Rao <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#349}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  26. Use WeakPtr for WebFramesManagerImpl to prevent crashes
    
    Some crashes happen in WebFramesManagerImpl::OnFrameBecameAvailable,
    probably due to a lifecycle issue of WebStateImpl/CRWWebController.
    When these classes are destroyed, WebFramesManagerImpl::OnWebViewUpdate
    should be called and callbacks for JS messages should be unregistered.
    However this might not be true according to crash reports.
    
    Use WeakPtr in WebFramesManagerImpl for callbacks should help suppress
    crashes, and we need further investigation to fix the lifecycle issue
    and revert this patch.
    
    (cherry picked from commit 124046e34518272a03cb1c634e2c188ecadcc05c)
    
    Bug: 990842,991616,991950
    Change-Id: I746c53eaa920bd96d6820edd563d2b7f94f7eb50
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742135
    Reviewed-by: Mike Dougherty <[email protected]>
    Commit-Queue: Yi Su <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685214}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751728
    Reviewed-by: Yi Su <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#348}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  27. Incrementing VERSION to 77.0.3865.33
    
    [email protected]
    
    Change-Id: Ieb6fb8c97ae9a5c48ff07dc90e7909e7492069f0
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751825
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#347}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  28. Set Trichrome modules' min_sdk_vesion to android_sdk_version
    
    This will make the modules target SDK version 29 if we build with the Q
    SDK.
    
    [email protected]
    
    Bug: b/139271004
    Change-Id: I5777893c61644f4c27292d57295553352ff0cd2c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751905
    Reviewed-by: Ben Mason <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#346}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  29. Remove Trusted Type calls from MediaControlsImpl.
    
    This code was introduced in crrev.com/c/917610 and made use of the (then-new)
    Trusted Types API. It turns out, that code doesn't actually work if you enable
    TT (because it passes a plain string to a "trusted" API). Instead, we should
    just call a lower-level built-in that doesn't do the Trusted Type check.
    
    [email protected]
    
    (cherry picked from commit be96700c37911fa2dd9b33053021fd1b684c6cc6)
    
    Change-Id: Ic60700240293908e9cec1a398e1fce3775bb1e9e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1729591
    Reviewed-by: Mounir Lamouri <[email protected]>
    Commit-Queue: Daniel Vogelheim <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682808}
    Bug: 981765
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1751185
    Reviewed-by: Daniel Vogelheim <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#345}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  30. Update expiry date for ChromeOS.Apps.ExternalProtocolDialog
    
    BUG=984840
    
    (cherry picked from commit c6657cc247ef282d0a5abe4fafaf5c7b811ec4b7)
    
    Change-Id: Id2cff2cf474399595700bbea05a9ff240218891e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739236
    Reviewed-by: Ilya Sherman <[email protected]>
    Commit-Queue: Melissa Zhang <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685061}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1750512
    Reviewed-by: Dominick Ng <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#344}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  31. Add metrics for ExternalProtocolDialog accept/reject
    
    This CL adds metrics to record the types of schemes that users click
    on and then how they proceed, whether that's opening an app with
    persistence, without persistence, or clicking out of the dialog.
    
    BUG=984840
    
    (cherry picked from commit 5f31be18043bf16c168a41bcd7c76cc485f03f7c)
    
    Change-Id: Ie6de5f6c31812edeb403138f7bac947ce087337b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1718600
    Commit-Queue: Melissa Zhang <[email protected]>
    Reviewed-by: David Jacobo <[email protected]>
    Reviewed-by: Dominick Ng <[email protected]>
    Reviewed-by: Ilya Sherman <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683484}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749484
    Cr-Commit-Position: refs/branch-heads/3865@{#343}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  32. Incrementing VERSION to 77.0.3865.32
    
    [email protected]
    
    Change-Id: I026eb43718f58511d4e7990486d764bbffc8d621
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747075
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#342}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  33. [Themes] Force theme data pack rebuild.
    
    Speculative fix. I think as tint format was changed from array to
    HSL struct in https://chromium-review.googlesource.com/c/chromium/src/+/1702769
    It causes a problem of reading back already built datapacks in older format.
    
    In this CL increment the theme data pack number to force the rebuild
    of theme data packs.
    
    (cherry picked from commit 1e7d645e728471fa37ac9b293e466e506571fa41)
    
    Bug: 988055
    Change-Id: I56c0b4dd54f8105f6f88934c49a23f5a90cbdb98
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746833
    Reviewed-by: Peter Kotwicz <[email protected]>
    Commit-Queue: Peter Kotwicz <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685683}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1750085
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Reviewed-by: Bernie Thompson <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#341}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  34. [M77 Merge] Add wall clock time to GPU watchdog V2 for debugging purpose
    
    base::Time represents an absolute point in coordinated universal time (UTC).
    base::TimeTicks which tracks the amount of time a task runs.
    Watchdog V2 uses TimeTicks to check timeout. Adding clock time and analyzing
    the difference between these two might help debugging V2.
    
    (cherry picked from commit 6fb8f3c614e402e3a20fec45d07f4f115c6abfdc)
    
    Bug: 949839, 88344
    Change-Id: I21e9250e67a02f4190d12d28d33c5c7a52a2168c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742440
    Commit-Queue: Maggie Chen <[email protected]>
    Reviewed-by: Zhenyao Mo <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685365}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747864
    Reviewed-by: Maggie Chen <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#340}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  35. [M77 Merge] Increase GPU watchdog initialization timeout to 30 seconds in Windows
    
    From the Windows crash reports, 47% of the gpu process kill are in GPU process
    initialization and within 32 seconds of start up time. The GPU thread is still
    busy loading. The initialization timeout for Windows is now doubled from 15
    seconds to 30 seconds.
    
    Adjust the watchdog test time based on this initialization timeout change.
    
    (cherry picked from commit 14a580d1bf0872e8a8f9072424e1b06696509e77)
    
    Bug: 949839
    Change-Id: I2901cd80af34e6ace4ca9e0af58d7dad8612c38e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1736174
    Commit-Queue: Maggie Chen <[email protected]>
    Reviewed-by: Zhenyao Mo <[email protected]>
    Reviewed-by: Daniel Cheng <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684989}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749544
    Reviewed-by: Sunny Sachanandani <[email protected]>
    Reviewed-by: Maggie Chen <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#339}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  36. [M77 Merge][ios] Add logging in GridToVisibleTabAnimator
    
    This CL adds logging to help debug an elusive crash in
    GridToVisibleTabAnimator.
    
    This CL logs the toViewController which is attempting to be presented,
    as well as the presenting VC, and the parent VC, and the first child VC
    of the toViewController.
    
    Hopefully, these logs will help identify the user flow that causes this
    crash.
    
    This CL also removes previous logs which have not been helpful. This new
    logging is at the crash point and we expect it to log. The previous
    unhelpful logging was done at |-presentViewController| which we
    hypothesized is the cause of the NSInvalidArgumentException.
    
    Previous logging CL here:
    https://chromium-review.googlesource.com/c/chromium/src/+/1625275
    
    The bug has been elusive and there are no repro
    steps. This bug only occurs in tablet.
    
    The rationale for not preventing the crash is that it can leave the
    user in an unusable UI state if the crash is prevented. This CL helps
    to better understand this crash.
    
    [email protected]
    (cherry picked from commit 1eaaabdeb066ad3e7031f3556ddf8c5b746c4cdc)
    
    Bug: 959774
    Change-Id: Idfec5e9f7fd745308523daf74875ebb41ad5bcc5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743089
    Commit-Queue: edchin <[email protected]>
    Reviewed-by: Eugene But <[email protected]>
    Reviewed-by: Kurt Horimoto <[email protected]>
    Reviewed-by: edchin <[email protected]>
    Auto-Submit: edchin <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685665}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749721
    Cr-Commit-Position: refs/branch-heads/3865@{#338}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  37. Use themed vector icon as avatar placeholder
    
    Replaces the png graphics that blends into the default-color highlight
    effect.
    
    Bug: chromium:978388
    
    (cherry picked from commit 838e9d2793964aa11da8e8f836704de983c53df8)
    
    Change-Id: I33e63b1e15c225761f6f089aac5e853463169b9a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1736440
    Reviewed-by: Thomas Tangl <[email protected]>
    Commit-Queue: Peter Boström <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684401}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1750002
    Reviewed-by: Peter Boström <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#337}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  38. [omnibox] Enable preserve default from fakebox if the input is a URL.
    
    Previously, if the user was starting from the fakebox, type demotion
    could result in a query suggestion being the default even when the
    user's input was classified as a URL. With this change, we use the
    preserve-default mechanism to prevent type demotion in this case. This
    almost guarantees that a URL suggestion will be default because the top
    local and server suggestions for a URL input are always and likely will
    always be URL suggestions.
    
    This change also makes it so that we no longer use type demotion of
    relevance when deduping but instead always choose the natural highest
    relevance candidate for each suggestion. This ensures that we actually
    get the highest relevance suggestion when applying preserve-default.
    
    [email protected]
    
    (cherry picked from commit ff56e15623b53b112e860986f6ef874f5437926e)
    
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1723807
    Commit-Queue: Justin Donnelly <[email protected]>
    Reviewed-by: Tommy Li <[email protected]>
    Reviewed-by: Mark Pearson <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684984}
    Change-Id: If4d53112a50a9884654a6a26c5fb52c494849040
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749715
    Reviewed-by: manuk hovanesian <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#336}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  39. [Merge to M77] Evaluate MGS user policy to see if policy-provided web-trusted CA certs are present
    
    When determining whether to show a warning that the administrator is
    able to access all device activity, use the Managed Guest Session's
    OpenNetworkConfiguration policy to evaluate if there are web-trusted
    policy-provided authority certificates.
    
    Previously this was done on the DeviceOpenNetworkConfiguration policy
    which is incorrect because web-trusted policy-provided authority
    certificates are not respected when set through device policy.
    
          browser_tests --gtest_filter=ManagedSessionsTest.NetworkCertificate
    
    [email protected]
    
    (cherry picked from commit ccac3643ecd3210bd1f7a2e0e0ff4dc5459de961)
    
    Bug: 983127
    Test: unit_tests --gtest_filter=*UserNetworkConfigurationStaticsTest* && \
    Change-Id: I62adaed699ba4ea18a03ec2135f87a490803c007
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1731889
    Commit-Queue: Pavol Marko <[email protected]>
    Reviewed-by: Alexander Alekseev <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684688}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1748694
    Reviewed-by: Pavol Marko <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#335}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  40. [M77][LCP] Add debugging rects into the trace
    
    Largest Contentful Paint algorithm depends on the paint rects of layout
    objects mainly to decide whether an object is the "largest" and
    whether it is "contentful". As the paint rects are important, it is
    helpful to add them into the trace in case debugging is needed.
    
    This CL adds |PaintTimingVisualizer| to encapsulate how to generate
    the trace events with the paint rects and other debugging information.
    Visualization tool can be built on top of these trace events to
    view the rects.
    
    The enabling of the visualizer is enabled by the tracing category
    "loading". The condition is tried when
    A. |PaintTimingDetector| is constructed, or
    B. at the end of a paint tree walk
    (PaintTimingDetector::NotifyPaintFinished()).
    B assumes that the tracing category can be changed during the visit
    of a page.
    
    Note that in |ImagePaintTimingDetector|,
    * the size computation is added to get the rect when an image finishes
    loading. The extra computation is not needed by LCP but only benefits
    the trace. The extra cost should be deemed as tolerable compared with
    the overhead of enabling the "loading" category.
    * the event is calculated without considering the intrinsic size,
    because the visualizer does not visualize intrinsic size yet.
    
    Bug: 981400
    
    (cherry picked from commit 349e1c22d6cf7c48c79db969deec7864f8360517)
    
    Change-Id: Ifcd43adfad38be63b7f726aba98bc17ab969f0dd
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730622
    Reviewed-by: Steve Kobes <[email protected]>
    Commit-Queue: Liquan (Max) Gu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684951}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749735
    Reviewed-by: Nicolás Peña Moreno <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#334}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  41. [M77][LCP] Update LCP when both text and image are ready
    
    Largest Contentful Paint compares the text and the image candidate
    to decide which is the largest candidate. Currently, LCP generates
    a result entry between updating the text candidate and the image
    candidate, which produces an intermediate result. It causes
    the issue in crbug.com/988115, #c4 explains the mechanism of the bug.
    
    To remove the intermediate state, this CL changes the way
    LCP-calculator takes the text candidate and image candidate. Instead
    of notifying LCP-calculator of the text candidate's update right after
    the update, we wait until both text candidate and image candidate have
    been updated to notify LCP-calculator.
    
    Also, LCP-calculator adds the logic of checking whether candidate
    has changed, from ImagePaintTimingDetector and TextPaintTimingDetector.
    Although it's redundant with |UpdateCandidate| in text and image,
    these are necessary because going forwards, the "has_changed" logic in
    both detectors would have to be removed along with the LIP and LTP
    logic.
    
    This CL also considers the chances where either detector is destroyed,
    where it would no longer be able to find the largest candidate. In
    this case, perf API would use the last reported candidate as the
    candidate to compare with the candidate from another detector, in
    order to decide the largest between text and image.
    
    Bug: 982307, 988115
    
    (cherry picked from commit 77c7dc37185a13f5e379b0e8338f0ed3bd0f1f01)
    
    Change-Id: I562c7aeab6037678dd4bd7d6eddacdeb5be8bfbc
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1733456
    Commit-Queue: Liquan (Max) Gu <[email protected]>
    Reviewed-by: Steve Kobes <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685300}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749843
    Reviewed-by: Nicolás Peña Moreno <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#333}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  42. [M77][LCP] Combine text and image callbacks
    
    Currently, ImagePaintTimingDetector and TextPaintTimingDetector each
    has their own paint-time callback. Two callbacks are unnecessary since
    if they are registered from the same (animated) frame, they would get
    the same paint-time. Therefore, they should be combined into one
    callback.
    
    Combining the callbacks also creates a chance for LCPCalculator to
    hook to "either text records or image records have been changed",
    i.e., the end of the combined callback. This hook would enable us to
    remove the intermediate state between two callbacks, and thus fixed
    the out-of-sync issue in crbug.com/982307.
    
    Bug: 982307
    
    (cherry picked from commit 4e8c79343bb9f35d6c9358f3f7714b75288adc49)
    
    Change-Id: Ic9bc3076d163b471d91e6414da70bd6d7af0fd6d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730517
    Commit-Queue: Liquan (Max) Gu <[email protected]>
    Reviewed-by: Steve Kobes <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683470}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1748605
    Reviewed-by: Nicolás Peña Moreno <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#332}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  43. [M77][LCP] Test: mock swap-time request for text and image
    
    TextPaintTimingDetector(LTP) and ImagePaintTimingDetector (LIP) both
    use ChromeClient to register callbacks in their implementation.
    However, ChromeClient is an external component, which needs to
    be decoupled in the test.
    
    The initial design bypasses the callback in test. Specifically, LIP
    bypasses it by having a control flag to direct the callback to a
    local callback queue, and LTP simply just ignores the callback logic.
    Either approach did not achieve a comprehensive coverage.
    
    The new design in this CL uses a mocking approach for decoupling. As
    ChromeClient was called to register callbacks, the new design
    inserts an interface between LTP&LIP and ChromeClient. When testing
    LTP&LIP, the interface is mocked with a local callback queue.
    So the external component can be removed from the unit test.
    
    Compared to an earlier attempt crrev.com/c/1701058 where two callbacks
    were combined, this approach allows for separate callback-queueing
    for Image/TextPaintTimingDetector, LargestContentfulPaintDetector
    and other paint timing components in unit test. This way, future
    change in LTP wouldn't affect the unit-test in LIP via ChromeClient
    and vice versa. In addition, LargestContentfulPaintCalculator can
    thus keep being capable of controlling the order of text callback and
    image callback. As ChromeClient is shared with other paint metrics
    (FP, FCP, FMP), the tests of LTP and LIP would couple with these
    metrics if ChromeClient is not well separated.
    
    As an extra benefit, this change will make it possible to combine
    two callbacks by implementing the callback-manager interface in
    a different way. The combination will then provide a hook to the
    time when "both LIP and LTP callbacks have been invoked". This
    hook would make it easy to solve crbug.com/982307.
    
    This CL doesn't change the unit-tests expectations.
    
    Bug: 982307, 987984
    
    (cherry picked from commit ea0b582f983386251a62a463c2470cff7782fb5c)
    
    Change-Id: I8d58a9676b1b350c630f076c530b54f2d7c6ab04
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1722449
    Reviewed-by: Steve Kobes <[email protected]>
    Commit-Queue: Liquan (Max) Gu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682923}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1748601
    Reviewed-by: Nicolás Peña Moreno <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#331}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  44. Don't evict frames for hidden/occluded windows on Windows.
    
    Evicting the frames breaks alt tab preview for occluded/hidden windows,
    as well as the task bar previews, when web contents occlusion is
    enabled.
    
    (cherry picked from commit b196f074efc438965f45e184cac2522d293c2853)
    
    Bug: 969031
    Change-Id: Id4ffe3c114603fab48800ff4fd9397dc48d1c10c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1680969
    Reviewed-by: Sadrul Chowdhury <[email protected]>
    Reviewed-by: Saman Sami <[email protected]>
    Commit-Queue: David Bienvenu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684969}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747973
    Reviewed-by: David Bienvenu <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#330}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  45. [omnibox] Enable preserve default from fakebox if the input is a URL.
    
    Previously, if the user was starting from the fakebox, type demotion
    could result in a query suggestion being the default even when the
    user's input was classified as a URL. With this change, we use the
    preserve-default mechanism to prevent type demotion in this case. This
    almost guarantees that a URL suggestion will be default because the top
    local and server suggestions for a URL input are always and likely will
    always be URL suggestions.
    
    This change also makes it so that we no longer use type demotion of
    relevance when deduping but instead always choose the natural highest
    relevance candidate for each suggestion. This ensures that we actually
    get the highest relevance suggestion when applying preserve-default.
    
    [email protected]
    
    (cherry picked from commit ff56e15623b53b112e860986f6ef874f5437926e)
    
    Change-Id: I3b7094a54ea6438306c0e069a83f4e0db0939090
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1723807
    Commit-Queue: Justin Donnelly <[email protected]>
    Reviewed-by: Tommy Li <[email protected]>
    Reviewed-by: Mark Pearson <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684984}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749580
    Reviewed-by: manuk hovanesian <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#329}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  46. [ChromeDriver] Fixed Android not matching capabilities correctly
    
    MatchCapabilities would return false for valid Chrome Android
    capabilities due to a logic error. This Changelist fixes this logic error.
    
    (cherry picked from commit d7f95112c92f35fd88166df8498bedd5afae79ad)
    
    Bug: chromium:992817, chromedriver:3078, b/139201919
    Change-Id: I2c0ed05a1127add9bad5ecc35709ae4f2241dfac
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747151
    Reviewed-by: John Chen <[email protected]>
    Commit-Queue: John Chen <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685780}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1748084
    Cr-Commit-Position: refs/branch-heads/3865@{#328}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  47. [ChromeDriver] Fix callFunction with customized Object.prototype
    
    When a web page puts user-defined functions in Object.prototype,
    the JavaScript callFunction script can fail to deserialize many
    types of object. This is now fixed.
    
    (cherry picked from commit c245d4f14dbc91f7dab90f6ac334678bc34dc36a)
    
    Bug: chromium:992815, chromedriver:3074
    Change-Id: I85c2a7c5f8fe1aabacd084f772f7a9a0c4de732f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745720
    Reviewed-by: Caleb Rouleau <[email protected]>
    Commit-Queue: John Chen <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685751}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747731
    Reviewed-by: John Chen <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#327}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  48. Fixed a crash in AutoResumptionHandler
    
    This crash could possibly happen since we are clearing out the downloads
    in OnDownloadRemoved rather than OnDownloadDestroyed. The destroyed is
    a super set and is safer to use.
    
    Bug:991621
    
    (cherry picked from commit 7b99ede32386bc7b85e1604229a63ef6f1c2669a)
    
    Change-Id: Id90e8b259b36a3886ff16cd321363e25c81a6c06
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742530
    Reviewed-by: Shakti Sahu <[email protected]>
    Reviewed-by: Min Qin <[email protected]>
    Commit-Queue: Shakti Sahu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685232}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1748076
    Cr-Commit-Position: refs/branch-heads/3865@{#326}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  49. [remoting][FTL] Restart stream when server closes stream with OK
    
    We had set up timer to restart the stream every 13 minutes. Per
    discussion w/ Tachyon SWEs this causes OOMs and load balancing problems
    in the Tachyon backend. We should restart the stream only when the
    server closes the stream with a OK status.
    
    This CL implements this and removes the stream lifetime timer.
    
    (cherry picked from commit ff8acf061aac3e73760bb85a918abe9bc86574ee)
    
    Bug: 992473
    Change-Id: I132b5e32ce544cb748f197f32142189acea7a034
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745414
    Reviewed-by: Jamie Walch <[email protected]>
    Commit-Queue: Yuwei Huang <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685756}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749542
    Reviewed-by: Yuwei Huang <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#325}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  50. [Merge to 77] [omnibox] Steady State Elisions - don't elide anything in view-source.
    
    For view-source URLs, applying steady state elisions is confusing, as
    the user lacks the normal lock icon needed to surmise that the scheme
    is HTTPS.
    
    Moreover, view-source users are likely developers or Defenders of the
    Web that want to see the full URL.
    
    This CL simply turns off elisions for the inner-url portion of
    view-source scheme URLs.
    
    (cherry picked from commit 9c5649e114b3f7b3925418cdc38d63d332f207d4)
    
    Bug: 981490
    Change-Id: I64d7e130cf9096f86a3af1215ef30c0abfd96c43
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737366
    Reviewed-by: Justin Donnelly <[email protected]>
    Reviewed-by: Trent Apted <[email protected]>
    Commit-Queue: Tommy Li <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684387}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747862
    Reviewed-by: Tommy Li <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#324}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  51. M77: service worker: Check for null context_ in provider host for UpdateUrls.
    
    The crash bug was introduced in https://crrev.com/c/1705478 because
    ServiceWorkerControlleeRequestHandler::MaybeCreateLoader changed
    such that the |context_| check below was removed:
    
      if (!context_ || !provider_host_) {
        ... return;
      }
      provider_host_->UpdateUrls(...);
    
    The desired behavior is a bit subtle. The only reason |context_| could
    be destroyed while the provider host is still alive is if the provider
    host transferred contexts using the context copy mechanism we want to
    remove per https://crbug.com/877356. In this state, we end up with a
    provider host that's fairly useless: it can't serve container host
    messages etc., because there are early returns for !IsContextAlive().
    However, it seems scary to have an inaccurate URL in the case of a
    cross-origin redirect.  The previous behavior before the CL mentioned
    earlier would keep the old URL in the normal case, but in the
    |skip_service_worker| case it would attempt to update the URL via
    NavigationUrlTracker.
    
    This CL makes the decision to update the URL as far as possible, and
    just avoid touching |context_| if it's null.
    
    The real solution would be to remove the context copy mechanism.
    
    (cherry picked from commit c8bb5163bbc278feb2ecbf038a6c3a05784ae7fc)
    
    Bug: 988551, 877356
    Change-Id: I692b0c73dd10cf4af24275eb709382b6ebbf73e6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743230
    Commit-Queue: Matt Falkenhagen <[email protected]>
    Reviewed-by: Makoto Shimazu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685079}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749483
    Reviewed-by: Matt Falkenhagen <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#323}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  52. M77: service worker: Fix UI thread registration knowledge on startup.
    
    ServiceWorkeContextWatcher::Start was called too early, resulting
    in trying to read all registrations before the context core was
    initialized, which simply aborts silently, so the UI thread never got
    the list of existing registrations upon startup.
    
    (cherry picked from commit 3bf7834cb5b221dd409fcd509c00fdf6e04c385d)
    
    Change-Id: I694ee9375cb169746fa6d362444c276817e26606
    Bug: 991143
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739229
    Commit-Queue: Matt Falkenhagen <[email protected]>
    Reviewed-by: Hiroki Nakagawa <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684711}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749482
    Reviewed-by: Matt Falkenhagen <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#322}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  53. Adds MDCAlertController categories. Missing categories caused crashes
    
    (cherry picked from commit 7a4866c5a6f59cffbbd476e643c639dddcdef32a)
    
    Bug: 989556
    Change-Id: I10bba11f4ddd95cbe2c92037f9bf60f00c674e77
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740887
    Reviewed-by: Jérôme Lebel <[email protected]>
    Commit-Queue: Peter Lee <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684738}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1749423
    Reviewed-by: Peter Lee <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#321}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  54. [M77] Handle empty timezone on in-session set date time dialog
    
    (cherry picked from commit 8ad6d22eab2ce68fd8679b1802fabcce6fa31fc7)
    
    Bug: 988107, 990203
    Change-Id: Ifab31eb1b45ee90e12a08cb6c1a45cfb520df81c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1736848
    Commit-Queue: Henrique Grandinetti <[email protected]>
    Reviewed-by: Aga Wronska <[email protected]>
    Reviewed-by: Michael Giuffrida <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684832}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747276
    Cr-Commit-Position: refs/branch-heads/3865@{#320}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  55. Incrementing VERSION to 77.0.3865.31
    
    [email protected]
    
    Change-Id: I25b3217e7bd780e2536cc1ed60f3c62c1b1ea6b2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747388
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#319}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  56. Add nullptr check inside NotifyA11yEvent
    
    GetRoot sometimes returns nullptr (as GetFromId returns null).
    This nullptr is not catered for in the calling function (NotifyAccessibilityEvent),
    which means that after obtaining the node,
    root->isNode() could possibly be called on a nullptr.
    
    From the stack traces in b/136621529 (ref: comment #21),
    this is what caused the crashes observed when enabling ChromeVox in an ARC++ window.
    
    TEST=manual (use steps to reproduce original bug, observe no failure)
    TEST=tast run DUT_IP arc.Accessibility* (from: ag/8691068) no longer fails
    BUG=b:136621529, b:138970602
    
    (cherry picked from commit 3310d273dd8edb741d81c4cc38aead7c415d2f07)
    
    Change-Id: I47908e3e681420fba539c1eca86fc11fef84d715
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730654
    Reviewed-by: Sara Kato <[email protected]>
    Reviewed-by: Alice Boxhall <[email protected]>
    Commit-Queue: Sara Kato <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684244}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745107
    Reviewed-by: Stefan Kuhne <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#318}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  57. Incrementing VERSION to 77.0.3865.30
    
    [email protected]
    
    Change-Id: Ie2c98f5be2d8793100d65d7e2fbf990604e1b3a9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745813
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#317}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  58. Fix chrome crash in CrostiniPackageService
    
    Chrome would crash when the same crostini app was queued for
    uninstallation multiple times, as the CrostiniRegistryService would
    return base::nullopt when asked for the registration. Instead just
    mark notifications for already-uninstalled apps as succeeding immediately.
    
    (cherry picked from commit 335539e71f4197143cc76f5445ae68c514d44886)
    
    Bug: 991462
    Change-Id: Icc062b6a83a54463ffa2333eaa379d4c6395e5fc
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741332
    Reviewed-by: Timothy Loh <[email protected]>
    Commit-Queue: Fergus Dall <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685039}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746328
    Reviewed-by: Fergus Dall <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#316}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  59. Incrementing VERSION to 77.0.3865.29
    
    [email protected]
    
    Change-Id: Ibce907994c180767b7657afa3d93b093a5983358
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747196
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#315}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  60. Revert "location.hash = '' should always result in an empty fragment, not no-fragment"
    
    This reverts commit fb0f9e392b20395b45fe3aa7bcaaae3bdb8faf5d.
    
    Reason for revert: breaks rendering on https://svelte.dev/tutorial/basics
    
    Original change's description:
    > location.hash = '' should always result in an empty fragment, not no-fragment
    >
    > So far in |setHash|, old fragment identifier and new fragment identifier are
    > compared ignoring nullity.
    >
    > When fragment has never been set, |old_fragment_identifier| is null.
    > In this situation, |location.hash = ''| is called,
    > |new_fragment_identifier| is not null empty value.
    > |EqualIgnoringNullity| treats these as the same, |setHash| does nothing.
    >
    > So, this patch compare old and new fragment by == operator
    > not |EqualIgnoringNullity|.
    >
    > Bug: 615300
    > Change-Id: Id509bc5066eeee83236ecb4ee816ecb90540a260
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1647298
    > Commit-Queue: Daniel Cheng <[email protected]>
    > Reviewed-by: Daniel Cheng <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#670795}
    
    [email protected], [email protected], [email protected]
    
    
    (cherry picked from commit cba280529d44b88d6513dd9a6d4a5718772b49d3)
    
    Bug: 615300
    Change-Id: I6e47d0d1711b197c6e8e35af7dc43e67a6cb4ebb
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1726953
    Reviewed-by: Daniel Cheng <[email protected]>
    Commit-Queue: Daniel Cheng <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682440}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746804
    Cr-Commit-Position: refs/branch-heads/3865@{#314}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  61. Update release notes app id.
    
    (cherry picked from commit 357706de030ff1a32b83f16dd32277b1f4de4edd)
    
    Bug: 968372
    Change-Id: I19034302a5548688c7f7f48dea906deccf856ce0
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745461
    Commit-Queue: Yulun Wu <[email protected]>
    Reviewed-by: Alexander Alekseev <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685706}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745935
    Cr-Commit-Position: refs/branch-heads/3865@{#313}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  62. Revert "Don't send pixel-based display info for MacOS Hosts"
    
    This reverts commit b01d491e75472fa11451b03b20ff183ac8f4105f.
    
    (cherry picked from commit e409f049b16b672a8b35309ebac090ef27154d52)
    
    Bug: 987513
    Change-Id: I47f3f224bfedf078df9263b1c24255389dd7084c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1721246
    Auto-Submit: Gary Kacmarcik <[email protected]>
    Reviewed-by: Joe Downing <[email protected]>
    Commit-Queue: Joe Downing <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682491}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746085
    Reviewed-by: Gary Kacmarcik <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#312}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  63. Merge to M77: Do not apply CORB to application/x-www-form-urlencoded.
    
    (cherry picked from commit 782f209df2a0e99d8fa7c89c2c09568a3a47aa7d)
    
    Bug: 990853, 802836
    Change-Id: I7aeba7f34ae3257a8c0d7900a4f266f872273304
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739646
    Commit-Queue: Charlie Reis <[email protected]>
    Auto-Submit: Łukasz Anforowicz <[email protected]>
    Reviewed-by: Charlie Reis <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684464}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747026
    Cr-Commit-Position: refs/branch-heads/3865@{#311}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  64. Updating XTBs based on .GRDs from branch 3865
    
    [email protected]
    
    Change-Id: I9d8a98cb1698dc625271e97ea31cbf8a9b7c8b9d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746793
    Reviewed-by: Krishna Govind <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#310}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  65. Metrics for unique users of key assistive technologies
    
    Accessibility metrics are fired once, 45 seconds after startup.
    However, UMA counts unique users on a daily basis.
    
    This means that the metrics system is only counting 1/2 of users who don't
    relaunch their browser in a 2 day period. Or 1/3 of users who don't
    relaunch for 3 days, etc.
    
    Adding the following *.EveryReport alternate histogram names for
    histograms that fire more often. These can be used with the unique
    users aggregation option when viewing metrics:
    Accessibility.CrosSpokenFeedback.EveryReport
    Accessibility.Android.ScreenReader.EveryReport,
    Accessibility.Mac.ScreenReader.EveryReport,
    Accessibility.WinScreenReader2.EveryReport,
    Accessibility.WinJAWS.EveryReport
    Accessibility.WinNVDA.EveryReport
    Accessibility.WinZoomText.EveryReport
    
    (cherry picked from commit 81ce2bd7582c2ea1e75969905d02dcaa636e36b1)
    
    Bug: 988502
    Change-Id: I0b29dc35615668aafb7e873e574c1ba7ae280ead
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724698
    Commit-Queue: Aaron Leventhal <[email protected]>
    Reviewed-by: Jesse Doherty <[email protected]>
    Reviewed-by: Nektarios Paisios <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682971}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746847
    Reviewed-by: Aaron Leventhal <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#309}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  66. Setting version to 77.0.3865.28
    
    [email protected]
    
    Change-Id: I2cffc9336bbce48aa16ebc0820338e4063793e18
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745457
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#308}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  67. gpu: reduce locks in transfer buffer
    
    Currently, gpu::CommandBufferHelper::GetLastState locks a mutex to check
    the latest token state for every outstanding block in the transfer
    buffer.  Instead, take the lock once, and reuse the cached value when
    looping over all the blocks.
    
    On vmiura's "300 invalidation" repaint test in callgrind on Linux, the
    number of cycles spent per library changed like this, filtered to
    RasterBufferImpl::Playback and CommandBufferService::Flush:
    
                 |  gpur  |  oopr  | % diff
    -------------+--------+--------+-------
    total cycles | 256.2m | 235.3m |  8.1%
    libbase.so   |  19.9m |  13.1m | 34.3%
    libgpu.so    |  16.1m |   8.7m | 45.9%
    libpthread   |   5.7m |   1.5m | 72.8%
    
    The callstack this avoids is:
    gpu::FencedAllocator::GetLargestFreeSize ->
    gpu::FencedAllocator::FreeUnused ->
    gpu::CommandBufferHelper::HasTokenPassed ->
    gpu::ComamndBufferProxyImpl::GetLastState ->
    base::internal::LockImpl::Lock ->
    pthread_mutex_lock
    
    (cherry picked from commit f0bdd22daa38303d523288589002a0538159ade2)
    
    Bug: 991665
    Change-Id: Ic7d7a93ff6b6833ce978318d3ad406afeca76c4c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1725030
    Reviewed-by: Eric Karl <[email protected]>
    Reviewed-by: Khushal <[email protected]>
    Commit-Queue: enne <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682870}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745842
    Reviewed-by: enne <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#307}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  68. [Merge to M77] Flip feature kCrostiniAdditionalEnterpriseReporting to enabled by default
    
    This flips the feature for additional Crostini enterprise reporting
    to enabled by default after privacy and test approvals.
    
    (cherry picked from commit fc6f6e0839ecad51d53013d325c5593686a711c5)
    
    Bug: 844468
    Test: browser_tests --gtest_filter="DeviceStatusCollectorTest.*Crostini*"
    Change-Id: I13aee59df3ff2709ffb422517be253723857cbd5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737329
    Auto-Submit: Alex Oldemeier <[email protected]>
    Reviewed-by: Denis Kuznetsov <[email protected]>
    Commit-Queue: Alex Oldemeier <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684743}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742237
    Reviewed-by: Alex Oldemeier <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#306}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  69. Merge to M77: Reland "Enable the mDNS responder to list names as a TXT record."
    
    This is a reland of a4da6e0708527daab7af78e6dda530d39fb77427
    
    Original change's description:
    > Enable the mDNS responder to list names as a TXT record.
    >
    > After this change, the mDNS responder will respond to queries for TXT
    > records associated with the query name
    > "Generated-Names._mdns_name_generator._udp.local" by providing the list
    > of currently registered mDNS names (as version-4 UUIDs). The TXT record
    > follows the DNS-SD key-value pair format in RFC 6763. The cache-flush
    > bit is not in these records so that multiple Chrome instances in the
    > same network would consider their responses belonging to a shared set
    > of resource records associated with the same query name.
    >
    > This CL also fixes a bug in handling read errors of mDNS sockets.
    >
    > [email protected]
    >
    > Bug: 979022, 990704
    > Change-Id: I47d92fff10f14e910ba6fec97d99501421b3eab2
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1709152
    > Commit-Queue: Qingsi Wang <[email protected]>
    > Reviewed-by: Eric Orth <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#684822}
    
    [email protected]
    
    (cherry picked from commit 8dc66e136993db71f2422cc32b561783da735173)
    
    Bug: 979022, 990704
    Change-Id: Ib8b4464b852c3716ab1cc829cfddb5aab59a0689
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742648
    Reviewed-by: Eric Orth <[email protected]>
    Commit-Queue: Qingsi Wang <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684947}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745125
    Reviewed-by: Qingsi Wang <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#305}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  70. Incrementing VERSION to 77.0.3865.23
    
    [email protected]
    
    Change-Id: Id0af6dbd380519d5da9581d5201bb611204e008d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745445
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#304}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  71. Modules: Use unstripped libraries as partition data deps
    
    To be consistent with regular .so libraries, the runtime dependency
    should be the unstripped version. This ensures that tools that fish for
    runtime deps (like test isolate generation) find the files they expect.
    
    (cherry picked from commit 62542e9adbb09f641c6e8b3e425876871289c7a0)
    
    Bug: 987433
    Change-Id: I9b1ea641284a043fd4d11e4d5b7068a2e3a3acd5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720734
    Auto-Submit: Christopher Grant <[email protected]>
    Reviewed-by: Tibor Goldschwendt <[email protected]>
    Reviewed-by: Andrew Grieve <[email protected]>
    Commit-Queue: Andrew Grieve <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681690}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746549
    Cr-Commit-Position: refs/branch-heads/3865@{#303}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  72. [vr] Add URL that crashes the VR browser upon commit
    
    This can be used, for instance, to test VR native DFM stack
    symbolization.
    
    (cherry picked from commit 74cfe73a7956f6542b02e3e88091d7d93aa82199)
    
    Bug: 874564
    Change-Id: Ibd9f61bb1a45debc9f7e8db8e9b8e9b0d791064f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740469
    Commit-Queue: Tibor Goldschwendt <[email protected]>
    Auto-Submit: Tibor Goldschwendt <[email protected]>
    Reviewed-by: Klaus Weidner <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684829}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746548
    Reviewed-by: Tibor Goldschwendt <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#302}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  73. Modules: Enable partitioned native libraries for VR
    
    This change flips on the switch for putting the VR UI's native code in
    the feature DFM.
    
    In doing so, it enables a partitioned Chrome library for Android, which
    changes how libchrome.so (and libmonochrome.so) are generated.  The
    link stage now generates libchrome__combined.so, a special library that
    uses lld linker capabilities to put feature code into separate
    sections.  The main and feature libraries are then extracted in a
    follow-on step, producing discrete libchrome.so and feature libs.
    
    As a result, this change has the potential to break scripts that (for
    example) induce re-linking of libraries by deleting libchrome.so.
    
    (cherry picked from commit 50816c29bb443be27d84e504d580665d54318c4f)
    
    Bug: 874564
    Change-Id: I708e990b3aa6b1abe71b28a67add51662c268276
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1663486
    Reviewed-by: Tibor Goldschwendt <[email protected]>
    Reviewed-by: Bill Orr <[email protected]>
    Commit-Queue: Christopher Grant <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681883}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746465
    Cr-Commit-Position: refs/branch-heads/3865@{#301}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  74. Make library basename generation more robust.
    
    The aim is to turn (e.g.) libmonochrome.so into monochrome, but in the
    secondary abi case the path passed has a directory component, which
    means that an incorrect library name is generated.
    
    This CL changes the implementation to be more robust to directory
    components and the length of the extension.
    
    (cherry picked from commit 377bdba34eada62097786c161428baed14f8fa18)
    
    Bug: 988041
    Change-Id: Idfca8a38bbb4fdd2a136a64f14c9f00b675776c7
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720876
    Reviewed-by: Andrew Grieve <[email protected]>
    Commit-Queue: Tobias Sargeant <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681853}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746463
    Reviewed-by: Ben Mason <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#300}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  75. Start counting WebComponents v0 Origin Trial usage
    
    Prior to this CL, the three Web Components v0 use counters for
    users *on* the reverse origin trial [1] were not being counted.
    This is because the prior code checked that the runtime feature
    was *not* enabled, which is it by default. With this change,
    all use of the WCv0 features on sites participating in the
    origin trial will be counted, even if they have manually
    turned off the feature flags, or after the feature has been
    removed by default.
    
    [1] https://developers.chrome.com/origintrials/#/view_trial/2431943798780067841
    
    (cherry picked from commit 0386c2a251db1db73c28884b86ee9b2666842352)
    
    Bug: 990404
    Change-Id: I610f6003f1509ad921c77e687bad84567c3134f0
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1738673
    Commit-Queue: Mason Freed <[email protected]>
    Commit-Queue: Ian Clelland <[email protected]>
    Reviewed-by: Yoichi Osato <[email protected]>
    Reviewed-by: Ian Clelland <[email protected]>
    Auto-Submit: Mason Freed <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684602}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746546
    Reviewed-by: Mason Freed <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#299}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  76. OOR-CORS: Disabled by default on Android 77 Beta/Stable
    
    Since WebView can not take the Finch configuration at the first run,
    this patch disable the OOR-CORS feature by default just in case.
    
    We will enable the OOR-CORS for 100% users via server managed run-time
    configuration.
    
    Bug: 991107
    Change-Id: I2df481b7ce15b41132ac8c0c9d6fcca7b1ff0b1c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746127
    Reviewed-by: Takashi Toyoshima <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#298}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  77. [Direct Actions] Add simple metrics to track usage.
    
    This change adds metric to track calls to:
    
    ChromeActivity.onGetDirectActions, which is made by the system when the
    user triggers the assist app while Chrome is the foreground app.
    
    This is mapped to a user action.
    
    ChromeActivity.onPerformDirectAction which is made by the system when the
    user triggers the assist app while Chrome is the foreground app. This is
    mapped to a enum histogram, to be able to track the
    different outcomes of such a call:
    - the action was not recognized
    - the action was recognized and performed and which action that was
    
    Since the set of direct actions is open, there's a
    catch-all "other", which shouldn't be triggered, as all actions
    allowed by the DirectAction feature are part of the histogram
    value.
    
    This is the cherry pick of http://crrev/c/1736354 into M-77, which was approved in http://crbug/991530 
    
    (cherry picked from commit df18ba918fc1a0418434540b369c01c757a4d5b0)
    
    Bug: 959841
    Bug: 991530
    Bug: b/138918753
    Change-Id: I833bfbeb03e832e2c770e104685b34afb56bd55f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1736354
    Commit-Queue: Stephane Zermatten <[email protected]>
    Reviewed-by: Brian White <[email protected]>
    Reviewed-by: Ted Choc <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684290}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745480
    Reviewed-by: Stephane Zermatten <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#297}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  78. Merge 3865: [LayoutNG] Include close tags after forced break
    
    When close tags follow immediately after a forced break, this
    patch changes to include them into the line. The difference
    is visible when the close tag has margin, border, or padding.
    
    This is not a defined behavior. Legacy and WebKit do this for
    both preserved newlines and `<br>` tags. Gecko does this only
    for preserved newlines (but not for `<br>`s), and Edge does
    not do this.
    
    (cherry picked from commit a0d8bf267559f4b2fb025a55f0aaba74087f60ac)
    
    Bug: 991320
    Change-Id: Ic2cab6f56529ca65542cecb5f644f90e9644c4e9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742250
    Commit-Queue: Koji Ishii <[email protected]>
    Commit-Queue: Emil A Eklund <[email protected]>
    Reviewed-by: Emil A Eklund <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684910}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746113
    Reviewed-by: Koji Ishii <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#296}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  79. Validate lowest float cache when necessary.
    
    FloatingObjects has a method LowestFloatLogicalBottom(), which
    calculates and caches the lowest FloatingObject if this information
    isn't already calculated and cached.
    
    Then there's the method LowestFloatingObject(), which would return that
    FloatingObject, if it was cached, and nullptr otherwise.
    
    So: One method that calculates it if needed, and one that relies on the
    cache and otherwise returns something bogus.
    
    The layout code is quite well peppered with calls to
    LowestFloatLogicalBottom(), so it requires significant amounts of bad
    luck to trigger a cache miss, and then another heap of bad luck to
    actually cause a crash from that.
    
    But it was NOT impossible.
    
    The fix is to rebuild the cache if needed in LowestFloatingObject().
    Letting it return nullptr if the cache was invalid caused us to fail to
    propagate an overhanging float upon relayout, breaking some sort of link
    to subsequent blocks, so that when the float later on was removed, we'd
    fail to remove it from all the block flows that referred to it.
    
    The test included in this CL is as minimal as I could get it, but still
    not super-simple. Here's what went wrong:
    
    There is a float somewhat nested inside a container. This container has
    some siblings, one being an infinitely tall beast with a large negative
    (also infinite) block-start margin. Another sibling is empty, so that we
    can collapse through it. Then there's a last, pretty decent, sibling
    container, except that it contains another float. Because we're dealing
    with infinite LayoutUnit values, the engine cannot quite agree with
    itself whether the first float intrudes into the last sibling or not,
    and this is important when it comes to determining whether the float
    intrudes into the last container or not. When we lay out initially, we
    find it to intrude, and add it to the list.
    
    We then change the first float ever so slightly, to trigger relayout.
    This will break the magical chain of FloatingObject references to the
    first float (because the cache was invalid, and therefore incorrectly
    report that there's no float there). The last container (the one
    previously referred to as "decent") has a reference to the float that
    just got relaid out, because at some point it was thought to intrude. If
    we had laid out this container again now, we'd clear the FloatingObject
    list and the float would be gone from the list. But we don't lay it out
    again, because the relevant part of the engine decides that the float
    doesn't intrude, contrary to what the part of the engine that caused it
    to be added in the first place concluded.
    
    Then, we'll remove the float (display:none), and we'll fail to remove it
    from all block flows that referenced it. The last container still has a
    reference to the hungover (or actually now dead) float.
    
    (cherry picked from commit 9d58aaeae429cc26b83044de69d07f01620af085)
    
    Bug: 989305
    Change-Id: I498344fc5b6426cf8225441d2dab195659e31112
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1738556
    Commit-Queue: Emil A Eklund <[email protected]>
    Reviewed-by: Emil A Eklund <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684357}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746166
    Reviewed-by: Morten Stenshorne <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#295}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  80. Enable chrome.management.installReplacementWebApp in platform apps
    
    Currently chrome.management.installReplacementWebApp is only enabled for
    extensions. However we also want it to be usable from platform apps.
    
    [email protected]
    
    (cherry picked from commit df98a53d4ce44b9fdbdb9b477c7782ecdb8ce754)
    
    Bug: 989799
    Change-Id: I644c5bdff2aa53aa6af504388c9826b2375f1eb4
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1735232
    Reviewed-by: Ben Wells <[email protected]>
    Commit-Queue: Raymes Khoury <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683920}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746111
    Reviewed-by: Raymes Khoury <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#294}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  81. Remove the Whitelist for usage of management.installReplacementWebApp
    
    This reverts commit 17ec7e69906c5818b071cdefdf13814c01230e81.
    
    This whitelist is no longer needed. We want to open up this API for public use.
    
    Original change's description:
    > Whitelist usage of management.installReplacementWebApp
    >
    > This whitelists management.installReplacementWebApp to specific
    > extensions as restrictions to ensure apps are related aren't yet
    > implemented on the Webstore.
    >
    > For tests we need to generate manifest.json files based on the URL of
    > the related app. Hence we can't check in a static crx/extension. This
    > means that we need to provide a private key when generating the crx to
    > ensure that the extension ID stays the same across test runs.
    >
    > Bug: 968407
    > Change-Id: Ieceadeaf59011b7209fece3de06e89f2bea4b9e3
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1635118
    > Commit-Queue: Raymes Khoury <[email protected]>
    > Reviewed-by: Devlin <[email protected]>
    > Reviewed-by: Ben Wells <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#665044}
    
    [email protected], [email protected], [email protected]
    
    
    (cherry picked from commit e9f4d714b4d3c7d9a01ba3ddc388d7156dcf4480)
    
    Bug: 989799
    Change-Id: I7662316011114dc2b5d50fc9a8ad1124b8749582
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1727869
    Reviewed-by: Raymes Khoury <[email protected]>
    Reviewed-by: Devlin <[email protected]>
    Commit-Queue: Raymes Khoury <[email protected]>
    Auto-Submit: Raymes Khoury <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683033}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746110
    Cr-Commit-Position: refs/branch-heads/3865@{#293}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  82. Incrementing VERSION to 77.0.3865.22
    
    [email protected]
    
    Change-Id: Ia15adbef813f4744c3d0bda58244ef6e62de7a06
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745432
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#292}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  83. M77: service worker: Populate provider info before navigation commit.
    
    This fixes a race in the fast path taken by
    ServiceWorkerNavigationLoaderInterceptor when there is no in-scope
    registration for the navigation. In this path, the interceptor would
    elect to not handle the request, while posting a task to the IO thread
    to initialize the provider host. The navigation could commit before the
    provider host initialized.
    
    Before this CL
    ==============
    1. The interceptor on the UI thread creates the inner interceptor and
       posts a task to the IO thread to start it. If there are no
       registrations, it also runs the callback with null, indicating it
       will not handle the request, so navigation continues.
    2. The IO thread task creates the provider host and info. It sets the
       host in ServiceWorkerNavigationHandleCore and posts a task to pass
       info to the UI thread.
    3. The UI thread task sets the info in ServiceWorkerNavigationHandle.
    4. On navigation commit on the UI thread, the info from the navigation
       handle is sent to the renderer.
    
    The problem here is 3 and 4 can race, if the callback was run with
    null in step 1.
    
    After this CL
    =============
    1. The interceptor on the UI thread sets the info in
       ServiceWorkerNavigationHandle. As before, it creates the inner
       interceptor, and passes the other endpoints of the info to it, and
       as before, runs the callback with null if appropriate.
    2. As before, the IO thread task creates the provider host, now binding
       it to the endpoints for info passed from the IO thread. It sets the
       host in ServiceWorkerNavigationHandleCore.
    3. On navigation commit on the UI thread, the info from the navigation
       handle is sent to the renderer.
    
    (cherry picked from commit fc175de30adba206c146aaa4c5b26f16fab81527)
    
    Bug: 989863
    Change-Id: I4c359827b28160fdb849621b1fdf547101b915ac
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1734173
    Commit-Queue: Matt Falkenhagen <[email protected]>
    Reviewed-by: Hiroki Nakagawa <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683928}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745109
    Reviewed-by: Matt Falkenhagen <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#291}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  84. [Default Apps] Add News and re-order Web Store in the default app ordering.
    
    Add the Google News PWA to the default installed apps order list.
    
    (cherry picked from commit e7bc3ec8d63a79008051f31b4ef0d31c3de9ac2a)
    
    Bug: 991069, 983719
    Change-Id: I94239cfe2333457a6d69ed503cd4f7055d0b1f4f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1738626
    Commit-Queue: Jeevan Shikaram <[email protected]>
    Auto-Submit: Jeevan Shikaram <[email protected]>
    Reviewed-by: Dominick Ng <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684660}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745670
    Reviewed-by: Jeevan Shikaram <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#290}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  85. Fix Duo's positioning in the Chrome OS app list.
    
    BUG=991075
    
    (cherry picked from commit 813ed91a40a9343e81175ef500133758ef902bec)
    
    Change-Id: I11a08609b85dbfa534e4479657478788819d9000
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737793
    Auto-Submit: Dominick Ng <[email protected]>
    Reviewed-by: Ben Wells <[email protected]>
    Commit-Queue: Dominick Ng <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684250}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1745106
    Reviewed-by: Dominick Ng <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#289}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  86. Flip Release Notes feature flag.
    
    Temporarily disabling CrOS release notes for Browser tests due to Locale specific spacing issue.
    
    http://crbug.com/991767
    
    [email protected]
    
    (cherry picked from commit 17a965bae60ddb21bfc8fb441bb744405a75d43c)
    
    Bug: 968372
    Change-Id: Ia9ce5903b68a8b60085967aeb310196be4c7ae25
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741478
    Commit-Queue: Yulun Wu <[email protected]>
    Reviewed-by: Alexander Alekseev <[email protected]>
    Reviewed-by: Toni Baržić <[email protected]>
    Auto-Submit: Yulun Wu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#685050}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742994
    Cr-Commit-Position: refs/branch-heads/3865@{#288}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  87. Add an intermediate TasksSurface layer.
    
    [email protected], [email protected]
    
    (cherry picked from commit b04779b1737838f165fd10100bdbc973e84faf57)
    
    Bug: 985386
    Change-Id: I3667a7881cc5c9b2046217a647603777593de0ed
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730865
    Commit-Queue: Matt Simmons <[email protected]>
    Reviewed-by: Yusuf Ozuysal <[email protected]>
    Reviewed-by: Wei-Yin Chen (陳威尹) <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684116}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1744508
    Cr-Commit-Position: refs/branch-heads/3865@{#287}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  88. Record local histogram when component hints are updated
    
    (cherry picked from commit 1cd71de0e240a7fe58a05bbb49fcb781a2494a1b)
    
    Bug: 986438
    Change-Id: Ie2c45b4b192c97f106ffa157f7ab1dcce47a8e6b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1719408
    Commit-Queue: Sophie Chang <[email protected]>
    Reviewed-by: Tarun Bansal <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681107}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741303
    Cr-Commit-Position: refs/branch-heads/3865@{#286}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  89. Convert DCHECK to runtime check in Node::NativeApplyScroll
    
    When a scroll gesture sequence is handled on the main thread, the scroll
    chain is first computed on GestureScrollBegin, then used when handling
    GestureScrollUpdate. In between these two events, it's possible for the
    nodes in the scroll chain to be modified. There is handling for cases
    where layout objects are gone, but there is an invariant in
    NativeApplyScroll that if there is a layout object, it must be a box.
    
    However, script can change the node to display:inline which violates
    this invariant and causes a security DCHECK on the downcast from
    LayoutObject to LayoutBox. In practice, I don't believe there is a
    security issue since the LayoutBox is only used to call a non-virtual
    LayoutObject method (EnclosingBox()), but we should fix this in case
    future code starts relying on the invariant.
    
    I changed the DCHECK in NativeApplyScroll to be a runtime check, similar
    to the check for the existence of a LayoutObject. In these cases the
    scroll will just not be applied to the node.
    
    (cherry picked from commit 7a5e2c75ae254e0f1e5eb151dd7b70cad9d9a1f8)
    
    Bug: 988241
    Change-Id: Iadb1a3a47054aa291ecc0f79e17b26e0b9518498
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724811
    Reviewed-by: David Bokan <[email protected]>
    Commit-Queue: Daniel Libby <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681930}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742570
    Reviewed-by: Daniel Libby <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#285}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  90. Always consult the native windows for window levels.
    
    Caching the window level in Aura is OK, but always double-
    check what the window level of the actual native window
    is, in case another app (or an OS bug) causes it to change
    behind our back.
    
    This also fixes a minor bug in the X11 Aura code.
    
    BUG=990314,869486
    
    (cherry picked from commit 8eea7071cd783b56b9de1abb7d232e26b4784a53)
    
    Change-Id: I553ee745faefcbd05e2120cb7a8f8e6378c9f039
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737232
    Reviewed-by: Thomas Anderson <[email protected]>
    Reviewed-by: Scott Violet <[email protected]>
    Commit-Queue: Avi Drissman <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684486}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1744336
    Reviewed-by: Avi Drissman <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#284}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  91. Add requester frame param to mouse-lock calls.
    
    Without a specific frame, we were using the local root of caller's
    widget, which was showing wrong activation state in certain cases.
    
    (cherry picked from commit 32a0b159fdace8433876da922b04bba4063f1533)
    
    Bug: 981597
    Change-Id: I45a5dd88ea4c487ff4bf3a722e72bb6923fb8319
    TBR: [email protected]
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1721186
    Commit-Queue: Navid Zolghadr <[email protected]>
    Reviewed-by: Daniel Cheng <[email protected]>
    Reviewed-by: Alex Moshchuk <[email protected]>
    Reviewed-by: Navid Zolghadr <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684359}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741297
    Cr-Commit-Position: refs/branch-heads/3865@{#283}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  92. Use the DOM tree to find the source of format command
    
    This changes the check to see if the target element is a child of the
    directory tree rather than based off the type.
    
    Also add more tests related to the format item in the gear menu.
    
    (cherry picked from commit cb1ad4625df51e74e66b5b4f727a1b9836ba7d05)
    
    Bug: 987815
    Change-Id: I939af4b24f2ada137ce63757efd2ca23b522fa52
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720357
    Commit-Queue: Austin Tankiang <[email protected]>
    Reviewed-by: Luciano Pacheco <[email protected]>
    Reviewed-by: Noel Gordon <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681697}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743431
    Reviewed-by: Austin Tankiang <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#282}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  93. Revert "Android: Round top corners of BottomSheet"
    
    This reverts commit 267ccee5e65518a59cf2ea49cf1a60436617638e.
    
    Reason for revert: Caused an undesirable visual artifact that got rid of distinct boundary between the bottomsheet on white background as darker part of the top shadow got hidden.
    
    Original change's description:
    > Android: Round top corners of BottomSheet
    > 
    > This CL makes the top corners of BottomSheet round shape (of radius
    > 4dp). The round corners resides inside the top shadow and takes
    > the half the height.
    > 
    > Bug: 985644
    > Change-Id: Ibfc26c06a9ca4c83aa5f7304e27a91f50fba9df7
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1710016
    > Commit-Queue: Jinsuk Kim <[email protected]>
    > Reviewed-by: Matthew Jones <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#680342}
    
    [email protected],[email protected]
    
    # Not skipping CQ checks because original CL landed > 1 day ago.
    
    (cherry picked from commit 74978252db117a8d16643f09aee8fd26972e23bc)
    
    Bug: 985644
    Change-Id: I3d1b017a6f1906f911380ef99801e9d03e789a0f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1721989
    Reviewed-by: Jinsuk Kim <[email protected]>
    Reviewed-by: Matthew Jones <[email protected]>
    Commit-Queue: Jinsuk Kim <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682041}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742262
    Cr-Commit-Position: refs/branch-heads/3865@{#281}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  94. Reland "[Cros SR] Reflect user history deletion actions in the model."
    
    The original CL had a potential thread safety issue, which is fixed
    in this CL. This also adds a sequence checker to RecurrenceRanker to
    ensure this is fixed.
    
    PS1 is the original CL. PS2 is the fix and sequence checker.
    
    Original CL: crrev.com/c/1725032
    
    (cherry picked from commit cc8869d33f8fc66a2380e39fb6c2c75fd9f6b407)
    
    Bug: 931149
    Change-Id: Iaa5d87d38fa6a9bd5a5605b9feb9a5fd9154d3f0
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1732269
    Reviewed-by: Jia Meng <[email protected]>
    Commit-Queue: Tony Yeoman <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683903}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742256
    Reviewed-by: Tony Yeoman <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#280}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  95. Incrementing VERSION to 77.0.3865.21
    
    [email protected]
    
    Change-Id: Iebd03eb4d1868c558ca489445350c792c4b6e5e1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742993
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#279}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  96. [Merge M77][ios] Update Snapshot histogram expiry
    
    Updates the expiry of these histograms, which are still
    useful to keep around.
    IOS.EnterTabSwitcherSnapshotResult
    IOS.PageLoadedSnapshotResult
    
    [email protected]
    (cherry picked from commit 8ef02f7017a30d8a055915721678f9913c78c36f)
    
    Bug: 974919
    Change-Id: I2c5b8f20c02f89c76200a18e53f9c094dda3b81e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737898
    Reviewed-by: edchin <[email protected]>
    Reviewed-by: Nik Bhagat <[email protected]>
    Auto-Submit: edchin <[email protected]>
    Commit-Queue: edchin <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684420}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743060
    Cr-Commit-Position: refs/branch-heads/3865@{#278}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  97. [Merge back to M77] Remove the checking in AppListClientImpl
    
    I added several checking statements in AppListClientImpl to investigate
    the crash when launching the app from AppList. It helps to prove that
    in rare cases, activating an app may destroy its corresponding AppListItem.
    Unfortunately, the exact code path which brings such unexpected behavior
    is still unknown. In this CL, these checking statements are removed.
    
    (cherry picked from commit fafe146e61236dc385b59e55c31227505893eb2a)
    
    Bug: 990282
    Change-Id: I59a81ab9706fa9ce24d88bc01a36b45f1eb6da34
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740334
    Commit-Queue: Andrew Xu <[email protected]>
    Reviewed-by: Xiyuan Xia <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684983}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743036
    Reviewed-by: Mitsuru Oshima <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#277}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  98. Turn of fast-border-radius on Mac for non-uniform corners.
    
    Bug: 979422
    
    (cherry picked from commit fd3b69caa73cb555384735f10884c0f69f6e9734)
    
    Change-Id: I45a0b877eb9c30fd4aa12b4c21f85e08cf58c5ea
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724868
    Reviewed-by: vmpstr <[email protected]>
    Commit-Queue: Chris Harrelson <[email protected]>
    Auto-Submit: Chris Harrelson <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682482}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743248
    Reviewed-by: Chris Harrelson <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#276}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  99. Revert "Download newest orderfile from GS bucket for ChromeOS."
    
    This reverts commit 6cfc16304f8f22ddfcc23a74a41951f4c52ba90b.
    
    Reason for revert: Intend to cherry-pick to M77 branch. Will abandon the revert on master after that.
    
    M77 branch is cut after the original CL went in. We fear that it might cause other toolings fail,
    like the one mentioned in crbug/990747. The original CL doesn't have any functional impact for
    Chrome until we actually flip the bits on (which we haven't done on master yet). So it should be
    safe to revert the CL only for the branch.
    
    Bug: chromium:990747
    
    Original change's description:
    > Download newest orderfile from GS bucket for ChromeOS.
    >
    > This patch gives us the ability to download the most recent
    > orderfile (with name specified in a file) so that ChromeOS can
    > use it for linking Chrome in the future.
    >
    > This patch generalizes the script used for downloading
    > newest AFDO profiles for Android/Linux to be able to download
    > any artifacts generated on Chrome OS. The script now takes
    > arguments that can describe any profiles/orderfiles.
    > Also move the script to a non Android-specific location.
    >
    > Bug: chromium:950627
    > Test: The script is working locally for both android and chromeos
    >
    > Change-Id: I9eedbd6f39664013c5f61c7e64cbe0652bb13b7c
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1704936
    > Commit-Queue: Tiancong Wang <[email protected]>
    > Reviewed-by: Steven Bennetts <[email protected]>
    > Reviewed-by: Andrew Grieve <[email protected]>
    > Reviewed-by: Nico Weber <[email protected]>
    > Reviewed-by: George Burgess <[email protected]>
    > Reviewed-by: Dirk Pranke <[email protected]>
    > Auto-Submit: Tiancong Wang <[email protected]>
    > Cr-Commit-Position: refs/heads/master@{#681012}
    
    [email protected],[email protected],[email protected],[email protected],[email protected],[email protected]
    
    # Not skipping CQ checks because original CL landed > 1 day ago.
    
    Change-Id: Iecee91f88ae0d0785f317bf49eb84cca32fcbc9b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1738345
    Reviewed-by: George Burgess <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#275}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  100. [iOS] Stop computing illegal TabGridPage values.
    
    The GetPageFromScrollView() utility function in TabGridViewController
    computes a TabGridPage value (an enum in the range 0..2) by dividing the
    scroll view offset by its page width and then lround()ing. This can, it
    turns out, produce values outside of the 0..2 range, which is not caught
    at runtime.
    
    This causes problems because the currentPageViewController property getter
    uses a switch() based on a TabGridPage value. Because the switch is over
    an enum, there's no default case. But because this enum is just a typedef
    for an int, there's no guarantees that all enum values are valid. When a
    TabGridPage value of, say, 3 (or MAXINT, or whatever) is set for
    _currentPage, none of the switch cases in currentPageViewController are
    hit, so it doesn't set a return value. This means that at runtime the
    return value is random memory, which means crashes of various kinds.
    
    This CL is the quick fix: it clamps the value of the page computation to
    the defined range of the TabGridPage typedef. This is suitable for merging
    into release.
    
    The better fix, which is to change TabGridPage to an enum class and stop
    inferring discrete values using just arithmetic, will be in a follow-up
    CL, which will probably touch too much code for convenient merging, but
    which can land on trunk for future releases.
    
    (cherry picked from commit 224861a637fbeb66e881db791b5d90011952e76f)
    
    Bug: 979683
    Change-Id: If817d6c6ca0e657d5a49efbc2169601e44b29bdb
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1728882
    Reviewed-by: edchin <[email protected]>
    Commit-Queue: Mark Cogan <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682753}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742851
    Reviewed-by: Kariah Davis <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#274}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  101. [iOS] Change web view snapshot callback to be repeating.
    
    WKWebView's -takeSnapshotWithConfiguration:completionHandler: may call
    its completion handler more than once under some circumstances. Since
    we typically embed a callback bound with BindOnce into this callback,
    repeated calls will CHECK() and crash.
    
    This CL changes the snapshot callback to be a repeating callback. The
    callback will remain owned by the block passed into WKWebView, and will
    be destroyed only when WKWebView discards the block.
    
    (cherry picked from commit 556cbba09f3479cb358435733c87fb285af64d99)
    
    Bug: 981893
    Change-Id: I9ae72fd8ca42ca4ac704b23df942931a3afd1310
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1728553
    Commit-Queue: Mark Cogan <[email protected]>
    Reviewed-by: edchin <[email protected]>
    Reviewed-by: Gauthier Ambard <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683974}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743127
    Reviewed-by: Kariah Davis <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#273}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  102. [iOS] Fix crash when using keyboard to switch tabs.
    
    Ctrl-tab to switch tabs was crashing when the last tab was the active tab.
    
    This was because the -focusNextTab keyboard command handler method in the
    BVC had an off-by-one error in deciding if the active tab was the last one.
    
    This CL fixes that bug, adds some clarifying comments, and some more defensive
    edge case handling in cases where there is no active tab.
    
    A unit test for focusing the next/previous tab is added.
    
    Finally, large swathes of code in the BVC unit tests were obsolete or dead,
    as were the majority of the includes. This CL cleans those up.
    
    (cherry picked from commit 03863c72cb43006fd6e1e7851bac2aa3c757cdda)
    
    Bug: 988077
    Change-Id: Id6c20b73fde2f390b801e5c81ad1ddd90614a750
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1721789
    Commit-Queue: Kurt Horimoto <[email protected]>
    Reviewed-by: Kurt Horimoto <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681947}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1743126
    Reviewed-by: Kariah Davis <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#272}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  103. [M77 Merge] Fix savesession to work when there are no active webState
    
    Sessions should be saved when there are no webStates at all, right now
    Chrome doesn't save the session if there is no active webState which
    include cases where there are no webStates at all.
    
    [email protected]
    (cherry picked from commit 330c6e9e015f89578684cad19a51cb0ca095c36f)
    
    Bug: 989482
    Change-Id: I96538dbf21be6d20730dd8800988379f0882c8d1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730166
    Auto-Submit: Mohammad Refaat <[email protected]>
    Reviewed-by: edchin <[email protected]>
    Reviewed-by: Mark Cogan <[email protected]>
    Commit-Queue: edchin <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683739}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742729
    Cr-Commit-Position: refs/branch-heads/3865@{#271}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  104. [TO 77] Fix encoder/decoder typo in android media_codec_util.cc
    
    Make MediaCodecUtil::IsHEVCDecoderAvailable call IsDecoderSupportedByDevice
    instead of IsEncoderSupportedByDevice. It looks like a typo, and isn't
    harmless: it can cause content shell to stall at startup if built with
    enable_hevc_demuxing=true when the renderer tries to query the encoder.
    
    Apparently it's a case of doing something in the renderer that's not
    allowed, as explained in
    https://chromium-review.googlesource.com/c/chromium/src/+/1694241
    (which happened to add this encoder/decoder typo).
    
    BUG=980091, 980682
    TEST=build with enable_hevc_demuxing=true, run content shell apk
    R=​chcunningham
    
    Change-Id: Iaadc73e6dd4301b6e300891cbb0baf7afe8f5e63
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730163
    Reviewed-by: Chrome Cunningham <[email protected]>
    Commit-Queue: Chrome Cunningham <[email protected]>
    Cr-Commit-Position: refs/heads/master@{#684091}
    (cherry picked from commit 2fb1112f69167a2b6678f7fdc9f3f3fe88587529)
    
    
    TBR: [email protected]
    TBR: [email protected]
    Change-Id: Iaadc73e6dd4301b6e300891cbb0baf7afe8f5e63
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742518
    Reviewed-by: Chrome Cunningham <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#270}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  105. Merge 3865: [LayoutNG] Fix PDI/PDF not to affect line breaking
    
    This patch fixes PDI/PDF before spaces not to suppress the
    line breaking opportunity at the space. For example, before
    this fix, `<bdo dir=ltr>a</bdo> b` could not break between
    "a" and "b".
    
    PDI and PDF are injected by the `unicode-bidi` property, or
    elements that imply the `unicode-bidi` property such as
    `<bdi>`, `<bdo>`, or any elements with `dir` attributes.
    
    (cherry picked from commit d254c22c89f7ecf850b92dd1b85e9836612d031b)
    
    Bug: 989094
    Change-Id: I2128774e2b062ecb86880812c54d46299a19a18a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1735146
    Commit-Queue: Emil A Eklund <[email protected]>
    Reviewed-by: Emil A Eklund <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683881}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741441
    Reviewed-by: Koji Ishii <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#269}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  106. Fix bookmark drag delegate initialization problem
    
    We should be calling initialize drag for bookmark
    drag and drop delegate at first to make it valid
    so the rest of the bookmark drag and drop logic
    works fine.
    
    (cherry picked from commit ceab1bfb559b9f60bcee5ee8a27b9fc2a30dc709)
    
    Bug: 986208
    Change-Id: I501300849aae6a0ac5fc2f50c9dea288563e1bba
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715256
    Commit-Queue: Navid Zolghadr <[email protected]>
    Reviewed-by: Scott Violet <[email protected]>
    Reviewed-by: Sadrul Chowdhury <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683836}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742406
    Reviewed-by: Navid Zolghadr <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#268}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  107. SimpleCache: delay setting pointer on async entry return till backend liveness check
    
    This avoids setting it when the new entry ownership is not actually transferred
    to the caller, hence avoiding double-Closes with perfectly reasonable code like
    LegacyCacheStorageCache::QueryCacheContext destructor.
    
    (I am probably going to refactor this issue away next week, but that's not
     for M77).
    
    (cherry picked from commit 20f5c582631201288188f77281615bec2b50016f)
    
    Bug: 987782, 976206, 982033
    Change-Id: I056d238bf8e1a5083f48034318b131fc6acb79e1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1721109
    Commit-Queue: Maks Orlovich <[email protected]>
    Reviewed-by: Josh Karlin <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682734}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741612
    Reviewed-by: Maks Orlovich <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#267}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  108. [Tablet] Move conditional showing of the status icon to LocationBarPhone
    
    (cherry picked from commit 2d3b894649f129f21f57222485a2be080a66fbc3)
    
    Bug: 987905
    Change-Id: Id5e8e366cabba5cea56725ff459de0f49c19c4ac
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1728267
    Reviewed-by: Theresa  <[email protected]>
    Commit-Queue: Brandon Wylie <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683781}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742433
    Reviewed-by: Brandon Wylie <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#266}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  109. Add back early return in BookmarkBridge::DeleteBookmark
    
    crrev.com/c/1637861 replaced an early return in
    BookmarkBridge::DeleteBookmark with a DCHECK to better follow the style
    guide guidance not to handle DCHECK failures.
    
    This exposed some crashes, so we must be improperly calling
    BookmarkBridge::DeleteBookmark. Partially reverting the change for now
    while we investigate the failure.
    
    BUG=981172
    
    (cherry picked from commit 609102521431d4bf3a6988edcd28fa8d5c4ad9c0)
    
    Change-Id: I0a93a4836aa909622c307896e23235f5515dea79
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730133
    Reviewed-by: Matthew Jones <[email protected]>
    Commit-Queue: Theresa  <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683335}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742546
    Reviewed-by: Theresa  <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#265}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  110. [Touchless] SpatNav sends mouse down and up events
    
    This helps specifically with <select> drop downs as they listen
    for the mouse events rather than click. Likely to help in a few
    other cases as well.
    
    (cherry picked from commit 14495c6747d2a4daf97fb3de82a0ef0871b59a29)
    
    Bug: 988925
    Change-Id: Ia3ae3c447caff6bc0d47303cda4dcd74ee5d1555
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1726668
    Reviewed-by: Michael Thiessen <[email protected]>
    Commit-Queue: David Bokan <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682780}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742428
    Reviewed-by: David Bokan <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#264}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  111. Revert "flags: expire M77 flag set"
    
    This reverts commit b5287cc86def0e4b808bb343b458a12173eb7b92.
    
    Reason for revert:
    Discussion with other teams revealed some problems with this process,
    so we're going to kick this a milestone further down the road. A
    postmortem will be written shortly. We will retry the process in M78
    with much more upfront communication.
    
    Original change's description:
    > flags: expire M77 flag set
    >
    > This change implements step 2 of the process outlined in
    > //docs/flag_expiry.md.  This change will be merged to the M77 branch
    > after it lands so that these flags are actually expired in M77 :)
    >
    > This change: 1) Adds a new bit to the supported_platforms mask in
    > flag entries, named
    >    'kExpireM77', which is set if a flag expired in M77;
    > 2) Adds a new feature "TemporaryUnexpireFlagsM77" and a matching flag
    >    "temporary-unexpire-flags-m77";
    > 3) Adds code to the flags UI to hide flags with kExpireM77 in their
    >    supported_platforms mask unless TemporaryUnexpireFlagsM77 is
    >    enabled.
    > 4) Removes already-gone flags from //c/b/flag-metadata.json
    > 5) Removes already-gone flags from //docs/flag_expiry.md
    >
    > Future iterations of this process will use two more bits in the
    > supported_platforms mask, since the flag expiry process maintains a
    > window of two milestones between flag expiration and final removal,
    > so (e.g.) at M78 kExpireM77 and kExpireM78 will be live, and at M79
    > kExpireM77 will be removed and kExpireM79 added, such that kExpireM78
    > and kExpireM79 will be live.
    >
    > After this change, all the flags annotated with kExpireM77 show
    > as "unsupported platform" in the flags UI and are greyed out. A
    > follow-up change will add a specific annotation to these flags in
    > that UI marking them as expired.
    >
    > (cherry picked from commit d488661c95cd538b90a279c7c998363eb4eb84a8)
    >
    > Bug: 953690
    > Change-Id: I2d7361b6f3f070ecf469bf4eccb9b42b5a19d704
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1729449
    > Commit-Queue: Elly Fong-Jones <[email protected]>
    > Reviewed-by: Nico Weber <[email protected]>
    > Cr-Original-Commit-Position: refs/heads/master@{#682945}
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1732735
    > Reviewed-by: Elly Fong-Jones <[email protected]>
    > Cr-Commit-Position: refs/branch-heads/3865@{#137}
    > Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
    [email protected],[email protected]
    
    Bug: 953690
    Change-Id: I01baa8aff3a52b9df2c716db5a0cfe58e7d7dcfa
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742466
    Reviewed-by: Elly Fong-Jones <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#263}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  112. [Merge M77] [scheduler] Add frame interference histogram.
    
    This CL adds a
    RendererScheduler.TimeRunningOtherFramesWhileTaskReady.[frame visibility].[queue type]
    histogram that records the time spent running tasks from other frames
    while a frame task was ready to run. A non-delayed task is ready to run
    when it is posted. A delayed task is ready to run when its delay
    expires.
    
    [email protected]
    
    (cherry picked from commit f8842c88cf34e91ac3bfcb507a4c0129bd4b7b91)
    
    Bug: 984057
    Change-Id: I07a0f02dac1f621613cbde979bdd960ac93826fc
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1689339
    Commit-Queue: Gabriel Charette <[email protected]>
    Reviewed-by: Jesse Doherty <[email protected]>
    Reviewed-by: Alexander Timin <[email protected]>
    Reviewed-by: Gabriel Charette <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681928}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742427
    Cr-Commit-Position: refs/branch-heads/3865@{#262}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  113. [Merge M77] [SequenceManager] Fix NullTaskRunner::RunsTasksInCurrentSequence()
    
    Blocks https://chromium-review.googlesource.com/c/chromium/src/+/1689339/21
    
    TBR=​[email protected]
    
    (cherry picked from commit 2b2874a3ecf0fd8f3fce31de97f55735be7d6d20)
    
    Bug: 984057
    Change-Id: I48f93eced8391c2b8f85bd4b27ccd3891f6b429d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724689
    Auto-Submit: Gabriel Charette <[email protected]>
    Reviewed-by: Alexander Timin <[email protected]>
    Commit-Queue: Gabriel Charette <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#681890}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742408
    Reviewed-by: Gabriel Charette <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#261}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  114. [Background Sync] Allow when enabled from runtime.
    
    Allow 'periodic-background-sync' when the runtime feature is enabled.
    
    We currently deny 'periodic-background-sync' permission if the base::Feature
    kPeriodicBackgroundSync is disabled.
    
    Since the permission can't be parsed at all if the runtime feature is disabled,
    this check is unnecessary. Furthermore, this check prevents users with origin
    trials enabled from using the feature.
    
    (cherry picked from commit b9170a3e02e715cef605175c7f2c8042d8bf6d6f)
    
    Bug: 991145
    Change-Id: Icf88c854ecb39d22d1878556a4c5a5b17350e321
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1738370
    Commit-Queue: Mugdha Lakhani <[email protected]>
    Reviewed-by: Rayan Kanso <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684292}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1742166
    Reviewed-by: Mugdha Lakhani <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#260}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  115. [iOS] Switching hosted domain from ChromeIdentity to ChromeIdentityService
    
    When sign-in with a new gmail account, the Chrome identity was
    initialized with no hosted domain since the SSO profile was not fetched
    yet.
    The property was never updated later. Even when the AuthenticationFlow
    was fetching hosted domain using the AuthenticationFlowPerformer.
    During the sign-in process
    
    To fix the issue, -ChromeIdentity.hostedDomain is remove. ChromeIdentity
    stays just a proxy for SSOIdentity.
    ChromeIdentityService::GetCachedHostedDomainForIdentity() is added to
    get the hosted domain.
    
    Bug introduced with:
      + crrev.com/c/1687254
      + crrev.com/i/1434627
      + crrev.com/c/1687254
    
    Related to:
      + crrev.com/c/1732084 (adding new API)
      + crrev.com/i/1560989 (adding new implementation)
      => crrev.com/c/1732085 (switching implementation) <=
      + crrev.com/i/1560990 (old implementation cleanup)
      + crrev.com/c/1732101 (cleanup API)
    
    (cherry picked from commit 59e63f2338a0907e8d2bddeb5a23e6a6e8902077)
    
    Bug: 987380
    Change-Id: I658d3e0b109c68583db58b12a034de072adfc45f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1732085
    Commit-Queue: Jérôme Lebel <[email protected]>
    Reviewed-by: Sylvain Defresne <[email protected]>
    Reviewed-by: Mihai Sardarescu <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684155}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741682
    Reviewed-by: Jérôme Lebel <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#259}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  116. [iOS] Adding ChromeIdentityService::GetCachedHostedDomainForIdentity()
    
    When sign-in with a new gmail account, the Chrome identity was
    initialized with no hosted domain since the SSO profile was not fetched
    yet.
    The property was never updated later. Even when the AuthenticationFlow
    was fetching hosted domain using the AuthenticationFlowPerformer.
    During the sign-in process
    
    To fix the issue, -ChromeIdentity.hostedDomain is remove. ChromeIdentity
    stays just a proxy for SSOIdentity.
    ChromeIdentityService::GetCachedHostedDomainForIdentity() is added to
    get the hosted domain.
    
    Bug introduced with:
      + crrev.com/c/1687254
      + crrev.com/i/1434627
      + crrev.com/c/1687254
    
    Related to:
      => crrev.com/c/1732084 (adding new API) <=
      + crrev.com/i/1560989 (adding new implementation)
      + crrev.com/c/1732085 (switching implementation)
      + crrev.com/i/1560990 (old implementation cleanup)
      + crrev.com/c/1732101 (cleanup API)
    
    (cherry picked from commit 23d73b9fe2a8fdd5e27f7830b1f8461999b9086d)
    
    Bug: 987380
    Change-Id: I2dab7a36927530ca400bdf6e99d645ff325159c9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1732084
    Reviewed-by: Mihai Sardarescu <[email protected]>
    Commit-Queue: Jérôme Lebel <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683588}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741675
    Reviewed-by: Jérôme Lebel <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#258}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  117. [Autofill Assistant] Fixed small bugs in payment request.
    
    This fixes a bug with the chevron alignment and also a bug where the last (rather than the first) complete item was preselected in some cases.
    
    Screenshot after change (chevron in payment method is now vertically centered): https://screenshot.googleplex.com/buOn4neaRxZ.png
    
    (cherry picked from commit 6b430bef37bcdc76dce002b853e293c47fefefab)
    
    Bug: 990798
    Bug: b/138643986
    Bug: b/138643669
    Change-Id: Idf61e667a5290a2314d3d95d62f45cab9e0e0bc3
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1729227
    Auto-Submit: Clemens Arbesser <[email protected]>
    Reviewed-by: Jordan Demeulenaere <[email protected]>
    Commit-Queue: Jordan Demeulenaere <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#682738}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741673
    Cr-Commit-Position: refs/branch-heads/3865@{#257}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  118. cros webui: Fix status tray visibility
    
    Was broken on multiprofile-signin screen in CL:1710000
    
    (cherry picked from commit 5973f80e95932d1615b0656a6f42801f13912bc5)
    
    Bug: 987588
    Change-Id: Icb0330b4e427e56215796a7aea21c7fcb5724e1d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730451
    Reviewed-by: Xiyuan Xia <[email protected]>
    Commit-Queue: Roman Sorokin [CET] <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683179}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1741666
    Reviewed-by: Roman Sorokin [CET] <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#256}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  119. Destroy layers of items which are not in the current page
    
    Currently UpdateOpacity() assumes the correspondance for the item
    and the page doesn't change during the drag. When it happens, some
    items remain painting to layer with lower opacity after the dragging
    of app-list is done. This leads to invisibility of some app list
    which isn't in the current page. I think this is the reason for
    the reported issue.
    
    (cherry picked from commit af8e45cf1b70637e9009da3b0c24cee36c50c1c3)
    
    Bug: 990529
    Test: the new test case in ash_unittests
    Change-Id: I046cdfa62f4305f70a38859a2b71534d016c60ce
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1736177
    Commit-Queue: Jun Mukai <[email protected]>
    Reviewed-by: Alex Newcomer <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684150}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740946
    Reviewed-by: Jun Mukai <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#255}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  120. desktop-pwas: Ignore differences in params and ref when deciding whether URL loaded.
    
    ie. return Result::kUrlLoaded (successful load) when loaded URL matches
    expected URL up to and including the path. Ignore changes after the "?".
    
    (cherry picked from commit b0cffb6ca1f25718617019d18e32068c610c871e)
    
    Bug: 989376
    Change-Id: Ib4f719b879b9074ead66b135b7701863b15b80a8
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1730449
    Commit-Queue: Glen Robertson <[email protected]>
    Reviewed-by: Giovanni Ortuño Urquidi <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#683103}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739787
    Cr-Commit-Position: refs/branch-heads/3865@{#254}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  121. Incrementing VERSION to 77.0.3865.20
    
    [email protected]
    
    Change-Id: I3d30a36a457fd5536a50d36a0eecf37929f66ba4
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740832
    Reviewed-by: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/3865@{#253}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}
    
  122. [Merge M77] [NTP] Fix 'Done' button tabindex for richer picker
    
    (cherry picked from commit 633b6fa29a73568e6f4501c3ec392f45f11f6e42)
    
    Bug: 990789
    Change-Id: I6d489a1f01397cdc611911dc9c5000a244648c05
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737036
    Commit-Queue: Kristi Park <[email protected]>
    Commit-Queue: Gayane Petrosyan <[email protected]>
    Auto-Submit: Kristi Park <[email protected]>
    Reviewed-by: Gayane Petrosyan <[email protected]>
    Cr-Original-Commit-Position: refs/heads/master@{#684093}
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1740728
    Reviewed-by: Kristi Park <[email protected]>
    Cr-Commit-Position: refs/branch-heads/3865@{#252}
    Cr-Branched-From: 0cdcc6158160790658d1f033d3db873603250124-refs/heads/master@{#681094}