Commit Graph
77926 Commits
Author SHA1 Message Date
StephenHeaps dcbc85c5ed [iOS] Remove Recent Searches when Shredding if shredding history (#36095)
* Remove Recent Searches when Shredding if shredding history on iOS.
2026-05-06 07:53:32 -04:00
dependabot[bot] 414328b9cb Bump ip-address from 10.1.0 to 10.2.0 (#36195)
fix https://github.com/brave/brave-browser/issues/55280

Bumps [ip-address](https://github.com/beaugunderson/ip-address) from 10.1.0 to 10.2.0.
- [Commits](https://github.com/beaugunderson/ip-address/commits)

---
updated-dependencies:
- dependency-name: ip-address
  dependency-version: 10.2.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-06 12:05:40 +01:00
cdesouza-chromium a20bdbdae7 Change pinned commit name for plaster reapply (#36206)
This change uses a new label for plaster reapply commits, as the
previous name had `Regen` in it, which can cause confusion with the
similar command `brockit regen`.
2026-05-06 12:02:55 +01:00
AlexeyBarabash 6677720d0b [cr148][Android] Update zoom-related icons (#36196)
Resolves https://github.com/brave/brave-browser/issues/55104
2026-05-06 13:43:41 +03:00
Simon Hong 80e4faf421 [Sidebar] Suppress animation when switching between panels (#36203)
Add suppress_animations=true when ActivatePanelItem is called while a
panel is already active.

Resolves brave/brave-browser#55285
2026-05-06 17:05:52 +09:00
Pavel Beloborodov b710c75ce3 Added policy for Email Aliases. (#35876)
* Added policy for Email Aliases.
* Added toggle on Brave Origin settings page.
2026-05-05 23:56:05 -07:00
brave-builds c4785a5dea 1.92.28 2026-05-06 05:44:58 +00:00
Jay Harris 210355c0f1 [AI Chat]: Fix scroll height issues with notices (#35752) 2026-05-06 06:35:43 +01:00
Sangwoo Ko 1ed993d529 Deduplicate code in tree tab tests (#36201)
Simple refactoring
2026-05-06 06:27:28 +01:00
Anton Paymyshev 8148441998 [Wallet] Fix Ledger disconnected message (#36163) 2026-05-06 12:17:42 +07:00
Sangwoo Ko 7c86d37312 Ensure tab group sync service is initialized in tree tab tests (#36200)
When we using group APIs in tests, we need to ensure the tab group sync
service is initialized. Otherwise, the service could be initialized
later during shutting down and try to access Browser objects that are
already destroyed.
2026-05-06 04:58:22 +00:00
brave-builds 1e2ab0bd06 1.92.27 2026-05-06 00:03:40 +00:00
Anthony TsengandBrian Johnson fb9c56c495 [History Embeddings] Replace model-load barrier with state machine (#36124)
* Replace model-load barrier with chained base::OneShotEvents

Two signals gate the EmbeddingGemma model load: the component being
installed and the renderer-side PassageEmbedderFactory registering. A
BarrierClosure(2) paired with a component_ready_counted_ flag was
needed because LocalModelsUpdaterState::AddObserver synchronously
re-fires OnLocalModelsReady when install_dir is already set, which
would otherwise tick the barrier twice.

Swap the barrier for two base::OneShotEvents: Signal() is idempotent
under is_signaled(), so the guard flag disappears, and chaining
Post(component_ready)->Post(factory_registered)->LoadLocalModelFiles
expresses the dependency directly.

Addresses:
https://github.com/brave/brave-core/pull/32689#discussion_r3114239143
https://github.com/brave/brave-core/pull/32689#discussion_r3113758418

* Use state machine

---------

Co-authored-by: Brian Johnson <34129+bridiver@users.noreply.github.com>
2026-05-06 00:38:43 +01:00
Simon Hong d05551996f Fix new tab button hover highlight vertical mis-alignment (#36167)
HorizontalTabStripRegionView::UpdateButtonBorders() applies asymmetric
vertical border insets to the new tab button (top > bottom) so the
button's hit area extends to the top of the tab strip. This asymmetry
was introduced in #35778. The upstream ControlButtonHighlightPathGenerator
uses GetContentsBounds() for the hover highlight rect, which is shifted
down by the top inset. However, LabelButton centers its icon within
GetLocalBounds() (ignoring vertical insets), so the highlight and the
icon end up on different vertical centers.

Fix by installing a BraveNewTabButtonHighlightPathGenerator that takes
the highlight rect size from GetContentsBounds() but re-centers it on
GetLocalBounds().CenterPoint(), matching where the icon is drawn.

TEST=BraveNewTabButtonHighlightTest.HighlightVerticalCenterMatchesIcon

Resolves brave/brave-browser#55252
2026-05-06 08:19:37 +09:00
Anthony Tseng 8eb36cae9a [History Embeddings] Hide omnibox thumbs up/down and fix disclaimer trailing space (#36112)
Follow-up to #35813 / brave-browser#54798. The previous PR removed the
WebUI feedback buttons on chrome://history and the side panel, but the
native Views omnibox still surfaced thumbs up/down on HISTORY_EMBEDDINGS
matches when the user typed `@history`
(brave-browser#55178).

- Plaster `OmniboxPopupSelection::IsControlPresentOnMatch` to inject a
  short-circuit `if ((true)) return false;` immediately after the
  FOCUSED_BUTTON_THUMBS_UP / FOCUSED_BUTTON_THUMBS_DOWN case labels.
  Matching only the case labels (not the existing return expression)
  keeps the plaster resilient if Chromium tweaks the body. With these
  selections never available, OmniboxResultView::
  UpdateFeedbackButtonsVisibility keeps the buttons hidden, keyboard
  traversal skips them, and the feedback page is unreachable from the
  omnibox.

- Combine the existing featured_search_provider.cc IDS swap with a
  drop of the upstream `+ u" "` separator in a single substitution.
  With the link text already swapped to IDS_BRAVE_EMPTY_STRING in
  #35813, that separator left match.contents with a trailing space
  that tripped the AutocompleteMatch::SanitizeString DCHECK in
  AutocompleteResult::AppendMatches.
2026-05-05 23:54:15 +01:00
Anthony Tseng d0b0f89e91 [History Embeddings] Reject duplicate RegisterPassageEmbedderFactory (#36184)
Reject duplicate RegisterPassageEmbedderFactory

mojo::Remote::Bind CHECKs when called on an already-bound remote, so a
buggy or compromised renderer that calls RegisterPassageEmbedderFactory
twice without first triggering a disconnect would crash the browser.
Ignore the duplicate registration so the second call is a no-op. The
renderer-reload path is unaffected: disconnect resets factory_ via
OnFactoryDisconnected before the renderer re-registers.
2026-05-05 22:39:35 +01:00
cdesouza-chromium b7e667cb83 [presubmit] Patches should use --default-prefix and similar opts (#36157)
The patching machinery in Brave usually creates patches with the
equivalent of:

```
git -C .. diff --src-prefix=a/ --dst-prefix=b/ --default-prefix --full-index --ignore-space-at-eol browser/foo.cc
```

This is not enforced officially, and every now and then someone
generates patches manually and gets them merged with some other type of
header, which ends up causing issues when syncing, or using other types
of tooling that assume certain expectations from these patches. This PR
prevents that.

Another check being added is to validate that a patch added to this path
always have one file only in it, as this is an invariant of our patching
system.

Resolves https://github.com/brave/brave-browser/issues/55231
2026-05-05 21:29:53 +01:00
brave-buildsandbrave-builds-ro 9366305eaa Roll perf profiles update (update-perf-profile-2026-05-05-16-16) (#36177)
* Update perf profile brave-typical-mac using v1.92.20
* Update perf profile brave-typical-android using v1.92.5
* Update perf profile brave-typical-win using v1.92.16
* Update perf profile chrome-typical-mac using v1.92.20
* Update perf profile chrome-typical-android using v1.92.5
* Update perf profile chrome-typical-win using v1.92.16
---------

Co-authored-by: brave-builds-ro <devops+robuilds@brave.com>
2026-05-05 23:51:20 +04:00
StephenHeaps f45a5c04a6 [iOS] Update Shred settings UI to display descriptions for each option (#36136)
Update Shred settings UI to display descriptions for each option.
2026-05-05 15:45:47 -04:00
Alex 69539f1542 [VPN 2.0] BoringTun 3p dependency: vendored crates (#36142)
This is a multi-part change to add BoringTun dependency to the
brave-core, to be used later in the VPN 2.0 architecture by a
privileged helper on desktop OSes. The dependency is added to
the existing VPN to ensure it actually gets built with the
browser, but not yet distributed.

Part 2: vendored crates that BoringTun depends on, plus some
ignore rules for linters to make sure builds are not broken;
following the similar ignores for wasm. There is also a
Cargo.lock file with the list of the dependencies and versions.

All the vendored crates were created by running `cargo vendor`;
the source files of the crates are unmodified, and DO NOT NEED
any manual review.
2026-05-05 15:26:24 -04:00
brave-builds 7b9482631d 1.92.26 2026-05-05 19:05:21 +00:00
Michael Herrmann b0ba9a6ac9 Fix Omaha 4 updates for non-std .app dir on macOS (#36042) 2026-05-05 18:47:07 +01:00
Kyle Hickinson 3bebcb4e82 [iOS] Construct reader mode CSP meta tags at page construction (#36173)
This changes the reader mode scripts to send only the actual meta tag content to the browser so that the tag can be constructed securely during reader mode page construction rather than copied in as-is.
2026-05-05 13:31:58 -04:00
Max Karolinskiy 72cf227c64 Updates l10n for 1.90.x release. (#36153) (lowered from 1.90.x). (#36160)
Updates l10n for 1.90.x release. (#36153)

* Updates l10n for 1.90.x release.

* Updates origin strings.
2026-05-05 13:14:34 -04:00
Max Karolinskiy 0db88f1aa7 Disables kIPHAutofillAccountNameEmailSuggestionFeature. (#36172) 2026-05-05 13:12:53 -04:00
brave-builds e7933977ad 1.92.25 2026-05-05 16:26:24 +00:00
brave-builds 7a14149da6 1.92.24 2026-05-05 16:20:14 +00:00
Kyle Den Hartog e22bfb7026 bump axios to address security alerts (#36171)
address axios issues

related to the following issues:
https://github.com/advisories/GHSA-w9j2-pvgh-6h63
https://github.com/advisories/GHSA-pmwg-cvhr-8vh7
https://github.com/advisories/GHSA-3w6x-2g7m-8v23
https://github.com/advisories/GHSA-q8qp-cvcw-x6jj
https://github.com/advisories/GHSA-xhjh-pmcv-23jw
https://github.com/advisories/GHSA-445q-vr5w-6q77
https://github.com/advisories/GHSA-m7pr-hjqh-92cm
https://github.com/advisories/GHSA-62hf-57xw-28j9
2026-05-05 17:10:36 +01:00
brave-builds 3241d09dfe 1.92.23 2026-05-05 16:03:40 +00:00
Simon Hong 2698005e6f Fix caption button overlap with toolbar in vertical tabs Qt theme (#36129)
* Fix caption button overlap with toolbar in vertical tabs Qt theme

When vertical tabs with hidden title bar is enabled, window control
buttons overlapped the toolbar on Linux with the Qt theme. GTK theme
worked correctly.

The root cause was in GetLeadingTrailingCaptionButtonWidth(): it
branched on UsingSystemTheme() which returns true for both GTK and
Qt. The GTK path cast the frame view to BraveBrowserFrameViewLinuxNative
to read actual button bounds. However, Qt doesn't use the native
frame view (QtUi::CreateNavButtonProvider() returns nullptr),
so the cast failed silently and returned zero-width exclusions,
causing overlap.

Replace the custom GetLeadingTrailingCaptionButtonWidth() with
upstream Chromium's BrowserFrameView::GetBrowserLayoutParams(),
which reads actual button positions post-layout from whichever frame
view is active. This works correctly for GTK, Qt, Classic, Windows,
and macOS without platform-specific branching.

Also add a Layout(PassKey) override in BraveOpaqueBrowserFrameView
to call UpdateHorizontalPadding() after buttons are positioned,
fixing the overlap that occurred after theme switches before the
next manual window resize.

Resolves brave/brave-browser#54471
2026-05-06 00:20:45 +09:00
cdesouza-chromium 54876ddce3 [toolchain] Rust build script under rebase tooling (#36155)
This change moves the script used to generate the rust WASM toolchain
under `tools/cr/toolchains`, as tooling packaging is a Chromium rebase
concern, and it is better kept under the rebase's team purview. A
separate PR has been submitted to fix CI.
2026-05-05 15:31:43 +01:00
cdesouza-chromium d79eeeeded Moving git-cr code under alias/ (#36154)
This PR is pretty much just a rearranging of code, with no practical
function changes. Files have been renamed to be less repetitive and more
intuitive. There are few minor changes though:

1. `_boot.py` has been introduced to allow `alias/` sources to be able
   to include `tools/cr` into path and make themselves a submodule. This
   is not the best posssible solution, but it does avoid having to mess
   with PATH or PYTHONPATH and any other similar constant before calling
   these scripts.
2. `PRESUBMIT.py` has been updated to run tests in subdirectories.
2026-05-05 15:31:03 +01:00
Aleksei Khoroshilov 31ab0ea1f3 Display runtime container in the context menu where applicable. (#36135)
* Display runtime containers in the context menu where applicable.

* Add a comment to bookmark menu delegate.

* Migrate ContainersBookmarkMenuModelDelegate to BWI.
2026-05-05 14:42:06 +01:00
brave-builds 3b1d93c5cd 1.92.22 2026-05-05 12:33:17 +00:00
Brian R. Bondy 5dab0eaa24 Remove BS-012 (redundant with gn check and CS-001) (#36147)
Remove BS-012 (already covered by gn check and CS-001)
2026-05-05 08:20:28 -04:00
brave-builds 9f6730e768 1.92.21 2026-05-05 12:03:44 +00:00
Simon Hong e5095d382e Fix horizontal tab strip height regression on Linux (#36158)
BraveOpaqueBrowserFrameView::GetTopAreaHeight() was changed in
99c6215 to use tabs::GetHorizontalTabControlsDelta() (-4 in default
mode, -5 in compact) instead of kTabstripToolbarOverlap (1 in default,
8 in compact). Subtracting a negative value adds to the height, so the
tab strip grew from 41px to 45px (default) instead of shrinking.

The fix reverts GetTopAreaHeight() to delegate to the upstream
OpaqueBrowserFrameView::GetTopAreaHeight(), which already picks up
Brave's kTabstripToolbarOverlap override via GetBraveLayoutConstant()
and handles both default and compact modes correctly.

Adds a parameterized browser test covering default and compact modes
that asserts the rendered tab strip height matches kTabStripHeight and
that the toolbar is positioned correctly relative to the tab strip.

TEST=BraveBrowserFrameViewTabStripHeightTest
2026-05-05 20:52:15 +09:00
Aleksei Khoroshilov aebaebb174 Open new contained tab as "typed" to open as last tabs. (#36139)
Open new tab and bookmars as "typed" to open as last tabs.
2026-05-05 17:41:01 +07:00
Mikhail e9dedbd103 [cr148, perf] Fix motionmark regression (#36150)
The PR backports https://crrev.com/c/7806787 to address motionmark regressions in cr148.
2026-05-05 13:11:42 +04:00
Sangwoo Ko 0ca3511586 Show Shields toolbar button on PWA (#35928)
* Show Shields toolbar button on PWA

As PWAs could be broken with Shields on, we need to show a toolbar button
to control shield setting
2026-05-05 12:10:44 +09:00
Simon Hong 3385ed0f9c Added brave_interactive_ui_tests to brave:all target (#36134) 2026-05-05 09:51:34 +09:00
brave-builds 0fda6fc171 1.92.20 2026-05-05 00:03:46 +00:00
cdesouza-chromium b029715cde [brockit] Adding 🩹 integration (#36127)
This PR adds integration for `plaster` into `brockit`. This involves
primarily changes to how 3way apply works. With this change, whenever
3way apply fails due to conflicts or a broken patch, we take a next step
attempting to fix the issue by rerunning the plaster.

Why not rerun plaster always for any patch managed with a plaster?

It is important to maintain changes in a granular state that they can be
inspected. We don't want to do blanket `plaster` runs because that may
create a huge committable change, that would be harder to inspect and
specially harder to catch unintended plaster new interpretations based
in underlying Chromium changes.

This PR introduces a two step process for plaster:

1. The plaster re-run commit.

This commit is similar to the use of `Conflict-resolved` commits. It
will be commited with a message:

```
Regen-fixed 🩹 patches from Chromium VERSION to VERSION
```

This will be a pinned commit, and it will helps keep track of the
patches that did require a `plaster` rerun to apply again. This commit
follows the same rules of the `Conflict-Resolved` commit when it comes
to fixups for changes touching the patching in the same dev cycle.

2. The introduction of `plaster check`

At the end of the lift, we run `plaster check`. For the vast majority of
the cases, what the plaster rerun would have generated is exactly what
we got with simply reapplying the patch. However, for cases where the
patch re-applied, and yet a plaster re-run would somehow produce
something different, we want to alert about that, and have that
investigated, and committed with a culprit, to make such a change
visible during review.

It is important to notice that `plaster check` also runs during the
`presubmit` step, so even if not caught at this stage, it would be
brought to someone's attention at some point.

- Broken plasters

A new section in the continuation report has been added for broken
plasters, which are required to be either fixed or deleted before
calling `--continue`.

Resolves https://github.com/brave/brave-browser/issues/55188
2026-05-05 00:51:01 +01:00
Jay Harris 2e47a9759d [AI Chat]: Show the skills properly in the edit turn box, and allow removing them from the prompt. (#36130)
Maybe show rich entries in edits
2026-05-04 23:31:46 +01:00
Brian R. Bondy d75c848a5e Use channel-specific icons for Brave Origin Linux packages (#36145)
The icon_suffix lookup in get_icon_artifacts() only matched
branding == "brave", so Brave Origin packages always staged the
stable product_logo PNGs regardless of channel. Brave Origin nightly
ended up registering the stable Origin icon under the
brave-origin-nightly icon name, making nightly indistinguishable
from stable in desktop environments.

Fix brave/brave-browser#54734
2026-05-04 15:01:32 -04:00
Sangwoo KoandCursor f7462bebf9 Add best practice: TabStripModelObserver teardown (no manual RemoveObserver) (#36128)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-05 03:57:33 +09:00
Anton Lazarev 3113e57ff8 Update adblock-rust to v0.12.4 (#36144)
update adblock-rust to v0.12.4
2026-05-04 19:33:10 +01:00
brave-builds 530d91c962 1.92.19 2026-05-04 16:19:27 +00:00
brave-builds 285d65c0bf 1.92.18 2026-05-04 16:03:22 +00:00
Christian Mazakas a84470a56c [Polkadot] [Wallet] add flag for Polkadot (#36069)
Enable experimental usage of Polkadot MVP, which includes only relaychain
support for Polkadot mainnet and Westend testnet.
2026-05-04 08:50:28 -07:00