Commit Graph
77119 Commits
Author SHA1 Message Date
Brian R. Bondy 28178be892 Fix default browser detection for Origin branded builds (#35465)
* Fix default browser detection for Origin branded builds

The upstream IsAnotherChromeChannel() on macOS compares only the first
3 bundle ID components, causing Brave Origin (com.brave.Browser.origin)
to incorrectly match regular Brave (com.brave.Browser) as "another
channel". This made Origin think it was already the default when regular
Brave was, suppressing the default browser infobar.

On Linux, the check searched for "brave-browser" in xdg-settings output
regardless of brand, so Origin builds matched regular Brave desktop
files as "another channel" too.

* Guard IsRegularBraveBundleId with buildflag to fix unused function error

Wraps IsRegularBraveBundleId in #if !BUILDFLAG(IS_BRAVE_ORIGIN_BRANDED)
since it is only called in the non-Origin branch of IsAnotherBraveChannel,
fixing -Werror,-Wunused-function on Origin-branded macOS builds.
2026-04-14 08:10:50 -04:00
brave-builds b0d7ab4eee 1.91.44 2026-04-14 12:03:22 +00:00
Vandana Malayil (a.k.a Vandana Rajan) 44066d4e1b Removing unused variable that caused build warning (#35453)
removed unused variable that caused build warning
2026-04-14 10:42:17 +01:00
Anirudha Bose 8616e88592 [Wallet] Fix bridge spinner and swap "()" in transaction activity (#35466)
* [Wallet] Fix bridge spinner and swap "()" in transaction activity

Use Gate3 swap status in the activity list so confirmed bridge
transactions no longer show a perpetual loading spinner. Extract
getGate3EffectiveStatus into a shared utility for reuse. Guard the
swap fiat value parentheses so empty destinationAmount doesn't
render literal "()".
2026-04-14 09:20:40 +01:00
Sangwoo Ko d088f029aa Scroll to new tab when adding tabs (#35472)
* Scroll to new tab when adding tabs

When adding background tabs, scroll to the new tab to be visible in
the viewport. Otherwise, users will not notice the tab was created or not.

* Add test
2026-04-14 17:03:12 +09:00
Jay Harris de75a7c63c [AI Chat]: Fix bad flatMap (#35474) 2026-04-14 03:49:21 +01:00
Pavel Beloborodov 6829a31649 New Email Alias moved next to the autofill section. (#35109) 2026-04-14 08:50:27 +07:00
Pavel Beloborodov 53ca205a62 Update the built-in Tor bridges config only if they are enabled. (#35379)
* Update the built-in Tor bridges config only if they are enabled.
2026-04-14 08:49:37 +07:00
Anthony Tseng 722f1c7f97 Add RestrictedWebContentsDelegate shared base class (#35235)
Extract the common restrictive WebContentsDelegate overrides
(ShouldSuppressDialogs, CanDownload, IsWebContentsCreationOverridden,
CanEnterFullscreenModeForTab, CanDragEnter, RequestKeyboardLock) into a
shared RestrictedWebContentsDelegate base class.

Both FileTextExtractorBase and BackgroundWebContentsImpl now inherit
from it instead of duplicating these overrides.
2026-04-14 02:23:20 +01:00
brave-builds 8a8120c4ee 1.91.43 2026-04-14 00:03:18 +00:00
Szilard Szaloki 9febf50a07 Account: switch error handling to toasts (#35449) 2026-04-14 00:41:18 +01:00
Simon Hong a7301f170f Fix crash in BraveTabStrip::UpdateOrientation() with upstream vertical tabs (#35444)
When Chromium's vertical tabs feature is enabled, TabStrip::Initialize() is never called
so tab_container_ remains null. This caused a crash in SetAvailableWidthCallback() during startup.
Early return when Brave vertical tabs are not supported.

Resolves brave/brave-browser#54419
2026-04-14 07:54:31 +09:00
brave-builds 0034cc82e0 1.91.42 2026-04-13 21:14:38 +00:00
Mihai PLESA 0bb12c8055 1.90.41 2026-04-13 22:10:42 +01:00
Darnell Andries e6c34638ff [AI Chat] Add id to artifact to allow overwriting existing artifacts (#34727)
* [AI Chat] Add id to artifact to allow overwriting existing artifacts

* Address PR feedback
2026-04-13 14:02:01 -07:00
Darnell Andries d0a32f30ae [CodeHealth] Remove P3A dead code (#35412) 2026-04-13 21:50:22 +01:00
Douglas Daniel ab255afed3 [Wallet]: Portfolio Asset Distribution (#35340)
Introduces a Portfolio Distribution to the Wallet Portfolio
2026-04-13 15:15:45 -05:00
Christian Mazakas 7e12989773 [Wallet] update GenerateReceiveAddress for Polkadot (#35438)
update GenerateReceiveAddress for Polkadot
2026-04-13 12:54:40 -07:00
Douglas Daniel 383ae05f10 [Wallet]: Reset Send Transaction Error on Renavigate (#35461)
Fixes a bug where Transaction Errors were not reset when renavigating the Send screen
2026-04-13 14:53:02 -05:00
Serg 5ba39ce79e [Android] Initialize bottom controls synchronously to fix progress bar (#35464)
The deferred PostTask introduced to avoid ANR was causing the bottom
controls to be initialized after the progress bar, breaking it.
Revert to synchronous initialization.

Resolves: https://github.com/brave/brave-browser/issues/54458
2026-04-13 15:49:47 -04:00
Serg 8ced933b72 [Android] Fix crash in search widget when native library not loaded (#35458)
The upstream Chromium change
https://chromium-review.googlesource.com/c/chromium/src/+/7567418
("Clean up LocationBar focus and UrlBar management") in cr147 added a
setUrlBarFocus() call in SearchActivity.beginQuery(). This triggers the
omnibox suggestion pipeline (serveCachedZeroSuggest ->
buildDropdownViewInfoList) before native libraries are loaded.

BraveDropdownItemViewInfoListBuilder.isBraveLeoEnabled() and
isBraveSearchPromoBanner() both call ChromeFeatureList.isEnabled() which
requires native, causing UnsatisfiedLinkError on release builds and
AssertionError on debug builds.

Fix: reorder the && conditions to check tab != null before any native
calls. Since there's no tab in SearchActivity, the cheap null check
short-circuits and avoids the native call entirely. No functional
change - these features were never shown in the search widget context.

Resolves: https://github.com/brave/brave-browser/issues/54444
2026-04-13 18:32:16 +00:00
Brian R. Bondy 6d2f9e10af Fix settings search errors in origin-branded builds (#35456)
Fix two errors triggered when typing in settings search:
- Add null check in isPrefManaged_ and move <if expr> to wrap
  the dom-if template so web_discovery_enabled binding doesn't
  evaluate when web discovery is disabled at build time.
- Add searchContents to settings-brave-origin-page so settings
  search can enumerate it without throwing.
2026-04-13 14:13:53 -04:00
Kevin Smith f2c5ef562c [NTP] Add tests for features disabled by policy (#35330) 2026-04-13 14:07:41 -04:00
Kyle Hickinson 614c95c1df [iOS] Increase sync device limit to 50 to match backend (#35457)
The current client-side limit of 10 was out of date
2026-04-13 12:38:14 -04:00
Nuo Xu dc7db38475 [iOS][Wallet] Open wallet in a new tab via pageHandler for iOS (#35225)
open wallet in a new tab via pageHandler for iOS
2026-04-13 12:35:29 -04:00
brave-builds 9b5e34272c 1.91.40 2026-04-13 16:02:59 +00:00
Emerick Rogul d9d1ca87ed Create initial rebasing-related Claude commands (#35428) 2026-04-13 11:57:54 -04:00
Aleksei Seren 1d1e107c5f Migrate DAU last ping date to local state pref (#35385)
The Swift-only lastLaunchInfo preference could not be shared with C++
or Objective-C components, limiting which parts of the codebase could
read or update the DAU last ping date.
The PR stores the date as brave.stats.last_check_ymd in local state
using YYYY-MM-DD string so all platform layers share a single
typed value.
2026-04-13 16:17:03 +01:00
Shisir Basel 9bb7c2d196 Update data-test-id to data-testid (#35317)
modified:   browser/brave_rewards/test/util/rewards_browsertest_context_util.cc
2026-04-13 11:00:39 -04:00
Nuo Xu 3f16dfe54b [iOS][Wallet][CodeHealth] fix some wallet warnings (#35433)
fix some wallet warnings
2026-04-13 10:26:19 -04:00
brave-builds 8a446a9d23 1.91.39 2026-04-13 13:11:16 +00:00
Mihai PLESA 34594bbbeb 1.91.38 2026-04-13 14:01:46 +01:00
Brian R. Bondy 92225f368f Remove accidentally committed docs (#35454) 2026-04-13 08:32:18 -04:00
Aleksei Khoroshilov d00725b79c Remove container storage on container removal. (#35106)
* Remove container storage on container removal.

* Review fixes.

* Add comments to the delegate.

* Add delegate unit tests.
2026-04-13 19:07:12 +07:00
brave-builds 6babab0b13 1.91.37 2026-04-13 12:02:56 +00:00
Sangwoo Ko 2f5f4361c8 Allow tab activation with Ctrl+ScrollWheel when scrollable tab strip is enabled. (#35368)
* Allow tab activation with Ctrl+ScrollWheel when scrollable tab strip is enabled.

We just disabled the feature but we still want to allow the user to activate
the adjacent tab with Ctrl+ScrollWheel.

* Add test
2026-04-13 16:29:45 +07:00
brave-builds 1b384cfe39 1.91.36 2026-04-13 08:37:37 +00:00
Linh 1b40fb9139 Bump version to v1.91.35 (#35452) 2026-04-13 09:33:23 +01:00
Jay Harris 6685a5d2d6 [Shields]: Fix host display with numerical subdomain (#35446) 2026-04-13 15:17:10 +12:00
Jay Harris 6392c4336e [AI Chat]: Reland "AI Chat scroll to most recent user message" (#35447)
This reverts commit f12f9c76ed and fixes the reason for the revert
2026-04-13 05:08:50 +02:00
Pavel Beloborodov 34034c479f [Email Aliases] Limit Reached dialog (#35208)
* Updated dialogs width (as defined in Figma).
* Added strings for Limit Reached dialog.
* Added Limit Reached content.
* Limit Reached dialog integrated.
* Updated storybook.
2026-04-13 09:25:22 +07:00
Szilard Szaloki 9b419a919d Bumps Nala to HEAD. (#35445) 2026-04-13 14:16:14 +12:00
Simon Hong 3e71464ac3 Added comment to BraveAppMenu::OnMenuClosed() (#35442) 2026-04-12 09:03:17 +09:00
r0hit0303 a1c4699820 Fix failing audit deps (#35443)
This change updates the affected axios module to the [recommended](https://github.com/advisories/GHSA-fvcv-3m26-pcqx) 1.15.0 version. 

Tested the change locally via `npm run audit_deps`. 

Resolves brave/brave-browser#54412
2026-04-11 18:44:47 +02:00
Kyle Den Hartog 9d77270e4e fix: add wdp_ref and leo_ref inputs to socket-fix.yml (#35423)
Extends the brave-core socket-fix workflow to accept optional commit
hashes for web-discovery-project (DEPS) and @brave/leo (package.json).
When provided, the workflow updates these references before running
socket fix, enabling a single PR for both upstream hash bumps and
direct transitive dependency fixes. Also makes issue_link required
so brave-core PRs always close the tracking issue.
2026-04-11 19:32:16 +12:00
Aleksei Seren 6fecbef6b7 Fix use-after-free crash in BraveAppMenu::OnMenuClosed (#35436)
Prior to the current fix `AppMenu::OnMenuClosed` was called before
`menu_metrics_->RecordMenuDismiss`.
On macOS, entering full screen while the menu is open causes
`AppMenu::OnMenuClosed` call to trigger destruction of `BraveAppMenu`,
leaving `menu_metrics_` dangling by the time `RecordMenuDismiss` executes.
Reordering ensures `menu_metrics_` is accessed before `BraveAppMenu` is
destructed.
2026-04-11 06:08:19 +02:00
cdesouza-chromium 9e7e12bcd9 [brockit] Authorship reassingment (#35397)
This PR adds authorship reassingment to brockit. This feature will allow
anyone to reassing the author of any given commit in a `cr` branch. This
is important to maintain our git history closer to the reality of who
should have attribution for each change.

The basics are:

```sh
tools/cr/brockit.py reassign <commit_hash>
```

The `reassign` command creates an empty commit with a `reassing!`
prefix, similar to a simple `fixup` change. However, this is only then
picked up when running `rebase` with `--squash-minor-bumps`.

```
tools/cr/brockit.py rebase --squash-minor-bumps
```

At this point the reassign change is moved above the original change,
and the original change is then squashed into the reassign change,
resulting on a natural change of authors as the original commit is
collapsed into the reassignment one.

Notes on discussions relating to this feature design:

In this particular implementation for this PR, it is necessary to call
rebase `--squash-minor-bumps` to have the necessary
reordering/squashing dance to take place that results in the authorship
being swapped (it is perfectly possible to drop `--squash-minor-bumps`
as a requirement, and make reassignment handling integral to regular
brockit rebase but I kept it behind that flag for now for the sake of
expediency).

 - Pros: with this method, one can flag a commit for reassignment, but
   doesn't need to immediately force push the branch, as the
   reassignment only takes place once the daily rebase occurs.

 - Cons: Brockit handles the commit message readjustment that is
   necessary when squashing the original commit into the reassignment
   commit, however if brockit rebase `--squash-minor-bumps` runs into
   rebase conflicts, this breaks the editing chain, and requires the
   user to manually call `git rebase --continue` and manually fix the
   commit message for the squash. This is not a big deal as we already
   do this for the minor bumps messages whenever conflicts occur, but
   it is a break on automation flow. There could be room for something
   like `brockit rebase --continue` to be honest. The other issue is
   that we are adding extra tasks to the whole rebase thing, and
   unknown bugs could end up interacting with each other (hopefully
   won't ever be the case). Of less importance, but still of notice,
   there are particular cases I have not completely tested, like
   reassigning a bump commit (e.g. Conflict-resolved patches from
   Chromium, etc) that is supposed to be squashed when squashing bumps,
   so there could be concerns about both types of squash interacting,
   which would either require better rebase checks for these corner
   cases, or preventing users from reassigning authorship for brockit
   generated commits (both options a no biggie).

There is a different way of going about this that this PR has not
pursued: `brockit reassing` immediately rebases doing the whole
reordering/squashing. This means each call to reassign does create a
`reassign!` commit but it immediately runs an interactive rebase to
squash it with the change it is targeting.

 - Pros: no chance for conflicts during this process, which means that
   the user would never have to deal with occasionally having to edit
   the the commit message due to rebase conflicts. It also removes any
   of these concerns from brockit's rebasing code, leaving less room
   for bugs, as no squashing of fixups would be taking place.

 - Cons: An imediate `rebase --interactive` would mean partial
   rewrites of the tree, which requires force pushes to origin.

This alternative approach seemed a bit more work to implement. Later,
if preferred, we could also provide this second option with a flag
(e.g. `brockit reassign --now`) and reuse most of the implementation
details for the rebase case.

Resolves https://github.com/brave/brave-browser/issues/54151
2026-04-10 21:45:58 +01:00
Brian CliftonandShivan d7cee10cab Allow users to disable extension updates via brave://flags (#35301)
* Create a new feature for toggling extension updates

Also creates an entry on brave://flags

Fixes https://github.com/brave/brave-browser/issues/7200

* Wire up the extension update check to the feature

* Update browser/about_flags.cc

Co-authored-by: Shivan <shivankaulsahib@gmail.com>

---------

Co-authored-by: Shivan <shivankaulsahib@gmail.com>
2026-04-10 13:40:20 -07:00
Anthony Tseng b7ef1d5d4e Add page content extraction for history embeddings after Cr147 (#35130)
Use upstream page content extraction pipeline

Enable the upstream PageContentAnnotationsWebContentsObserver by:
- Overriding OptimizationGuideKeyedServiceFactory to return the service
  when kHistoryEmbeddings is enabled (even with kOptimizationHints
  disabled), so PageContentAnnotationsService can construct
- Overriding PageContentAnnotationsServiceFactory and
  PageContentExtractionServiceFactory to check kHistoryEmbeddings
  instead of upstream ShouldEnablePageContentAnnotations

The OptimizationGuideKeyedService is safe to enable because Brave
blocks remote fetching via IsUserPermittedToFetchFromRemoteOptimizationGuide
returning false.
2026-04-10 19:44:59 +02:00
Brian R. Bondy c72425ff09 [Brave Origin] Set window icon on startup dialog (#35427)
* [Brave Origin] Set window icon on startup dialog

The BraveOriginStartupView did not override any WidgetDelegate icon
methods, causing incorrect icons in taskbars/menus on Linux and macOS.

Override GetWindowAppIcon(), GetWindowIcon(), and ShouldShowWindowIcon()
to return the branded product logo (IDR_PRODUCT_LOGO_128).

* Add chrome_unscaled_resources GN dependency for window icon
2026-04-10 12:51:33 -04:00