Commit Graph
77947 Commits
Author SHA1 Message Date
Brian Johnson 512c53c2e6 Add default values for brave services domains (#36226)
The urls are guarded by the brave services key so we can put them back in public gn config
2026-05-06 22:42:35 +01:00
Serg 824d5976cf [Android] Hide NTP ad settings when Rewards is disabled by policy (#36224)
Hides the "Show New Tab Page Ads" toggle and the
"Learn more about new tab page ads" link in
Settings -> New Tab Page when Brave Rewards is disabled by policy.
Both controls remain visible and functional otherwise.

Also switches BackgroundImagesPreferences to retrieve the profile via
the inherited getProfile() instead of the legacy
ProfileManager.getLastUsedRegularProfile().

Resolves: https://github.com/brave/brave-browser/issues/55312
2026-05-06 22:18:17 +01:00
Kyle Hickinson 2b1b8cf843 [iOS] Migrate media background pref to Chromium (#36187) 2026-05-06 17:00:17 -04:00
Szilard Szaloki b07823bc8f Account: collapse 3-state model to 2 states with verification intent (#36111) 2026-05-06 21:54:05 +01:00
Douglas Daniel e9fd22c534 [Wallet]: Update Import Account Modal UI (#36146)
Updates the Import Account Modal UI to the new figma designs
2026-05-06 15:39:30 -05:00
brave-builds 4d044aa971 1.92.32 2026-05-06 20:06:59 +00:00
Alex 189e5dcd17 [VPN 2.0] BoringTun 3p dependency: license information (#36192)
[VPN 2.0] BoringTun 3p dependency: license information.

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 3: license information for Boringtun and its dependencies needed by Brave build system. Created a custom script to generate the necessary licensing information (README.chromium, and combined license files where appropriate) and put that information directly into the "brave/third-party/vendor" directory. The script should be re-run on updating the vendored crates.
2026-05-06 20:37:12 +01:00
Brian R. Bondy b3d33bcc98 Add best practice: factory return value must be stable across the browser session (#36217)
Adds ARCH-072 to docs/best-practices/architecture.md. A KeyedServiceFactory
may only return nullptr based on session-stable attributes (profile type,
buildflags, base::Feature). Gating creation on user-toggleable prefs forces
restarts and was repeatedly flagged in PR reviews.
2026-05-06 13:52:15 -04:00
Nuo Xu 8d2a8618ec [iOS] Bridge web frames manager observer through Tab abstraction layer (#36186)
* Bridge web frames manager observer through Tab abstraction layer

- make brave_web_view conform CRWWebFramesManagerObserver
- add BraveWebFrame wrapper exposing web::WebFrame state to Swift
- notify BraveWebViewNavigationDelegate when a web frame becomes available
- propagate frameDidBecomeAvailable through TabObserver/TabState

* review(kyle): address feedback

* nit changes

1. rename brave_web_frame internal header file
2. add brave_web_frame_internal.h in gn file
3. other nit udpates

* fix typo
2026-05-06 13:52:06 -04:00
vadims b52e847645 [SHRED] Enable Shred feature by default on Android (#36210)
Shred feature should be enabled by default on android. We changed 
the feature flag configuration in the brave-core for that.

Resolves: https://github.com/brave/brave-browser/issues/55291

Signed-off-by: Vadym Struts <vstruts@brave.com>
2026-05-06 18:57:21 +02:00
Pavel Beloborodov 552e2b6843 Updated Email Aliases Learn more link. (#36205) 2026-05-06 17:49:20 +01:00
AlexeyBarabash 3f7e3723ee [Android] Fixed NTP status bar dynamic color (#35936)
* Fixed statusbar color when Dynamic colors flag is enabled

Resolves https://github.com/brave/brave-browser/issues/54252
2026-05-06 19:28:13 +03:00
brave-builds e4ba56a255 1.92.31 2026-05-06 16:03:50 +00:00
Kyle Hickinson c6e3f20ec9 [iOS] Fix TabState storage on reader mode tab helper (#36211)
Fixes a regression in #34545 which caused `TabState` to leak due to storing the `TabState` incorrectly in `ReaderModeTabHelper`
2026-05-06 12:03:42 -04:00
Kyle Hickinson 5fd911c8bd [iOS] Avoid tab retain cycle in NTP section setup (#36212)
Fixes a regression in #35937 which caused a TabState leak by accessing `tab` inside of the setup closure
2026-05-06 12:03:29 -04:00
Shivan 2a7b54e8dd Fix inconsistent indentation in policy definition YAML files (#36204) 2026-05-06 08:39:55 -07:00
r0hit0303 c3cf8bb5aa Refactor query filter to follow modularization. (#36169)
Moves the files in the [components/query_filter](https://sourcegraph.com/r/github.com/brave/brave-core/-/tree/components/query_filter) directory into `components/query_filter/browser` and `components/query_filter/common` to finish modularizing query_filter.

Resolves https://github.com/brave/brave-browser/issues/55258
2026-05-06 17:37:58 +02:00
Serg a044cc5bde [Origin] Wait for all policy managers before refreshing profile policies (#36193)
* [Origin] Wait for all policy managers before refreshing profile policies

`BraveProfilePolicyProvider` observes both `BraveOriginPolicyManager`
and `AdBlockOnlyModePolicyManager`. Each fires `OnBravePoliciesReady`
independently, so the first notification could call `RefreshPolicies`
before the other manager's `Init()` had run -- producing a bundle that
reflected only one source and flipping `IsFirstPolicyLoadComplete` true
on the empty load.

Introduce `BravePolicyManagerBase` with self-registration and a static
`AllInitialized()`. `OnBravePoliciesReady` early-returns until every
registered manager reports ready; `policies_ready_` is gated on the
same check so `SetProfileID` can't trigger a partial refresh either.
Future managers inheriting from the base are picked up automatically.

Resolves: https://github.com/brave/brave-browser/issues/55276
2026-05-06 11:23:42 -04:00
cdesouza-chromium 91cb6d755d [git-cr] Rewrite gn references of moved targets (#36209)
This PR introduces support for `cr mv` and `cr follow-renames` to
correct `gn` references across the projects when a `BUILD.gn` path
changes. This is a modest introduction to references path correction.
The rewrite does handle relative references though. In source references
are only corrected for the main target, i.e `:basename`, which gets
corrected to the new path base name.

This new approach also attempts to correct gn references to moved
sources, but only for `//` root reference paths. In the future we could
potentially introduce some mechanism handles file renames.

The baseline for this feature was to get the following to build with no
errors:

```
git cr mv components/api_request_helper/ components/api_foo
npm run build -- --target=brave:all
```

As a small detour, this PR adds `npm run format` to these commands, when
wrapping up. This PR also adds a README.md for the `alias` folder.

Resolves https://github.com/brave/brave-browser/issues/55297
2026-05-06 14:59:00 +01:00
brave-builds 7ca7458af0 1.92.30 2026-05-06 12:33:23 +00:00
brave-builds acc7e8e98d 1.92.29 2026-05-06 12:03:22 +00:00
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