Now it is NullableObservableSupplier, missed old change
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/416a61c418c152a7a7ae568d89302e5ecb6e4a3d
commit 416a61c418c152a7a7ae568d89302e5ecb6e4a3d
Author: Andrew Grieve <agrieve@chromium.org>
Date: Tue Dec 2 14:13:59 2025 -0800
Android: Split ObservableSupplier into Nullable / Monotonic / NonNull variants
The goal is to use proper @Nullable annotations with
ObservableSuppliers.
To achieve this, we use interfaces that define nullness:
* (Settable)NullableObservableSupplier
* (Settable)ObservableSupplier <-- monotonic
* (Settable)NonNullObservableSupplier
And we have ObservableSupplierImpl implement all of them.
In order to make this migration manageable, I've marked the interfaces
as @NullUnmarked, and will fix annotations in batches until they
can be marked @NullMarked.
This CL includes a batch in order to test out the new interfaces (and
because many were necessary to make the change).
Monotonic suppliers are by far the most common afaict, so that's why
the non-prefixed ObservableSupplier is the monotonic one (that, and
because "Monotonic" is a mouthful).
One implication of this approach is that we'll never have:
ObservableSupplier<@Nullable Foo>
We'd have instead:
NullableObservableSupplier<Foo>
Having the nullness in the interface rather than in the generic
allows for defining toNonNull() only on monotonic suppliers, and
simplifies the implementation.
Bug: 455874046
Change-Id: Id48e235b9ff16a5b21a9c1199863150d17c22736
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7206746
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1553094}
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/f85df3955cb3bcc7d90cf0af71458e5cad9d45cc
1. NewTabPage.initializeMainView renamed to
initializeFeedSurfaceProvider
2. Some code from NewTabPage.initializeMainView
was moved to c-tor
commit f85df3955cb3bcc7d90cf0af71458e5cad9d45cc
Author: Xi Han <hanxi@google.com>
Date: Mon Mar 30 09:06:59 2026 -0700
[NtpRefactor] Polish NewTabPageCoordinator.
1. Move several parameters passed in NewTabPageCoordinator#initialize()
to the constructor. This allows to set multiple member variables as
final variables.
2. Add missing @Nullable to member variables and add null check in
code for them. This includes: mSearchBoxCoorinator, mUiConfig etc.
3. Re-arange the sequencings in #destroy(): the last created object is
destroyed first.
Bug: 487641528
Change-Id: I935e3aee111a6fd816a228f004f7b1d9663d03d6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7709015
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
Commit-Queue: Xi Han <hanxi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1607137}
SuggestionCommonProperties is used instead
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/fdf1ac3a145796f9cb1e3c8a72a639506d18a6e0
commit fdf1ac3a145796f9cb1e3c8a72a639506d18a6e0
Author: Charles Cai <charlesyc@google.com>
Date: Mon Mar 30 17:42:35 2026 -0700
Refactor Omnibox suggestion properties into a single common class
This CL merges `DropdownCommonProperties` into
`SuggestionCommonProperties`. This unifies the property definitions for
Omnibox suggestions into a single location to simplify property model
management. This is a pure data-layer refactoring that prepares the
architecture for migrating UI elements like headers and group separators
to ItemDecorations.
Bug: 491220357
Change-Id: Ie531dc38e9e53b5829060ae1a7f49c014061f409
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7708772
Commit-Queue: Charles Cai <charlesyc@google.com>
Reviewed-by: Tomasz Wiszkowski <ender@google.com>
Reviewed-by: Sky Malice <skym@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1607509}
- isOpenInOtherWindowSupported removed;
- isLinkNavigationToNewWindowSupported added;
- isLinkNavigationToIncognitoWindowSupported added.
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/8ebbccb8137c4b44999c92edfb971e821d9365ba
commit 8ebbccb8137c4b44999c92edfb971e821d9365ba
Author: Aishwarya Rajesh <aishwaryarj@google.com>
Date: Mon Mar 30 11:44:27 2026 -0700
Update conditions for "Move to other window" / "Move to new window"
visibility on context menus for link navigation
The CL creates / updates utility methods in MultiWindowUtils to
determine when these options are shown on a link context menu per latest
recommendations:
- Open in new window
- Open in Incognito window
- Open in other window
The updates in this CL ensure that either "Open in new window" or "Open
in other window" (not both) are visible on the menu. Both options will
invoke the same codepath currently, this will be updated in fast-follow
CLs.
Bug: 475571336
Change-Id: I33a597703e634a7d5cd2d6b66c4c2ca9254374ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7680970
Reviewed-by: Jinsuk Kim <jinsukkim@chromium.org>
Reviewed-by: Sirisha Kavuluru <skavuluru@google.com>
Commit-Queue: Aishwarya Rajesh <aishwaryarj@google.com>
Reviewed-by: Shu Yang <shuyng@google.com>
Cr-Commit-Position: refs/heads/main@{#1607263}
The underlying HTML template changed, so this is just adapting to the new
location of `enginesSubpageTrigger`.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/e2f64330135a11f61fb46f3e7972fc9a8d83f4fe
commit e2f64330135a11f61fb46f3e7972fc9a8d83f4fe
Author: Amelie Schneider <amelies@google.com>
Date: Thu Mar 26 08:44:17 2026 -0700
[Search] Hide chrome://settings/searchEngines with flag enabled
With the flag `SearchSettingsUpdate`, the engines choices are moved
to chrome://settings/search. Therefore, the search engines page
should be deprecated.
Bug: 490316576
Change-Id: Ibe3ade1a5a25cbb2c24da37117988b290d740896
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7679398
Commit-Queue: Amelie Schneider <amelies@google.com>
Reviewed-by: David Roger <droger@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1605544}
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/a1c3e6338a3e6742b0195c672f61ac8019ab66e4
commit a1c3e6338a3e6742b0195c672f61ac8019ab66e4
Author: Jan Wilken Dörrie <jdoerrie@chromium.org>
Date: Tue Mar 31 09:48:53 2026 -0700
[mojo] Remove support for legacy EnumTraits signatures
This change removes the remaining support for the legacy Mojo EnumTraits
FromMojom signature. Previously, these traits used a non-idiomatic
C-style pattern with a boolean return value and an out-parameter for the
converted value.
To modernize the Mojo C++ bindings, all EnumTraits specializations have
been migrated to return the converted type directly for infallible
conversions, or wrapped in a std::optional for fallible ones. This
update finalizes the transition by:
- Enforcing the new return-by-value or return-by-optional signature in
the Mojo C++ template generator.
- Removing the legacy template branches that supported out-parameters.
- Deleting obsolete overloads of internal helpers ConvertEnumValue and
DeserializeEnum.
- Migrating the final set of trait specializations across the codebase,
including those in cc/, skia/, and ui/.
Fixed: 483092898
Change-Id: I7a5edc0a22157d7670e8c8f73e7db8c56a6a6964
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7712053
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Owners-Override: Daniel Cheng <dcheng@chromium.org>
Auto-Submit: Jan Wilken Dörrie <jdoerrie@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1607926}
It has now become an issue for Brave that
`PERFETTO_DEFINE_TEST_CATEGORY_PREFIXES` has grown larger enough to cause the
whole macro machinery around it to fall apart due to `constexpr` depth
evaluation limits. This change bumps constexpr-depth to 1024.
A bug has been logged with Chromium to have this tracked in upstream:
crbug.com/498698527
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/7a9d0ab407d1968885a9185589bbd369401476f8
commit 7a9d0ab407d1968885a9185589bbd369401476f8
Author: Aldo Culquicondor <acondor@chromium.org>
Date: Tue Mar 31 17:54:45 2026 -0700
Glic: Add metrics and traces for webui initialization
Track the time time from the web contents creation until the navigation
commits and from then until the page load completes.
Also added a dedicated glic category.
Bug: 495451913
Change-Id: I3124c26c9c630d19f381826edec192887fea43bb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7711298
Reviewed-by: Etienne Pierre-Doray <etiennep@chromium.org>
Auto-Submit: Aldo Culquicondor <acondor@chromium.org>
Commit-Queue: Aldo Culquicondor <acondor@chromium.org>
Reviewed-by: Dan Harrington <harringtond@chromium.org>
Reviewed-by: Roger McFarlane <rogerm@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1608223}
This function's implementation has been moved from the header and into
the translation unit. This change moves the override to match that too.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/8ba91b3cd483e2a39ddc37d754e30877855bfeaf
commit 8ba91b3cd483e2a39ddc37d754e30877855bfeaf
Author: Mikel Astiz <mastiz@chromium.org>
Date: Tue Mar 31 12:54:12 2026 -0700
[sync] Centralize more datatype traits in a table
Refactoring without noticeable behavioral changes: the general idea is
that datatype-specific traits (most notably including product decisions)
should be centralized in a configuration-like table, instead of having
this information distributed throughout the codebase.
This is achieved by introducing a struct, including members that
leverage newly-introduced enums to make the information as readable as
possible.
Bug: None
Change-Id: I04a9352e7ab6ddf62ad150fef7cad2a7bd96d156
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7707933
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Commit-Queue: Mikel Astiz <mastiz@chromium.org>
Reviewed-by: Maksim Moskvitin <mmoskvitin@google.com>
Cr-Commit-Position: refs/heads/main@{#1608038}
Due to recent header additions to this class, a build error started
occurring due to an unwanted substitution.
```
../../content/public/browser/web_contents_observer.h:922:16: error: duplicate 'virtual' declaration specifier [-Werror,-Wduplicate-decl-specifier]
922 | virtual void OnWebContentsFocused(RenderWidgetHost* render_widget_host) {}
| ^
../../brave/chromium_src/chrome/browser/ui/views/frame/multi_contents_view.h:15:30: note: expanded from macro 'OnWebContentsFocused'
15 | #define OnWebContentsFocused virtual OnWebContentsFocused
| ^
1 error generated.
```
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/9b1a481b8d0dab06a5c20bde25faa00cc6417c8c
commit 9b1a481b8d0dab06a5c20bde25faa00cc6417c8c
Author: Eshwar Stalin <estalin@chromium.org>
Date: Wed Apr 1 15:50:32 2026 -0700
[SxS] Minor cleanup of SplitTabHighlightController
Having the delegate interface directly implemented by the view and
passing the delegate directly into the controller class. This is more
modular and more aligned to the design principles.
Change-Id: I83797b7d82939ac69456852c3ca0e862132257b9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7720599
Reviewed-by: Steven Luong <stluong@chromium.org>
Commit-Queue: Eshwar Stalin <estalin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1608832}
This affects how targets are added now, and a shadow file had to be
corrected.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/bd7255bd8bf88581d34c38be1b16b05f7d5703b6
commit bd7255bd8bf88581d34c38be1b16b05f7d5703b6
Author: Vasilii Sukhanov <vasilii@chromium.org>
Date: Tue Mar 31 05:13:51 2026 -0700
Refactor: Move PasswordManagerSettingsServiceFactory to factories/
Moves password_manager_settings_service_factory.{h,cc} from
//chrome/browser/password_manager/ to
//chrome/browser/password_manager/factories/.
Eliminates the `password_factory_headers` source_set in
factories/BUILD.gn and wires everything cleanly to the unified
//chrome/browser/password_manager/factories target. All internal include
directives and BUILD.gn usages across webauthn, webid, autofill,
ui/passwords, and actor_login were adjusted properly.
Bug: 353332589
Change-Id: I318230d1df39b0b849a026977f00f2d3d0047831
Bypass-Check-License: moving the files
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7710837
Reviewed-by: Friedrich Hauser <friedrichh@chromium.org>
Commit-Queue: Vasilii Sukhanov <vasilii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1607791}
This change moves the patching to its new location. It also introduces a
new patching for the webidl representation that has been introduced
upstream, to match the idl version.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/d6fb2ac71ba993553eecb43bb5d1161ff1364fcf
commit d6fb2ac71ba993553eecb43bb5d1161ff1364fcf
Author: Tim Judkins <tjudkins@chromium.org>
Date: Tue Mar 31 18:19:48 2026 -0700
[Extensions] Convert developerPrivate to WebIDL
This conversion was largely done using a detailed description of the
conversion process passed to Gemini CLI. To double check this work, the
file has also been copied into the converted schemas test to verify no
functional difference in output.
Also updated a few comments to use the new filename.
Fixed: 493990846
Change-Id: I50da75a21869d45a988678dd589df7f4a6c3f778
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7694979
Commit-Queue: Tim <tjudkins@chromium.org>
Reviewed-by: Emilia Paz <emiliapaz@chromium.org>
Reviewed-by: Kelvin Jiang <kelvinjiang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1608234}
Updated Commander unit test metadata to support the new command.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/bd8ce1fbdc3492bbdce7a9c4d8a4b022fb177a7d
commit bd8ce1fbdc3492bbdce7a9c4d8a4b022fb177a7d
Author: Martín Gómez <martinglopez@google.com>
Date: Mon Mar 30 12:58:02 2026 -0700
[Reading Mode] Add keyboard shortcut to open and close Reading Mode
@robliao and @groby approved the the keyboard shortcut combination.
The shortcut for each platform is the following:
- Option-Command-R for Mac OS
- Alt + Shift + R for ChromeOS, Linux and Windows
The CL also includes the following adjustments for Reading Mode to
support the new keyboard shortcut:
- Add kKeyboardShortcut to the ReadAnythingOpenTrigger enum.
- Make `ReadAnythingEntryPointController::ToggleUI` public so the
BrowserCommandController can use the method to open/close reading mode.
NO_IFTTT=Command is not gated on fenced frame network
Bug: 40909577
Change-Id: I3aea6f491b92cc882d81f9edf167ba33d7ae664e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7684297
Reviewed-by: Lauren Winston <lwinston@google.com>
Reviewed-by: Darryl James <dljames@chromium.org>
Commit-Queue: Martín Gómez <martinglopez@google.com>
Cr-Commit-Position: refs/heads/main@{#1607320}
The signature for this function has changed, but this is for arguments
that just get passed along.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/e8ce621318d56bf293ef01a6d045e097d2cc6440
commit e8ce621318d56bf293ef01a6d045e097d2cc6440
Author: Dominic Austria <dominicaustria@google.com>
Date: Tue Mar 31 00:35:28 2026 -0700
Add Hover Cards to Tab Group Headers in Horizontal Tab Strip
We show the hover card for tab group headers for the horizontal tab
strip, on mouse hover or focus. Like in the vertical tab case, we
generate the card data right before showing the hover card because the
tab group does not get updated when one of its tabs are deleted or
navigated to a new page, see bug 497896801
Bug: 493242596
Change-Id: I3244fcb110fdb67f7c027297baff2f94ad5d45be
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7701562
Reviewed-by: Caroline Rising <corising@chromium.org>
Commit-Queue: Dominic Austria <dominicaustria@google.com>
Reviewed-by: Eshwar Stalin <estalin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1607691}
There has been a recent refactor that requires passing `profile_` into
this function.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/7c978026959ee9a0d177f01adcd306da3687cbf1
commit 7c978026959ee9a0d177f01adcd306da3687cbf1
Author: David Yeung <dayeung@chromium.org>
Date: Mon Mar 30 14:57:04 2026 -0700
[TabSearch] Refactor event listening to use TabStrip API
CL migrates the event observation in TabSearchPageHandler to use the
TabStripAPI instead of TabStripModel's observer. While this CL has
changed how we're receiving the events, the handling of those events are
the same.
The previous TabSearchPageHandler only cares about 3 events:
- when a tab is removed
- when a split tab is removed
- when the tab data changes
The main focus of this CL is transitioning those events and making sure
they're received.
Key changes:
- Replace BrowserTabStripTracker with TabStripServiceAggergator
- Replace OnTabStripModelChanged and OnTabChangedAt with OnTabEvents
- Created helper methods to split OnTabEvents into: OnNodesRemoved, OnTabsRemoved, OnTabDataChanged, OnSplitTabRemoved
Bug: 477686464
Change-Id: Ida32de4e3e25bb7209c823c0904df7b431491a97
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7697541
Reviewed-by: Tom Lukaszewicz <tluk@chromium.org>
Commit-Queue: David Yeung <dayeung@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1607402}
New arg bringToFront
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/15b60a7f51080d75b18d37f6bbf83a7a39151c15
commit 15b60a7f51080d75b18d37f6bbf83a7a39151c15
Author: Lijin Shen <lazzzis@google.com>
Date: Fri Mar 27 14:06:30 2026 -0700
tabs.move on Android: allow moving tabs in the background
Fixes a behavior discrepancy between Android and Desktop when moving
tabs between windows via the extension API (e.g., chrome.tabs.move).
Currently on Android, the destination window is always brought to the
front
Added a bringToFront boolean parameter to conditionally controls the
call to ApiCompatibilityUtils.moveTaskToFront(). This defaults to true
such that this CL won't bring any behavior change. This sets false in
TabModelSelectorImpl.java such that tab.move won't activate the
destination window.
Bug: 495516043
Change-Id: I60e7b42794c240023669afcf3cd15f8031c16ded
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7685707
Reviewed-by: Linyu He <linyuh@google.com>
Reviewed-by: Aishwarya Rajesh <aishwaryarj@google.com>
Commit-Queue: Lijin Shen <lazzzis@google.com>
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1606471}
Upstream moved isTabModelRestored() into the TabGroupModelFilter
interface, which TabModel now extends, making the previously
private method in BraveTabCollectionTabModelImplBase conflict
with the now-public interface method.
Error message:
../../brave/android/java/org/chromium/chrome/browser/tabmodel/BraveTabCollectionTabModelImplBase.java:61: error: isTabModelRestored() in BraveTabCollectionTabModelImplBase cannot implement isTabModelRestored() in TabGroupModelFilter
private boolean isTabModelRestored() {
^
attempting to assign weaker access privileges; was public
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/401697a07af594e4420ef1f4998d13f43533874f
commit 401697a07af594e4420ef1f4998d13f43533874f
Author: Jingping Sun <jings@microsoft.com>
Date: Fri Mar 27 10:23:32 2026 -0700
[TabModel] Make TabModel extend TabGroupModelFilter
As part of combining these interfaces this CL is the first step.
* IncognitoTabGroupModelFilterImpl is inlined onto
IncognitoTabModelImpl.
* StubTabGroupModelFilterImpl is no longer required.
* EmptyTabModel now has stub methods for TabGroupModelFilter.
BYPASS_LARGE_CHANGE_WARNING: all stub methods
Bug: 463685717, 476144237, 493519189
Change-Id: Ia27c3a355f92da60cdb3c1e8ac9fabe892b49bc0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7684470
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
Reviewed-by: Sky Malice <skym@chromium.org>
Commit-Queue: Jingping Sun <jings@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1606333}
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/36279bf7b4c5515fa7a64d8f462faed9f5da4e7b
commit 36279bf7b4c5515fa7a64d8f462faed9f5da4e7b
Author: Calder Kitagawa <ckitagawa@chromium.org>
Date: Fri Mar 27 14:07:42 2026 -0700
[Snackbar] Drive snackbar bottom margin externally
This should have no behavioral changes!
Goals
- Decoupling of E2E from Snackbar.
- Allow bottom margin to be driven by the owning component to take into
account other UI elements without coupling to Snackbar code e.g.
(bottomsheets, etc.)
- In future allow pushParentViewToOverrideStack to customize the bottom
margin appropriately for a different container context.
Bug: 491514883
Change-Id: I8c71f3122ad809e6459892a4b216ce4f8a0a8a19
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7689191
Reviewed-by: Charles Hager <clhager@google.com>
Reviewed-by: Aishwarya Rajesh <aishwaryarj@google.com>
Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1606473}
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/19645de672e801f850aec8480cc120467e9ab758
commit 19645de672e801f850aec8480cc120467e9ab758
Author: Michael Tatarski <mtatarski@google.com>
Date: Sat Mar 28 04:03:32 2026 -0700
[STTS] Add navigation history support to STTS model
To support sending a tab's full back/forward history (similar to "Tabs
from other devices"), this CL updates the Send-Tab-To-Self core model,
entry definition, and sync bridge.
A dedicated `NavigationHistory` struct has been introduced to cleanly
encapsulate a vector of `sessions::SerializedNavigationEntry` objects
along with the current navigation index. The `SendTabToSelfEntry` class
is updated to hold this struct and serialize/deserialize it to and from
`sync_pb::SendTabToSelfSpecifics`.
Bug: 491743359
Change-Id: Ia87854b09b09bbc2aa01726ca6fba12a169beb06
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7694034
Reviewed-by: Marc Treib <treib@chromium.org>
Commit-Queue: Michael Tatarski <mtatarski@google.com>
Cr-Commit-Position: refs/heads/main@{#1606668}
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/da12fb560afc4519dc2ae1f831714008fda90bac
commit da12fb560afc4519dc2ae1f831714008fda90bac
Author: raorui <ruirao565@gmail.com>
Date: Fri Mar 27 03:27:18 2026 -0700
Code Health: Use span in base::HexEncode
- Migrate HexEncode callers from raw pointer+length to controlled views:
- strings: std::string_view or base::as_byte_span
- IOBuffer: io_buffer()->span()
- struct bytes: reinterpret_cast + base::span<const uint8_t>
- Clamp adapter MAC length before slicing to avoid OOB when encoding
- Remove pointer-based HexEncode overload and associated TODO
- Update tests and fuzzers to new interfaces
Bug: 40284755
Change-Id: I3352bb1a795b2f10cf5a8bedb432fe7d4bdf7290
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7607319
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Owners-Override: Colin Blundell <blundell@chromium.org>
Commit-Queue: Colin Blundell <blundell@chromium.org>
Reviewed-by: Colin Blundell <blundell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1606068}
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/6943dc09af6f5b5445c30d3088f3477289ef2617
commit 6943dc09af6f5b5445c30d3088f3477289ef2617
Author: Dana Fried <dfried@chromium.org>
Date: Fri Mar 27 13:12:34 2026 -0700
[Animation] Move [vertical] tab strip to new animation system
This should maintain rough feature parity with the previous
functionality, which is to say there are still serious issues.
It does add internal curved corners when the tab strip bumps out on
hover.
Here are the follow-up items:
- Curved corners on a custom corners background should receive a stroke
if either adjacent edge has a stroke, not if both do.
- Need to handle transition from expanded on hover (or expanding on
hover) to uncollapse without snapping the VTS back to collapsed at
the beginning.
- Whatever other visual adjustments are needed, including a drop shadow.
Bug: 493594309, 493593592
Change-Id: I5ab4d9599af991f774001f32cd6a58f030e3895c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7681390
Reviewed-by: Eshwar Stalin <estalin@chromium.org>
Commit-Queue: Dana Fried <dfried@chromium.org>
Auto-Submit: Dana Fried <dfried@chromium.org>
Reviewed-by: Caroline Rising <corising@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1606426}
This test broke in 148 due to changes in `AutoReset` move-assignment, which made
reusing a single `AutoReset` for multiple partition changes unreliable. This
change gives each partition its own scoped `AutoReset` object, ensuring RAII
restores the previous partition correctly.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/31aff9a0d6ab3e4e2e8bf928d9a9146def053018
commit 31aff9a0d6ab3e4e2e8bf928d9a9146def053018
Author: gate kibr <gkvjwa@gmail.com>
Date: Fri Mar 27 03:04:37 2026 -0700
Add move-assignment for AutoReset
Existing code only cover move construction. Add coverage for move
assignment to an AutoReset that already manages a variable, which should
restore the old value before taking ownership of the new one.
Change-Id: If652a12b967f7f93fb827916fbab0765f58d2dee
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7684905
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1606058}
https://source.chromium.org/chromium/chromium/src/+/da12fb560afc4519dc2ae1f831714008fda90bac
commit da12fb560afc4519dc2ae1f831714008fda90bac
Author: raorui <ruirao565@gmail.com>
Date: Fri Mar 27 03:27:18 2026 -0700
Code Health: Use span in base::HexEncode
- Migrate HexEncode callers from raw pointer+length to controlled views:
- strings: std::string_view or base::as_byte_span
- IOBuffer: io_buffer()->span()
- struct bytes: reinterpret_cast + base::span<const uint8_t>
- Clamp adapter MAC length before slicing to avoid OOB when encoding
- Remove pointer-based HexEncode overload and associated TODO
- Update tests and fuzzers to new interfaces
Bug: 40284755
Change-Id: I3352bb1a795b2f10cf5a8bedb432fe7d4bdf7290
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7607319
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Owners-Override: Colin Blundell <blundell@chromium.org>
Commit-Queue: Colin Blundell <blundell@chromium.org>
Reviewed-by: Colin Blundell <blundell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1606068}
We used it to run the tests.
Switched to `android_33_google_apis_x64`
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/d791b7eb1211d53a879106167bc2da94f4fc00dc
commit d791b7eb1211d53a879106167bc2da94f4fc00dc
Author: Haiyang Pan <hypan@google.com>
Date: Tue Mar 24 09:39:37 2026 -0700
Remove all the Android atd images and unused Android FYI builders.
We use the same image for CI builders as well as for developers' local
debugging to makes it easier to repro issues. But atd images are
not good options for local debugging as it disables the rendering.
So remove all atd images for now.
The following Android fyi builders have been paused or duped with
non-fyi builders so remove them as well:
* android-10-x86-fyi-rel
* android-12-x64-fyi-rel
* android-12l-x64-fyi-dbg
* android-13-x64-fyi-rel
* android-14-arm64-fyi-rel
* android-14-x64-fyi-rel
* android-15-x64-fyi-rel
Bug: 347759127, 40930660, 40263601
Change-Id: I3a65e885ec8513e8b1747b98570ae57c4348302e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7694232
Reviewed-by: Ben Pastene <bpastene@chromium.org>
Commit-Queue: Haiyang Pan <hypan@google.com>
Cr-Commit-Position: refs/heads/main@{#1604195}
New args:
signinAndHistorySyncActivityLauncher;
activityResultTracker;
modalDialogManagerSupplier;
snackbarManager.
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/0af385e0296806bb278d2c4b73e7e652d310def5
commit 0af385e0296806bb278d2c4b73e7e652d310def5
Author: quacksort <quacksort@google.com>
Date: Tue Mar 24 06:59:26 2026 -0700
[Signin][Android] Migrate send tab to self sign-in to activity-less flow
This is part of the effort to reduce reliance on
SigninAndHistorySyncActivity by sign-in entry points.
go/activityless-signin
The new flow uses BottomSheetSigninAndHistorySyncCoordinator to handle
the sign-in process, avoiding the need to launch a separate activity.
Bug: 478814334
Change-Id: I0448875de416af5e3e48d1ac5f2eeb3d18e6efcc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7647173
Reviewed-by: Anton Goncharenko <agonch@google.com>
Commit-Queue: Lucia Giorgi <quacksort@google.com>
Cr-Commit-Position: refs/heads/main@{#1604087}
This initialization is now required and enforced by upstream.
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/aac2a1dad2e0f384b3df12e985e2a21b329cf438
commit aac2a1dad2e0f384b3df12e985e2a21b329cf438
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Tue Mar 17 02:29:59 2026 -0700
Ensure ShortcutsProviderTest initializes the HistoryService
In production it is not possible to get access to an HistoryService
that has not been initialized, so change ShortcutsProviderTest to
call HistoryService::Init(...) on the fake service it creates.
This will allow changing HistoryService to prevent registering
observers after the call to the Shutdown() method.
Bug: 481635191
Change-Id: Iedd4300792209b0c11bdc052a6c4a30b1759889a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7670577
Reviewed-by: Nihar Majmudar <niharm@google.com>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1600402}