diff --git a/BUILD.gn b/BUILD.gn index dd75ffe7728b..6281a3a9061d 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -285,6 +285,7 @@ process_version("generate_version") { template_file = "version.version" extra_args = [ "-e", "BRAVE_BROWSER_VERSION=\"$brave_version\"" ] output = "$root_out_dir/version" + process_only = true } if (!is_android && !is_ios) { diff --git a/app/app_management_strings.grdp b/app/app_management_strings.grdp index cabba467e411..a174561ebf78 100644 --- a/app/app_management_strings.grdp +++ b/app/app_management_strings.grdp @@ -49,8 +49,8 @@ Permissions - - More permissions + + More settings and permissions This app can: @@ -76,4 +76,13 @@ Version: $14.0 + + Pinned by administrator + + + Contacts + + + Storage + diff --git a/app/brave_main_delegate.cc b/app/brave_main_delegate.cc index 97564b7fabe3..79c2c5dd19fb 100644 --- a/app/brave_main_delegate.cc +++ b/app/brave_main_delegate.cc @@ -149,17 +149,16 @@ bool BraveMainDelegate::BasicStartupComplete(int* exit_code) { #if BUILDFLAG(ENABLE_EXTENSIONS) extensions_features::kNewExtensionUpdaterService.name, #endif -#if defined(OS_LINUX) - // Enable webui dark on linux. + // Enable webui dark theme: @media (prefers-color-scheme: dark) is gated on + // this feature. features::kWebUIDarkMode.name, -#endif omnibox::kSimplifyHttpsIndicator.name, }; // Disabled features. const std::unordered_set disabled_features = { autofill::features::kAutofillServerCommunication.name, - network::features::kNetworkService.name, + features::kLookalikeUrlNavigationSuggestionsUI.name, unified_consent::kUnifiedConsent.name, }; command_line.AppendFeatures(enabled_features, disabled_features); diff --git a/app/brave_main_delegate_browsertest.cc b/app/brave_main_delegate_browsertest.cc index 56b7da947ee9..a1338af02ab2 100644 --- a/app/brave_main_delegate_browsertest.cc +++ b/app/brave_main_delegate_browsertest.cc @@ -45,7 +45,6 @@ IN_PROC_BROWSER_TEST_F(BraveMainDelegateBrowserTest, DisabledFeatures) { &autofill::features::kAutofillServerCommunication, &features::kAudioServiceOutOfProcess, &features::kDefaultEnableOopRasterization, - &network::features::kNetworkService, &unified_consent::kUnifiedConsent, &features::kLookalikeUrlNavigationSuggestionsUI, }; diff --git a/app/brave_strings.grd b/app/brave_strings.grd index a46827ed9f07..c530baf42d46 100644 --- a/app/brave_strings.grd +++ b/app/brave_strings.grd @@ -589,7 +589,10 @@ Brave is unable to recover your settings. - + + About &Brave + + About &Brave OS @@ -615,9 +618,6 @@ Brave is unable to recover your settings. - - Sign in to sync and personalize Brave across your devices - Sync and personalize Brave across your devices @@ -737,6 +737,12 @@ Signing in anyway will merge Brave information like bookmarks, history, and othe Brave OS could not sync your data due to an error signing in. + + You clear cookies when you quit Brave. To keep syncing, change this $1settings. + + + settings + @@ -1149,40 +1155,6 @@ Please check your email at $2jane.doe@example.com Welcome to Brave - - Take Brave everywhere - - - Web browsing with Brave smarts - - - Not now - - - Sync and personalize Brave across your devices - - - - - - - Welcome to Brave - - - Get to Brave faster - - - Make Brave your default browser - - - Pin Brave to your taskbar - - - Select <div class="logo-small"></div> <strong>Brave</strong> - - - Click <strong>Switch anyway</strong>, if it appears - @@ -1247,6 +1219,12 @@ Please check your email at $2jane.doe@example.com Share a Brave tab + + + + Help us improve Brave + + diff --git a/app/generated_resources.grd b/app/generated_resources.grd index eb4a588171f3..3874134c36bb 100644 --- a/app/generated_resources.grd +++ b/app/generated_resources.grd @@ -901,8 +901,8 @@ are declared in tools/grit/grit_rule.gni. Save page &as... - - Distill page + + Toggle distilled page contents More too&ls @@ -2902,7 +2902,7 @@ are declared in tools/grit/grit_rule.gni. Sharing $1youtube.com to $2meet.google.com - Share this tab + Share this tab instead Stop @@ -3196,7 +3196,6 @@ are declared in tools/grit/grit_rule.gni. No-op Service - Installed theme "$1Snowflake Theme" @@ -3512,6 +3511,9 @@ are declared in tools/grit/grit_rule.gni. Read and change anything you type + + Launch and exit managed guest sessions + Display UI on the login screen @@ -3687,6 +3689,9 @@ are declared in tools/grit/grit_rule.gni. Replace the page you see when opening a new tab + + Run in the background when requested by a cooperating native application + @@ -4403,20 +4408,6 @@ Keep your key file in a safe place. You will need it to create new versions of y Updated just now - - - This page will use a lot of data. - - - Page paused. - - - Continue - - - Stop using data on this page - - Lite mode now makes browsing faster on all pages, including HTTPS. @@ -4830,9 +4821,6 @@ Keep your key file in a safe place. You will need it to create new versions of y Restore default shortcuts - - Customize this page - Brave backgrounds @@ -4932,12 +4920,27 @@ Keep your key file in a safe place. You will need it to create new versions of y Most visited sites - + Shortcuts are suggested based on websites you visit often - + Shortcuts are curated by you + + Current theme you have installed + + + Uninstall + + + Select color + + + Default + + + Hex color value + @@ -5034,8 +5037,8 @@ Keep your key file in a safe place. You will need it to create new versions of y Remember my choice - - Use app + + Open Stay in Brave @@ -5264,7 +5267,7 @@ Keep your key file in a safe place. You will need it to create new versions of y - Nope + No thanks @@ -6253,6 +6256,25 @@ Keep your key file in a safe place. You will need it to create new versions of y + + + + Call from your devices + + + Call from $1Jimmy's Pixel + + + + + + Call from Your Devices + + + Call from $1Jimmy's Pixel + + + @@ -6730,45 +6752,22 @@ Keep your key file in a safe place. You will need it to create new versions of y - - You've signed in and turned on Sync - - + Turn on sync? - + Sync your bookmarks, passwords, history, and more on all your devices - + Brave may use your history to personalize Search, ads, and other Brave services - + You can always choose what to sync in settings. - - - - Brave Sync - - - Your bookmarks, history, passwords, and other settings will be synced to your Brave Account so you can use them on all your devices - - - Personalize Brave services - - - Brave may use your browsing history to personalize Search, ads, and other Brave services - - - Brave may use your browsing history to personalize Search and other Brave services - - - Want to manage sync and personalization before they’re turned on? Visit <a id="settingsLink" href="chrome://settings">Settings</a></a>. - - + Yes, I'm in - + Settings @@ -7137,20 +7136,17 @@ Please help our engineers fix this problem. Tell us what happened right before y Sign in to $1Brave - + Sync is disabled by your administrator. - + Sync has been stopped via the Brave Dashboard. Confirm sync settings to start sync. - - Error signing in. - - - Oops, Sync has stopped working. + + Setup in progress... Sync isn’t working. Try signing in again. @@ -7201,20 +7197,12 @@ Please help our engineers fix this problem. Tell us what happened right before y Advanced settings - - - Setup in progress... - - - - - Please wait... - - - - - Sync everything - + + + + Please wait... + + @@ -7229,16 +7217,18 @@ Please help our engineers fix this problem. Tell us what happened right before y $1Sept 1, 2012. This doesn't include payment methods and addresses from Brave Pay. - - - Not signed in to $1Brave - - - (You're missing out—$1sign in) - - - sign in - + + + + Not signed in to $1Brave + + + (You're missing out—$1sign in) + + + sign in + + @@ -7258,7 +7248,6 @@ Please help our engineers fix this problem. Tell us what happened right before y This page could not be translated - Options @@ -7269,6 +7258,12 @@ Please help our engineers fix this problem. Tell us what happened right before y Change languages + + More languages... + + + Page is not in $1French ? + Translate @@ -7317,6 +7312,12 @@ Please help our engineers fix this problem. Tell us what happened right before y Language settings + + Language to translate into + + + Page language to translate + @@ -7328,6 +7329,12 @@ Please help our engineers fix this problem. Tell us what happened right before y Change Languages + + More Languages... + + + Page Is Not In $1French ? + Translate @@ -7376,10 +7383,19 @@ Please help our engineers fix this problem. Tell us what happened right before y Language Settings + + Language To Translate Into + + + Page Language To Translate + Unknown + + Reset + @@ -7598,6 +7614,22 @@ Please help our engineers fix this problem. Tell us what happened right before y Check Grammar With Spelling + + + Substitutions + + + Show Substitutions + + + Smart Quotes + + + Smart Dashes + + + Text Replacement + Always Show Bookmarks Bar @@ -8466,38 +8498,6 @@ Please help our engineers fix this problem. Tell us what happened right before y - - - Identity API Token Cache - - - Access Token - - - Extension Name - - - Extension Id - - - Token Status - - - Not Found - - - Token Present - - - Expiration Time - - - Scopes - - - Revoke - - A fast, simple, and secure web browser, built for the modern web. @@ -8757,10 +8757,10 @@ Please help our engineers fix this problem. Tell us what happened right before y Entered window overview mode - + Entered full screen - + Exited full screen @@ -8789,6 +8789,12 @@ Please help our engineers fix this problem. Tell us what happened right before y Refresh + + Clear + + + No log entries + Show: @@ -8972,16 +8978,16 @@ Please help our engineers fix this problem. Tell us what happened right before y - + No nearby devices found. - $1www.google.com wants to scan for nearby Bluetooth devices, the following devices have been found: + $1www.google.com wants to scan for nearby Bluetooth devices. The following devices have been found: - + Allow - + Block @@ -9065,6 +9071,17 @@ Please help our engineers fix this problem. Tell us what happened right before y Ads blocked on this site + + + Details + + + Ad removed. + + + This ad uses too many resources for your device, so Brave removed it. + + Windows Utilities @@ -9088,22 +9105,6 @@ Please help our engineers fix this problem. Tell us what happened right before y - - - - The web browser by Brave, for you - - - Sign in to Brave with your Brave Account to get your bookmarks, history, passwords, and other settings on all your devices. - - - Sign in - - - No thanks - - - @@ -9138,31 +9139,6 @@ Please help our engineers fix this problem. Tell us what happened right before y - - - - Open Windows Settings - - - Click <strong>Microsoft Edge</strong> under Web Browser - - - Switch anyway - - - Right click the <div class="logo-small"></div> icon in the taskbar - - - Select <strong>Pin to taskbar</strong> - - - Pin to taskbar - - - Continue - - - @@ -9243,6 +9219,101 @@ Please help our engineers fix this problem. Tell us what happened right before y Upload + + + + Save changes to $1README.md? + + + Save changes to files? + + + $1example.com will be able to save your changes directly to $2README.md. The site can save changes until you close this tab. + + + $1example.com will be able to save your changes directly to the files in $2My Project. The site can save changes until you close this tab. + + + Save changes + + + + + This page is allowed to save to files. + + + This page is allowed to view all the files in a folder on your device. + + + $1example.com can save your changes directly to $2README.md + + + $1example.com can save your changes directly to the following files + + + $1example.com can save your changes directly to the files in $2My Project + + + $1example.com can save your changes directly to the following folders + + + $1example.com can save your changes directly to the following files and folders + + + $1example.com can view all the files in $2My Project + + + $1example.com can view all the files in the following folders + + + $1example.com can view and save your changes directly to the following files and folders + + + Save changes + + + View changes + + + {0, plural, offset:2 + =1 {{1}README.md} + =2 {{1}README.md, {2}Brave.png} + other {{1}README.md, {2}Brave.png, and # more} + } + + + Expand... + + + Collapse... + + + Remove access + + + + + + Can't save to this folder + + + $1example.com can't save your changes to this folder because it contains system files. + + + Choose a different folder + + + + + Let site view files? + + + $1example.com will be able to view all files in $2My Project. The site can see any changes to the folder until you close this tab. + + + View files + + @@ -9505,6 +9576,9 @@ Please help our engineers fix this problem. Tell us what happened right before y Allow + + Try again + @@ -9531,6 +9605,16 @@ Please help our engineers fix this problem. Tell us what happened right before y Exit Private + + + + + Take Survey + + + Your feedback is important to us. + + - + diff --git a/app/media_router_strings.grdp b/app/media_router_strings.grdp index d57bb063745a..c2062a6f63c2 100644 --- a/app/media_router_strings.grdp +++ b/app/media_router_strings.grdp @@ -3,43 +3,14 @@ - - Media Router - Display on another screen &Cast... - - Cast - - - - - Back - - - Close - - - Search - - - View cast mode list - - - View device list - - - Stop, $1Living Room TV, $2Casting YouTube - - - Cast to - Cast $1google.com @@ -54,15 +25,6 @@ - - Select source - - - Share your screen - - - Stream a video or audio file - Cast $1my_media.mp3 @@ -93,39 +55,7 @@ Optimize fullscreen videos - - - Enable casting to cloud-based services like Brave Hangouts. - - - - Welcome to the Cast experience in Brave! - - - You can use this feature to display content from Brave on your TV or other devices. - - - - - Welcome to the Cast experience in Brave! - - - You can use this feature to display content from Brave on your TV or other devices. - - - - Ok, got it - - - - - Dismiss - - - - Error - Unable to cast $1youtube.com. @@ -135,9 +65,6 @@ Unable to cast tab. - - Only one session can be created at a time. - Unable to cast desktop. @@ -148,59 +75,6 @@ Unable to cast $1my_media.mp3. - - - Casting: $1Video - - - Cast - - - Stop - - - Play - - - Pause - - - Mute - - - Unmute - - - Seek - - - Volume - - - Current time - - - Duration - - - Smooth Motion [beta] - - - Use high bandwidth for best video or animation. Other people with slow connections may not see your content. - - - Always use mirroring - - - Show fullscreen videos on - - - Both screens - - - Remote screen - - Looking for devices @@ -230,14 +104,6 @@ Source not supported - - - Search - - - No matches - - Audio/Video diff --git a/app/onboarding_welcome_strings.grdp b/app/onboarding_welcome_strings.grdp index a06b3485c2e5..3793c632f9e2 100644 --- a/app/onboarding_welcome_strings.grdp +++ b/app/onboarding_welcome_strings.grdp @@ -2,9 +2,6 @@ - - Get started - Next @@ -91,9 +88,6 @@ Get Brave Search and Brave smarts everytime you browse - - Skip - Set as default diff --git a/app/profiles_strings.grdp b/app/profiles_strings.grdp index ecc95783e001..c4e6e84db669 100644 --- a/app/profiles_strings.grdp +++ b/app/profiles_strings.grdp @@ -469,6 +469,9 @@ Add person + + Name + The new user couldn't be created. Please check your hard drive space and permissions and try again. diff --git a/app/settings_brave_strings.grdp b/app/settings_brave_strings.grdp index f52ba6a1365d..2c00aace09cb 100644 --- a/app/settings_brave_strings.grdp +++ b/app/settings_brave_strings.grdp @@ -3,13 +3,13 @@ + + About Brave + + + Get help with Brave + - - About Brave - - - Get help with Brave - Updating Brave @@ -24,14 +24,19 @@ - + About Brave OS - + Get help with Brave OS + + + Clear cookies and site data when you quit Brave + + Brave Pay (copied to Brave) diff --git a/app/settings_strings.grdp b/app/settings_strings.grdp index a833a66f7a1d..b6a5a2494e97 100644 --- a/app/settings_strings.grdp +++ b/app/settings_strings.grdp @@ -12,6 +12,9 @@ + + Continue + More actions @@ -136,9 +139,6 @@ Download update using mobile data - - Continue - @@ -150,6 +150,12 @@ Report an issue + + Internet connection required + + + See what's new + Checking for updates @@ -163,6 +169,78 @@ + + Captions + + + Text size + + + Text font + + + Text color + + + Text opacity + + + Background opacity + + + 0 + + + 100 + + + Text shadow + + + None + + + Raised + + + Depressed + + + Uniform + + + Drop shadow + + + Background color + + + Black + + + White + + + Red + + + Green + + + Blue + + + Yellow + + + Cyan + + + Magenta + + + Default + Accessibility @@ -191,6 +269,42 @@ Select and customize text-to-speech voices + + Switch Access settings + + + Switch action assignment + + + Space + + + Enter + + + None + + + Select + + + Next + + + Previous + + + Auto-scan + + + Enable auto-scan + + + Scanning speed: $11.5s + + + $11.5s + Show large mouse cursor @@ -464,36 +578,6 @@ - - - Kiosk Next Shell (Dev) - - - Kiosk Next Shell - - - Enables the Kiosk Next Shell for the next sign in. - - - Disable the Kiosk Next Shell and return to the normal Brave OS experience. - - - Turn off - - - Turn off the Kiosk Next Shell - - - Turn on the Kiosk Next Shell - - - This will turn off the Kiosk Next Shell, sign you out and return you to the normal Brave OS experience. - - - This will sign you out and turn on the Kiosk Next Shell. - Linux (Beta) @@ -543,6 +627,12 @@ Replace your Linux apps and files with a previous backup + + Confirm Restore + + + Restoring from a backup will delete existing Linux applications and data in your Linux files folder. + USB preferences @@ -564,7 +654,7 @@ Plugin VM - Manage settings for running Plugin VM on your $1Bravebook + Set up permissions Give access to printers @@ -596,7 +686,7 @@ Brave Play Store - Install apps and games from Brave Play on your Bravebook. <a target="_blank" href="$1https://google.com/">Learn more</a> + Install apps and games from Brave Play on your $1Bravebook. <a target="_blank" href="$2https://google.com/">Learn more</a> Manage Android preferences @@ -608,6 +698,8 @@ Remove Android apps? + Apps you’ve downloaded from Brave Play will be deleted from this Bravebook. <br><br> @@ -629,6 +721,9 @@ Manage your apps + + Open App Management + @@ -1027,6 +1122,9 @@ Connected + + Connected, $1100% battery + Not connected @@ -1362,6 +1460,12 @@ Add Printer + + + Saved detected printers to your profile, or add a new printer. + + + Available printers to save Edit @@ -1369,9 +1473,15 @@ Remove + + Configure + Search printers + + Your saved printers + Add a nearby printer @@ -1513,6 +1623,14 @@ End User License Agreement + + Couldn't detect a printer. Please enter printer address again. + + + Unable to set up printer. Please check configuration and try again. + + + @@ -1552,7 +1670,7 @@ Set up or manage network file shares. - Add File Share + Add file share File share URL @@ -1566,6 +1684,9 @@ Password (optional) + + Remember sign-in info + Share mounted successfully. @@ -1591,7 +1712,7 @@ Invalid URL format. Server must be specified as a host name when SSO authentication is used. - Authentication Method + Authentication method Standard @@ -1601,67 +1722,127 @@ - + - - Kerberos Accounts + + Kerberos tickets - - Kerberos Accounts + + Kerberos tickets - - All Kerberos Accounts for single sign-on into certain apps and websites and file shares can be managed here. + + Choose a ticket to use for authentication. <a target="_blank" href="$1https://google.com/">Learn more</a> - - Accounts + + Tickets - - Add account + + Add a ticket - - Remove account from this device + + Refresh now - - Signed in + + Set as active ticket - - Sign in again + + Remove from this device - - Sign in + + Ticket removed - - Add Kerberos Account + + Valid for $17 hours 12 minutes - - Username + + Expired + + + Refresh + + + Active - + + Add a Kerberos ticket + + + Refresh a Kerberos ticket + + + To automatically refresh a ticket, check “Remember password.” Your password will be stored on your device only. + + + Kerberos username + + Password - + + Remember password + + + Refresh + + + Advanced + + + Configure Kerberos + + + Edit the configuration file + + Network problem or bad realm - - Username invalid (should be user@realm.com) + + Username invalid - + Username not known to server - + + A ticket with this username already exists + + Contacting server for realm failed - + Password invalid - + Password expired - + KDC does not support encryption type - - Oops! Something went wrong (error code $1123). + + Couldn't get Kerberos ticket. Try again, or contact your organization's device admin. (Error code $1123). + + + Section nested in group: $1[realms] (inside a block of curly braces '{ ... }) + + + Section syntax error: $1[realms + + + Expected opening curly brace: $1ticket_lifetime = 1d (in the line after 'EXAMPLE.COM = )' + + + Extra curly brace: $1} (without having a corresponding opening curly brace '{') + + + Relation syntax error: $1ticket_lifetime : 1d + + + Configuration option not supported: $1ccache_type = 1 + + + Section not supported: $1[appdefaults] + + + Failed to parse configuration @@ -1828,6 +2009,9 @@ Allow other users of this device to use this network + + Automatically connecting to a hidden network allows others to see your device and some network settings, and is not recommended. + Save identity and password @@ -1897,6 +2081,15 @@ Allow mobile data roaming + + On, not roaming + + + On, roaming + + + Roaming off + Mobile data network @@ -1984,6 +2177,8 @@ Port + + Change PIN @@ -1999,7 +2194,7 @@ Change - + Enter @@ -2032,6 +2227,22 @@ Enter PIN Unlock Key + + Incorrect PIN. Retries left: $13. + + + Incorrect PUK. Retries left: $13. + + + Invalid PIN. Retries left: $13. + + + Invalid PUK. Retries left: $13. + + + PIN values do not match. + + Prefer this network @@ -2499,16 +2710,9 @@ - - - Languages and input - - - - - Languages - - + + Languages + Language @@ -2876,12 +3080,6 @@ Brave Assistant - - Related info - - - Let the Assistant show you info related to what's on your screen - "Ok Brave" @@ -2903,9 +3101,6 @@ Voice match - - Teach your Assistant to recognize your voice - Retrain @@ -2987,8 +3182,8 @@ Do not allow sites to see text and images copied to the clipboard - - Cookies + + Cookies and site data Handlers @@ -3377,9 +3572,6 @@ Prevent third-party websites from saving and reading cookie data - - Keep local data only until you quit your browser - Adobe Flash Player Storage settings @@ -3581,9 +3773,6 @@ PINs do not match - - Continue - Show lock screen when waking from sleep @@ -3639,11 +3828,14 @@ Note: Your fingerprint may be less secure than a strong password or PIN. - delete [$1Fingerprint 1], button + delete [$1Fingerprint 1] Finger $11 + + Enable Brave media playback at lock screen + Add account @@ -3665,12 +3857,21 @@ Not updated yet + + More actions, $1abcd@google.com + Update account Sign in + + Update account, $1abcd@google.com + + + Sign in, $1abcd@google.com + Remove this account @@ -3680,15 +3881,30 @@ Primary account + + $1abcd@google.com was removed from this device + Set up your fingerprint - + + Touch the power button with your finger - + The fingerprint sensor is in the power button. Touch it lightly with any finger. + + + Touch the fingerprint sensor with your finger + + + The fingerprint sensor is the bottom right-hand key on your keyboard. Touch it lightly with any finger. + + + The fingerprint sensor is the top right-hand key on your keyboard. Touch it lightly with any finger. + + Fingerprint added. @@ -4610,8 +4826,14 @@ Use hardware acceleration when available - - Open proxy settings + + Open your computer's proxy settings + + + $1Brave is using proxy settings from an extension + + + $1Brave is using proxy settings from your administrator @@ -4624,7 +4846,7 @@ Android phone - Connect your Bravebook with your phone. <a target="_blank" href="$1https://google.com/">Learn more</a> + Connect your $1Bravebook with your phone. <a target="_blank" href="$2https://google.com/">Learn more</a> No eligible devices. <a target="_blank" href="$1https://google.com/">Learn more</a> @@ -4645,7 +4867,7 @@ Disabled - Unlock your Bravebook with your phone. <a target="_blank" href="$1https://google.com/">Learn more</a> + Unlock your $1Bravebook with your phone. <a target="_blank" href="$2https://google.com/">Learn more</a> Instant Tethering @@ -4657,16 +4879,16 @@ Messages - Send and receive text messages from your Bravebook. <a target="_blank" href="$1https://google.com/">Learn more</a> + Send and receive text messages from your $1Bravebook. <a target="_blank" href="$2https://google.com/">Learn more</a> Forget phone - Disconnect your phone from your Bravebook + Disconnect your phone from your $1Bravebook - Disconnect your phone from your Bravebook. They will no longer connect automatically. + Disconnect your phone from your $1Bravebook. They will no longer connect automatically. @@ -4929,6 +5151,9 @@ PIN must be at least 4 characters + + Too short + PIN must be at most 63 characters @@ -4953,4 +5178,52 @@ The security key is locked because the wrong PIN was entered too many times. To unlock it, remove and reinsert it. + + Show PINs + + + Hide PINs + + + Manage sign-in data + + + View and delete the sign-in data stored on your security key + + + Security key sign-in data + + + Website + + + Username + + + To view sign-in data, insert and touch your security key + + + To view sign-in data, enter the PIN for your security key. If you don’t know the PIN, you’ll need to reset the security key. + + + This security key does not have any sign-in data + + + This security key can't store any sign-in data + + + Your security key was removed. + + + Your security key is not protected with a PIN. To manage sign-in data, first create a PIN. + + + Your security key couldn't be read + + + Your sign-in data was deleted + + + Your sign-in data couldn't be deleted + diff --git a/app/vr_strings.grdp b/app/vr_strings.grdp index fabd938fef6c..353e8953e0db 100644 --- a/app/vr_strings.grdp +++ b/app/vr_strings.grdp @@ -7,10 +7,6 @@ Press App button to exit - - XR Isolated Device Service - - Site is tracking your location @@ -150,18 +146,12 @@ New private tab - - New private tab - Settings Close private tabs - - Close private tabs - Tabs diff --git a/browser/autocomplete/brave_autocomplete_provider_client_browsertest.cc b/browser/autocomplete/brave_autocomplete_provider_client_browsertest.cc index ce2b4398f487..47b8370d1efd 100644 --- a/browser/autocomplete/brave_autocomplete_provider_client_browsertest.cc +++ b/browser/autocomplete/brave_autocomplete_provider_client_browsertest.cc @@ -36,8 +36,8 @@ IN_PROC_BROWSER_TEST_F(BraveAutocompleteProviderClientTest, incognito_client.GetAutocompleteClassifier()); EXPECT_EQ(normal_client.GetHistoryService(), incognito_client.GetHistoryService()); - EXPECT_EQ(normal_client.GetContextualSuggestionsService(true), - incognito_client.GetContextualSuggestionsService(true)); + EXPECT_EQ(normal_client.GetRemoteSuggestionsService(true), + incognito_client.GetRemoteSuggestionsService(true)); EXPECT_EQ(normal_client.GetDocumentSuggestionsService(true), incognito_client.GetDocumentSuggestionsService(true)); } diff --git a/browser/autocomplete/brave_autocomplete_scheme_classifier.cc b/browser/autocomplete/brave_autocomplete_scheme_classifier.cc index e5f2d3f84dd9..a488758c8d17 100644 --- a/browser/autocomplete/brave_autocomplete_scheme_classifier.cc +++ b/browser/autocomplete/brave_autocomplete_scheme_classifier.cc @@ -31,7 +31,7 @@ metrics::OmniboxInputType BraveAutocompleteSchemeClassifier::GetInputTypeForScheme( const std::string& scheme) const { if (scheme.empty()) { - return metrics::OmniboxInputType::INVALID; + return metrics::OmniboxInputType::EMPTY; } if (base::IsStringASCII(scheme) && base::LowerCaseEqualsASCII(scheme, kBraveUIScheme)) { diff --git a/browser/brave_browser_main_extra_parts.cc b/browser/brave_browser_main_extra_parts.cc index 62f443d90613..775dec8e09a3 100644 --- a/browser/brave_browser_main_extra_parts.cc +++ b/browser/brave_browser_main_extra_parts.cc @@ -18,6 +18,10 @@ BraveBrowserMainExtraParts::BraveBrowserMainExtraParts() { BraveBrowserMainExtraParts::~BraveBrowserMainExtraParts() { } +void BraveBrowserMainExtraParts::PostBrowserStart() { + g_brave_browser_process->StartBraveServices(); +} + void BraveBrowserMainExtraParts::PreMainMessageLoopRun() { #if !defined(OS_ANDROID) brave::AutoImportMuon(); diff --git a/browser/brave_browser_main_extra_parts.h b/browser/brave_browser_main_extra_parts.h index 00c8558068bb..de6f46b7b281 100644 --- a/browser/brave_browser_main_extra_parts.h +++ b/browser/brave_browser_main_extra_parts.h @@ -16,6 +16,7 @@ class BraveBrowserMainExtraParts : public ChromeBrowserMainExtraParts { ~BraveBrowserMainExtraParts() override; // ChromeBrowserMainExtraParts overrides. + void PostBrowserStart() override; void PreMainMessageLoopRun() override; private: diff --git a/browser/brave_browser_process_impl.cc b/browser/brave_browser_process_impl.cc index a599abcd20e0..9607fa257a92 100644 --- a/browser/brave_browser_process_impl.cc +++ b/browser/brave_browser_process_impl.cc @@ -25,7 +25,6 @@ #include "brave/components/brave_shields/browser/referrer_whitelist_service.h" #include "brave/components/brave_shields/browser/tracking_protection_service.h" #include "brave/components/greaselion/browser/greaselion_download_service.h" -#include "chrome/browser/io_thread.h" #include "chrome/common/chrome_paths.h" #include "components/component_updater/component_updater_service.h" #include "components/component_updater/timer_update_scheduler.h" @@ -89,8 +88,14 @@ BraveBrowserProcessImpl::brave_component_updater_delegate() { return brave_component_updater_delegate_.get(); } -void BraveBrowserProcessImpl::ResourceDispatcherHostCreated() { - BrowserProcessImpl::ResourceDispatcherHostCreated(); +ProfileManager* BraveBrowserProcessImpl::profile_manager() { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + if (!created_profile_manager_) + CreateProfileManager(); + return profile_manager_.get(); +} + +void BraveBrowserProcessImpl::StartBraveServices() { ad_block_service()->Start(); ad_block_custom_filters_service()->Start(); ad_block_regional_service_manager()->Start(); @@ -106,13 +111,6 @@ void BraveBrowserProcessImpl::ResourceDispatcherHostCreated() { local_data_files_service()->Start(); } -ProfileManager* BraveBrowserProcessImpl::profile_manager() { - DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); - if (!created_profile_manager_) - CreateProfileManager(); - return profile_manager_.get(); -} - brave_shields::AdBlockService* BraveBrowserProcessImpl::ad_block_service() { if (ad_block_service_) return ad_block_service_.get(); diff --git a/browser/brave_browser_process_impl.h b/browser/brave_browser_process_impl.h index a1cf3286c961..378136ffe96e 100644 --- a/browser/brave_browser_process_impl.h +++ b/browser/brave_browser_process_impl.h @@ -57,10 +57,10 @@ class BraveBrowserProcessImpl : public BrowserProcessImpl { ~BraveBrowserProcessImpl() override; // BrowserProcess implementation. - void ResourceDispatcherHostCreated() override; ProfileManager* profile_manager() override; + void StartBraveServices(); brave_shields::AdBlockService* ad_block_service(); brave_shields::AdBlockCustomFiltersService* ad_block_custom_filters_service(); brave_shields::AdBlockRegionalServiceManager* diff --git a/browser/brave_content_browser_client.cc b/browser/brave_content_browser_client.cc index f5c0d1dec28e..336b2e0759cf 100644 --- a/browser/brave_content_browser_client.cc +++ b/browser/brave_content_browser_client.cc @@ -33,7 +33,6 @@ #include "chrome/browser/profiles/profile.h" #include "chrome/browser/profiles/profile_io_data.h" #include "chrome/common/url_constants.h" -#include "components/content_settings/core/browser/cookie_settings.h" #include "components/prefs/pref_service.h" #include "components/services/heap_profiling/public/mojom/heap_profiling_client.mojom.h" #include "content/browser/frame_host/render_frame_host_impl.h" @@ -137,60 +136,6 @@ void BraveContentBrowserClient::BrowserURLHandlerCreated( ChromeContentBrowserClient::BrowserURLHandlerCreated(handler); } -bool BraveContentBrowserClient::AllowAccessCookie( - const GURL& url, - const GURL& first_party, - content::ResourceContext* context, - int render_process_id, - int render_frame_id) { - GURL tab_origin = first_party; - - if (tab_origin.is_empty()) - tab_origin = BraveShieldsWebContentsObserver::GetTabURLFromRenderFrameInfo( - render_process_id, render_frame_id, -1).GetOrigin(); - - ProfileIOData* io_data = ProfileIOData::FromResourceContext(context); - return - io_data->GetCookieSettings()->IsCookieAccessAllowed(url, tab_origin) && - g_brave_browser_process->tracking_protection_service()->ShouldStoreState( - io_data->GetHostContentSettingsMap(), - render_process_id, - render_frame_id, - url, - tab_origin); -} - -bool BraveContentBrowserClient::AllowGetCookie( - const GURL& url, - const GURL& first_party, - const net::CookieList& cookie_list, - content::ResourceContext* context, - int render_process_id, - int render_frame_id) { - DCHECK_CURRENTLY_ON(BrowserThread::IO); - bool allow = AllowAccessCookie(url, first_party, context, render_process_id, - render_frame_id); - OnCookiesRead(render_process_id, render_frame_id, url, first_party, - cookie_list, !allow); - - return allow; -} - -bool BraveContentBrowserClient::AllowSetCookie( - const GURL& url, - const GURL& first_party, - const net::CanonicalCookie& cookie, - content::ResourceContext* context, - int render_process_id, - int render_frame_id) { - DCHECK_CURRENTLY_ON(BrowserThread::IO); - bool allow = AllowAccessCookie(url, first_party, context, render_process_id, - render_frame_id); - OnCookieChange(render_process_id, render_frame_id, url, first_party, cookie, - !allow); - return allow; -} - content::ContentBrowserClient::AllowWebBluetoothResult BraveContentBrowserClient::AllowWebBluetooth( content::BrowserContext* browser_context, @@ -207,8 +152,7 @@ bool BraveContentBrowserClient::HandleExternalProtocol( bool is_main_frame, ui::PageTransition page_transition, bool has_user_gesture, - network::mojom::URLLoaderFactoryRequest* factory_request, - network::mojom::URLLoaderFactory*& out_factory) { // NOLINT + network::mojom::URLLoaderFactoryPtr* out_factory) { #if BUILDFLAG(ENABLE_BRAVE_WEBTORRENT) if (webtorrent::HandleMagnetProtocol(url, web_contents_getter, page_transition, has_user_gesture)) { @@ -225,7 +169,7 @@ bool BraveContentBrowserClient::HandleExternalProtocol( return ChromeContentBrowserClient::HandleExternalProtocol( url, web_contents_getter, child_id, navigation_data, is_main_frame, - page_transition, has_user_gesture, factory_request, out_factory); + page_transition, has_user_gesture, out_factory); } base::Optional @@ -278,7 +222,7 @@ bool BraveContentBrowserClient::WillCreateURLLoaderFactory( bool is_navigation, bool is_download, const url::Origin& request_initiator, - network::mojom::URLLoaderFactoryRequest* factory_request, + mojo::PendingReceiver* factory_receiver, network::mojom::TrustedURLLoaderHeaderClientPtrInfo* header_client, bool* bypass_redirect_checks) { bool use_proxy = false; @@ -286,13 +230,13 @@ bool BraveContentBrowserClient::WillCreateURLLoaderFactory( use_proxy = ChromeContentBrowserClient::WillCreateURLLoaderFactory( browser_context, frame, render_process_id, is_navigation, is_download, request_initiator, - factory_request, header_client, bypass_redirect_checks); + factory_receiver, header_client, bypass_redirect_checks); // TODO(iefremov): Skip proxying for certain requests? use_proxy |= BraveProxyingURLLoaderFactory::MaybeProxyRequest( browser_context, frame, is_navigation ? -1 : render_process_id, - factory_request); + factory_receiver); return use_proxy; } @@ -356,8 +300,7 @@ bool BraveContentBrowserClient::HandleURLOverrideRewrite(GURL* url, } // no special win10 welcome page - if (url->host() == chrome::kChromeUIWelcomeWin10Host || - url->host() == chrome::kChromeUIWelcomeHost) { + if (url->host() == chrome::kChromeUIWelcomeHost) { *url = GURL(chrome::kChromeUIWelcomeURL); return true; } diff --git a/browser/brave_content_browser_client.h b/browser/brave_content_browser_client.h index 6fdc0fa8d5fe..4b4167b2ee40 100644 --- a/browser/brave_content_browser_client.h +++ b/browser/brave_content_browser_client.h @@ -29,18 +29,6 @@ class BraveContentBrowserClient : public ChromeContentBrowserClient { std::unique_ptr CreateBrowserMainParts( const content::MainFunctionParams& parameters) override; void BrowserURLHandlerCreated(content::BrowserURLHandler* handler) override; - bool AllowGetCookie(const GURL& url, - const GURL& first_party, - const net::CookieList& cookie_list, - content::ResourceContext* context, - int render_process_id, - int render_frame_id) override; - bool AllowSetCookie(const GURL& url, - const GURL& first_party, - const net::CanonicalCookie& cookie, - content::ResourceContext* context, - int render_process_id, - int render_frame_id) override; bool HandleExternalProtocol( const GURL& url, @@ -50,8 +38,7 @@ class BraveContentBrowserClient : public ChromeContentBrowserClient { bool is_main_frame, ui::PageTransition page_transition, bool has_user_gesture, - network::mojom::URLLoaderFactoryRequest* factory_request, - network::mojom::URLLoaderFactory*& out_factory) override; // NOLINT + network::mojom::URLLoaderFactoryPtr* out_factory) override; content::ContentBrowserClient::AllowWebBluetoothResult AllowWebBluetooth( content::BrowserContext* browser_context, @@ -73,7 +60,7 @@ class BraveContentBrowserClient : public ChromeContentBrowserClient { bool is_navigation, bool is_download, const url::Origin& request_initiator, - network::mojom::URLLoaderFactoryRequest* factory_request, + mojo::PendingReceiver* factory_receiver, network::mojom::TrustedURLLoaderHeaderClientPtrInfo* header_client, bool* bypass_redirect_checks) override; @@ -91,9 +78,6 @@ class BraveContentBrowserClient : public ChromeContentBrowserClient { CreateThrottlesForNavigation(content::NavigationHandle* handle) override; private: - bool AllowAccessCookie(const GURL& url, const GURL& first_party, - content::ResourceContext* context, int render_process_id, - int render_frame_id); void OnAllowGoogleAuthChanged(); std::unique_ptr diff --git a/browser/brave_content_browser_client_browsertest.cc b/browser/brave_content_browser_client_browsertest.cc index fbde5e1fda3b..f8b7f1968cdc 100644 --- a/browser/brave_content_browser_client_browsertest.cc +++ b/browser/brave_content_browser_client_browsertest.cc @@ -236,58 +236,6 @@ IN_PROC_BROWSER_TEST_F(BraveContentBrowserClientTest, } #endif -IN_PROC_BROWSER_TEST_F(BraveContentBrowserClientTest, - RewriteWelcomeWin10Host) { - std::vector schemes { - "brave://", - "chrome://", - }; - - for (const std::string& scheme : schemes) { - content::WebContents* contents = - browser()->tab_strip_model()->GetActiveWebContents(); - ui_test_utils::NavigateToURL( - browser(), - GURL(scheme + chrome::kChromeUIWelcomeWin10Host)); - ASSERT_TRUE(WaitForLoadStop(contents)); - - EXPECT_STREQ(base::UTF16ToUTF8(browser()->location_bar_model() - ->GetFormattedFullURL()).c_str(), - "brave://welcome"); - EXPECT_STREQ(contents->GetController().GetLastCommittedEntry() - ->GetVirtualURL().spec().c_str(), - "chrome://welcome/"); - EXPECT_STREQ(contents->GetController().GetLastCommittedEntry() - ->GetURL().spec().c_str(), - "chrome://welcome/"); - } -} - -IN_PROC_BROWSER_TEST_F(BraveContentBrowserClientTest, - RewriteChromeWelcomeWin10) { - std::vector schemes { - "brave://", - "chrome://", - }; - - for (const std::string& scheme : schemes) { - content::WebContents* contents = - browser()->tab_strip_model()->GetActiveWebContents(); - ui_test_utils::NavigateToURL(browser(), GURL(scheme + "welcome-win10/")); - ASSERT_TRUE(WaitForLoadStop(contents)); - - EXPECT_STREQ(base::UTF16ToUTF8(browser()->location_bar_model() - ->GetFormattedFullURL()).c_str(), - "brave://welcome"); - EXPECT_STREQ(contents->GetController().GetLastCommittedEntry() - ->GetVirtualURL().spec().c_str(), - "chrome://welcome/"); - EXPECT_STREQ(contents->GetController().GetLastCommittedEntry() - ->GetURL().spec().c_str(), - "chrome://welcome/"); - } -} - IN_PROC_BROWSER_TEST_F(BraveContentBrowserClientTest, RewriteMagnetURLURLBar) { content::WebContents* contents = browser()->tab_strip_model()->GetActiveWebContents(); @@ -327,8 +275,7 @@ IN_PROC_BROWSER_TEST_F(BraveContentBrowserClientTest, TypedMagnetURL) { content::WebContents* web_contents = browser()->tab_strip_model()->GetActiveWebContents(); content::TestNavigationObserver observer(web_contents); - LocationBar* location_bar = browser()->window()->GetLocationBar(); - ui_test_utils::SendToOmniboxAndSubmit(location_bar, magnet_url().spec()); + ui_test_utils::SendToOmniboxAndSubmit(browser(), magnet_url().spec()); observer.Wait(); EXPECT_EQ(magnet_url(), web_contents->GetLastCommittedURL().spec()); } diff --git a/browser/brave_content_browser_client_unittest.cc b/browser/brave_content_browser_client_unittest.cc index 7fe11d5d87cc..476f86db6139 100644 --- a/browser/brave_content_browser_client_unittest.cc +++ b/browser/brave_content_browser_client_unittest.cc @@ -87,14 +87,3 @@ TEST_F(BraveContentBrowserClientTest, ResolvesSync) { ASSERT_TRUE(BraveContentBrowserClient::HandleURLOverrideRewrite( &url2, nullptr)); } - -TEST_F(BraveContentBrowserClientTest, ResolvesWelcomePage) { - GURL url("chrome://welcome-win10/"); - ASSERT_TRUE(BraveContentBrowserClient::HandleURLOverrideRewrite( - &url, nullptr)); - ASSERT_STREQ(url.spec().c_str(), "chrome://welcome/"); - - GURL url2("chrome://welcome/"); - ASSERT_TRUE(BraveContentBrowserClient::HandleURLOverrideRewrite( - &url2, nullptr)); -} diff --git a/browser/brave_profile_prefs.cc b/browser/brave_profile_prefs.cc index 311f0e69d6a2..ad25ff333f5a 100644 --- a/browser/brave_profile_prefs.cc +++ b/browser/brave_profile_prefs.cc @@ -15,7 +15,7 @@ #include "components/content_settings/core/common/pref_names.h" #include "components/pref_registry/pref_registry_syncable.h" #include "components/safe_browsing/common/safe_browsing_prefs.h" -#include "components/signin/core/browser/signin_pref_names.h" +#include "components/signin/public/base/signin_pref_names.h" #include "components/sync/base/pref_names.h" #include "extensions/buildflags/buildflags.h" #include "extensions/common/feature_switch.h" diff --git a/browser/brave_scheme_load_browsertest.cc b/browser/brave_scheme_load_browsertest.cc index afd7b00b12a0..89f28e9b9df1 100644 --- a/browser/brave_scheme_load_browsertest.cc +++ b/browser/brave_scheme_load_browsertest.cc @@ -223,6 +223,7 @@ IN_PROC_BROWSER_TEST_F(BraveSchemeLoadBrowserTest, CrashURLTest) { content::WindowedNotificationObserver observer( content::NOTIFICATION_WEB_CONTENTS_DISCONNECTED, content::NotificationService::AllSources()); + content::ScopedAllowRendererCrashes allow_renderer_crashes(active_contents()); browser()->OpenURL( content::OpenURLParams(GURL("brave://crash/"), content::Referrer(), WindowOpenDisposition::CURRENT_TAB, diff --git a/browser/extensions/api/brave_extensions_api_client.cc b/browser/extensions/api/brave_extensions_api_client.cc index 564b2f8bd25a..697332fe136d 100644 --- a/browser/extensions/api/brave_extensions_api_client.cc +++ b/browser/extensions/api/brave_extensions_api_client.cc @@ -10,11 +10,13 @@ namespace extensions { bool BraveExtensionsAPIClient::ShouldHideBrowserNetworkRequest( + content::BrowserContext* context, const WebRequestInfo& request) const { if (IsBraveProtectedUrl(request.url)) { return true; } - return ChromeExtensionsAPIClient::ShouldHideBrowserNetworkRequest(request); + return ChromeExtensionsAPIClient::ShouldHideBrowserNetworkRequest(context, + request); } } // namespace extensions diff --git a/browser/extensions/api/brave_extensions_api_client.h b/browser/extensions/api/brave_extensions_api_client.h index 486e784a4138..7de70f56d830 100644 --- a/browser/extensions/api/brave_extensions_api_client.h +++ b/browser/extensions/api/brave_extensions_api_client.h @@ -13,6 +13,7 @@ namespace extensions { class BraveExtensionsAPIClient : public ChromeExtensionsAPIClient { bool ShouldHideBrowserNetworkRequest( + content::BrowserContext* context, const WebRequestInfo& request) const override; }; diff --git a/browser/extensions/api/brave_wallet_api_browsertest.cc b/browser/extensions/api/brave_wallet_api_browsertest.cc index a84179b3d9bb..e468658757fd 100644 --- a/browser/extensions/api/brave_wallet_api_browsertest.cc +++ b/browser/extensions/api/brave_wallet_api_browsertest.cc @@ -11,6 +11,7 @@ #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/ui_test_utils.h" #include "content/public/test/browser_test_utils.h" +#include "extensions/common/extension.h" #include "extensions/common/extension_builder.h" #include "extensions/test/extension_test_message_listener.h" #include "net/dns/mock_host_resolver.h" diff --git a/browser/extensions/brave_base_local_data_files_browsertest.cc b/browser/extensions/brave_base_local_data_files_browsertest.cc index fb7955106620..ca830a948029 100644 --- a/browser/extensions/brave_base_local_data_files_browsertest.cc +++ b/browser/extensions/brave_base_local_data_files_browsertest.cc @@ -14,7 +14,6 @@ #include "brave/components/brave_component_updater/browser/local_data_files_observer.h" #include "brave/components/brave_component_updater/browser/local_data_files_service.h" #include "chrome/browser/extensions/extension_browsertest.h" -#include "chrome/browser/net/url_request_mock_util.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" #include "content/public/test/browser_test_utils.h" @@ -63,9 +62,6 @@ void BaseLocalDataFilesBrowserTest::MaybeSetUpEmbeddedTestServerOnMainThread() { if (!embedded_test_server_directory()) return; - base::PostTaskWithTraits( - FROM_HERE, {content::BrowserThread::IO}, - base::BindOnce(&chrome_browser_net::SetUrlRequestMocksEnabled, true)); host_resolver()->AddRule("*", "127.0.0.1"); } diff --git a/browser/extensions/brave_component_loader.cc b/browser/extensions/brave_component_loader.cc index aea65dff1647..475c5722f187 100644 --- a/browser/extensions/brave_component_loader.cc +++ b/browser/extensions/brave_component_loader.cc @@ -30,13 +30,10 @@ namespace extensions { BraveComponentLoader::BraveComponentLoader( ExtensionServiceInterface* extension_service, - PrefService* profile_prefs, - PrefService* local_state, Profile* profile) - : ComponentLoader(extension_service, profile_prefs, local_state, profile), + : ComponentLoader(extension_service, profile), profile_(profile), - profile_prefs_(profile_prefs) { -} + profile_prefs_(profile->GetPrefs()) {} BraveComponentLoader::~BraveComponentLoader() { } diff --git a/browser/extensions/brave_component_loader.h b/browser/extensions/brave_component_loader.h index e877ad9a1b9c..cbf29ac8017c 100644 --- a/browser/extensions/brave_component_loader.h +++ b/browser/extensions/brave_component_loader.h @@ -19,9 +19,7 @@ namespace extensions { class BraveComponentLoader : public ComponentLoader { public: BraveComponentLoader(ExtensionServiceInterface* extension_service, - PrefService* prefs, - PrefService* local_state, - Profile* browser_context); + Profile* browser_context); ~BraveComponentLoader() override; // Adds the default component extensions. If |skip_session_components| diff --git a/browser/extensions/brave_extension_provider_browsertest.cc b/browser/extensions/brave_extension_provider_browsertest.cc index 41f3996932f6..96ef5802f8c2 100644 --- a/browser/extensions/brave_extension_provider_browsertest.cc +++ b/browser/extensions/brave_extension_provider_browsertest.cc @@ -13,7 +13,6 @@ #include "brave/components/brave_shields/browser/https_everywhere_service.h" #include "chrome/browser/extensions/crx_installer.h" #include "chrome/browser/extensions/extension_browsertest.h" -#include "chrome/browser/net/url_request_mock_util.h" #include "chrome/browser/ui/browser.h" #include "chrome/test/base/ui_test_utils.h" #include "content/public/test/browser_test_utils.h" diff --git a/browser/importer/brave_profile_writer.cc b/browser/importer/brave_profile_writer.cc index dfed484fb1b3..d097fb049e23 100644 --- a/browser/importer/brave_profile_writer.cc +++ b/browser/importer/brave_profile_writer.cc @@ -25,6 +25,7 @@ #include "brave/browser/search_engines/search_engine_provider_util.h" #include "base/files/file_util.h" +#include "base/optional.h" #include "base/strings/string_number_conversions.h" #include "base/time/time.h" #include "base/task/post_task.h" @@ -404,11 +405,10 @@ void OpenImportedBrowserTabs(Browser* browser, entry.set_is_restored(true); e.push_back(entry); - chrome::AddRestoredTab( - browser, e, browser->tab_strip_model()->count(), 0, - "", false, pinned, true, - base::TimeTicks::UnixEpoch(), nullptr, - "", true /* from_session_restore */); + chrome::AddRestoredTab(browser, e, browser->tab_strip_model()->count(), 0, + "", base::nullopt, false, pinned, true, + base::TimeTicks::UnixEpoch(), nullptr, "", + true /* from_session_restore */); } } diff --git a/browser/net/BUILD.gn b/browser/net/BUILD.gn index a6ccd255e8a7..e9f795c68058 100644 --- a/browser/net/BUILD.gn +++ b/browser/net/BUILD.gn @@ -12,10 +12,6 @@ source_set("net") { "brave_common_static_redirect_network_delegate_helper.h", "brave_httpse_network_delegate_helper.cc", "brave_httpse_network_delegate_helper.h", - "brave_network_delegate_base.cc", - "brave_network_delegate_base.h", - "brave_profile_network_delegate.cc", - "brave_profile_network_delegate.h", "brave_proxying_url_loader_factory.cc", "brave_proxying_url_loader_factory.h", "brave_request_handler.cc", @@ -26,8 +22,6 @@ source_set("net") { "brave_static_redirect_network_delegate_helper.h", "brave_stp_util.cc", "brave_stp_util.h", - "brave_system_network_delegate.cc", - "brave_system_network_delegate.h", "brave_system_request_handler.cc", "brave_system_request_handler.h", "url_context.cc", diff --git a/browser/net/brave_network_delegate_base.cc b/browser/net/brave_network_delegate_base.cc deleted file mode 100644 index 4b03c7ea5226..000000000000 --- a/browser/net/brave_network_delegate_base.cc +++ /dev/null @@ -1,345 +0,0 @@ -/* Copyright (c) 2019 The Brave Authors. All rights reserved. - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "brave/browser/net/brave_network_delegate_base.h" - -#include -#include - -#include "base/task/post_task.h" -#include "brave/browser/brave_browser_process_impl.h" -#include "brave/browser/net/brave_stp_util.h" -#include "brave/common/pref_names.h" -#include "brave/components/brave_shields/browser/brave_shields_util.h" -#include "brave/components/brave_shields/browser/brave_shields_web_contents_observer.h" -#include "brave/components/brave_shields/browser/tracking_protection_service.h" -#include "chrome/browser/browser_process.h" -#include "chrome/browser/content_settings/tab_specific_content_settings.h" -#include "chrome/browser/profiles/profile_io_data.h" -#include "components/content_settings/core/browser/cookie_settings.h" -#include "components/prefs/pref_change_registrar.h" -#include "components/prefs/pref_service.h" -#include "content/public/browser/browser_task_traits.h" -#include "content/public/browser/browser_thread.h" -#include "net/url_request/url_request.h" - -using content::BrowserThread; -using content::ResourceRequestInfo; -using net::HttpResponseHeaders; -using net::URLRequest; - -namespace { - -bool OnAllowAccessCookies( - const URLRequest& request, - std::shared_ptr ctx) { - ResourceRequestInfo* info = ResourceRequestInfo::ForRequest(&request); - if (info) { - ProfileIOData* io_data = - ProfileIOData::FromResourceContext(info->GetContext()); - - GURL url = request.url(); - GURL tab_origin = request.site_for_cookies(); - if (tab_origin.is_empty()) - tab_origin = GURL(request.network_isolation_key().ToString()); - if (tab_origin.is_empty() && request.top_frame_origin().has_value()) - tab_origin = request.top_frame_origin()->GetURL(); - - return - io_data->GetCookieSettings()->IsCookieAccessAllowed(url, tab_origin) && - g_brave_browser_process->tracking_protection_service() - ->ShouldStoreState(io_data->GetHostContentSettingsMap(), - ctx->render_process_id, - ctx->render_frame_id, - url, - tab_origin); - } - - return true; -} - -} // namespace - - -BraveNetworkDelegateBase::BraveNetworkDelegateBase( - extensions::EventRouterForwarder* event_router) - : ChromeNetworkDelegate(event_router), - referral_headers_list_(nullptr), - allow_google_auth_(true) { - // Initialize the preference change registrar. - base::PostTaskWithTraits( - FROM_HERE, {BrowserThread::UI}, - base::Bind(&BraveNetworkDelegateBase::InitPrefChangeRegistrarOnUI, - base::Unretained(this))); -} - -BraveNetworkDelegateBase::~BraveNetworkDelegateBase() {} - -void BraveNetworkDelegateBase::set_allow_google_auth(bool allow) { - allow_google_auth_ = allow; -} - -void BraveNetworkDelegateBase::InitPrefChangeRegistrarOnUI() { - DCHECK_CURRENTLY_ON(BrowserThread::UI); - -#if BUILDFLAG(ENABLE_BRAVE_REFERRALS) - PrefService* prefs = g_browser_process->local_state(); - pref_change_registrar_.reset(new PrefChangeRegistrar()); - pref_change_registrar_->Init(prefs); - pref_change_registrar_->Add( - kReferralHeaders, - base::Bind(&BraveNetworkDelegateBase::OnReferralHeadersChanged, - base::Unretained(this))); - // Retrieve current referral headers, if any. - OnReferralHeadersChanged(); -#endif -} - -void BraveNetworkDelegateBase::OnReferralHeadersChanged() { - DCHECK_CURRENTLY_ON(BrowserThread::UI); - if (const base::ListValue* referral_headers = - g_browser_process->local_state()->GetList(kReferralHeaders)) { - base::PostTaskWithTraits( - FROM_HERE, {BrowserThread::IO}, - base::Bind(&BraveNetworkDelegateBase::SetReferralHeaders, - base::Unretained(this), referral_headers->DeepCopy())); - } -} - -void BraveNetworkDelegateBase::SetReferralHeaders( - base::ListValue* referral_headers) { - DCHECK_CURRENTLY_ON(BrowserThread::IO); - referral_headers_list_.reset(referral_headers); -} - -int BraveNetworkDelegateBase::OnBeforeURLRequest( - URLRequest* request, - net::CompletionOnceCallback callback, - GURL* new_url) { - if (before_url_request_callbacks_.empty() || !request) { - return ChromeNetworkDelegate::OnBeforeURLRequest( - request, std::move(callback), new_url); - } - std::shared_ptr ctx(new brave::BraveRequestInfo()); - brave::BraveRequestInfo::FillCTXFromRequest(request, ctx); - ctx->new_url = new_url; - ctx->event_type = brave::kOnBeforeRequest; - callbacks_[request->identifier()] = std::move(callback); - RunNextCallback(request, ctx); - return net::ERR_IO_PENDING; -} - -int BraveNetworkDelegateBase::OnBeforeStartTransaction( - URLRequest* request, - net::CompletionOnceCallback callback, - net::HttpRequestHeaders* headers) { - if (before_start_transaction_callbacks_.empty() || !request) { - return ChromeNetworkDelegate::OnBeforeStartTransaction( - request, std::move(callback), headers); - } - std::shared_ptr ctx(new brave::BraveRequestInfo()); - brave::BraveRequestInfo::FillCTXFromRequest(request, ctx); - ctx->event_type = brave::kOnBeforeStartTransaction; - ctx->headers = headers; - ctx->referral_headers_list = referral_headers_list_.get(); - callbacks_[request->identifier()] = std::move(callback); - RunNextCallback(request, ctx); - return net::ERR_IO_PENDING; -} - -int BraveNetworkDelegateBase::OnHeadersReceived( - URLRequest* request, - net::CompletionOnceCallback callback, - const net::HttpResponseHeaders* original_response_headers, - scoped_refptr* override_response_headers, - GURL* allowed_unsafe_redirect_url) { - if (request->top_frame_origin().has_value()) { - brave::RemoveTrackableSecurityHeadersForThirdParty( - request->url(), request->top_frame_origin().value(), - original_response_headers, override_response_headers); - } - - if (headers_received_callbacks_.empty() || !request) { - return ChromeNetworkDelegate::OnHeadersReceived( - request, std::move(callback), original_response_headers, - override_response_headers, allowed_unsafe_redirect_url); - } - - std::shared_ptr ctx(new brave::BraveRequestInfo()); - callbacks_[request->identifier()] = std::move(callback); - brave::BraveRequestInfo::FillCTXFromRequest(request, ctx); - ctx->event_type = brave::kOnHeadersReceived; - ctx->original_response_headers = original_response_headers; - ctx->override_response_headers = override_response_headers; - ctx->allowed_unsafe_redirect_url = allowed_unsafe_redirect_url; - - // Return ERR_IO_PENDING and run callbacks later by posting a task. - // URLRequestHttpJob::awaiting_callback_ will be set to true after we - // return net::ERR_IO_PENDING here, callbacks need to be run later than this - // to set awaiting_callback_ back to false. - base::PostTaskWithTraits( - FROM_HERE, {BrowserThread::IO}, - base::Bind(&BraveNetworkDelegateBase::RunNextCallback, - base::Unretained(this), request, ctx)); - return net::ERR_IO_PENDING; -} - -bool BraveNetworkDelegateBase::OnCanGetCookies( - const URLRequest& request, - const net::CookieList& cookie_list, - bool allowed_from_caller) { - std::shared_ptr ctx(new brave::BraveRequestInfo()); - ctx->allow_google_auth = allow_google_auth_; - brave::BraveRequestInfo::FillCTXFromRequest(&request, ctx); - ctx->event_type = brave::kOnCanGetCookies; - - return OnAllowAccessCookies(request, ctx); -} - -bool BraveNetworkDelegateBase::OnCanSetCookie( - const URLRequest& request, - const net::CanonicalCookie& cookie, - net::CookieOptions* options, - bool allowed_from_caller) { - std::shared_ptr ctx(new brave::BraveRequestInfo()); - ctx->allow_google_auth = allow_google_auth_; - brave::BraveRequestInfo::FillCTXFromRequest(&request, ctx); - ctx->event_type = brave::kOnCanSetCookies; - - return OnAllowAccessCookies(request, ctx); -} - -void BraveNetworkDelegateBase::RunCallbackForRequestIdentifier( - uint64_t request_identifier, - int rv) { - std::map::iterator it = - callbacks_.find(request_identifier); - std::move(it->second).Run(rv); -} - -void BraveNetworkDelegateBase::RunNextCallback( - URLRequest* request, - std::shared_ptr ctx) { - DCHECK_CURRENTLY_ON(BrowserThread::IO); - - if (!ContainsKey(callbacks_, ctx->request_identifier)) { - return; - } - - if (request->status().status() == net::URLRequestStatus::CANCELED) { - return; - } - - // Continue processing callbacks until we hit one that returns PENDING - int rv = net::OK; - - if (ctx->event_type == brave::kOnBeforeRequest) { - while (before_url_request_callbacks_.size() != - ctx->next_url_request_index) { - brave::OnBeforeURLRequestCallback callback = - before_url_request_callbacks_[ctx->next_url_request_index++]; - brave::ResponseCallback next_callback = - base::Bind(&BraveNetworkDelegateBase::RunNextCallback, - base::Unretained(this), request, ctx); - rv = callback.Run(next_callback, ctx); - if (rv == net::ERR_IO_PENDING) { - return; - } - if (rv != net::OK) { - break; - } - } - } else if (ctx->event_type == brave::kOnBeforeStartTransaction) { - while (before_start_transaction_callbacks_.size() != - ctx->next_url_request_index) { - brave::OnBeforeStartTransactionCallback callback = - before_start_transaction_callbacks_[ctx->next_url_request_index++]; - brave::ResponseCallback next_callback = - base::Bind(&BraveNetworkDelegateBase::RunNextCallback, - base::Unretained(this), request, ctx); - rv = callback.Run(ctx->headers, next_callback, ctx); - if (rv == net::ERR_IO_PENDING) { - return; - } - if (rv != net::OK) { - break; - } - } - } else if (ctx->event_type == brave::kOnHeadersReceived) { - while (headers_received_callbacks_.size() != ctx->next_url_request_index) { - brave::OnHeadersReceivedCallback callback = - headers_received_callbacks_[ctx->next_url_request_index++]; - brave::ResponseCallback next_callback = - base::Bind(&BraveNetworkDelegateBase::RunNextCallback, - base::Unretained(this), request, ctx); - rv = callback.Run(ctx->original_response_headers, - ctx->override_response_headers, - ctx->allowed_unsafe_redirect_url, next_callback, ctx); - if (rv == net::ERR_IO_PENDING) { - return; - } - if (rv != net::OK) { - break; - } - } - } - - if (rv != net::OK) { - RunCallbackForRequestIdentifier(ctx->request_identifier, rv); - return; - } - - net::CompletionOnceCallback wrapped_callback = - base::BindOnce(&BraveNetworkDelegateBase::RunCallbackForRequestIdentifier, - base::Unretained(this), ctx->request_identifier); - - if (ctx->event_type == brave::kOnBeforeRequest) { - if (!ctx->new_url_spec.empty() && - (ctx->new_url_spec != ctx->request_url.spec()) && - IsRequestIdentifierValid(ctx->request_identifier)) { - *ctx->new_url = GURL(ctx->new_url_spec); - } - if (ctx->blocked_by == brave::kAdBlocked) { - // We are going to intercept this request and block it later in the - // network stack. - if (ctx->cancel_request_explicitly) { - RunCallbackForRequestIdentifier(ctx->request_identifier, - net::ERR_ABORTED); - return; - } - request->SetExtraRequestHeaderByName("X-Brave-Block", "", true); - } - if (!ctx->new_referrer.is_empty()) { - request->SetReferrer(ctx->new_referrer.spec()); - } - rv = ChromeNetworkDelegate::OnBeforeURLRequest( - request, std::move(wrapped_callback), ctx->new_url); - } else if (ctx->event_type == brave::kOnBeforeStartTransaction) { - rv = ChromeNetworkDelegate::OnBeforeStartTransaction( - request, std::move(wrapped_callback), ctx->headers); - } else if (ctx->event_type == brave::kOnHeadersReceived) { - rv = ChromeNetworkDelegate::OnHeadersReceived( - request, std::move(wrapped_callback), ctx->original_response_headers, - ctx->override_response_headers, ctx->allowed_unsafe_redirect_url); - } - - // ChromeNetworkDelegate returns net::ERR_IO_PENDING if an extension is - // intercepting the request and OK if the request should proceed normally. - if (rv != net::ERR_IO_PENDING) { - RunCallbackForRequestIdentifier(ctx->request_identifier, rv); - } -} - -void BraveNetworkDelegateBase::OnURLRequestDestroyed(URLRequest* request) { - if (ContainsKey(callbacks_, request->identifier())) { - callbacks_.erase(request->identifier()); - } - ChromeNetworkDelegate::OnURLRequestDestroyed(request); -} - -bool BraveNetworkDelegateBase::IsRequestIdentifierValid( - uint64_t request_identifier) { - return ContainsKey(callbacks_, request_identifier); -} diff --git a/browser/net/brave_network_delegate_base.h b/browser/net/brave_network_delegate_base.h deleted file mode 100644 index 0a3a9db1f384..000000000000 --- a/browser/net/brave_network_delegate_base.h +++ /dev/null @@ -1,100 +0,0 @@ -/* Copyright (c) 2019 The Brave Authors. All rights reserved. - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#ifndef BRAVE_BROWSER_NET_BRAVE_NETWORK_DELEGATE_BASE_H_ -#define BRAVE_BROWSER_NET_BRAVE_NETWORK_DELEGATE_BASE_H_ - -#include -#include -#include -#include - -#include "brave/browser/net/url_context.h" -#include "chrome/browser/net/chrome_network_delegate.h" -#include "content/public/browser/browser_thread.h" -#include "net/base/completion_once_callback.h" - -class PrefChangeRegistrar; - -namespace extensions { -class EventRouterForwarder; -} - -namespace net { -class URLRequest; -} - -// BraveNetworkDelegateBase is the central point from within the Brave code to -// add hooks into the network stack. -class BraveNetworkDelegateBase : public ChromeNetworkDelegate { - public: - using ResponseCallback = base::Callback; - using ResponseListener = base::Callback; - - explicit BraveNetworkDelegateBase( - extensions::EventRouterForwarder* event_router); - ~BraveNetworkDelegateBase() override; - - bool IsRequestIdentifierValid(uint64_t request_identifier); - - // NetworkDelegate implementation. - int OnBeforeURLRequest(net::URLRequest* request, - net::CompletionOnceCallback callback, - GURL* new_url) override; - int OnBeforeStartTransaction(net::URLRequest* request, - net::CompletionOnceCallback callback, - net::HttpRequestHeaders* headers) override; - int OnHeadersReceived( - net::URLRequest* request, - net::CompletionOnceCallback callback, - const net::HttpResponseHeaders* original_response_headers, - scoped_refptr* override_response_headers, - GURL* allowed_unsafe_redirect_url) override; - - bool OnCanGetCookies(const net::URLRequest& request, - const net::CookieList& cookie_list, - bool allowed_from_caller) override; - - bool OnCanSetCookie(const net::URLRequest& request, - const net::CanonicalCookie& cookie, - net::CookieOptions* options, - bool allowed_from_caller) override; - - void OnURLRequestDestroyed(net::URLRequest* request) override; - void RunCallbackForRequestIdentifier(uint64_t request_identifier, int rv); - - protected: - void RunNextCallback(net::URLRequest* request, - std::shared_ptr ctx); - void set_allow_google_auth(bool allow); - const base::FilePath& profile_path() { return profile_path_; } - - std::vector before_url_request_callbacks_; - std::vector - before_start_transaction_callbacks_; - std::vector headers_received_callbacks_; - - private: - void InitPrefChangeRegistrarOnUI(); - void SetReferralHeaders(base::ListValue* referral_headers); - void OnReferralHeadersChanged(); - - // TODO(iefremov): actually, we don't have to keep the list here, since - // it is global for the whole browser and could live a singletonce in the - // rewards service. Eliminating this will also help to avoid using - // PrefChangeRegistrar and corresponding |base::Unretained| usages, that are - // illegal. - std::unique_ptr referral_headers_list_; - std::map callbacks_; - std::unique_ptr - pref_change_registrar_; - - bool allow_google_auth_; - - DISALLOW_COPY_AND_ASSIGN(BraveNetworkDelegateBase); -}; - -#endif // BRAVE_BROWSER_NET_BRAVE_NETWORK_DELEGATE_BASE_H_ diff --git a/browser/net/brave_network_delegate_base_unittest.cc b/browser/net/brave_network_delegate_base_unittest.cc index ba7559f34a15..97210ca2092e 100644 --- a/browser/net/brave_network_delegate_base_unittest.cc +++ b/browser/net/brave_network_delegate_base_unittest.cc @@ -3,8 +3,6 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -#include "brave/browser/net/brave_network_delegate_base.h" - #include #include "brave/browser/net/url_context.h" diff --git a/browser/net/brave_profile_network_delegate.cc b/browser/net/brave_profile_network_delegate.cc deleted file mode 100644 index 2dc005604b06..000000000000 --- a/browser/net/brave_profile_network_delegate.cc +++ /dev/null @@ -1,199 +0,0 @@ -/* Copyright (c) 2019 The Brave Authors. All rights reserved. - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "brave/browser/net/brave_profile_network_delegate.h" - -#include - -#include "base/task/post_task.h" -#include "brave/browser/brave_browser_process_impl.h" -#include "brave/browser/net/brave_ad_block_tp_network_delegate_helper.h" -#include "brave/browser/net/brave_common_static_redirect_network_delegate_helper.h" -#include "brave/browser/net/brave_httpse_network_delegate_helper.h" -#include "brave/browser/net/brave_site_hacks_network_delegate_helper.h" -#include "brave/browser/translate/buildflags/buildflags.h" -#include "brave/common/pref_names.h" -#include "brave/components/brave_referrals/buildflags/buildflags.h" -#include "brave/components/brave_rewards/browser/buildflags/buildflags.h" -#include "brave/components/brave_shields/browser/ad_block_custom_filters_service.h" -#include "brave/components/brave_shields/browser/ad_block_regional_service_manager.h" -#include "brave/components/brave_shields/browser/ad_block_service.h" -#include "brave/components/brave_shields/common/brave_shield_constants.h" -#include "brave/components/brave_webtorrent/browser/buildflags/buildflags.h" -#include "chrome/browser/profiles/profile_manager.h" -#include "components/prefs/pref_change_registrar.h" -#include "components/prefs/pref_service.h" -#include "content/public/browser/browser_task_traits.h" -#include "content/public/browser/browser_thread.h" - -#if BUILDFLAG(ENABLE_BRAVE_REFERRALS) -#include "brave/browser/net/brave_referrals_network_delegate_helper.h" -#endif - -#if BUILDFLAG(BRAVE_REWARDS_ENABLED) -#include "brave/components/brave_rewards/browser/net/network_delegate_helper.h" -#endif - -#if BUILDFLAG(ENABLE_BRAVE_WEBTORRENT) -#include "brave/components/brave_webtorrent/browser/net/brave_torrent_redirect_network_delegate_helper.h" -#endif - -#if BUILDFLAG(ENABLE_BRAVE_TRANSLATE_GO) -#include "brave/browser/net/brave_translate_redirect_network_delegate_helper.h" -#endif - -using content::BrowserThread; - -namespace { - -std::string GetTagFromPrefName(const std::string& pref_name) { - if (pref_name == kFBEmbedControlType) { - return brave_shields::kFacebookEmbeds; - } - if (pref_name == kTwitterEmbedControlType) { - return brave_shields::kTwitterEmbeds; - } - if (pref_name == kLinkedInEmbedControlType) { - return brave_shields::kLinkedInEmbeds; - } - return ""; -} - -} // namespace - -BraveProfileNetworkDelegate::BraveProfileNetworkDelegate( - extensions::EventRouterForwarder* event_router) : - BraveNetworkDelegateBase(event_router) { - brave::OnBeforeURLRequestCallback - callback = - base::Bind(brave::OnBeforeURLRequest_SiteHacksWork); - before_url_request_callbacks_.push_back(callback); - - callback = - base::Bind(brave::OnBeforeURLRequest_AdBlockTPPreWork); - before_url_request_callbacks_.push_back(callback); - - callback = - base::Bind(brave::OnBeforeURLRequest_HttpsePreFileWork); - before_url_request_callbacks_.push_back(callback); - - callback = - base::Bind(brave::OnBeforeURLRequest_CommonStaticRedirectWork); - before_url_request_callbacks_.push_back(callback); - -#if BUILDFLAG(BRAVE_REWARDS_ENABLED) - callback = base::Bind(brave_rewards::OnBeforeURLRequest); - before_url_request_callbacks_.push_back(callback); -#endif - -#if BUILDFLAG(ENABLE_BRAVE_TRANSLATE_GO) - callback = base::BindRepeating( - brave::OnBeforeURLRequest_TranslateRedirectWork); - before_url_request_callbacks_.push_back(callback); -#endif - - brave::OnBeforeStartTransactionCallback start_transaction_callback = - base::Bind(brave::OnBeforeStartTransaction_SiteHacksWork); - before_start_transaction_callbacks_.push_back(start_transaction_callback); - -#if BUILDFLAG(ENABLE_BRAVE_REFERRALS) - start_transaction_callback = - base::Bind(brave::OnBeforeStartTransaction_ReferralsWork); - before_start_transaction_callbacks_.push_back(start_transaction_callback); -#endif - -#if BUILDFLAG(ENABLE_BRAVE_WEBTORRENT) - brave::OnHeadersReceivedCallback headers_received_callback = - base::Bind( - webtorrent::OnHeadersReceived_TorrentRedirectWork); - headers_received_callbacks_.push_back(headers_received_callback); -#endif - - // Initialize the preference change registrar. - // call PostTask because we need to wait for profile_path to be set - // on the OI thread after BraveProfileNetworkDelegate is created - base::PostTaskWithTraits( - FROM_HERE, {BrowserThread::IO}, - base::Bind(&BraveProfileNetworkDelegate::InitPrefChangeRegistrar, - base::Unretained(this))); -} - -BraveProfileNetworkDelegate::~BraveProfileNetworkDelegate() { -} - -void BraveProfileNetworkDelegate::InitPrefChangeRegistrar() { - DCHECK_CURRENTLY_ON(BrowserThread::IO); - DCHECK(!profile_path().empty()); - - // profile path is set on the IO thread so we need to read it here and - // then pass the value to the UI thread - base::PostTaskWithTraits( - FROM_HERE, {BrowserThread::UI}, - base::Bind(&BraveProfileNetworkDelegate::InitPrefChangeRegistrarOnUI, - base::Unretained(this), profile_path())); -} - -void BraveProfileNetworkDelegate::InitPrefChangeRegistrarOnUI( - const base::FilePath& profile_path) { - DCHECK_CURRENTLY_ON(BrowserThread::UI); - - auto* profile = - g_browser_process->profile_manager()->GetProfile(profile_path); - - PrefService* user_prefs = profile->GetPrefs(); - user_pref_change_registrar_.reset(new PrefChangeRegistrar()); - user_pref_change_registrar_->Init(user_prefs); - user_pref_change_registrar_->Add( - kGoogleLoginControlType, - base::BindRepeating(&BraveProfileNetworkDelegate::OnPreferenceChanged, - base::Unretained(this), - user_prefs, - kGoogleLoginControlType)); - user_pref_change_registrar_->Add( - kFBEmbedControlType, - base::BindRepeating(&BraveProfileNetworkDelegate::OnPreferenceChanged, - base::Unretained(this), - user_prefs, kFBEmbedControlType)); - user_pref_change_registrar_->Add( - kTwitterEmbedControlType, - base::BindRepeating(&BraveProfileNetworkDelegate::OnPreferenceChanged, - base::Unretained(this), - user_prefs, - kTwitterEmbedControlType)); - user_pref_change_registrar_->Add( - kLinkedInEmbedControlType, - base::BindRepeating(&BraveProfileNetworkDelegate::OnPreferenceChanged, - base::Unretained(this), - user_prefs, - kLinkedInEmbedControlType)); - UpdateAdBlockFromPref(user_prefs, kFBEmbedControlType); - UpdateAdBlockFromPref(user_prefs, kTwitterEmbedControlType); - UpdateAdBlockFromPref(user_prefs, kLinkedInEmbedControlType); - set_allow_google_auth(user_prefs->GetBoolean(kGoogleLoginControlType)); -} - -void BraveProfileNetworkDelegate::OnPreferenceChanged( - PrefService* user_prefs, - const std::string& pref_name) { - UpdateAdBlockFromPref(user_prefs, pref_name); -} - -void BraveProfileNetworkDelegate::UpdateAdBlockFromPref( - PrefService* user_prefs, - const std::string& pref_name) { - DCHECK_CURRENTLY_ON(BrowserThread::UI); - set_allow_google_auth(user_prefs->GetBoolean(kGoogleLoginControlType)); - std::string tag = GetTagFromPrefName(pref_name); - if (tag.length() == 0) { - return; - } - // TODO(bridiver) - user pref can't update global values - bool enabled = user_prefs->GetBoolean(pref_name); - g_brave_browser_process->ad_block_service()->EnableTag(tag, enabled); - g_brave_browser_process->ad_block_regional_service_manager()->EnableTag( - tag, enabled); - g_brave_browser_process->ad_block_custom_filters_service()->EnableTag( - tag, enabled); -} diff --git a/browser/net/brave_profile_network_delegate.h b/browser/net/brave_profile_network_delegate.h deleted file mode 100644 index 7974ce262c90..000000000000 --- a/browser/net/brave_profile_network_delegate.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright (c) 2019 The Brave Authors. All rights reserved. - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#ifndef BRAVE_BROWSER_NET_BRAVE_PROFILE_NETWORK_DELEGATE_H_ -#define BRAVE_BROWSER_NET_BRAVE_PROFILE_NETWORK_DELEGATE_H_ - -#include -#include - -#include "base/files/file_path.h" -#include "brave/browser/net/brave_network_delegate_base.h" - -class PrefService; - -class BraveProfileNetworkDelegate : public BraveNetworkDelegateBase { - public: - explicit BraveProfileNetworkDelegate( - extensions::EventRouterForwarder* event_router); - ~BraveProfileNetworkDelegate() override; - - private: - void InitPrefChangeRegistrar(); - void InitPrefChangeRegistrarOnUI(const base::FilePath& profile_path); - void OnPreferenceChanged(PrefService* user_prefs, - const std::string& pref_name); - void UpdateAdBlockFromPref(PrefService* user_prefs, - const std::string& pref_name); - - std::unique_ptr - user_pref_change_registrar_; - - DISALLOW_COPY_AND_ASSIGN(BraveProfileNetworkDelegate); -}; - -#endif // BRAVE_BROWSER_NET_BRAVE_PROFILE_NETWORK_DELEGATE_H_ diff --git a/browser/net/brave_proxying_url_loader_factory.cc b/browser/net/brave_proxying_url_loader_factory.cc index 6a1344efb5e4..f9aa1992a490 100644 --- a/browser/net/brave_proxying_url_loader_factory.cc +++ b/browser/net/brave_proxying_url_loader_factory.cc @@ -18,7 +18,8 @@ #include "content/public/browser/render_frame_host.h" #include "content/public/browser/resource_context.h" #include "content/public/common/url_utils.h" -#include "mojo/public/cpp/system/string_data_pipe_producer.h" +#include "mojo/public/cpp/system/data_pipe_producer.h" +#include "mojo/public/cpp/system/string_data_source.h" #include "net/base/completion_repeating_callback.h" #include "net/http/http_util.h" #include "services/network/public/cpp/features.h" @@ -91,7 +92,7 @@ struct WriteData { // Wek ref. |client| destroys itself in |OnComplete()|. network::mojom::URLLoaderClient* client; std::string data; - std::unique_ptr producer; + std::unique_ptr producer; }; void OnWrite(std::unique_ptr write_data, MojoResult result) { @@ -419,13 +420,14 @@ void BraveProxyingURLLoaderFactory::InProgressRequest:: write_data->client = this; write_data->data = response_data; write_data->producer = - std::make_unique(std::move(producer)); + std::make_unique(std::move(producer)); base::StringPiece string_piece(write_data->data); - write_data->producer->Write(string_piece, - mojo::StringDataPipeProducer::AsyncWritingMode:: - STRING_STAYS_VALID_UNTIL_COMPLETION, - base::BindOnce(OnWrite, std::move(write_data))); + write_data->producer->Write( + std::make_unique( + string_piece, mojo::StringDataSource::AsyncWritingMode:: + STRING_STAYS_VALID_UNTIL_COMPLETION), + base::BindOnce(OnWrite, std::move(write_data))); return; } @@ -679,11 +681,11 @@ bool BraveProxyingURLLoaderFactory::MaybeProxyRequest( content::BrowserContext* browser_context, content::RenderFrameHost* render_frame_host, int render_process_id, - network::mojom::URLLoaderFactoryRequest* factory_request) { + mojo::PendingReceiver* factory_receiver) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); - auto proxied_request = std::move(*factory_request); + auto proxied_receiver = std::move(*factory_receiver); network::mojom::URLLoaderFactoryPtrInfo target_factory_info; - *factory_request = mojo::MakeRequest(&target_factory_info); + *factory_receiver = mojo::MakeRequest(&target_factory_info); base::PostTaskWithTraits( FROM_HERE, {content::BrowserThread::IO}, @@ -691,7 +693,7 @@ bool BraveProxyingURLLoaderFactory::MaybeProxyRequest( &ResourceContextData::StartProxying, browser_context->GetResourceContext(), render_process_id, render_frame_host ? render_frame_host->GetFrameTreeNodeId() : 0, - std::move(proxied_request), std::move(target_factory_info))); + std::move(proxied_receiver), std::move(target_factory_info))); return true; } diff --git a/browser/net/brave_proxying_url_loader_factory.h b/browser/net/brave_proxying_url_loader_factory.h index fd1d3a88b9c1..4070c021c9e1 100644 --- a/browser/net/brave_proxying_url_loader_factory.h +++ b/browser/net/brave_proxying_url_loader_factory.h @@ -197,7 +197,8 @@ class BraveProxyingURLLoaderFactory content::BrowserContext* browser_context, content::RenderFrameHost* render_frame_host, int render_process_id, - network::mojom::URLLoaderFactoryRequest* factory_request); + mojo::PendingReceiver* + factory_receiver); // network::mojom::URLLoaderFactory: void CreateLoaderAndStart(network::mojom::URLLoaderRequest loader_request, diff --git a/browser/net/brave_request_handler.cc b/browser/net/brave_request_handler.cc index b39e096b5129..f02db54277c4 100644 --- a/browser/net/brave_request_handler.cc +++ b/browser/net/brave_request_handler.cc @@ -129,7 +129,7 @@ void BraveRequestHandler::SetReferralHeaders( bool BraveRequestHandler::IsRequestIdentifierValid( uint64_t request_identifier) { - return ContainsKey(callbacks_, request_identifier); + return base::Contains(callbacks_, request_identifier); return true; } @@ -193,7 +193,7 @@ int BraveRequestHandler::OnHeadersReceived( void BraveRequestHandler::OnURLRequestDestroyed( std::shared_ptr ctx) { - if (ContainsKey(callbacks_, ctx->request_identifier)) { + if (base::Contains(callbacks_, ctx->request_identifier)) { callbacks_.erase(ctx->request_identifier); } } @@ -215,7 +215,7 @@ void BraveRequestHandler::RunNextCallback( std::shared_ptr ctx) { DCHECK_CURRENTLY_ON(content::BrowserThread::IO); - if (!ContainsKey(callbacks_, ctx->request_identifier)) { + if (!base::Contains(callbacks_, ctx->request_identifier)) { return; } diff --git a/browser/net/brave_system_network_delegate.cc b/browser/net/brave_system_network_delegate.cc deleted file mode 100644 index d8027cc55e9d..000000000000 --- a/browser/net/brave_system_network_delegate.cc +++ /dev/null @@ -1,23 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "brave/browser/net/brave_system_network_delegate.h" - -#include "brave/browser/net/brave_common_static_redirect_network_delegate_helper.h" -#include "brave/browser/net/brave_static_redirect_network_delegate_helper.h" - -BraveSystemNetworkDelegate::BraveSystemNetworkDelegate( - extensions::EventRouterForwarder* event_router) : - BraveNetworkDelegateBase(event_router) { - brave::OnBeforeURLRequestCallback callback = - base::Bind( - brave::OnBeforeURLRequest_StaticRedirectWork); - before_url_request_callbacks_.push_back(callback); - callback = base::Bind( - brave::OnBeforeURLRequest_CommonStaticRedirectWork); - before_url_request_callbacks_.push_back(callback); -} - -BraveSystemNetworkDelegate::~BraveSystemNetworkDelegate() { -} diff --git a/browser/net/brave_system_network_delegate.h b/browser/net/brave_system_network_delegate.h deleted file mode 100644 index 8c021f406c59..000000000000 --- a/browser/net/brave_system_network_delegate.h +++ /dev/null @@ -1,18 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#ifndef BRAVE_BROWSER_NET_BRAVE_SYSTEM_NETWORK_DELEGATE_H_ -#define BRAVE_BROWSER_NET_BRAVE_SYSTEM_NETWORK_DELEGATE_H_ - -#include "brave/browser/net/brave_network_delegate_base.h" - -class BraveSystemNetworkDelegate : public BraveNetworkDelegateBase { - public: - BraveSystemNetworkDelegate(extensions::EventRouterForwarder* event_router); - ~BraveSystemNetworkDelegate() override; - - DISALLOW_COPY_AND_ASSIGN(BraveSystemNetworkDelegate); -}; - -#endif // BRAVE_BROWSER_NET_BRAVE_SYSTEM_NETWORK_DELEGATE_H_ diff --git a/browser/net/url_context.cc b/browser/net/url_context.cc index 78dcd8808192..849c8f9ddc32 100644 --- a/browser/net/url_context.cc +++ b/browser/net/url_context.cc @@ -182,7 +182,17 @@ void BraveRequestInfo::FillCTX( // TODO(iefremov): remove tab_url. Change tab_origin from GURL to Origin. // ctx->tab_url = request.top_frame_origin; - ctx->tab_origin = request.top_frame_origin.value_or(url::Origin()).GetURL(); + // TODO(iefremov): c77 - navigation doesn't populate top_frame_origin any more + // and uses NetworkIsolationKey instead. According to + // services/network/public/mojom/url_loader.mojom, this field "will most + // likely be removed at some point". + if (base::nullopt != request.top_frame_origin) { + ctx->tab_origin = request.top_frame_origin->GetURL(); + } else { + ctx->tab_origin = request.trusted_network_isolation_key.GetTopFrameOrigin() + .value_or(url::Origin()) + .GetURL(); + } ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context); diff --git a/browser/net/url_context.h b/browser/net/url_context.h index 093bd28d4578..d64a609bdd93 100644 --- a/browser/net/url_context.h +++ b/browser/net/url_context.h @@ -22,7 +22,6 @@ class ResourceContext; namespace network { struct ResourceRequest; } -class BraveNetworkDelegateBase; class BraveRequestHandler; namespace brave { @@ -114,8 +113,7 @@ struct BraveRequestInfo { private: // Please don't add any more friends here if it can be avoided. - // We should also remove the ones below. - friend class ::BraveNetworkDelegateBase; + // We should also remove the one below. friend class ::BraveRequestHandler; GURL* new_url = nullptr; diff --git a/browser/profiles/brave_profile_manager.cc b/browser/profiles/brave_profile_manager.cc index 44beb69314d1..b2b5affd39d0 100644 --- a/browser/profiles/brave_profile_manager.cc +++ b/browser/profiles/brave_profile_manager.cc @@ -31,7 +31,7 @@ #include "components/bookmarks/common/bookmark_pref_names.h" #include "components/prefs/pref_service.h" #include "components/safe_browsing/common/safe_browsing_prefs.h" -#include "components/signin/core/browser/signin_pref_names.h" +#include "components/signin/public/base/signin_pref_names.h" #include "components/translate/core/browser/translate_pref_names.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/url_data_source.h" diff --git a/browser/profiles/tor_unittest_profile_manager.cc b/browser/profiles/tor_unittest_profile_manager.cc index e9405cfb234c..037312d6c598 100644 --- a/browser/profiles/tor_unittest_profile_manager.cc +++ b/browser/profiles/tor_unittest_profile_manager.cc @@ -24,11 +24,12 @@ Profile* TorUnittestProfileManager::CreateProfileHelper( if (!base::CreateDirectory(path)) return nullptr; } - return CreateProfile(path, nullptr); + return CreateProfile(path, nullptr).release(); } -Profile* TorUnittestProfileManager::CreateProfileAsyncHelper( - const base::FilePath& path, Delegate* delegate) { +std::unique_ptr TorUnittestProfileManager::CreateProfileAsyncHelper( + const base::FilePath& path, + Delegate* delegate) { // ThreadTaskRunnerHandle::Get() is TestingProfile's "async" IOTaskRunner // (ref. TestingProfile::GetIOTaskRunner()). base::ThreadTaskRunnerHandle::Get()->PostTask( @@ -46,7 +47,7 @@ void TorUnittestProfileManager::InitProfileUserPrefs(Profile* profile) { } } -Profile* TorUnittestProfileManager::CreateProfile( +std::unique_ptr TorUnittestProfileManager::CreateProfile( const base::FilePath& path, Delegate* delegate) { TestingProfile::Builder profile_builder; sync_preferences::PrefServiceMockFactory factory; @@ -58,6 +59,5 @@ Profile* TorUnittestProfileManager::CreateProfile( profile_builder.SetPrefService(std::move(prefs)); profile_builder.SetPath(path); profile_builder.SetDelegate(delegate); - std::unique_ptr profile = profile_builder.Build(); - return profile.release(); + return profile_builder.Build(); } diff --git a/browser/profiles/tor_unittest_profile_manager.h b/browser/profiles/tor_unittest_profile_manager.h index dfe3a1792af7..b06352c03fed 100644 --- a/browser/profiles/tor_unittest_profile_manager.h +++ b/browser/profiles/tor_unittest_profile_manager.h @@ -17,13 +17,14 @@ class TorUnittestProfileManager : public ProfileManagerWithoutInit { protected: Profile* CreateProfileHelper(const base::FilePath& path) override; - Profile* CreateProfileAsyncHelper(const base::FilePath& path, - Delegate* delegate) override; + std::unique_ptr CreateProfileAsyncHelper( + const base::FilePath& path, + Delegate* delegate) override; void InitProfileUserPrefs(Profile* profile) override; private: - Profile* CreateProfile(const base::FilePath& path, Delegate* delegate); + std::unique_ptr CreateProfile(const base::FilePath& path, Delegate* delegate); }; #endif // BRAVE_BROWSER_PROFILES_TOR_UNITTEST_PROFILE_MANAGER_H_ diff --git a/browser/renderer_context_menu/brave_mock_render_view_context_menu.cc b/browser/renderer_context_menu/brave_mock_render_view_context_menu.cc index fdc9b2372137..12c25aeb9428 100644 --- a/browser/renderer_context_menu/brave_mock_render_view_context_menu.cc +++ b/browser/renderer_context_menu/brave_mock_render_view_context_menu.cc @@ -7,6 +7,7 @@ #include +#include "base/strings/string_number_conversions.h" #include "chrome/app/chrome_command_ids.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" @@ -95,6 +96,13 @@ void BraveMockRenderViewContextMenu::AddMenuItem(int command_id, items_.push_back(item); } +void BraveMockRenderViewContextMenu::AddMenuItemWithIcon( + int command_id, + const base::string16& title, + const gfx::ImageSkia& image) { + AddMenuItem(command_id, title); +} + void BraveMockRenderViewContextMenu::AddCheckItem(int command_id, const base::string16& title) { MockMenuItem item; @@ -147,6 +155,14 @@ void BraveMockRenderViewContextMenu::AddSubMenu(int command_id, } } +void BraveMockRenderViewContextMenu::AddSubMenuWithStringIdAndIcon( + int command_id, + int message_id, + ui::MenuModel* model, + const gfx::ImageSkia& image) { + AddSubMenu(command_id, base::NumberToString16(message_id), model); +} + void BraveMockRenderViewContextMenu::UpdateMenuItem( int command_id, bool enabled, @@ -203,8 +219,7 @@ void BraveMockRenderViewContextMenu::AddSpellCheckServiceItem(bool is_checked) { } void BraveMockRenderViewContextMenu::AddAccessibilityLabelsServiceItem( - bool is_checked) { -} + bool is_checked) {} content::RenderViewHost* BraveMockRenderViewContextMenu::GetRenderViewHost() const { diff --git a/browser/renderer_context_menu/brave_mock_render_view_context_menu.h b/browser/renderer_context_menu/brave_mock_render_view_context_menu.h index bb2035f6fb35..f47f69e76c6d 100644 --- a/browser/renderer_context_menu/brave_mock_render_view_context_menu.h +++ b/browser/renderer_context_menu/brave_mock_render_view_context_menu.h @@ -57,11 +57,18 @@ class BraveMockRenderViewContextMenu : public ui::SimpleMenuModel::Delegate, // RenderViewContextMenuProxy implementation. void AddMenuItem(int command_id, const base::string16& title) override; + void AddMenuItemWithIcon(int command_id, + const base::string16& title, + const gfx::ImageSkia& image) override; void AddCheckItem(int command_id, const base::string16& title) override; void AddSeparator() override; void AddSubMenu(int command_id, const base::string16& label, ui::MenuModel* model) override; + void AddSubMenuWithStringIdAndIcon(int command_id, + int message_id, + ui::MenuModel* model, + const gfx::ImageSkia& image) override; void UpdateMenuItem(int command_id, bool enabled, bool hidden, @@ -72,8 +79,8 @@ class BraveMockRenderViewContextMenu : public ui::SimpleMenuModel::Delegate, void AddSpellCheckServiceItem(bool is_checked) override; void AddAccessibilityLabelsServiceItem(bool is_checked) override; content::RenderViewHost* GetRenderViewHost() const override; - content::BrowserContext* GetBrowserContext() const override; content::WebContents* GetWebContents() const override; + content::BrowserContext* GetBrowserContext() const override; // Attaches a RenderViewContextMenuObserver to be tested. void SetObserver(RenderViewContextMenuObserver* observer); diff --git a/browser/resources/settings/brave_appearance_page/brave_appearance_page.html b/browser/resources/settings/brave_appearance_page/brave_appearance_page.html index fa4942d74d26..0b9eac554ee0 100644 --- a/browser/resources/settings/brave_appearance_page/brave_appearance_page.html +++ b/browser/resources/settings/brave_appearance_page/brave_appearance_page.html @@ -1,11 +1,10 @@ - + - @@ -96,10 +97,12 @@ padding: 30px !important; } - :host-context([dark]) { - --settings-nav-item-color: #F4F4F4 !important; - border-color: transparent !important; - background-color: #161719; + @media (prefers-color-scheme: dark) { + :host { + --settings-nav-item-color: #F4F4F4 !important; + border-color: transparent !important; + background-color: #161719; + } } a[href] { @@ -124,8 +127,10 @@ height: 20px; } - :host-context([dark]) a[href].iron-selected iron-icon { - color: var(--settings-nav-item-color) !important; + @media (prefers-color-scheme: dark) { + a[href].iron-selected iron-icon { + color: var(--settings-nav-item-color) !important; + } } a[href], diff --git a/browser/resources/settings/brave_settings_overrides.js b/browser/resources/settings/brave_settings_overrides.js index cf7cabe4c464..1b9ca7920bf8 100644 --- a/browser/resources/settings/brave_settings_overrides.js +++ b/browser/resources/settings/brave_settings_overrides.js @@ -307,7 +307,7 @@ BravePatching.RegisterPolymerTemplateModifications({ if (!advancedToggleTemplate) { console.error('[Brave Settings Overrides] Could not find advanced toggle template') } - const advancedToggleText = advancedToggleTemplate.content.querySelector('paper-button span') + const advancedToggleText = advancedToggleTemplate.content.querySelector('cr-button span') if (!advancedToggleText) { console.error('[Brave Settings Overrides] Could not find advanced toggle text') } diff --git a/browser/resources/settings/brave_sync_page/brave_sync_page.html b/browser/resources/settings/brave_sync_page/brave_sync_page.html index c9c0c180579a..cd55d4fa1bef 100644 --- a/browser/resources/settings/brave_sync_page/brave_sync_page.html +++ b/browser/resources/settings/brave_sync_page/brave_sync_page.html @@ -1,7 +1,7 @@ - + diff --git a/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.html b/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.html index 23da27073034..35ce0c6e9b89 100644 --- a/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.html +++ b/browser/resources/settings/default_brave_shields_page/default_brave_shields_page.html @@ -1,7 +1,7 @@ - + @@ -53,7 +53,8 @@
$i18n{defaultView}
- +
@@ -65,7 +66,8 @@
- +
diff --git a/browser/resources/settings/social_blocking_page/social_blocking_page.html b/browser/resources/settings/social_blocking_page/social_blocking_page.html index 8a88a1735b47..6e1276c82ee8 100644 --- a/browser/resources/settings/social_blocking_page/social_blocking_page.html +++ b/browser/resources/settings/social_blocking_page/social_blocking_page.html @@ -1,7 +1,7 @@ - + diff --git a/browser/themes/BUILD.gn b/browser/themes/BUILD.gn index 0b4289799e24..6034e5ddd3ff 100644 --- a/browser/themes/BUILD.gn +++ b/browser/themes/BUILD.gn @@ -7,8 +7,9 @@ source_set("themes") { "brave_theme_service_win.h", "brave_theme_utils.cc", "brave_theme_utils.h", + "brave_theme_utils_internal.cc", + "brave_theme_utils_internal.h", "brave_theme_utils_mac.mm", - "brave_theme_utils_win.cc", "theme_properties.cc", "theme_properties.h", ] diff --git a/browser/themes/brave_theme_service.cc b/browser/themes/brave_theme_service.cc index 96da44120998..cfec15a0665e 100644 --- a/browser/themes/brave_theme_service.cc +++ b/browser/themes/brave_theme_service.cc @@ -180,6 +180,11 @@ void BraveThemeService::Init(Profile* profile) { if (brave::IsTorProfile(profile) || brave::IsGuestProfile(profile)) return; +#if defined(OS_WIN) + ui::IgnoreSystemDarkModeChange( + profile->GetPrefs()->GetInteger(kBraveThemeType) != + BraveThemeType::BRAVE_THEME_TYPE_DEFAULT); +#endif // Start with proper system theme to make brave theme and // base ui components theme use same theme. SetSystemTheme(static_cast( @@ -224,6 +229,12 @@ void BraveThemeService::OnPreferenceChanged(const std::string& pref_name) { // Changing theme type means default theme is not overridden anymore. profile()->GetPrefs()->SetBoolean(kUseOverriddenBraveThemeType, false); +#if defined(OS_WIN) + ui::IgnoreSystemDarkModeChange( + profile()->GetPrefs()->GetInteger(kBraveThemeType) != + BraveThemeType::BRAVE_THEME_TYPE_DEFAULT); +#endif + SetSystemTheme(static_cast( profile()->GetPrefs()->GetInteger(kBraveThemeType))); } @@ -266,5 +277,5 @@ bool BraveThemeService::SystemThemeModeEnabled() { switches::kForceDarkMode)) return true; - return SystemThemeSupportDarkMode(); + return ui::NativeTheme::GetInstanceForNativeUi()->SystemDarkModeSupported(); } diff --git a/browser/themes/brave_theme_service_browsertest.cc b/browser/themes/brave_theme_service_browsertest.cc index a7be35e92d67..ea5dab8928ba 100644 --- a/browser/themes/brave_theme_service_browsertest.cc +++ b/browser/themes/brave_theme_service_browsertest.cc @@ -18,6 +18,12 @@ #include "ui/native_theme/native_theme_dark_aura.h" #include "ui/native_theme/native_theme_observer.h" +#if defined(OS_WIN) +#include "base/run_loop.h" +#include "base/time/time.h" +#include "base/win/registry.h" +#endif + using BraveThemeServiceTest = InProcessBrowserTest; using BTS = BraveThemeService; @@ -94,9 +100,9 @@ IN_PROC_BROWSER_TEST_F(BraveThemeServiceTestWithoutSystemTheme, tp_private.GetColor(test_theme_property)); } -// Test whether appropriate native theme observer is called when brave theme is -// changed. -IN_PROC_BROWSER_TEST_F(BraveThemeServiceTest, NativeThemeObserverTest) { +// Test whether appropriate native/web theme observer is called when brave theme +// is changed. +IN_PROC_BROWSER_TEST_F(BraveThemeServiceTest, ThemeObserverTest) { Profile* profile = browser()->profile(); // Initially set to light. SetBraveThemeType(profile, BraveThemeType::BRAVE_THEME_TYPE_LIGHT); @@ -107,10 +113,17 @@ IN_PROC_BROWSER_TEST_F(BraveThemeServiceTest, NativeThemeObserverTest) { EXPECT_CALL( native_theme_observer, OnNativeThemeUpdated(ui::NativeTheme::GetInstanceForNativeUi())).Times(2); - ui::NativeTheme::GetInstanceForNativeUi()->AddObserver( &native_theme_observer); + TestNativeThemeObserver web_theme_observer; + EXPECT_CALL( + web_theme_observer, + OnNativeThemeUpdated(ui::NativeTheme::GetInstanceForWeb())).Times(2); + + ui::NativeTheme::GetInstanceForWeb()->AddObserver( + &web_theme_observer); + SetBraveThemeType(profile, BraveThemeType::BRAVE_THEME_TYPE_DARK); SetBraveThemeType(profile, BraveThemeType::BRAVE_THEME_TYPE_LIGHT); } @@ -140,3 +153,60 @@ IN_PROC_BROWSER_TEST_F(BraveThemeServiceTest, SystemThemeChangeTest) { ui::NativeTheme::GetInstanceForNativeUi()->SystemDarkModeEnabled()); } } + +#if defined(OS_WIN) +// Test native theme notification is called properly by changing reg value. +// This simulates dark mode setting from Windows settings. +// And Toggle it twice from initial value to go back to initial value because +// reg value changes system value. Otherwise, dark mode config could be changed +// after running this test. +IN_PROC_BROWSER_TEST_F(BraveThemeServiceTest, DarkModeChangeByRegTest) { + if (!ui::NativeTheme::GetInstanceForNativeUi()->SystemDarkModeSupported()) + return; + + base::win::RegKey hkcu_themes_regkey; + bool key_open_succeeded = hkcu_themes_regkey.Open( + HKEY_CURRENT_USER, + L"Software\\Microsoft\\Windows\\CurrentVersion\\" + L"Themes\\Personalize", + KEY_WRITE) == ERROR_SUCCESS; + DCHECK(key_open_succeeded); + + DWORD apps_use_light_theme = 1; + hkcu_themes_regkey.ReadValueDW(L"AppsUseLightTheme", + &apps_use_light_theme); + const bool initial_dark_mode = apps_use_light_theme == 0; + + // Toggle dark mode and check get notification for default type (same as...). + auto* profile = browser()->profile(); + SetBraveThemeType(profile, BraveThemeType::BRAVE_THEME_TYPE_DEFAULT); + + apps_use_light_theme = !initial_dark_mode ? 0 : 1; + hkcu_themes_regkey.WriteValue(L"AppsUseLightTheme", apps_use_light_theme); + + TestNativeThemeObserver native_theme_observer_for_default; + EXPECT_CALL( + native_theme_observer_for_default, + OnNativeThemeUpdated(ui::NativeTheme::GetInstanceForNativeUi())).Times(1); + ui::NativeTheme::GetInstanceForNativeUi()->AddObserver( + &native_theme_observer_for_default); + + // Toggle dark mode and |native_theme_observer_for_light| will not get + // notification for light type. + SetBraveThemeType(profile, BraveThemeType::BRAVE_THEME_TYPE_LIGHT); + + TestNativeThemeObserver native_theme_observer_for_light; + EXPECT_CALL( + native_theme_observer_for_light, + OnNativeThemeUpdated(ui::NativeTheme::GetInstanceForNativeUi())).Times(0); + ui::NativeTheme::GetInstanceForNativeUi()->AddObserver( + &native_theme_observer_for_light); + + apps_use_light_theme = initial_dark_mode ? 0 : 1; + hkcu_themes_regkey.WriteValue(L"AppsUseLightTheme", apps_use_light_theme); + + // Timeout is used because we can't get notifiication with light theme. + base::RunLoop run_loop; + run_loop.RunWithTimeout(base::TimeDelta::FromMilliseconds(500));; +} +#endif diff --git a/browser/themes/brave_theme_utils.cc b/browser/themes/brave_theme_utils.cc index dd6b57623dc5..585e2cf602f5 100644 --- a/browser/themes/brave_theme_utils.cc +++ b/browser/themes/brave_theme_utils.cc @@ -5,6 +5,7 @@ #include "brave/browser/themes/brave_theme_utils.h" +#include "brave/browser/themes/brave_theme_utils_internal.h" #include "ui/native_theme/native_theme.h" #if defined(OS_WIN) @@ -12,9 +13,19 @@ #endif namespace ui { -void SetDarkMode(bool dark_mode) { - ui::NativeTheme::GetInstanceForNativeUi()->set_dark_mode(dark_mode); -} // namespace ui +// static +void BraveThemeUtils::SetDarkMode(bool dark_mode) { + NativeTheme::GetInstanceForNativeUi()->set_dark_mode(dark_mode); + NativeTheme::GetInstanceForWeb()->set_dark_mode(dark_mode); +} + +// static +void BraveThemeUtils::ReCalcAndSetPreferredColorScheme() { + auto scheme = + NativeTheme::GetInstanceForNativeUi()->CalculatePreferredColorScheme(); + NativeTheme::GetInstanceForNativeUi()->set_preferred_color_scheme(scheme); + NativeTheme::GetInstanceForWeb()->set_preferred_color_scheme(scheme); +} #if defined(OS_WIN) // This resets dark mode to os theme when user changes brave theme from @@ -33,7 +44,9 @@ void SetSystemTheme(BraveThemeType type) { // Follow os theme type for default type. if (type == BraveThemeType::BRAVE_THEME_TYPE_DEFAULT) { #if defined(OS_WIN) - DCHECK(SystemThemeSupportDarkMode()); + DCHECK( + ui::NativeTheme::GetInstanceForNativeUi()->SystemDarkModeSupported()); + // This sets preferred color scheme on its own. ui::UpdateDarkModeStatus(); return; #else @@ -42,17 +55,6 @@ void SetSystemTheme(BraveThemeType type) { NOTREACHED(); #endif } - - ui::SetDarkMode(type == BraveThemeType::BRAVE_THEME_TYPE_DARK); - // Have to notify to observer explicitly because |ui::SetDarkMode()| just - // set ui::NativeTheme:dark_mode_ value. - ui::NativeTheme::GetInstanceForNativeUi()->NotifyObservers(); -} -#endif - -#if defined(OS_LINUX) -bool SystemThemeSupportDarkMode() { - // Linux doesn't support dark mode yet. - return false; + internal::SetSystemThemeForNonDarkModePlatform(type); } #endif diff --git a/browser/themes/brave_theme_utils.h b/browser/themes/brave_theme_utils.h index ee2ee1e08cba..28f29c82ec88 100644 --- a/browser/themes/brave_theme_utils.h +++ b/browser/themes/brave_theme_utils.h @@ -8,8 +8,6 @@ #include "brave/browser/themes/brave_theme_service.h" -bool SystemThemeSupportDarkMode(); - // When system supports system per-application system theme changing, set it. // Currently, only MacOS support it. // Otherewise, we need to overrides from native theme level and explicitly @@ -18,13 +16,18 @@ bool SystemThemeSupportDarkMode(); void SetSystemTheme(BraveThemeType type); // Inserted in the ui namespace to add into ui::NativeTheme/NativeThemeWin as a -// friend function. This function calls protected/private method of -// ui::NativeTheme::set_dark_mode(). It's a protected method that called by -// platform specific subclasses whenever system os theme is changed. -// But we want to change it for using brave theme also for webui/base ui -// modules like context menu. +// friend class. These methods call protected methods of ui::NativeTheme. They +// are protected methods that called by platform specific subclasses whenever +// system os theme is changed. But we want to change it for using brave theme +// also for webui/base ui modules like context menu. namespace ui { -void SetDarkMode(bool dark_mode); +class BraveThemeUtils { + public: + static void SetDarkMode(bool dark_mode); + // Recalculate preferred color scheme based on current dark mode that set by + // SetDarkMode() and set it to NativeTheme. + static void ReCalcAndSetPreferredColorScheme(); +}; } // namespace ui #endif // BRAVE_BROWSER_THEMES_BRAVE_THEME_UTILS_H_ diff --git a/browser/themes/brave_theme_utils_internal.cc b/browser/themes/brave_theme_utils_internal.cc new file mode 100644 index 000000000000..5019587eab0f --- /dev/null +++ b/browser/themes/brave_theme_utils_internal.cc @@ -0,0 +1,28 @@ +/* Copyright (c) 2019 The Brave Authors. All rights reserved. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "brave/browser/themes/brave_theme_utils.h" + +#include "ui/native_theme/native_theme.h" + +namespace internal { + +void SetSystemThemeForNonDarkModePlatform(BraveThemeType type) { + // Call SetDarkMode() first then call ReCalcPreferredColorScheme() because + // ReCalcPreferredColorScheme() calculates preferred color scheme based on dark + // mode. + ui::BraveThemeUtils::SetDarkMode(type == + BraveThemeType::BRAVE_THEME_TYPE_DARK); + ui::BraveThemeUtils::ReCalcAndSetPreferredColorScheme(); + // Have to notify observers explicitly because + // |ui::BraveThemeUtils::SetDarkMode()| and + // |ui::BraveThemeUtils::ReCalcPreferredColorScheme| just set + // ui::NativeTheme:dark_mode_ and ui::NativeTheme:preferred_color_scheme_ + // values. + ui::NativeTheme::GetInstanceForNativeUi()->NotifyObservers(); + ui::NativeTheme::GetInstanceForWeb()->NotifyObservers(); +} + +} // namespace internal diff --git a/browser/themes/brave_theme_utils_internal.h b/browser/themes/brave_theme_utils_internal.h new file mode 100644 index 000000000000..4319102f2429 --- /dev/null +++ b/browser/themes/brave_theme_utils_internal.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2019 The Brave Authors. All rights reserved. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef BRAVE_BROWSER_THEMES_BRAVE_THEME_UTILS_INTERNAL_H_ +#define BRAVE_BROWSER_THEMES_BRAVE_THEME_UTILS_INTERNAL_H_ + +#include "brave/browser/themes/brave_theme_service.h" + +namespace internal { + +// Reset dark mode and preferred color scheme and notify. +void SetSystemThemeForNonDarkModePlatform(BraveThemeType type); + +} // namespace internal + +#endif // BRAVE_BROWSER_THEMES_BRAVE_THEME_UTILS_INTERNAL_H_ diff --git a/browser/themes/brave_theme_utils_mac.mm b/browser/themes/brave_theme_utils_mac.mm index 1f905dcd9a82..82f8f7a96cf8 100644 --- a/browser/themes/brave_theme_utils_mac.mm +++ b/browser/themes/brave_theme_utils_mac.mm @@ -8,18 +8,13 @@ #import #include "base/mac/sdk_forward_declarations.h" +#include "brave/browser/themes/brave_theme_utils_internal.h" #include "ui/native_theme/native_theme.h" -bool SystemThemeSupportDarkMode() { - // Dark mode is supported since Mojave. - if (@available(macOS 10.14, *)) - return true; - return false; -} - void SetSystemTheme(BraveThemeType type) { if (type == BRAVE_THEME_TYPE_DEFAULT) { - DCHECK(SystemThemeSupportDarkMode()); + DCHECK( + ui::NativeTheme::GetInstanceForNativeUi()->SystemDarkModeSupported()); [NSApp setAppearance:nil]; return; } @@ -30,7 +25,6 @@ void SetSystemTheme(BraveThemeType type) { : NSAppearanceNameAqua; [NSApp setAppearance:[NSAppearance appearanceNamed:new_appearance_name]]; } else { - ui::SetDarkMode(type == BraveThemeType::BRAVE_THEME_TYPE_DARK); - ui::NativeTheme::GetInstanceForNativeUi()->NotifyObservers(); + internal::SetSystemThemeForNonDarkModePlatform(type); } } diff --git a/browser/themes/brave_theme_utils_win.cc b/browser/themes/brave_theme_utils_win.cc deleted file mode 100644 index 37cda8d51b09..000000000000 --- a/browser/themes/brave_theme_utils_win.cc +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright (c) 2019 The Brave Authors. All rights reserved. - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "brave/browser/themes/brave_theme_utils.h" - -#include - -#include "base/win/registry.h" - -// Copied from ctor of NativeThemeWin. -bool SystemThemeSupportDarkMode() { - // Dark Mode currently targets UWP apps, which means Win32 apps need to use - // alternate, less reliable means of detecting the state. The following - // can break in future Windows versions. - base::win::RegKey hkcu_themes_regkey; - bool key_open_succeeded = - hkcu_themes_regkey.Open( - HKEY_CURRENT_USER, - L"Software\\Microsoft\\Windows\\CurrentVersion\\" - L"Themes\\Personalize", - KEY_READ | KEY_NOTIFY) == ERROR_SUCCESS; - return key_open_succeeded; -} diff --git a/browser/ui/views/brave_actions/brave_actions_container.cc b/browser/ui/views/brave_actions/brave_actions_container.cc index fdcb6e609576..55fb64b20edf 100644 --- a/browser/ui/views/brave_actions/brave_actions_container.cc +++ b/browser/ui/views/brave_actions/brave_actions_container.cc @@ -67,7 +67,7 @@ BraveActionsContainer::~BraveActionsContainer() { void BraveActionsContainer::Init() { // automatic layout auto vertical_container_layout = std::make_unique( - views::BoxLayout::kHorizontal); + views::BoxLayout::Orientation::kHorizontal); vertical_container_layout->set_main_axis_alignment( views::BoxLayout::MainAxisAlignment::kCenter); vertical_container_layout->set_cross_axis_alignment( diff --git a/browser/ui/views/brave_actions/brave_actions_container.h b/browser/ui/views/brave_actions/brave_actions_container.h index 3e8b8605f8c1..ad606ecbcf2e 100644 --- a/browser/ui/views/brave_actions/brave_actions_container.h +++ b/browser/ui/views/brave_actions/brave_actions_container.h @@ -15,6 +15,7 @@ #include "chrome/browser/ui/browser.h" #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" #include "components/prefs/pref_member.h" +#include "extensions/browser/extension_registry_observer.h" #include "extensions/common/extension.h" #include "ui/views/view.h" @@ -24,16 +25,15 @@ class BraveRewardsBrowserTest; namespace extensions { class ExtensionActionManager; class ExtensionRegistry; -class ExtensionRegistryObserver; } // This View contains all the built-in BraveActions such as Shields and Payments // TODO(petemill): consider splitting to separate model, like // ToolbarActionsModel and ToolbarActionsBar class BraveActionsContainer : public views::View, - public extensions::ExtensionActionAPI::Observer, - public extensions::ExtensionRegistryObserver, - public ToolbarActionView::Delegate { + public extensions::ExtensionActionAPI::Observer, + public extensions::ExtensionRegistryObserver, + public ToolbarActionView::Delegate { public: BraveActionsContainer(Browser* browser, Profile* profile); ~BraveActionsContainer() override; @@ -135,7 +135,8 @@ class BraveActionsContainer : public views::View, extensions::ExtensionActionManager* extension_action_manager_; // Listen to extension load, unloaded notifications. - ScopedObserver + ScopedObserver extension_registry_observer_; // Listen to when the action is updated diff --git a/browser/ui/views/translate/brave_translate_bubble_view.cc b/browser/ui/views/translate/brave_translate_bubble_view.cc index 96627166a5fa..728f1c293b5f 100644 --- a/browser/ui/views/translate/brave_translate_bubble_view.cc +++ b/browser/ui/views/translate/brave_translate_bubble_view.cc @@ -37,7 +37,7 @@ BraveTranslateBubbleView::~BraveTranslateBubbleView() { views::View* BraveTranslateBubbleView::BraveCreateViewBeforeTranslate() { views::View* view = new views::View(); views::GridLayout* layout = - view->SetLayoutManager(std::make_unique(view)); + view->SetLayoutManager(std::make_unique()); ChromeLayoutProvider* provider = ChromeLayoutProvider::Get(); constexpr int kButtonColumnSetId = 0; @@ -68,11 +68,11 @@ views::View* BraveTranslateBubbleView::BraveCreateViewBeforeTranslate() { provider->GetDistanceMetric(views::DISTANCE_UNRELATED_CONTROL_VERTICAL)); if (views::PlatformStyle::kIsOkButtonLeading) { - layout->AddView(accept_button.release()); - layout->AddView(cancel_button.release()); + layout->AddView(std::move(accept_button)); + layout->AddView(std::move(cancel_button)); } else { - layout->AddView(cancel_button.release()); - layout->AddView(accept_button.release()); + layout->AddView(std::move(cancel_button)); + layout->AddView(std::move(accept_button)); } return view; diff --git a/browser/ui/webui/brave_rewards_source.cc b/browser/ui/webui/brave_rewards_source.cc index e89e50572fb9..3ff9dbb067ac 100644 --- a/browser/ui/webui/brave_rewards_source.cc +++ b/browser/ui/webui/brave_rewards_source.cc @@ -57,7 +57,7 @@ BraveRewardsSource::BraveRewardsSource(Profile* profile) BraveRewardsSource::~BraveRewardsSource() { } -std::string BraveRewardsSource::GetSource() const { +std::string BraveRewardsSource::GetSource() { return "rewards-image"; } @@ -112,17 +112,17 @@ void BraveRewardsSource::StartDataRequest( } } -std::string BraveRewardsSource::GetMimeType(const std::string&) const { +std::string BraveRewardsSource::GetMimeType(const std::string&) { // We need to explicitly return a mime type, otherwise if the user tries to // drag the image they get no extension. return "image/png"; } -bool BraveRewardsSource::AllowCaching() const { +bool BraveRewardsSource::AllowCaching() { return false; } -bool BraveRewardsSource::ShouldReplaceExistingSource() const { +bool BraveRewardsSource::ShouldReplaceExistingSource() { // Leave the existing DataSource in place, otherwise we'll drop any pending // requests on the floor. return false; @@ -131,7 +131,7 @@ bool BraveRewardsSource::ShouldReplaceExistingSource() const { bool BraveRewardsSource::ShouldServiceRequest( const GURL& url, content::ResourceContext* resource_context, - int render_process_id) const { + int render_process_id) { return URLDataSource::ShouldServiceRequest(url, resource_context, render_process_id); } diff --git a/browser/ui/webui/brave_rewards_source.h b/browser/ui/webui/brave_rewards_source.h index fce550f58d9d..87a4ae3b4b93 100644 --- a/browser/ui/webui/brave_rewards_source.h +++ b/browser/ui/webui/brave_rewards_source.h @@ -23,18 +23,18 @@ class BraveRewardsSource : public content::URLDataSource { ~BraveRewardsSource() override; // content::URLDataSource implementation. - std::string GetSource() const override; + std::string GetSource() override; void StartDataRequest( const std::string& path, const content::ResourceRequestInfo::WebContentsGetter& wc_getter, const content::URLDataSource::GotDataCallback& got_data_callback) override; - std::string GetMimeType(const std::string&) const override; - bool AllowCaching() const override; - bool ShouldReplaceExistingSource() const override; + std::string GetMimeType(const std::string&) override; + bool AllowCaching() override; + bool ShouldReplaceExistingSource() override; bool ShouldServiceRequest(const GURL& url, content::ResourceContext* resource_context, - int render_process_id) const override; + int render_process_id) override; private: void OnBitmapFetched( diff --git a/browser/ui/webui/brave_web_ui_controller_factory.cc b/browser/ui/webui/brave_web_ui_controller_factory.cc index cb0fc5da327a..c7dbe1e7c545 100644 --- a/browser/ui/webui/brave_web_ui_controller_factory.cc +++ b/browser/ui/webui/brave_web_ui_controller_factory.cc @@ -120,7 +120,7 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, } // namespace WebUI::TypeID BraveWebUIControllerFactory::GetWebUIType( - content::BrowserContext* browser_context, const GURL& url) const { + content::BrowserContext* browser_context, const GURL& url) { WebUIFactoryFunction function = GetWebUIFactoryFunction(NULL, url); if (function) { return reinterpret_cast(function); @@ -129,10 +129,8 @@ WebUI::TypeID BraveWebUIControllerFactory::GetWebUIType( } std::unique_ptr -BraveWebUIControllerFactory::CreateWebUIControllerForURL( - WebUI* web_ui, - const GURL& url) const { - +BraveWebUIControllerFactory::CreateWebUIControllerForURL(WebUI* web_ui, + const GURL& url) { WebUIFactoryFunction function = GetWebUIFactoryFunction(web_ui, url); if (!function) { return ChromeWebUIControllerFactory::CreateWebUIControllerForURL( diff --git a/browser/ui/webui/brave_web_ui_controller_factory.h b/browser/ui/webui/brave_web_ui_controller_factory.h index f6646c6b7bca..7cd2d0b45fde 100644 --- a/browser/ui/webui/brave_web_ui_controller_factory.h +++ b/browser/ui/webui/brave_web_ui_controller_factory.h @@ -14,10 +14,10 @@ class RefCountedMemory; class BraveWebUIControllerFactory : public ChromeWebUIControllerFactory { public: content::WebUI::TypeID GetWebUIType(content::BrowserContext* browser_context, - const GURL& url) const override; + const GURL& url) override; std::unique_ptr CreateWebUIControllerForURL( content::WebUI* web_ui, - const GURL& url) const override; + const GURL& url) override; static BraveWebUIControllerFactory* GetInstance(); diff --git a/browser/ui/webui/brave_welcome_ui.cc b/browser/ui/webui/brave_welcome_ui.cc index d0d56afac6f2..21929226bafe 100644 --- a/browser/ui/webui/brave_welcome_ui.cc +++ b/browser/ui/webui/brave_welcome_ui.cc @@ -75,11 +75,6 @@ BraveWelcomeUI::BraveWelcomeUI(content::WebUI* web_ui, const std::string& name) std::make_unique(profile)); profile->GetPrefs()->SetBoolean(prefs::kHasSeenWelcomePage, true); -#if defined(OS_WIN) - g_brave_browser_process->local_state()->SetBoolean( - prefs::kHasSeenWin10PromoPage, - true); -#endif } BraveWelcomeUI::~BraveWelcomeUI() { diff --git a/chromium_src/BUILD.gn b/chromium_src/BUILD.gn index 84a657d4e62b..c37ed630504f 100644 --- a/chromium_src/BUILD.gn +++ b/chromium_src/BUILD.gn @@ -1,11 +1,7 @@ -if (is_win) { - source_set("google_update") { - # This idl file is generated by Omaha. - sources = [ - "google_update/google_update_idl.idl", - ] - } -} +# Copyright (c) 2019 The Brave Authors. All rights reserved. +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. source_set("browser") { sources = [] diff --git a/chromium_src/chrome/browser/browser_about_handler.cc b/chromium_src/chrome/browser/browser_about_handler.cc index 307415b97abc..054f10cf9864 100644 --- a/chromium_src/chrome/browser/browser_about_handler.cc +++ b/chromium_src/chrome/browser/browser_about_handler.cc @@ -14,10 +14,6 @@ bool FixupBrowserAboutURL(GURL* url, content::BrowserContext* browser_context) { bool result = FixupBrowserAboutURL_ChromiumImpl(url, browser_context); - // no special win10 welcome page - if (url->host() == chrome::kChromeUIWelcomeWin10Host) - *url = GURL(chrome::kChromeUIWelcomeURL); - // redirect sync-internals if (url->host() == chrome::kChromeUISyncInternalsHost) { GURL::Replacements replacements; diff --git a/chromium_src/chrome/browser/chrome_content_browser_client.cc b/chromium_src/chrome/browser/chrome_content_browser_client.cc index 8cc6efca11be..4e9147a9214e 100644 --- a/chromium_src/chrome/browser/chrome_content_browser_client.cc +++ b/chromium_src/chrome/browser/chrome_content_browser_client.cc @@ -22,23 +22,25 @@ #if defined(OS_LINUX) #include "brave/browser/ui/views/brave_browser_main_extra_parts_views_linux.h" -#define ChromeBrowserMainExtraPartsViewsLinux BraveBrowserMainExtraPartsViewsLinux // NOLINT +#define ChromeBrowserMainExtraPartsViewsLinux \ + BraveBrowserMainExtraPartsViewsLinux // NOLINT #endif #define HandleNewTabURLRewrite HandleNewTabURLRewrite_ChromiumImpl #define HandleNewTabURLReverseRewrite HandleNewTabURLReverseRewrite_ChromiumImpl namespace search { - bool HandleNewTabURLRewrite(GURL * url, content::BrowserContext * bc) { - return false; - } - bool HandleNewTabURLReverseRewrite(GURL * url, content::BrowserContext * bc) { - return false; - } +bool HandleNewTabURLRewrite(GURL* url, content::BrowserContext* bc) { + return false; +} +bool HandleNewTabURLReverseRewrite(GURL* url, content::BrowserContext* bc) { + return false; +} } // namespace search #include "../../../../chrome/browser/chrome_content_browser_client.cc" // NOLINT +#undef BRAVE_CHROMECONTENTBROWSERCLIENT_OVERRIDEWEBKITPREFS #undef HandleNewTabURLRewrite #undef HandleNewTabURLReverseRewrite_ChromiumImpl diff --git a/chromium_src/chrome/browser/io_thread.cc b/chromium_src/chrome/browser/io_thread.cc deleted file mode 100644 index c6a5eee13eee..000000000000 --- a/chromium_src/chrome/browser/io_thread.cc +++ /dev/null @@ -1,9 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "brave/browser/net/brave_system_network_delegate.h" - -#define ChromeNetworkDelegate BraveSystemNetworkDelegate -#include "../../../../chrome/browser/io_thread.cc" -#undef ChromeNetworkDelegate diff --git a/chromium_src/chrome/browser/profiles/profile_io_data.cc b/chromium_src/chrome/browser/profiles/profile_io_data.cc index d6a9acf0dfd0..9826e0a83238 100644 --- a/chromium_src/chrome/browser/profiles/profile_io_data.cc +++ b/chromium_src/chrome/browser/profiles/profile_io_data.cc @@ -2,7 +2,6 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -#include "brave/browser/net/brave_profile_network_delegate.h" #include "brave/common/url_constants.h" #include "../../../../../../chrome/browser/profiles/profile_io_data.cc" diff --git a/chromium_src/chrome/browser/renderer_context_menu/render_view_context_menu.cc b/chromium_src/chrome/browser/renderer_context_menu/render_view_context_menu.cc index 2de819ef082a..68767cf56823 100644 --- a/chromium_src/chrome/browser/renderer_context_menu/render_view_context_menu.cc +++ b/chromium_src/chrome/browser/renderer_context_menu/render_view_context_menu.cc @@ -7,26 +7,19 @@ #include "brave/browser/profiles/profile_util.h" #include "brave/browser/tor/buildflags.h" #include "brave/browser/translate/buildflags/buildflags.h" -#include "components/spellcheck/spellcheck_buildflags.h" -#if !BUILDFLAG(USE_BROWSER_SPELLCHECKER) #include "brave/browser/renderer_context_menu/brave_spelling_options_submenu_observer.h" -#endif // Our .h file creates a masquerade for RenderViewContextMenu. Switch // back to the Chromium one for the Chromium implementation. #undef RenderViewContextMenu #define RenderViewContextMenu RenderViewContextMenu_Chromium -#if !defined(OS_MACOSX) // Use our subclass to initialize SpellingOptionsSubMenuObserver. #define SpellingOptionsSubMenuObserver BraveSpellingOptionsSubMenuObserver -#endif #include "../../../../chrome/browser/renderer_context_menu/render_view_context_menu.cc" // NOLINT -#if !defined(OS_MACOSX) #undef SpellingOptionsSubMenuObserver -#endif // Make it clear which class we mean here. #undef RenderViewContextMenu diff --git a/chromium_src/chrome/browser/signin/account_consistency_disabled_unittest.cc b/chromium_src/chrome/browser/signin/account_consistency_disabled_unittest.cc index ca8567722ca7..d1ee3c02b80b 100644 --- a/chromium_src/chrome/browser/signin/account_consistency_disabled_unittest.cc +++ b/chromium_src/chrome/browser/signin/account_consistency_disabled_unittest.cc @@ -15,9 +15,9 @@ #include "chrome/test/base/testing_profile.h" #include "components/prefs/pref_notifier_impl.h" #include "components/prefs/testing_pref_store.h" -#include "components/signin/core/browser/account_consistency_method.h" -#include "components/signin/core/browser/signin_buildflags.h" -#include "components/signin/core/browser/signin_pref_names.h" +#include "components/signin/public/base/account_consistency_method.h" +#include "components/signin/public/base/signin_buildflags.h" +#include "components/signin/public/base/signin_pref_names.h" #include "components/sync_preferences/testing_pref_service_syncable.h" #include "content/public/common/content_features.h" #include "content/public/test/test_browser_thread_bundle.h" diff --git a/chromium_src/chrome/common/chrome_constants.cc b/chromium_src/chrome/common/chrome_constants.cc index 137832d3cfa4..c4f879e251aa 100644 --- a/chromium_src/chrome/common/chrome_constants.cc +++ b/chromium_src/chrome/common/chrome_constants.cc @@ -127,7 +127,6 @@ const base::FilePath::CharType kSystemProfileDir[] = FPL("System Profile"); // filenames const base::FilePath::CharType kCacheDirname[] = FPL("Cache"); -const base::FilePath::CharType kChannelIDFilename[] = FPL("Origin Bound Certs"); const base::FilePath::CharType kCookieFilename[] = FPL("Cookies"); const base::FilePath::CharType kCRLSetFilename[] = FPL("Certificate Revocation Lists"); @@ -147,6 +146,8 @@ const base::FilePath::CharType kLocalStateFilename[] = FPL("Local State"); const base::FilePath::CharType kMediaCacheDirname[] = FPL("Media Cache"); const base::FilePath::CharType kNetworkPersistentStateFilename[] = FPL("Network Persistent State"); +const base::FilePath::CharType kNotificationSchedulerStorageDirname[] = + FPL("Notification Scheduler"); const base::FilePath::CharType kOfflinePageArchivesDirname[] = FPL("Offline Pages/archives"); const base::FilePath::CharType kOfflinePageMetadataDirname[] = diff --git a/chromium_src/components/omnibox/browser/location_bar_model_impl.cc b/chromium_src/components/omnibox/browser/location_bar_model_impl.cc deleted file mode 100644 index 88a869a0a7ce..000000000000 --- a/chromium_src/components/omnibox/browser/location_bar_model_impl.cc +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright (c) 2019 The Brave Authors. All rights reserved. - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "components/omnibox/browser/location_bar_model_impl.h" - -#include "components/omnibox/browser/omnibox_field_trial.h" - -#define GetFieldTrialParamValueByFeature \ - GetFieldTrialParamValueByFeature_ChromiumImpl - -namespace base { -std::string GetFieldTrialParamValueByFeature(const base::Feature& feature, - const std::string& param_name) { - return OmniboxFieldTrial::kSimplifyHttpsIndicatorParameterBothToLock; -} -} // namespace base - -#include "../../../../../../../components/omnibox/browser/location_bar_model_impl.cc" // NOLINT - -#undef GetFieldTrialParamValueByFeature diff --git a/chromium_src/components/sync/engine_impl/get_updates_processor.cc b/chromium_src/components/sync/engine_impl/get_updates_processor.cc index 77d6097e44cf..ce657079377c 100644 --- a/chromium_src/components/sync/engine_impl/get_updates_processor.cc +++ b/chromium_src/components/sync/engine_impl/get_updates_processor.cc @@ -224,8 +224,7 @@ void ConstructUpdateResponse(sync_pb::GetUpdatesResponse* gu_response, sync_pb::NigoriSpecifics* nigori = specifics.mutable_nigori(); nigori->set_encrypt_everything(false); nigori->set_encrypt_bookmarks(false); - syncer::SystemEncryptor encryptor; - syncer::Cryptographer cryptographer(&encryptor); + syncer::Cryptographer cryptographer; KeyParams params = {KeyDerivationParams::CreateForPbkdf2(), "foobar"}; syncer::KeyDerivationMethod method = params.derivation_params.method(); bool add_key_result = cryptographer.AddKey(params); diff --git a/chromium_src/content/browser/frame_host/navigation_request.cc b/chromium_src/content/browser/frame_host/navigation_request.cc new file mode 100644 index 000000000000..217a9bb80240 --- /dev/null +++ b/chromium_src/content/browser/frame_host/navigation_request.cc @@ -0,0 +1,41 @@ +/* Copyright (c) 2019 The Brave Authors. All rights reserved. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "content/browser/frame_host/frame_tree.h" +#include "content/browser/frame_host/frame_tree_node.h" +#include "url/gurl.h" + +#if defined(OS_ANDROID) +#include "content/browser/frame_host/navigator.h" +#include "content/public/browser/navigation_controller.h" +#include "content/public/browser/navigation_entry.h" +#endif + +namespace { + +GURL GetTopDocumentGURL(const content::FrameTreeNode* frame_tree_node) { + GURL gurl; +#if defined(OS_ANDROID) + // On Android, a base URL can be set for the frame. If this the case, it is + // the URL to use for cookies. + content::NavigationEntry* last_committed_entry = + frame_tree_node_->navigator()->GetController()->GetLastCommittedEntry(); + if (last_committed_entry) + gurl = last_committed_entry->GetBaseURLForDataURL(); +#endif + if (gurl.is_empty()) + gurl = frame_tree_node->frame_tree()->root()->current_url(); + return gurl; +} + +} // namespace + +#define BRAVE_ONSTARTCHECKSCOMPLETE_MAYBEHIDEREFERRER \ + GetContentClient()->browser()->MaybeHideReferrer( \ + browser_context, common_params_.url, \ + GetTopDocumentGURL(frame_tree_node_), frame_tree_node_->IsMainFrame(), \ + &common_params_.referrer); + +#include "../../../../../content/browser/frame_host/navigation_request.cc" diff --git a/chromium_src/third_party/blink/public/platform/disable_client_hints_browsertest.cc b/chromium_src/third_party/blink/public/platform/disable_client_hints_browsertest.cc index 55735109e2ea..6146a7b70306 100644 --- a/chromium_src/third_party/blink/public/platform/disable_client_hints_browsertest.cc +++ b/chromium_src/third_party/blink/public/platform/disable_client_hints_browsertest.cc @@ -6,6 +6,7 @@ #include "base/bind.h" #include "base/path_service.h" #include "base/run_loop.h" +#include "base/stl_util.h" #include "brave/common/brave_paths.h" #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/ui_test_utils.h" @@ -56,8 +57,8 @@ class ClientHintsBrowserTest : public InProcessBrowserTest { private: void MonitorResourceRequest(const net::test_server::HttpRequest& request) { for (size_t i = 0; i < blink::kClientHintsMappingsCount; ++i) { - if (base::ContainsKey(request.headers, - blink::kClientHintsHeaderMapping[i])) { + if (base::Contains(request.headers, + blink::kClientHintsHeaderMapping[i])) { count_client_hints_headers_seen_++; } } diff --git a/chromium_src/ui/native_theme/native_theme.h b/chromium_src/ui/native_theme/native_theme.h new file mode 100644 index 000000000000..b77c16943275 --- /dev/null +++ b/chromium_src/ui/native_theme/native_theme.h @@ -0,0 +1,17 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#ifndef BRAVE_CHROMIUM_SRC_UI_NATIVE_THEME_NATIVE_THEME_H_ +#define BRAVE_CHROMIUM_SRC_UI_NATIVE_THEME_NATIVE_THEME_H_ + +namespace ui { +class BraveThemeUtils; +} // namespace ui + +#define BRAVE_UI_NATIVE_THEME_NATIVE_THEME_H_ friend class ui::BraveThemeUtils; +#include "../../../../ui/native_theme/native_theme.h" +#undef BRAVE_UI_NATIVE_THEME_NATIVE_THEME_H_ + +#endif // BRAVE_CHROMIUM_SRC_UI_NATIVE_THEME_NATIVE_THEME_H_ diff --git a/chromium_src/ui/native_theme/native_theme_win.cc b/chromium_src/ui/native_theme/native_theme_win.cc new file mode 100644 index 000000000000..84c790e19ebb --- /dev/null +++ b/chromium_src/ui/native_theme/native_theme_win.cc @@ -0,0 +1,23 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +namespace { +bool s_ignore_system_dark_mode_change = false; +} // namespace + +#define RETURN_IF_BRAVE_SHOULD_IGNORE_SYSTEM_DARK_MODE_CHANGE \ + if (s_ignore_system_dark_mode_change) { \ + return; \ + } + +#include "../../../../ui/native_theme/native_theme_win.cc" // NOLINT + +namespace ui { + +void NATIVE_THEME_EXPORT IgnoreSystemDarkModeChange(bool ignore) { + s_ignore_system_dark_mode_change = ignore; +} + +} // namespace ui diff --git a/chromium_src/ui/native_theme/native_theme_win.h b/chromium_src/ui/native_theme/native_theme_win.h new file mode 100644 index 000000000000..a2f4c20e3487 --- /dev/null +++ b/chromium_src/ui/native_theme/native_theme_win.h @@ -0,0 +1,25 @@ +// Copyright (c) 2019 The Brave Authors +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// you can obtain one at http://mozilla.org/MPL/2.0/. + +#ifndef BRAVE_CHROMIUM_SRC_UI_NATIVE_THEME_NATIVE_THEME_WIN_H_ +#define BRAVE_CHROMIUM_SRC_UI_NATIVE_THEME_NATIVE_THEME_WIN_H_ + +#define BRAVE_UI_NATIVE_THEME_NATIVE_THEME_WIN_H_ \ + private: \ + friend void UpdateDarkModeStatus(); + +#include "../../../../ui/native_theme/native_theme_win.h" // NOLINT +#undef BRAVE_UI_NATIVE_THEME_NATIVE_THEME_WIN_H_ + +namespace ui { + +// Set true when browser should not response to system theme change. +// If user set dark or light explicitly, browser should ignore system dark mode +// setting. +void NATIVE_THEME_EXPORT IgnoreSystemDarkModeChange(bool ignore); + +} // namespace ui + +#endif // BRAVE_CHROMIUM_SRC_UI_NATIVE_THEME_NATIVE_THEME_WIN_H_ diff --git a/components/brave_shields/browser/https_everywhere_service_browsertest.cc b/components/brave_shields/browser/https_everywhere_service_browsertest.cc index 863815fbcfff..f3972b806c5f 100644 --- a/components/brave_shields/browser/https_everywhere_service_browsertest.cc +++ b/components/brave_shields/browser/https_everywhere_service_browsertest.cc @@ -9,7 +9,6 @@ #include "brave/common/brave_paths.h" #include "brave/components/brave_shields/browser/https_everywhere_service.h" #include "chrome/browser/extensions/extension_browsertest.h" -#include "chrome/browser/net/url_request_mock_util.h" #include "chrome/browser/ui/browser.h" #include "chrome/test/base/ui_test_utils.h" #include "content/public/browser/browser_task_traits.h" @@ -41,8 +40,6 @@ class HTTPSEverywhereServiceTest : public ExtensionBrowserTest { void SetUpOnMainThread() override { ExtensionBrowserTest::SetUpOnMainThread(); - base::PostTaskWithTraits(FROM_HERE, {content::BrowserThread::IO}, - base::BindOnce(&chrome_browser_net::SetUrlRequestMocksEnabled, true)); host_resolver()->AddRule("*", "127.0.0.1"); } diff --git a/components/brave_shields/browser/tracking_protection_service_browsertest.cc b/components/brave_shields/browser/tracking_protection_service_browsertest.cc index 213702e54fa8..f6eeaf562dad 100644 --- a/components/brave_shields/browser/tracking_protection_service_browsertest.cc +++ b/components/brave_shields/browser/tracking_protection_service_browsertest.cc @@ -15,7 +15,6 @@ #include "brave/components/brave_shields/browser/buildflags/buildflags.h" // For STP #include "brave/components/brave_shields/browser/tracking_protection_service.h" #include "chrome/browser/extensions/extension_browsertest.h" -#include "chrome/browser/net/url_request_mock_util.h" #include "chrome/browser/ui/browser.h" #include "chrome/test/base/ui_test_utils.h" #include "components/prefs/pref_service.h" diff --git a/components/brave_sync/BUILD.gn b/components/brave_sync/BUILD.gn index eef6eee0a4e3..a8e7935b8f2d 100644 --- a/components/brave_sync/BUILD.gn +++ b/components/brave_sync/BUILD.gn @@ -28,6 +28,7 @@ if (enable_brave_sync) { "//components/pref_registry", "//components/prefs", "//components/prefs", + "//components/signin/public/identity_manager", "//content/public/browser", "//extensions/browser", "//net", diff --git a/components/brave_sync/brave_profile_sync_service_impl.cc b/components/brave_sync/brave_profile_sync_service_impl.cc index b74054202244..50357d02f215 100644 --- a/components/brave_sync/brave_profile_sync_service_impl.cc +++ b/components/brave_sync/brave_profile_sync_service_impl.cc @@ -23,7 +23,7 @@ #include "brave/components/brave_sync/values_conv.h" #include "chrome/browser/sync/chrome_sync_client.h" #include "components/bookmarks/browser/bookmark_model.h" -#include "components/signin/core/browser/account_info.h" +#include "components/signin/public/identity_manager/account_info.h" #include "components/sync/engine_impl/syncer.h" #include "content/public/browser/browser_thread.h" #include "net/base/network_interfaces.h" diff --git a/components/brave_sync/brave_profile_sync_service_impl.h b/components/brave_sync/brave_profile_sync_service_impl.h index 35d65b6c6da8..f30ad869739c 100644 --- a/components/brave_sync/brave_profile_sync_service_impl.h +++ b/components/brave_sync/brave_profile_sync_service_impl.h @@ -15,6 +15,7 @@ #include "brave/components/brave_sync/jslib_messages_fwd.h" #include "brave/components/brave_sync/public/brave_profile_sync_service.h" #include "components/bookmarks/browser/bookmark_model.h" +#include "components/prefs/pref_change_registrar.h" #include "components/sync/driver/profile_sync_service.h" #include "services/network/public/cpp/network_connection_tracker.h" diff --git a/components/brave_sync/brave_sync_service_unittest.cc b/components/brave_sync/brave_sync_service_unittest.cc index 459f6f9cbeeb..a1007141abe7 100644 --- a/components/brave_sync/brave_sync_service_unittest.cc +++ b/components/brave_sync/brave_sync_service_unittest.cc @@ -730,10 +730,12 @@ TEST_F(BraveSyncServiceTest, GetPreferredDataTypes) { TEST_F(BraveSyncServiceTest, GetDisableReasons) { sync_prefs()->SetManagedForTest(true); EXPECT_EQ(sync_service()->GetDisableReasons(), - syncer::SyncService::DISABLE_REASON_ENTERPRISE_POLICY); + syncer::SyncService::DISABLE_REASON_ENTERPRISE_POLICY | + syncer::SyncService::DISABLE_REASON_USER_CHOICE); sync_service()->OnSetSyncEnabled(true); EXPECT_EQ(sync_service()->GetDisableReasons(), - syncer::SyncService::DISABLE_REASON_ENTERPRISE_POLICY); + syncer::SyncService::DISABLE_REASON_ENTERPRISE_POLICY | + syncer::SyncService::DISABLE_REASON_USER_CHOICE); brave_sync_prefs()->SetMigratedBookmarksVersion(2); EXPECT_EQ(sync_service()->GetDisableReasons(), syncer::SyncService::DISABLE_REASON_NONE); diff --git a/components/brave_sync/syncer_helper.cc b/components/brave_sync/syncer_helper.cc index fd3450c12b7c..b38a2fe4e07c 100644 --- a/components/brave_sync/syncer_helper.cc +++ b/components/brave_sync/syncer_helper.cc @@ -22,10 +22,10 @@ void SetOrder(bookmarks::BookmarkModel* model, bookmarks::BookmarkNode* parent = const_cast(node->parent()); - auto* prev_node = index == 0 ? nullptr : parent->GetChild(index - 1); - auto* next_node = index == parent->child_count() - 1 + auto* prev_node = index == 0 ? nullptr : parent->children()[index - 1].get(); + auto* next_node = static_cast(index) == parent->children().size() - 1 ? nullptr - : parent->GetChild(index + 1); + : parent->children()[index + 1].get(); std::string prev_order; std::string next_order; @@ -40,31 +40,30 @@ void SetOrder(bookmarks::BookmarkModel* model, model->SetNodeMetaInfo(node, "order", order); } -uint64_t GetIndexByOrder(const std::string& record_order) { - uint64_t index = 0; +size_t GetIndexByOrder(const std::string& record_order) { + size_t index = 0; size_t last_dot_index = record_order.rfind("."); DCHECK(last_dot_index != std::string::npos); std::string last_digit = record_order.substr(last_dot_index + 1); - bool result = base::StringToUint64(last_digit, &index); - --index; - DCHECK_GE(index, 0u); + bool result = base::StringToSizeT(last_digit, &index); DCHECK(result); + DCHECK_GE(index, 1u); + --index; return index; } } // namespace -uint64_t GetIndexByCompareOrderStartFrom(const bookmarks::BookmarkNode* parent, - const bookmarks::BookmarkNode* src, - int index) { +size_t GetIndexByCompareOrderStartFrom(const bookmarks::BookmarkNode* parent, + const bookmarks::BookmarkNode* src, + size_t index) { std::string src_order; src->GetMetaInfo("order", &src_order); DCHECK(!src_order.empty()); - DCHECK_GE(index, 0); bool use_order = true; // If false use object_id std::string src_object_id; - while (index < parent->child_count()) { - const bookmarks::BookmarkNode* node = parent->GetChild(index); + while (index < parent->children().size()) { + const bookmarks::BookmarkNode* node = parent->children()[index].get(); if (src->id() == node->id()) { // We reached ourselves, no sense to go further, because we know all // unsorted elements are in the end @@ -128,17 +127,17 @@ void AddBraveMetaInfo(const bookmarks::BookmarkNode* node, DCHECK(!sync_timestamp.empty()); } -uint64_t GetIndex(const bookmarks::BookmarkNode* parent, - const bookmarks::BookmarkNode* src) { +size_t GetIndex(const bookmarks::BookmarkNode* parent, + const bookmarks::BookmarkNode* src) { DCHECK(parent); DCHECK(src); - int index = 0; + size_t index = 0; std::string src_order; src->GetMetaInfo("order", &src_order); DCHECK(!src_order.empty()); index = GetIndexByOrder(src_order); - if (index < parent->child_count()) { - const bookmarks::BookmarkNode* node = parent->GetChild(index); + if (index < parent->children().size()) { + const bookmarks::BookmarkNode* node = parent->children()[index].get(); if (node) { std::string node_order; node->GetMetaInfo("order", &node_order); diff --git a/components/brave_sync/syncer_helper.h b/components/brave_sync/syncer_helper.h index 24a288dff0b2..2e787bd8b5fa 100644 --- a/components/brave_sync/syncer_helper.h +++ b/components/brave_sync/syncer_helper.h @@ -20,12 +20,12 @@ void AddBraveMetaInfo(const bookmarks::BookmarkNode* node, bookmarks::BookmarkModel* bookmark_model); // |src| is the node which is about to be inserted into |parent| -uint64_t GetIndex(const bookmarks::BookmarkNode* parent, - const bookmarks::BookmarkNode* src); +size_t GetIndex(const bookmarks::BookmarkNode* parent, + const bookmarks::BookmarkNode* src); -uint64_t GetIndexByCompareOrderStartFrom(const bookmarks::BookmarkNode* parent, - const bookmarks::BookmarkNode* src, - int index); +size_t GetIndexByCompareOrderStartFrom(const bookmarks::BookmarkNode* parent, + const bookmarks::BookmarkNode* src, + size_t index); } // namespace brave_sync diff --git a/components/brave_sync/syncer_helper_unittest.cc b/components/brave_sync/syncer_helper_unittest.cc index edeb4d2e1d13..49fd607603fd 100644 --- a/components/brave_sync/syncer_helper_unittest.cc +++ b/components/brave_sync/syncer_helper_unittest.cc @@ -406,22 +406,22 @@ TEST_F(SyncerHelperTest, SameOrderBookmarksSordetByObjectIdFull3) { // 0 1 2 3 4 5 6 // A1 A2 B1 B2 A3(1,2,3) B3(@@@) C3(...) - auto title_at_4 = model()->bookmark_bar_node()->GetChild(4)->GetTitle(); + auto title_at_4 = model()->bookmark_bar_node()->children()[4]->GetTitle(); EXPECT_EQ(title_at_4, base::ASCIIToUTF16("A3.com")); - auto title_at_5 = model()->bookmark_bar_node()->GetChild(5)->GetTitle(); + auto title_at_5 = model()->bookmark_bar_node()->children()[5]->GetTitle(); EXPECT_EQ(title_at_5, base::ASCIIToUTF16("B3.com")); - auto title_at_6 = model()->bookmark_bar_node()->GetChild(6)->GetTitle(); + auto title_at_6 = model()->bookmark_bar_node()->children()[6]->GetTitle(); EXPECT_EQ(title_at_6, base::ASCIIToUTF16("C3.com")); RepositionRespectOrder(model(), node_b3); // 0 1 2 3 4 5 6 // A1 A2 B1 B2 A3(1,2,3) B3(@@@) C3(...) // node B3 hadn't moved because it reached itself - title_at_4 = model()->bookmark_bar_node()->GetChild(4)->GetTitle(); + title_at_4 = model()->bookmark_bar_node()->children()[4]->GetTitle(); EXPECT_EQ(title_at_4, base::ASCIIToUTF16("A3.com")); - title_at_5 = model()->bookmark_bar_node()->GetChild(5)->GetTitle(); + title_at_5 = model()->bookmark_bar_node()->children()[5]->GetTitle(); EXPECT_EQ(title_at_5, base::ASCIIToUTF16("B3.com")); - title_at_6 = model()->bookmark_bar_node()->GetChild(6)->GetTitle(); + title_at_6 = model()->bookmark_bar_node()->children()[6]->GetTitle(); EXPECT_EQ(title_at_6, base::ASCIIToUTF16("C3.com")); RepositionRespectOrder(model(), node_c3); @@ -429,11 +429,11 @@ TEST_F(SyncerHelperTest, SameOrderBookmarksSordetByObjectIdFull3) { // A1 A2 B1 B2 C3(...) A3(1,2,3) B3(@@@) // node C3 moved to the correct position, so B3 is on the right place now - title_at_4 = model()->bookmark_bar_node()->GetChild(4)->GetTitle(); + title_at_4 = model()->bookmark_bar_node()->children()[4]->GetTitle(); EXPECT_EQ(title_at_4, base::ASCIIToUTF16("C3.com")); - title_at_5 = model()->bookmark_bar_node()->GetChild(5)->GetTitle(); + title_at_5 = model()->bookmark_bar_node()->children()[5]->GetTitle(); EXPECT_EQ(title_at_5, base::ASCIIToUTF16("A3.com")); - title_at_6 = model()->bookmark_bar_node()->GetChild(6)->GetTitle(); + title_at_6 = model()->bookmark_bar_node()->children()[6]->GetTitle(); EXPECT_EQ(title_at_6, base::ASCIIToUTF16("B3.com")); } diff --git a/components/content_settings/core/browser/brave_content_settings_pref_provider.cc b/components/content_settings/core/browser/brave_content_settings_pref_provider.cc index fb199e50c38c..8ea7625a0d1d 100644 --- a/components/content_settings/core/browser/brave_content_settings_pref_provider.cc +++ b/components/content_settings/core/browser/brave_content_settings_pref_provider.cc @@ -100,9 +100,9 @@ bool IsActive(const Rule& cookie_rule, } // namespace BravePrefProvider::BravePrefProvider(PrefService* prefs, - bool incognito, + bool off_the_record, bool store_last_modified) - : PrefProvider(prefs, incognito, store_last_modified), + : PrefProvider(prefs, off_the_record, store_last_modified), weak_factory_(this) { brave_pref_change_registrar_.Init(prefs_); @@ -115,8 +115,7 @@ BravePrefProvider::BravePrefProvider(PrefService* prefs, info->type(), std::make_unique( info->type(), prefs_, &brave_pref_change_registrar_, - info->pref_name(), - is_incognito_, + info->pref_name(), off_the_record_, base::Bind(&PrefProvider::Notify, base::Unretained(this))))); break; } @@ -153,14 +152,14 @@ bool BravePrefProvider::SetWebsiteSetting( if (content_type == CONTENT_SETTINGS_TYPE_COOKIES) { auto* value = in_value.get(); auto match = std::find_if( - brave_cookie_rules_[is_incognito_].begin(), - brave_cookie_rules_[is_incognito_].end(), + brave_cookie_rules_[off_the_record_].begin(), + brave_cookie_rules_[off_the_record_].end(), [primary_pattern, secondary_pattern, value](const auto& rule) { return rule.primary_pattern == primary_pattern && rule.secondary_pattern == secondary_pattern && ValueToContentSetting(&rule.value) != ValueToContentSetting(value); }); - if (match != brave_cookie_rules_[is_incognito_].end()) { + if (match != brave_cookie_rules_[off_the_record_].end()) { // swap primary/secondary pattern - see CloneRule auto plugin_primary_pattern = secondary_pattern; auto plugin_secondary_pattern = primary_pattern; diff --git a/components/content_settings/core/browser/brave_content_settings_pref_provider.h b/components/content_settings/core/browser/brave_content_settings_pref_provider.h index 7f7ff25ec6ae..d66b8907b4b2 100644 --- a/components/content_settings/core/browser/brave_content_settings_pref_provider.h +++ b/components/content_settings/core/browser/brave_content_settings_pref_provider.h @@ -29,7 +29,7 @@ class BravePrefProvider : public PrefProvider, public Observer { public: BravePrefProvider(PrefService* prefs, - bool incognito, + bool off_the_record, bool store_last_modified); ~BravePrefProvider() override; diff --git a/components/gcm_driver/gcm_unittest.cc b/components/gcm_driver/gcm_unittest.cc index 1de1c636e7ae..a57231c34589 100644 --- a/components/gcm_driver/gcm_unittest.cc +++ b/components/gcm_driver/gcm_unittest.cc @@ -73,6 +73,7 @@ class FakeMCSClient : public MCSClient { FakeMCSClient(base::Clock* clock, ConnectionFactory* connection_factory, GCMStore* gcm_store, + scoped_refptr io_task_runner, GCMStatsRecorder* recorder); ~FakeMCSClient() override; void Login(uint64_t android_id, uint64_t security_token) override; @@ -92,11 +93,18 @@ class FakeMCSClient : public MCSClient { mcs_proto::DataMessageStanza last_data_message_stanza_; }; -FakeMCSClient::FakeMCSClient(base::Clock* clock, - ConnectionFactory* connection_factory, - GCMStore* gcm_store, - GCMStatsRecorder* recorder) - : MCSClient("", clock, connection_factory, gcm_store, recorder), +FakeMCSClient::FakeMCSClient( + base::Clock* clock, + ConnectionFactory* connection_factory, + GCMStore* gcm_store, + scoped_refptr io_task_runner, + GCMStatsRecorder* recorder) + : MCSClient("", + clock, + connection_factory, + gcm_store, + io_task_runner, + recorder), last_android_id_(0u), last_security_token_(0u), last_message_tag_(kNumProtoTypes) { @@ -165,6 +173,7 @@ class FakeGCMInternalsBuilder : public GCMInternalsBuilder { base::Clock* clock, ConnectionFactory* connection_factory, GCMStore* gcm_store, + scoped_refptr io_task_runner, GCMStatsRecorder* recorder) override; std::unique_ptr BuildConnectionFactory( const std::vector& endpoints, @@ -172,6 +181,7 @@ class FakeGCMInternalsBuilder : public GCMInternalsBuilder { base::RepeatingCallback< void(network::mojom::ProxyResolvingSocketFactoryRequest)> get_socket_factory_callback, + scoped_refptr io_task_runner, GCMStatsRecorder* recorder, network::NetworkConnectionTracker* network_connection_tracker) override; @@ -193,9 +203,10 @@ std::unique_ptr FakeGCMInternalsBuilder::BuildMCSClient( base::Clock* clock, ConnectionFactory* connection_factory, GCMStore* gcm_store, + scoped_refptr io_task_runner, GCMStatsRecorder* recorder) { - return base::WrapUnique( - new FakeMCSClient(clock, connection_factory, gcm_store, recorder)); + return base::WrapUnique(new FakeMCSClient( + clock, connection_factory, gcm_store, io_task_runner, recorder)); } std::unique_ptr @@ -205,6 +216,7 @@ FakeGCMInternalsBuilder::BuildConnectionFactory( base::RepeatingCallback< void(network::mojom::ProxyResolvingSocketFactoryRequest)> get_socket_factory_callback, + scoped_refptr io_task_runner, GCMStatsRecorder* recorder, network::NetworkConnectionTracker* network_connection_tracker) { return base::WrapUnique(new FakeConnectionFactory()); @@ -430,7 +442,8 @@ void GCMClientImplTest::InitializeGCMClient() { chrome_build_info.version = kChromeVersion; chrome_build_info.product_category_for_subtypes = kProductCategoryForSubtypes; gcm_client_->Initialize( - chrome_build_info, gcm_store_path(), task_runner_, base::DoNothing(), + chrome_build_info, gcm_store_path(), task_runner_, + base::ThreadTaskRunnerHandle::Get(), base::DoNothing(), base::MakeRefCounted( &test_url_loader_factory_), network::TestNetworkConnectionTracker::GetInstance(), diff --git a/components/invalidation/fcm_unittest.cc b/components/invalidation/fcm_unittest.cc index aeed3d918c8e..4f92b0000067 100644 --- a/components/invalidation/fcm_unittest.cc +++ b/components/invalidation/fcm_unittest.cc @@ -20,6 +20,8 @@ #include "components/gcm_driver/instance_id/instance_id_driver.h" #include "components/invalidation/impl/status.h" #include "google_apis/gcm/engine/account_mapping.h" +#include "services/network/public/cpp/weak_wrapper_shared_url_loader_factory.h" +#include "services/network/test/test_url_loader_factory.h" #include "testing/gmock/include/gmock/gmock.h" using base::TestMockTimeTaskRunner; @@ -73,8 +75,11 @@ class MockInstanceID : public InstanceID { class MockGCMDriver : public gcm::GCMDriver { public: MockGCMDriver() - : GCMDriver(/*store_path=*/base::FilePath(), - /*blocking_task_runner=*/nullptr) {} + : GCMDriver( + /*store_path=*/base::FilePath(), + /*blocking_task_runner=*/nullptr, + base::MakeRefCounted( + &test_url_loader_factory_)) {} ~MockGCMDriver() override = default; MOCK_METHOD4(ValidateRegistration, @@ -128,6 +133,7 @@ class MockGCMDriver : public gcm::GCMDriver { gcm::GCMDecryptionResult result)); private: + network::TestURLLoaderFactory test_url_loader_factory_; DISALLOW_COPY_AND_ASSIGN(MockGCMDriver); }; diff --git a/components/omnibox/browser/topsites_provider.cc b/components/omnibox/browser/topsites_provider.cc index b72028abc01a..23e389b34c54 100644 --- a/components/omnibox/browser/topsites_provider.cc +++ b/components/omnibox/browser/topsites_provider.cc @@ -28,7 +28,7 @@ void TopSitesProvider::Start(const AutocompleteInput& input, bool minimal_changes) { matches_.clear(); if (input.from_omnibox_focus() || - (input.type() == metrics::OmniboxInputType::INVALID) || + (input.type() == metrics::OmniboxInputType::EMPTY) || (input.type() == metrics::OmniboxInputType::QUERY)) return; diff --git a/content/browser/webui/brave_shared_resources_data_source.cc b/content/browser/webui/brave_shared_resources_data_source.cc index 047277a773c4..881bf0be5d7f 100644 --- a/content/browser/webui/brave_shared_resources_data_source.cc +++ b/content/browser/webui/brave_shared_resources_data_source.cc @@ -103,7 +103,7 @@ BraveSharedResourcesDataSource::BraveSharedResourcesDataSource() { BraveSharedResourcesDataSource::~BraveSharedResourcesDataSource() { } -std::string BraveSharedResourcesDataSource::GetSource() const { +std::string BraveSharedResourcesDataSource::GetSource() { return "brave-resources"; } @@ -123,14 +123,14 @@ void BraveSharedResourcesDataSource::StartDataRequest( callback.Run(bytes.get()); } -bool BraveSharedResourcesDataSource::AllowCaching() const { +bool BraveSharedResourcesDataSource::AllowCaching() { // Should not be cached to reflect dynamically-generated contents that may // depend on the current locale. return true; } std::string BraveSharedResourcesDataSource::GetMimeType( - const std::string& path) const { + const std::string& path) { if (path.empty()) return "text/html"; @@ -170,20 +170,19 @@ std::string BraveSharedResourcesDataSource::GetMimeType( return "text/plain"; } -bool BraveSharedResourcesDataSource::ShouldServeMimeTypeAsContentTypeHeader() - const { +bool BraveSharedResourcesDataSource::ShouldServeMimeTypeAsContentTypeHeader() { return true; } scoped_refptr BraveSharedResourcesDataSource::TaskRunnerForRequestPath( - const std::string& path) const { + const std::string& path) { return nullptr; } std::string BraveSharedResourcesDataSource::GetAccessControlAllowOriginForOrigin( - const std::string& origin) const { + const std::string& origin) { // For now we give access only for "chrome://*" origins. // According to CORS spec, Access-Control-Allow-Origin header doesn't support // wildcards, so we need to set its value explicitly by passing the |origin| @@ -197,7 +196,7 @@ BraveSharedResourcesDataSource::GetAccessControlAllowOriginForOrigin( return origin; } -bool BraveSharedResourcesDataSource::IsGzipped(const std::string& path) const { +bool BraveSharedResourcesDataSource::IsGzipped(const std::string& path) { // Cannot access GetContentClient() from here as that is //content/public // only. Therefore cannot access ContentClient::IsDataResourceGzipped, so go // to the bundle directly. diff --git a/content/browser/webui/brave_shared_resources_data_source.h b/content/browser/webui/brave_shared_resources_data_source.h index 584e95217fce..9c2cfaee1bbf 100644 --- a/content/browser/webui/brave_shared_resources_data_source.h +++ b/content/browser/webui/brave_shared_resources_data_source.h @@ -17,19 +17,19 @@ class BraveSharedResourcesDataSource : public URLDataSource { ~BraveSharedResourcesDataSource() override; // URLDataSource implementation. - std::string GetSource() const override; + std::string GetSource() override; void StartDataRequest( const std::string& path, const ResourceRequestInfo::WebContentsGetter& wc_getter, const URLDataSource::GotDataCallback& callback) override; - bool AllowCaching() const override; - std::string GetMimeType(const std::string& path) const override; - bool ShouldServeMimeTypeAsContentTypeHeader() const override; + bool AllowCaching() override; + std::string GetMimeType(const std::string& path) override; + bool ShouldServeMimeTypeAsContentTypeHeader() override; scoped_refptr TaskRunnerForRequestPath( - const std::string& path) const override; + const std::string& path) override; std::string GetAccessControlAllowOriginForOrigin( - const std::string& origin) const override; - bool IsGzipped(const std::string& path) const override; + const std::string& origin) override; + bool IsGzipped(const std::string& path) override; private: DISALLOW_COPY_AND_ASSIGN(BraveSharedResourcesDataSource); diff --git a/extensions/renderer/brave_shields_content_setting.cc b/extensions/renderer/brave_shields_content_setting.cc index 1118f30aef44..e861eebe78f5 100644 --- a/extensions/renderer/brave_shields_content_setting.cc +++ b/extensions/renderer/brave_shields_content_setting.cc @@ -120,15 +120,12 @@ void BraveShieldsContentSetting::HandleFunction(const std::string& method_name, if (!access_checker_->HasAccessOrThrowError(context, full_name)) return; - std::unique_ptr converted_arguments; - v8::Local callback; - std::string error; const APISignature* signature = type_refs_->GetTypeMethodSignature(full_name); - if (!signature->ParseArgumentsToJSON(context, argument_list, *type_refs_, - &converted_arguments, &callback, - &error)) { + APISignature::JSONParseResult parse_result = + signature->ParseArgumentsToJSON(context, argument_list, *type_refs_); + if (!parse_result.succeeded()) { arguments->ThrowTypeError(api_errors::InvocationError( - full_name, signature->GetExpectedSignature(), error)); + full_name, signature->GetExpectedSignature(), *parse_result.error)); return; } @@ -148,10 +145,11 @@ void BraveShieldsContentSetting::HandleFunction(const std::string& method_name, } } - converted_arguments->Insert(0u, std::make_unique(pref_name_)); + parse_result.arguments->Insert(0u, std::make_unique(pref_name_)); request_handler_->StartRequest( - context, "braveShields." + method_name, std::move(converted_arguments), - callback, v8::Local(), binding::RequestThread::UI); + context, "braveShields." + method_name, std::move(parse_result.arguments), + parse_result.callback, v8::Local(), + binding::RequestThread::UI); } } // namespace extensions diff --git a/patches/build-config-BUILDCONFIG.gn.patch b/patches/build-config-BUILDCONFIG.gn.patch index 3dc90e750b63..abdda3f35644 100644 --- a/patches/build-config-BUILDCONFIG.gn.patch +++ b/patches/build-config-BUILDCONFIG.gn.patch @@ -1,5 +1,5 @@ diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn -index 7063da0f26c5691f01214c2dc014128d7c8c5e09..3e18855c2a74036033999cd060a7f577925d0ee4 100644 +index db7ab0255b482d4e1fd20a31cfec86a24546602a..1cc44592d0d854f17cf3d2f5a5e0c2ed76b2d025 100644 --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn @@ -419,6 +419,7 @@ set_sources_assignment_filter(sources_assignment_filter) diff --git a/patches/build-config-android-config.gni.patch b/patches/build-config-android-config.gni.patch index c2f7ac19d1c4..5c4bffb9cc29 100644 --- a/patches/build-config-android-config.gni.patch +++ b/patches/build-config-android-config.gni.patch @@ -1,5 +1,5 @@ diff --git a/build/config/android/config.gni b/build/config/android/config.gni -index 58838421c8a3cb995d3b41c59fac24523c57dafa..fb3715e80a24f7de149e7d7301e209a148c30d0f 100644 +index bed796ebe45e47af39bb3f27383cf23bc028adb3..7c0707454b7e3c435d793c1e300755f3d8bcb9c2 100644 --- a/build/config/android/config.gni +++ b/build/config/android/config.gni @@ -3,6 +3,7 @@ diff --git a/patches/chrome-BUILD.gn.patch b/patches/chrome-BUILD.gn.patch index 3b6aa6347254..06def7ce6259 100644 --- a/patches/chrome-BUILD.gn.patch +++ b/patches/chrome-BUILD.gn.patch @@ -1,5 +1,5 @@ diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn -index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace21f4991c 100644 +index 0c52ff3c73580e38b2828fabdeb0e9c340428ca3..c99d78bb59960edf586b9079677dcbf0b7ea6f92 100644 --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn @@ -190,6 +190,10 @@ if (!is_android && !is_mac) { @@ -13,7 +13,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace deps += [ ":chrome_dll", -@@ -289,6 +293,7 @@ if (!is_android && !is_mac) { +@@ -297,6 +301,7 @@ if (!is_android && !is_mac) { "//headless:headless_shell_lib", "//services/service_manager/embedder", ] @@ -21,7 +21,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace public_deps = [ ":xdg_mime", # Needs to be public for installer to consume files. -@@ -435,6 +440,7 @@ if (is_win) { +@@ -431,6 +436,7 @@ if (is_win) { "//third_party/wtl", "//ui/views", ] @@ -29,7 +29,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace ldflags = [ "/DELAYLOAD:advapi32.dll", -@@ -569,6 +575,7 @@ if (is_win) { +@@ -566,6 +572,7 @@ if (is_win) { "//headless:headless_shell_child_lib", "//services/service_manager/embedder", ] @@ -37,7 +37,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace ldflags = [ "/DELAYLOAD:comctl32.dll", -@@ -680,6 +687,11 @@ if (is_win) { +@@ -677,6 +684,11 @@ if (is_win) { ] } @@ -49,7 +49,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace mac_app_bundle("chrome_app") { output_name = chrome_product_full_name -@@ -713,6 +725,7 @@ if (is_win) { +@@ -710,6 +722,7 @@ if (is_win) { rebase_path("app/app.exports", root_build_dir) ] } } @@ -57,7 +57,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace compiled_action("chrome_app_strings") { tool = "//chrome/tools/build/mac:infoplist_strings_tool" -@@ -742,7 +755,7 @@ if (is_win) { +@@ -739,7 +752,7 @@ if (is_win) { args = [ "-b", @@ -66,7 +66,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace "-v", rebase_path(chrome_version_file, root_build_dir), "-g", -@@ -823,7 +836,7 @@ if (is_win) { +@@ -820,7 +833,7 @@ if (is_win) { # framework itself, that would cause a cyclical dependency. Instead, # this dependency directly copies the file into the framework's # resources directory. @@ -75,7 +75,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace } } -@@ -1249,6 +1262,7 @@ if (is_win) { +@@ -1247,6 +1260,7 @@ if (is_win) { "//services/service_manager/embedder", "//third_party/cld_3/src/src:cld_3", ] @@ -83,7 +83,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace if (is_component_build) { libs = [ "Carbon.framework" ] -@@ -1313,6 +1327,10 @@ if (is_win) { +@@ -1311,6 +1325,10 @@ if (is_win) { if (is_chrome_branded) { deps += [ ":default_apps" ] } @@ -94,7 +94,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace ldflags = [ "-Wl,-install_name,@executable_path/../Frameworks/$chrome_framework_name.framework/Versions/$chrome_version_full/$chrome_framework_name" ] -@@ -1483,6 +1501,7 @@ if (is_win) { +@@ -1475,6 +1493,7 @@ if (is_win) { group("browser_dependencies") { public_deps = [ @@ -102,7 +102,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace "//chrome/browser", "//chrome/common", "//components/gwp_asan/buildflags", -@@ -1556,13 +1575,14 @@ group("child_dependencies") { +@@ -1547,13 +1566,14 @@ group("child_dependencies") { # this is OK because all of content is linked into one library. "//content/browser", ] @@ -118,7 +118,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace ] output = "$target_gen_dir/chrome_exe_version.rc" } -@@ -1635,6 +1655,7 @@ group("resources") { +@@ -1626,6 +1646,7 @@ group("resources") { "//chrome/browser:resources", "//chrome/common:resources", "//chrome/renderer:resources", @@ -126,7 +126,7 @@ index e06ba8ee8bcf4cc240029fc66a7c2681786217a0..a77998f9bd28b8a9965a7e10611c2ace ] } -@@ -1886,6 +1907,7 @@ if (is_android) { +@@ -1882,6 +1903,7 @@ if (is_android) { "//content/public/common:service_names", "//services/service_manager/embedder", ] diff --git a/patches/chrome-VERSION.patch b/patches/chrome-VERSION.patch index d67cebfe20a6..4298056349b0 100644 --- a/patches/chrome-VERSION.patch +++ b/patches/chrome-VERSION.patch @@ -1,11 +1,11 @@ diff --git a/chrome/VERSION b/chrome/VERSION -index 0f9c2987c0599cb48f0f52d4ffc542b2beeb7fb5..c10be37d87f8c96db079b952d7a7523c5e85977a 100644 +index 367e47a3fa1b5e20c76a7a6b48b45ca8a4c899da..d839b3a262d3e1fc3fef06e04e59370f9b904296 100644 --- a/chrome/VERSION +++ b/chrome/VERSION @@ -1,4 +1,4 @@ - MAJOR=76 + MAJOR=77 MINOR=0 --BUILD=3809 --PATCH=100 +-BUILD=3865 +-PATCH=42 +BUILD=71 +PATCH=32 diff --git a/patches/chrome-android-BUILD.gn.patch b/patches/chrome-android-BUILD.gn.patch index 5d5a5d860e08..350daf5b093b 100644 --- a/patches/chrome-android-BUILD.gn.patch +++ b/patches/chrome-android-BUILD.gn.patch @@ -1,17 +1,17 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn -index 17311184c47823594b49ad07d41bd870efa7af17..8f11dbdaa0491f676a867f5e0ce134d7e32b5a1d 100644 +index 0c5467af2bce341e0b3f0835899c820f60adbc87..fa406bae2b98570995ba1331d2145723e13a9866 100644 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -42,7 +42,7 @@ if (dfmify_devtools) { - import("//chrome/android/features/devtools/devtools_module_tmpl.gni") - } +@@ -31,7 +31,7 @@ import("java_sources.gni") + import("static_initializers.gni") + import("trichrome.gni") --manifest_package = "org.chromium.chrome" -+declare_args() { manifest_package = "org.chromium.chrome" } - test_manifest_package = "org.chromium.chrome.tests" +-chrome_public_manifest_package = "org.chromium.chrome" ++declare_args() { chrome_public_manifest_package = "org.chromium.chrome" } + chrome_public_test_manifest_package = "org.chromium.chrome.tests" - chrome_public_jinja_variables = default_chrome_public_jinja_variables + -@@ -110,6 +110,7 @@ android_resources("chrome_app_java_resources") { + chrome_public_jinja_variables = +@@ -100,6 +100,7 @@ android_resources("chrome_app_java_resources") { deps = [ ":chrome_strings_grd", ":ui_locale_string_resources", @@ -19,7 +19,7 @@ index 17311184c47823594b49ad07d41bd870efa7af17..8f11dbdaa0491f676a867f5e0ce134d7 "//chrome/android/webapk/libs/common:splash_resources", "//chrome/app:java_strings_grd", "//components/autofill/android:autofill_java_resources", -@@ -496,6 +497,7 @@ java_group("chrome_all_java") { +@@ -524,6 +525,7 @@ java_group("chrome_all_java") { group("jni_headers") { public_deps = [ ":chrome_jni_headers", diff --git a/patches/chrome-android-java-res-layout-toolbar_phone.xml.patch b/patches/chrome-android-java-res-layout-toolbar_phone.xml.patch index fbbfb107a7bf..68d2ba6213f1 100644 --- a/patches/chrome-android-java-res-layout-toolbar_phone.xml.patch +++ b/patches/chrome-android-java-res-layout-toolbar_phone.xml.patch @@ -1,5 +1,5 @@ diff --git a/chrome/android/java/res/layout/toolbar_phone.xml b/chrome/android/java/res/layout/toolbar_phone.xml -index 62a3a3f3dc36d6417519832e987466ff26a18ea2..3c8c8cf4d83efae421571f57a5cc978dad4dab53 100644 +index fe66549d3ac660c12186e0c9c78c7ed525f2015d..9f2fad8590812ececbf1b9d04ec493c2ed7da425 100644 --- a/chrome/android/java/res/layout/toolbar_phone.xml +++ b/chrome/android/java/res/layout/toolbar_phone.xml @@ -31,6 +31,7 @@ @@ -12,7 +12,7 @@ index 62a3a3f3dc36d6417519832e987466ff26a18ea2..3c8c8cf4d83efae421571f57a5cc978d + diff --git a/patches/chrome-android-java-res-layout-toolbar_tablet.xml.patch b/patches/chrome-android-java-res-layout-toolbar_tablet.xml.patch index 4b7cd9f991af..aeeef6e3a5a6 100644 --- a/patches/chrome-android-java-res-layout-toolbar_tablet.xml.patch +++ b/patches/chrome-android-java-res-layout-toolbar_tablet.xml.patch @@ -1,5 +1,5 @@ diff --git a/chrome/android/java/res/layout/toolbar_tablet.xml b/chrome/android/java/res/layout/toolbar_tablet.xml -index 4ead17fd19f45a22d4c13877726b58658ac82e89..1a1d924eabe7f45f3f0c4b406bbac096a2375a2d 100644 +index 12630f4cd02676d1676eaea5617bf20689192697..b7a56a2411f439d3ac476bcf33f5996d5ef047ac 100644 --- a/chrome/android/java/res/layout/toolbar_tablet.xml +++ b/chrome/android/java/res/layout/toolbar_tablet.xml @@ -75,6 +75,7 @@ diff --git a/patches/chrome-android-java-res-values-dimens.xml.patch b/patches/chrome-android-java-res-values-dimens.xml.patch index ef98172f3801..81f16f0db9fa 100644 --- a/patches/chrome-android-java-res-values-dimens.xml.patch +++ b/patches/chrome-android-java-res-values-dimens.xml.patch @@ -1,8 +1,8 @@ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml -index 2d3a1ddc2d73e0a76b7115d6e0fa1bedd0ab659c..b803e7ed86d9632dd4f97d0d5bc7356ed6656ee9 100644 +index e0a078063054229131277ff3878e6ef3ebeee61f..d93f0de960c134608342ba21c80151b9b6f80515 100644 --- a/chrome/android/java/res/values/dimens.xml +++ b/chrome/android/java/res/values/dimens.xml -@@ -285,7 +285,7 @@ +@@ -287,7 +287,7 @@ 40dp diff --git a/patches/chrome-android-java-res-values-v17-styles.xml.patch b/patches/chrome-android-java-res-values-v17-styles.xml.patch index 0390119101cc..95f0f5ee1bcb 100644 --- a/patches/chrome-android-java-res-values-v17-styles.xml.patch +++ b/patches/chrome-android-java-res-values-v17-styles.xml.patch @@ -1,10 +1,10 @@ diff --git a/chrome/android/java/res/values-v17/styles.xml b/chrome/android/java/res/values-v17/styles.xml -index c851e676d0dffd3e5a53641e3cb4f2f434d3a984..fbb0802b0f13383131fce4a19ebc74cbce1d91b4 100644 +index 5b41c992fb2b17c1b8a8a06ecc09460c4190fa86..b4a36c8d48dcc89a1dd0e9c661f4d3eedc757ed8 100644 --- a/chrome/android/java/res/values-v17/styles.xml +++ b/chrome/android/java/res/values-v17/styles.xml -@@ -930,4 +930,5 @@ - @dimen/omnibox_suggestion_edit_url_min_height - @color/default_icon_color +@@ -995,4 +995,5 @@ + viewStart + @style/TextAppearance.BlackTitle1 + diff --git a/patches/chrome-android-java-src-org-chromium-chrome-browser-ChromeTabbedActivity.java.patch b/patches/chrome-android-java-src-org-chromium-chrome-browser-ChromeTabbedActivity.java.patch index 919d232c5fe3..139aae27375c 100644 --- a/patches/chrome-android-java-src-org-chromium-chrome-browser-ChromeTabbedActivity.java.patch +++ b/patches/chrome-android-java-src-org-chromium-chrome-browser-ChromeTabbedActivity.java.patch @@ -1,8 +1,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -index 6bdd439f89a68e8b53bf077547ad04bc35414674..366524b92af5979ed4be1bac159cae6da8896a09 100644 +index a168b085348c218c2951964beb37e0a25d754836..ad5cf672b9548a4f9921c4bc3521a0c8111e998d 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -182,7 +182,7 @@ import java.util.Locale; +@@ -174,7 +174,7 @@ import java.util.Locale; * are accessible via a chrome specific tab switching UI. */ public class ChromeTabbedActivity diff --git a/patches/chrome-android-java-src-org-chromium-chrome-browser-preferences-ChromePreferenceManager.java.patch b/patches/chrome-android-java-src-org-chromium-chrome-browser-preferences-ChromePreferenceManager.java.patch index defe5bf5bc96..708bcc877652 100644 --- a/patches/chrome-android-java-src-org-chromium-chrome-browser-preferences-ChromePreferenceManager.java.patch +++ b/patches/chrome-android-java-src-org-chromium-chrome-browser-preferences-ChromePreferenceManager.java.patch @@ -1,5 +1,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceManager.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceManager.java -index 80072b7f7afc55c1d893416b614267edbfb7b2da..091832ed91eea9462378b30ac3ec717e648e211e 100644 +index e269ba6c0436afc362804823e557dfe38c600c3b..fc3699b450c22a9731ccce0723e69dfcf813cf3c 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceManager.java @@ -21,7 +21,7 @@ import java.util.Set; diff --git a/patches/chrome-android-java-src-org-chromium-chrome-browser-search_engines-TemplateUrlService.java.patch b/patches/chrome-android-java-src-org-chromium-chrome-browser-search_engines-TemplateUrlService.java.patch deleted file mode 100644 index 6ea203beac66..000000000000 --- a/patches/chrome-android-java-src-org-chromium-chrome-browser-search_engines-TemplateUrlService.java.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/search_engines/TemplateUrlService.java b/chrome/android/java/src/org/chromium/chrome/browser/search_engines/TemplateUrlService.java -index 55c72cd215f525a17853cd63f79ecb8b537d4102..3bec2e2c5aedcbf631aadc058c2167c1641a626d 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/search_engines/TemplateUrlService.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/search_engines/TemplateUrlService.java -@@ -11,6 +11,7 @@ import org.chromium.base.ThreadUtils; - import org.chromium.base.VisibleForTesting; - import org.chromium.base.annotations.CalledByNative; - import org.chromium.base.task.PostTask; -+import org.chromium.chrome.browser.search_engines.BraveTemplateUrlService; - import org.chromium.content_public.browser.UiThreadTaskTraits; - - import java.util.ArrayList; -@@ -49,7 +50,7 @@ public class TemplateUrlService { - public static TemplateUrlService getInstance() { - ThreadUtils.assertOnUiThread(); - if (sService == null) { -- sService = new TemplateUrlService(); -+ sService = new BraveTemplateUrlService(); - } - return sService; - } -@@ -59,7 +60,7 @@ public class TemplateUrlService { - private final ObserverList mObservers = - new ObserverList(); - -- private TemplateUrlService() { -+ protected TemplateUrlService() { - // Note that this technically leaks the native object, however, TemlateUrlService - // is a singleton that lives forever and there's no clean shutdown of Chrome on Android - mNativeTemplateUrlServiceAndroid = nativeInit(); diff --git a/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-ToolbarManager.java.patch b/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-ToolbarManager.java.patch index 45011365879a..abfffaa0a26c 100644 --- a/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-ToolbarManager.java.patch +++ b/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-ToolbarManager.java.patch @@ -1,8 +1,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java -index 5e062152c274c9f03aecd657ac9009705ac48db5..510e5501295785f689599c358ee4ef0112598a48 100644 +index 795a84107a8665a7795a14cba33687d5e5e9f460..5350dd06fc524bd8d64ab40d76cfee220c16f277 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java -@@ -777,6 +777,7 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF +@@ -782,6 +782,7 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF }; final OnClickListener shareButtonListener = v -> { @@ -10,7 +10,7 @@ index 5e062152c274c9f03aecd657ac9009705ac48db5..510e5501295785f689599c358ee4ef01 recordBottomToolbarUseForIPH(); RecordUserAction.record("MobileBottomToolbarShareButton"); boolean isIncognito = false; -@@ -784,6 +785,7 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF +@@ -789,6 +790,7 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF isIncognito = mTabModelSelector.getCurrentTab().isIncognito(); } mActivity.onShareMenuItemSelected(false, isIncognito); @@ -18,7 +18,7 @@ index 5e062152c274c9f03aecd657ac9009705ac48db5..510e5501295785f689599c358ee4ef01 }; mBottomControlsCoordinator = new BottomControlsCoordinator(mActivity.getFullscreenManager(), -@@ -1745,6 +1747,7 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF +@@ -1772,6 +1774,7 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF boolean editingAllowed = currentTab == null || mBookmarkBridge == null || mBookmarkBridge.isEditBookmarksEnabled(); mToolbar.updateBookmarkButton(isBookmarked, editingAllowed); diff --git a/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-top-ToolbarPhone.java.patch b/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-top-ToolbarPhone.java.patch index 7d5d918fb816..42f6915daa32 100644 --- a/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-top-ToolbarPhone.java.patch +++ b/patches/chrome-android-java-src-org-chromium-chrome-browser-toolbar-top-ToolbarPhone.java.patch @@ -1,8 +1,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java -index 7da0ae65235d35e1b36cd9c313a072e4b891ea95..5653441053f0c23dd7c5113fe58af48eb925138b 100644 +index 6b0082fe76b27d72b5d90c7047e9e23173dd0afc..cc1ab03f9a7c149da521375cfc18b70aaa83fdd2 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarPhone.java -@@ -88,7 +88,7 @@ import java.util.List; +@@ -86,7 +86,7 @@ import java.util.List; /** * Phone specific toolbar implementation. */ @@ -11,7 +11,7 @@ index 7da0ae65235d35e1b36cd9c313a072e4b891ea95..5653441053f0c23dd7c5113fe58af48e NewTabPage.OnSearchBoxScrollListener, TabCountObserver { /** The amount of time transitioning from one theme color to another should take in ms. */ -@@ -426,10 +426,12 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O +@@ -422,10 +422,12 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O /** * Set the background color of the location bar to appropriately match the theme color. */ @@ -25,7 +25,7 @@ index 7da0ae65235d35e1b36cd9c313a072e4b891ea95..5653441053f0c23dd7c5113fe58af48e } /** -@@ -546,6 +548,7 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O +@@ -542,6 +544,7 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O .notifyEvent(EventConstants.PARTNER_HOME_PAGE_BUTTON_PRESSED); } } @@ -33,7 +33,7 @@ index 7da0ae65235d35e1b36cd9c313a072e4b891ea95..5653441053f0c23dd7c5113fe58af48e } @Override -@@ -719,7 +722,7 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O +@@ -715,7 +718,7 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O * @return The right bounds of the location bar after accounting for any visible left buttons. */ private int getBoundsAfterAccountingForRightButtons() { @@ -42,7 +42,7 @@ index 7da0ae65235d35e1b36cd9c313a072e4b891ea95..5653441053f0c23dd7c5113fe58af48e } private void updateToolbarBackground(int color) { -@@ -2121,6 +2124,7 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O +@@ -2130,6 +2133,7 @@ public class ToolbarPhone extends ToolbarLayout implements Invalidator.Client, O } else { populateUrlClearFocusingAnimatorSet(animators); } diff --git a/patches/chrome-android-java-src-org-chromium-chrome-browser-util-FeatureUtilities.java.patch b/patches/chrome-android-java-src-org-chromium-chrome-browser-util-FeatureUtilities.java.patch index df6655889f9e..91bd72cf1c19 100644 --- a/patches/chrome-android-java-src-org-chromium-chrome-browser-util-FeatureUtilities.java.patch +++ b/patches/chrome-android-java-src-org-chromium-chrome-browser-util-FeatureUtilities.java.patch @@ -1,8 +1,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUtilities.java b/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUtilities.java -index a1fd6aced1b2dfe6eca978d1977517383913cd37..0482c54fb467960002133d7203a43e2ec6baf6d1 100644 +index e5270f604ea8b8ee9f27b2e7c89e4945e6e45d60..deb382908cfd0112b7cc0ee02282d8eabf209b5f 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUtilities.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUtilities.java -@@ -491,6 +491,7 @@ public class FeatureUtilities { +@@ -457,6 +457,7 @@ public class FeatureUtilities { * @return Whether or not the bottom toolbar is enabled. */ public static boolean isBottomToolbarEnabled() { @@ -10,7 +10,7 @@ index a1fd6aced1b2dfe6eca978d1977517383913cd37..0482c54fb467960002133d7203a43e2e if (sIsBottomToolbarEnabled == null) { ChromePreferenceManager prefManager = ChromePreferenceManager.getInstance(); -@@ -502,6 +503,7 @@ public class FeatureUtilities { +@@ -468,6 +469,7 @@ public class FeatureUtilities { && !DeviceFormFactor.isNonMultiDisplayContextOnTablet( ContextUtils.getApplicationContext()) && !isTabGroupsAndroidEnabled(); diff --git a/patches/chrome-android-java_sources.gni.patch b/patches/chrome-android-java_sources.gni.patch index 73b0b720e165..3c717850b9c6 100644 --- a/patches/chrome-android-java_sources.gni.patch +++ b/patches/chrome-android-java_sources.gni.patch @@ -1,8 +1,8 @@ diff --git a/chrome/android/java_sources.gni b/chrome/android/java_sources.gni -index 8aedf50897e9b40ca6b9617bb1a8ac766a6da16a..3ec678a94edda05c74640dcdbf63792a12ecc3dc 100644 +index ba374328abaf898aa5dd233f12673efb558c99ae..546ee1b26bbc68ca2c2d94aa42b93c836debac4f 100644 --- a/chrome/android/java_sources.gni +++ b/chrome/android/java_sources.gni -@@ -15,6 +15,7 @@ import("//components/offline_pages/buildflags/features.gni") +@@ -17,6 +17,7 @@ import("//components/offline_pages/buildflags/features.gni") import("//device/vr/buildflags/buildflags.gni") chrome_java_sources += public_autofill_assistant_java_sources diff --git a/patches/chrome-app-BUILD.gn.patch b/patches/chrome-app-BUILD.gn.patch index 8475bb01e1fe..a5f626baa26f 100644 --- a/patches/chrome-app-BUILD.gn.patch +++ b/patches/chrome-app-BUILD.gn.patch @@ -1,5 +1,5 @@ diff --git a/chrome/app/BUILD.gn b/chrome/app/BUILD.gn -index 590c4edcededad77172ae30e85b388b91d305b8e..ff494f3afd3dfaed475c89313116a45f64ffb565 100644 +index 6e5ec5df6fb27d3e359304ed1eed873256bdd349..070bb918c76a46a8f2f8003ecf9d616e8982bbec 100644 --- a/chrome/app/BUILD.gn +++ b/chrome/app/BUILD.gn @@ -186,6 +186,8 @@ grit("generated_resources") { @@ -20,10 +20,10 @@ index 590c4edcededad77172ae30e85b388b91d305b8e..ff494f3afd3dfaed475c89313116a45f defines = chrome_grit_defines output_dir = "$root_gen_dir/chrome" outputs = [ -@@ -348,6 +350,7 @@ static_library("test_support") { +@@ -347,6 +349,7 @@ static_library("test_support") { + "//components/gwp_asan/buildflags", "//components/nacl/common:buildflags", "//components/startup_metric_utils/browser:lib", - "//components/tracing", + "//components/unified_consent", "//content/public/app:both", "//content/public/common", diff --git a/patches/chrome-app-chrome_dll.rc.patch b/patches/chrome-app-chrome_dll.rc.patch index 02b7b7e23701..2581bf123ad5 100644 --- a/patches/chrome-app-chrome_dll.rc.patch +++ b/patches/chrome-app-chrome_dll.rc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/app/chrome_dll.rc b/chrome/app/chrome_dll.rc -index d994493407e6dc5c640dd16ce488818800c09d14..90846e8502e2cda2fd3a3bad4749f9977c501b12 100644 +index 80a15b55d54f55ca13d6d79b3fd75d28ae0d647f..a0aa8fa83a4e93f7689a0ece2e6dbf9d10a4c175 100644 --- a/chrome/app/chrome_dll.rc +++ b/chrome/app/chrome_dll.rc @@ -164,6 +164,16 @@ END diff --git a/patches/chrome-browser-BUILD.gn.patch b/patches/chrome-browser-BUILD.gn.patch index ab0a6ad1608f..6086173f2056 100644 --- a/patches/chrome-browser-BUILD.gn.patch +++ b/patches/chrome-browser-BUILD.gn.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 4f9844f6f8546efe591e679c41c7cd3b43c371a8..0e86b115bef94df9821adeffe944b0d3a63b587c 100644 +index dc27928a79181b702f34609c83e51fa0c1c31c02..02d362d9d24c25b922e2b3c895a134beaa8ca291 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2142,6 +2142,7 @@ jumbo_split_static_library("browser") { +@@ -2180,6 +2180,7 @@ jumbo_split_static_library("browser") { "//ui/strings", "//ui/surface", "//ui/web_dialogs", @@ -10,7 +10,7 @@ index 4f9844f6f8546efe591e679c41c7cd3b43c371a8..0e86b115bef94df9821adeffe944b0d3 ] if (is_posix || is_fuchsia) { -@@ -2155,6 +2156,7 @@ jumbo_split_static_library("browser") { +@@ -2193,6 +2194,7 @@ jumbo_split_static_library("browser") { } if (is_android) { diff --git a/patches/chrome-browser-about_flags.cc.patch b/patches/chrome-browser-about_flags.cc.patch index f40702e27e63..2bc50ac014a8 100644 --- a/patches/chrome-browser-about_flags.cc.patch +++ b/patches/chrome-browser-about_flags.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc -index 61bb2977bb7c9711465a6928b45f6a69be7f4080..c8f888c1423d2e53fc94bffc9db0ab51c86e0a4d 100644 +index 810ae41fd1a53e03bbf41c81cb12ec13fa63d745..a869460695a837035fe756db38c9b19bd93009fa 100644 --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -254,14 +254,14 @@ const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { +@@ -266,14 +266,14 @@ const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { const FeatureEntry::Choice kTraceUploadURL[] = { {flags_ui::kGenericExperimentChoiceDisabled, "", ""}, {flag_descriptions::kTraceUploadUrlChoiceOther, switches::kTraceUploadURL, diff --git a/patches/chrome-browser-autocomplete-autocomplete_classifier_factory.cc.patch b/patches/chrome-browser-autocomplete-autocomplete_classifier_factory.cc.patch index d7b0aaaf6103..efb80285f29e 100644 --- a/patches/chrome-browser-autocomplete-autocomplete_classifier_factory.cc.patch +++ b/patches/chrome-browser-autocomplete-autocomplete_classifier_factory.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/autocomplete/autocomplete_classifier_factory.cc b/chrome/browser/autocomplete/autocomplete_classifier_factory.cc -index e3159144a0b7892e5580bfa910f2db97a81179a9..8ee42d9f6f7ac50c78a03e59aa2ba34e35dae725 100644 +index 7f4dd5ffd15a0ea17fb77d712897a86370da4266..52d8469ae70f38e7a3c714f4761d4172915af138 100644 --- a/chrome/browser/autocomplete/autocomplete_classifier_factory.cc +++ b/chrome/browser/autocomplete/autocomplete_classifier_factory.cc @@ -68,7 +68,12 @@ AutocompleteClassifierFactory::~AutocompleteClassifierFactory() { diff --git a/patches/chrome-browser-browser_process_impl.h.patch b/patches/chrome-browser-browser_process_impl.h.patch index a550a06d7d8e..8d2128a57a51 100644 --- a/patches/chrome-browser-browser_process_impl.h.patch +++ b/patches/chrome-browser-browser_process_impl.h.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h -index 95a7bd8e8b581c6addec8b33880b2c03040f713a..b7037dd80a29bbd64a8ed66d4d01e585df589eed 100644 +index c02e294f5b2e388cda053ba03974bff53a7ba5da..c7f071ba6a9f726e45c3ad4e5b637a415ea7146d 100644 --- a/chrome/browser/browser_process_impl.h +++ b/chrome/browser/browser_process_impl.h -@@ -206,6 +206,7 @@ class BrowserProcessImpl : public BrowserProcess, +@@ -198,6 +198,7 @@ class BrowserProcessImpl : public BrowserProcess, static void RegisterPrefs(PrefRegistrySimple* registry); private: diff --git a/patches/chrome-browser-chrome_content_browser_client.h.patch b/patches/chrome-browser-chrome_content_browser_client.h.patch index fe7f0778bd96..c6a42eb46e1b 100644 --- a/patches/chrome-browser-chrome_content_browser_client.h.patch +++ b/patches/chrome-browser-chrome_content_browser_client.h.patch @@ -1,9 +1,9 @@ diff --git a/chrome/browser/chrome_content_browser_client.h b/chrome/browser/chrome_content_browser_client.h -index 499af0b670a1060f81c2b1dda8812865aac29670..b9d5d5f72fcd3a319472cb226ec83ca4b62f0180 100644 +index 069f597633a2924e0bdacd7cb1d92f5d418e6d87..a40200ffd46ec9deb623906633f4805fb63bf8dd 100644 --- a/chrome/browser/chrome_content_browser_client.h +++ b/chrome/browser/chrome_content_browser_client.h -@@ -637,6 +637,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { - content::BrowserContext* browser_context); +@@ -634,6 +634,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { + virtual const ui::NativeTheme* GetWebTheme() const; // For testing. private: + friend class BraveContentBrowserClient; diff --git a/patches/chrome-browser-content_settings-tab_specific_content_settings.cc.patch b/patches/chrome-browser-content_settings-tab_specific_content_settings.cc.patch index 9e5c34714849..b6dee9a46cf3 100644 --- a/patches/chrome-browser-content_settings-tab_specific_content_settings.cc.patch +++ b/patches/chrome-browser-content_settings-tab_specific_content_settings.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/content_settings/tab_specific_content_settings.cc b/chrome/browser/content_settings/tab_specific_content_settings.cc -index f521d5f7842bcd128772a9c8b57b464ffee312f5..1a9a1b0ebb01a0db607dd88e426166e176146c75 100644 +index 34fde937fea30840585b21c0623443f7dcb6c46a..50de09977491c7961ce3fc643f175d1e1e24a7f4 100644 --- a/chrome/browser/content_settings/tab_specific_content_settings.cc +++ b/chrome/browser/content_settings/tab_specific_content_settings.cc -@@ -283,6 +283,7 @@ bool TabSpecificContentSettings::IsContentBlocked( +@@ -253,6 +253,7 @@ bool TabSpecificContentSettings::IsContentBlocked( content_type == CONTENT_SETTINGS_TYPE_ADS || content_type == CONTENT_SETTINGS_TYPE_SOUND || content_type == CONTENT_SETTINGS_TYPE_CLIPBOARD_READ || @@ -10,7 +10,7 @@ index f521d5f7842bcd128772a9c8b57b464ffee312f5..1a9a1b0ebb01a0db607dd88e426166e1 content_type == CONTENT_SETTINGS_TYPE_SENSORS) { const auto& it = content_settings_status_.find(content_type); if (it != content_settings_status_.end()) -@@ -306,6 +307,7 @@ bool TabSpecificContentSettings::IsContentAllowed( +@@ -276,6 +277,7 @@ bool TabSpecificContentSettings::IsContentAllowed( content_type != CONTENT_SETTINGS_TYPE_PPAPI_BROKER && content_type != CONTENT_SETTINGS_TYPE_MIDI_SYSEX && content_type != CONTENT_SETTINGS_TYPE_CLIPBOARD_READ && diff --git a/patches/chrome-browser-devtools-devtools_ui_bindings.h.patch b/patches/chrome-browser-devtools-devtools_ui_bindings.h.patch index 8faa4ced5753..e2a2330a855c 100644 --- a/patches/chrome-browser-devtools-devtools_ui_bindings.h.patch +++ b/patches/chrome-browser-devtools-devtools_ui_bindings.h.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/devtools/devtools_ui_bindings.h b/chrome/browser/devtools/devtools_ui_bindings.h -index f832069419217412657c1279712f821e6c036132..50fb5a5f2a6a3f0c910341115839f0d64737ec4d 100644 +index cc7e57e6c2e06dded26fce90dc22953c9785aae5..c535e148ea824e45506d37932e33ecc026e08d26 100644 --- a/chrome/browser/devtools/devtools_ui_bindings.h +++ b/chrome/browser/devtools/devtools_ui_bindings.h @@ -89,6 +89,9 @@ class DevToolsUIBindings : public DevToolsEmbedderMessageDispatcher::Delegate, diff --git a/patches/chrome-browser-extensions-api-webrtc_logging_private-webrtc_logging_private_api.cc.patch b/patches/chrome-browser-extensions-api-webrtc_logging_private-webrtc_logging_private_api.cc.patch index 1f81c76b5146..4744357d8fc9 100644 --- a/patches/chrome-browser-extensions-api-webrtc_logging_private-webrtc_logging_private_api.cc.patch +++ b/patches/chrome-browser-extensions-api-webrtc_logging_private-webrtc_logging_private_api.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc b/chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc -index 8efee8786a5e875dfcd68f262c15a47e1512ab5e..6aea38bf2b9cbcaedd2bde00fd0f11cd2544ca87 100644 +index 3896f0b9e8f764fa425e0702c6ff97ba0a4b1bcf..37c067c77588130a78318d22eb695f70e982dc70 100644 --- a/chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc +++ b/chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc @@ -87,6 +87,7 @@ std::string HashIdWithOrigin(const std::string& security_origin, diff --git a/patches/chrome-browser-extensions-chrome_extensions_browser_client.cc.patch b/patches/chrome-browser-extensions-chrome_extensions_browser_client.cc.patch index 88d0c483ce1b..f66e57e82f01 100644 --- a/patches/chrome-browser-extensions-chrome_extensions_browser_client.cc.patch +++ b/patches/chrome-browser-extensions-chrome_extensions_browser_client.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/extensions/chrome_extensions_browser_client.cc b/chrome/browser/extensions/chrome_extensions_browser_client.cc -index 87a8ac4f1635d0f11067da7644987a2cff16aa06..4fc1deebd4ad047fa9f00efbd2d5490041b5d32e 100644 +index 37972b557b457ffd69215caf8d2616432fe7a3da..9be4fa73fe51417bc5e8ed88517089a6d6f6592c 100644 --- a/chrome/browser/extensions/chrome_extensions_browser_client.cc +++ b/chrome/browser/extensions/chrome_extensions_browser_client.cc @@ -9,6 +9,8 @@ @@ -11,7 +11,7 @@ index 87a8ac4f1635d0f11067da7644987a2cff16aa06..4fc1deebd4ad047fa9f00efbd2d54900 #include "build/build_config.h" #include "chrome/browser/app_mode/app_mode_utils.h" #include "chrome/browser/browser_process.h" -@@ -91,11 +93,12 @@ bool ExtensionsDisabled(const base::CommandLine& command_line) { +@@ -92,11 +94,12 @@ bool ExtensionsDisabled(const base::CommandLine& command_line) { ChromeExtensionsBrowserClient::ChromeExtensionsBrowserClient() { AddAPIProvider(std::make_unique()); AddAPIProvider(std::make_unique()); diff --git a/patches/chrome-browser-extensions-component_loader.h.patch b/patches/chrome-browser-extensions-component_loader.h.patch index 735baec7f9f1..a78db28885c1 100644 --- a/patches/chrome-browser-extensions-component_loader.h.patch +++ b/patches/chrome-browser-extensions-component_loader.h.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/extensions/component_loader.h b/chrome/browser/extensions/component_loader.h -index 3f8b640092721536276e478549d8ad5940fe4964..5d7f0ba46efdf2871f333f0010e8e51ad20e6163 100644 +index 77b0a1e8952ece2cd9bb7ea511d7b90b8f8c9abf..d2585bfa2279b5c6e31110e548a0174a9981e892 100644 --- a/chrome/browser/extensions/component_loader.h +++ b/chrome/browser/extensions/component_loader.h -@@ -84,7 +84,7 @@ class ComponentLoader { +@@ -81,7 +81,7 @@ class ComponentLoader { // the loader will skip loading component extensions that weren't supposed to // be loaded unless we are in signed user session (ChromeOS). For all other // platforms this |skip_session_components| is expected to be unset. @@ -11,7 +11,7 @@ index 3f8b640092721536276e478549d8ad5940fe4964..5d7f0ba46efdf2871f333f0010e8e51a // Similar to above but adds the default component extensions for kiosk mode. void AddDefaultComponentExtensionsForKioskMode(bool skip_session_components); -@@ -119,6 +119,7 @@ class ComponentLoader { +@@ -120,6 +120,7 @@ class ComponentLoader { } private: @@ -19,7 +19,7 @@ index 3f8b640092721536276e478549d8ad5940fe4964..5d7f0ba46efdf2871f333f0010e8e51a FRIEND_TEST_ALL_PREFIXES(ComponentLoaderTest, ParseManifest); // Information about a registered component extension. -@@ -164,6 +165,7 @@ class ComponentLoader { +@@ -165,6 +166,7 @@ class ComponentLoader { void AddDefaultComponentExtensionsWithBackgroundPagesForKioskMode(); #if BUILDFLAG(ENABLE_HANGOUT_SERVICES_EXTENSION) diff --git a/patches/chrome-browser-extensions-extension_install_prompt.cc.patch b/patches/chrome-browser-extensions-extension_install_prompt.cc.patch index 1a3b9f05ac8c..0d9f00fcce05 100644 --- a/patches/chrome-browser-extensions-extension_install_prompt.cc.patch +++ b/patches/chrome-browser-extensions-extension_install_prompt.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/extensions/extension_install_prompt.cc b/chrome/browser/extensions/extension_install_prompt.cc -index f1ed057b1277648c9aa2cb208f92236062f9ecd6..848481f4fef9f03f19ee744d5c77fffca79bee4e 100644 +index c84fc509e52a7abd829c3dc5c4f6b821e5c32fa9..386fdf4f001177d9a779a632568fe821cbfe94db 100644 --- a/chrome/browser/extensions/extension_install_prompt.cc +++ b/chrome/browser/extensions/extension_install_prompt.cc @@ -13,6 +13,7 @@ @@ -10,7 +10,7 @@ index f1ed057b1277648c9aa2cb208f92236062f9ecd6..848481f4fef9f03f19ee744d5c77fffc #include "chrome/browser/extensions/extension_install_prompt_show_params.h" #include "chrome/browser/extensions/extension_util.h" #include "chrome/browser/extensions/permissions_updater.h" -@@ -512,7 +513,7 @@ void ExtensionInstallPrompt::ShowDialog( +@@ -509,7 +510,7 @@ void ExtensionInstallPrompt::ShowDialog( const SkBitmap* icon, const ShowDialogCallback& show_dialog_callback) { ShowDialog(done_callback, extension, icon, diff --git a/patches/chrome-browser-extensions-extension_install_prompt.h.patch b/patches/chrome-browser-extensions-extension_install_prompt.h.patch index 314461cc7cac..754aebcb2172 100644 --- a/patches/chrome-browser-extensions-extension_install_prompt.h.patch +++ b/patches/chrome-browser-extensions-extension_install_prompt.h.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/extensions/extension_install_prompt.h b/chrome/browser/extensions/extension_install_prompt.h -index 44c0b01772fd3e2a1c1670eb077553e972e05e60..ddbf41e0c2a85293fe03249b9810932e02aa2c2b 100644 +index dcea843a6d7190d4e9e30d6ecce28028f18fd783..6f30d828db13b9f38f184499089d420cdbea4d4b 100644 --- a/chrome/browser/extensions/extension_install_prompt.h +++ b/chrome/browser/extensions/extension_install_prompt.h @@ -87,7 +87,7 @@ class ExtensionInstallPrompt { diff --git a/patches/chrome-browser-extensions-extension_management.cc.patch b/patches/chrome-browser-extensions-extension_management.cc.patch index 4a7bd83501d5..05ab72e7987a 100644 --- a/patches/chrome-browser-extensions-extension_management.cc.patch +++ b/patches/chrome-browser-extensions-extension_management.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/extensions/extension_management.cc b/chrome/browser/extensions/extension_management.cc -index ab6c99a40a84961a61eea241a9dd346f8174eb48..dcdf09c4a5748032716fbc70bad7d12a15c7c566 100644 +index 0c051349bd1a862372dc975923e7fe5cc2129233..8bc5c167f712986694063d26c0dbd5cb5f7386e6 100644 --- a/chrome/browser/extensions/extension_management.cc +++ b/chrome/browser/extensions/extension_management.cc @@ -16,6 +16,7 @@ @@ -10,7 +10,7 @@ index ab6c99a40a84961a61eea241a9dd346f8174eb48..dcdf09c4a5748032716fbc70bad7d12a #include "chrome/browser/extensions/extension_management_constants.h" #include "chrome/browser/extensions/extension_management_internal.h" #include "chrome/browser/extensions/external_policy_loader.h" -@@ -626,7 +627,7 @@ KeyedService* ExtensionManagementFactory::BuildServiceInstanceFor( +@@ -625,7 +626,7 @@ KeyedService* ExtensionManagementFactory::BuildServiceInstanceFor( content::BrowserContext* context) const { TRACE_EVENT0("browser,startup", "ExtensionManagementFactory::BuildServiceInstanceFor"); diff --git a/patches/chrome-browser-external_protocol-external_protocol_handler.cc.patch b/patches/chrome-browser-external_protocol-external_protocol_handler.cc.patch index 5b53f95cd840..02616f6c5c87 100644 --- a/patches/chrome-browser-external_protocol-external_protocol_handler.cc.patch +++ b/patches/chrome-browser-external_protocol-external_protocol_handler.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/external_protocol/external_protocol_handler.cc b/chrome/browser/external_protocol/external_protocol_handler.cc -index a3f16ad264fd2238a1b33685bfdea4d60a091a17..1848f745ea5413beab4fe2a5504ecd572cc2874c 100644 +index 2fa76ce8dd1b1fe2d678c116aa22d3e14f7e7038..45b199048a10f6127a375d7874d3aabd5224924b 100644 --- a/chrome/browser/external_protocol/external_protocol_handler.cc +++ b/chrome/browser/external_protocol/external_protocol_handler.cc -@@ -186,7 +186,7 @@ ExternalProtocolHandler::BlockState ExternalProtocolHandler::GetBlockState( +@@ -224,7 +224,7 @@ ExternalProtocolHandler::BlockState ExternalProtocolHandler::GetBlockState( // Always allow the hard-coded allowed schemes. for (size_t i = 0; i < base::size(kAllowedSchemes); ++i) { if (kAllowedSchemes[i] == scheme) diff --git a/patches/chrome-browser-importer-external_process_importer_client.cc.patch b/patches/chrome-browser-importer-external_process_importer_client.cc.patch index ce5f8940561c..2bedb5eaee0d 100644 --- a/patches/chrome-browser-importer-external_process_importer_client.cc.patch +++ b/patches/chrome-browser-importer-external_process_importer_client.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/importer/external_process_importer_client.cc b/chrome/browser/importer/external_process_importer_client.cc -index 7320911bb2c1e848eafe487f9b376df2177521e8..6e7278eb8fd6fc9fd2ad339192e4eb7cf7ba3964 100644 +index d6f6de319f3662dbd1d0b4bf469c8325aea127a9..dd7e12127a6339e1eff0da8307464eb0c256d615 100644 --- a/chrome/browser/importer/external_process_importer_client.cc +++ b/chrome/browser/importer/external_process_importer_client.cc -@@ -69,6 +69,12 @@ void ExternalProcessImporterClient::Start() { +@@ -67,6 +67,12 @@ void ExternalProcessImporterClient::Start() { localized_strings.try_emplace( IDS_BOOKMARK_BAR_FOLDER_NAME, l10n_util::GetStringUTF8(IDS_BOOKMARK_BAR_FOLDER_NAME)); diff --git a/patches/chrome-browser-importer-external_process_importer_host.h.patch b/patches/chrome-browser-importer-external_process_importer_host.h.patch index 970610fed255..ef79ef5a5e4e 100644 --- a/patches/chrome-browser-importer-external_process_importer_host.h.patch +++ b/patches/chrome-browser-importer-external_process_importer_host.h.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/importer/external_process_importer_host.h b/chrome/browser/importer/external_process_importer_host.h -index 08c6f28746cc5f345114a942834db18f5c7a1d41..9b4ba999a26fb5600fce29eed80ad6f974e0a265 100644 +index f8bd5d50910b2a068b964a8377233bf5a25fe618..1af30b9cfc4aa7924864603ee0b10e995fb77ea7 100644 --- a/chrome/browser/importer/external_process_importer_host.h +++ b/chrome/browser/importer/external_process_importer_host.h @@ -72,10 +72,13 @@ class ExternalProcessImporterHost diff --git a/patches/chrome-browser-importer-importer_list.cc.patch b/patches/chrome-browser-importer-importer_list.cc.patch index db235f94664f..8ccbcc00e61a 100644 --- a/patches/chrome-browser-importer-importer_list.cc.patch +++ b/patches/chrome-browser-importer-importer_list.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/importer/importer_list.cc b/chrome/browser/importer/importer_list.cc -index 71659dd4133d71a90276f364ca685e78533b8979..f33c4354a6e5f7d69ca347e737e272494d1b036e 100644 +index 57c0506feeb1318ed0ed77b47ffce4babfe0b8e1..bc7c6e04098780d12c9c55d676f587ea5b7e8937 100644 --- a/chrome/browser/importer/importer_list.cc +++ b/chrome/browser/importer/importer_list.cc @@ -29,6 +29,9 @@ diff --git a/patches/chrome-browser-io_thread.cc.patch b/patches/chrome-browser-io_thread.cc.patch deleted file mode 100644 index 26696070a938..000000000000 --- a/patches/chrome-browser-io_thread.cc.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc -index 25cb1333363e32f3afe13239b40159dd3444e834..b6e8725370c9bc040b9f4b1ca3e5b61a7351144a 100644 ---- a/chrome/browser/io_thread.cc -+++ b/chrome/browser/io_thread.cc -@@ -237,6 +237,7 @@ net::URLRequestContextGetter* IOThread::system_url_request_context_getter() { - system_url_request_context_getter_ = - base::MakeRefCounted(this); - } else { -+ if (base::FeatureList::IsEnabled(network::features::kNetworkService)) - NOTREACHED(); - } - return system_url_request_context_getter_.get(); diff --git a/patches/chrome-browser-media-webrtc-webrtc_log_uploader.cc.patch b/patches/chrome-browser-media-webrtc-webrtc_log_uploader.cc.patch index acb09012c9dd..65f19af23d8e 100644 --- a/patches/chrome-browser-media-webrtc-webrtc_log_uploader.cc.patch +++ b/patches/chrome-browser-media-webrtc-webrtc_log_uploader.cc.patch @@ -1,12 +1,12 @@ diff --git a/chrome/browser/media/webrtc/webrtc_log_uploader.cc b/chrome/browser/media/webrtc/webrtc_log_uploader.cc -index ff329ad9104cd0e87f376b8c1771620a771c0be1..904b50859dfb3f9289d9168b7bba8c088c5df141 100644 +index a89794d69357b7bd24853c7a7bb978cec265eb59..65546bb06a1876912fc39f1135c4b6f58c9170bc 100644 --- a/chrome/browser/media/webrtc/webrtc_log_uploader.cc +++ b/chrome/browser/media/webrtc/webrtc_log_uploader.cc -@@ -477,6 +477,7 @@ std::string WebRtcLogUploader::CompressLog(WebRtcLogBuffer* buffer) { +@@ -445,6 +445,7 @@ std::string WebRtcLogUploader::CompressLog(WebRtcLogBuffer* buffer) { void WebRtcLogUploader::UploadCompressedLog( const WebRtcLogUploadDoneData& upload_done_data, std::unique_ptr post_data) { + return; // feature disabled in Brave - DCHECK_CURRENTLY_ON(BrowserThread::IO); + DCHECK_CALLED_ON_VALID_SEQUENCE(main_sequence_checker_); DecreaseLogCount(); diff --git a/patches/chrome-browser-net-chrome_network_delegate.h.patch b/patches/chrome-browser-net-chrome_network_delegate.h.patch deleted file mode 100644 index ac229748afa5..000000000000 --- a/patches/chrome-browser-net-chrome_network_delegate.h.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/chrome/browser/net/chrome_network_delegate.h b/chrome/browser/net/chrome_network_delegate.h -index 5286e342dec6199c2336622dc0f67eb11427300a..f29a144ad4e1311c3ebc38cfe1297c9113985bfe 100644 ---- a/chrome/browser/net/chrome_network_delegate.h -+++ b/chrome/browser/net/chrome_network_delegate.h -@@ -97,6 +97,7 @@ class ChromeNetworkDelegate : public net::NetworkDelegateImpl { - static void EnableAccessToAllFilesForTesting(bool enabled); - - private: -+ friend class BraveNetworkDelegateBase; - // NetworkDelegate implementation. - int OnBeforeURLRequest(net::URLRequest* request, - net::CompletionOnceCallback callback, diff --git a/patches/chrome-browser-net-chrome_url_request_context_getter.cc.patch b/patches/chrome-browser-net-chrome_url_request_context_getter.cc.patch deleted file mode 100644 index 6c6f0502836f..000000000000 --- a/patches/chrome-browser-net-chrome_url_request_context_getter.cc.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff --git a/chrome/browser/net/chrome_url_request_context_getter.cc b/chrome/browser/net/chrome_url_request_context_getter.cc -index a931ece03ee26647686419328b9884c2726468db..90d78c0576a8f8df12649ed6dd1a34c48caa4104 100644 ---- a/chrome/browser/net/chrome_url_request_context_getter.cc -+++ b/chrome/browser/net/chrome_url_request_context_getter.cc -@@ -5,7 +5,7 @@ - #include "chrome/browser/net/chrome_url_request_context_getter.h" - - #include -- -+#include "brave/components/brave_shields/browser/adblock_interceptor.h" - #include "base/bind.h" - #include "base/compiler_specific.h" - #include "base/macros.h" -@@ -50,6 +50,7 @@ class FactoryForMain : public ChromeURLRequestContextFactory { - : profile_io_data_(profile_io_data), - request_interceptors_(std::move(request_interceptors)) { - std::swap(protocol_handlers_, *protocol_handlers); -+ request_interceptors_.emplace_back(new brave_shields::AdBlockInterceptor); - } - - net::URLRequestContext* Create() override { -@@ -84,6 +85,7 @@ class FactoryForIsolatedApp : public ChromeURLRequestContextFactory { - network_context_request_(std::move(network_context_request)), - network_context_params_(std::move(network_context_params)) { - std::swap(protocol_handlers_, *protocol_handlers); -+ request_interceptors_.emplace_back(new brave_shields::AdBlockInterceptor); - } - - net::URLRequestContext* Create() override { diff --git a/patches/chrome-browser-net-net_error_tab_helper.cc.patch b/patches/chrome-browser-net-net_error_tab_helper.cc.patch index 71b8de4f9c5a..a595064ee59f 100644 --- a/patches/chrome-browser-net-net_error_tab_helper.cc.patch +++ b/patches/chrome-browser-net-net_error_tab_helper.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/net/net_error_tab_helper.cc b/chrome/browser/net/net_error_tab_helper.cc -index d39876436dd64faa0bae445c3e0ad1c666dbae17..88eb4e98bdb5a040e26c72f7c5eed9de8ef8bcc8 100644 +index f2dd356b43f396991446ab3a59067e8a44048014..c74fea87daf5b42be11275ee259ae01dfbb773b7 100644 --- a/chrome/browser/net/net_error_tab_helper.cc +++ b/chrome/browser/net/net_error_tab_helper.cc -@@ -234,6 +234,9 @@ void NetErrorTabHelper::InitializePref(WebContents* contents) { +@@ -233,6 +233,9 @@ void NetErrorTabHelper::InitializePref(WebContents* contents) { } bool NetErrorTabHelper::ProbesAllowed() const { diff --git a/patches/chrome-browser-net-system_network_context_manager.cc.patch b/patches/chrome-browser-net-system_network_context_manager.cc.patch index b91462fe0433..f2c4a233a83b 100644 --- a/patches/chrome-browser-net-system_network_context_manager.cc.patch +++ b/patches/chrome-browser-net-system_network_context_manager.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc -index 2c9b6e9536749bee6c7ca4dbd3c87410e0940f64..835a1af9866f93b779ef5e5be36f0eabe505b815 100644 +index 156b022694d82b7e5b281cc8790b5ad8926a5c9b..a59601dc01c1c94dc6b4e49a62c71e6b056d6e7a 100644 --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -263,7 +263,7 @@ class SystemNetworkContextManager::URLLoaderFactoryForSystem +@@ -250,7 +250,7 @@ class SystemNetworkContextManager::URLLoaderFactoryForSystem if (!manager_) return; manager_->GetURLLoaderFactory()->CreateLoaderAndStart( diff --git a/patches/chrome-browser-notifications-notification_platform_bridge_linux.cc.patch b/patches/chrome-browser-notifications-notification_platform_bridge_linux.cc.patch index 229365dace46..1a6c48cf89f1 100644 --- a/patches/chrome-browser-notifications-notification_platform_bridge_linux.cc.patch +++ b/patches/chrome-browser-notifications-notification_platform_bridge_linux.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/notifications/notification_platform_bridge_linux.cc b/chrome/browser/notifications/notification_platform_bridge_linux.cc -index aa6d15f6ebbdcc6e70374a46ca9c11d4c1bff854..5c2bdec672a402edbc3602887fdad9e3cc0056a8 100644 +index 04a4ac46f01173b3a8bdb4ebab1eeea03cfd6c1b..a2a0e8a90a2a564611ffc6e8f8240a63cf597fe6 100644 --- a/chrome/browser/notifications/notification_platform_bridge_linux.cc +++ b/chrome/browser/notifications/notification_platform_bridge_linux.cc -@@ -632,6 +632,7 @@ class NotificationPlatformBridgeLinuxImpl +@@ -648,6 +648,7 @@ class NotificationPlatformBridgeLinuxImpl actions.push_back("Activate"); // Always add a settings button for web notifications. if (notification_type != NotificationHandler::Type::EXTENSION && diff --git a/patches/chrome-browser-permissions-permission_manager.cc.patch b/patches/chrome-browser-permissions-permission_manager.cc.patch index 20dddb1432ac..4d4e07cb450f 100644 --- a/patches/chrome-browser-permissions-permission_manager.cc.patch +++ b/patches/chrome-browser-permissions-permission_manager.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/permissions/permission_manager.cc b/chrome/browser/permissions/permission_manager.cc -index 3f612a3cf55ce07de9aa5aa29e94e2338377f90a..6f329e24de35557510651069a903853f34fbce42 100644 +index 9f535334da7e3ca1939e98a055ec93662a38b552..81f81e6d2b3dc359d262440dbd20cf995ba88c46 100644 --- a/chrome/browser/permissions/permission_manager.cc +++ b/chrome/browser/permissions/permission_manager.cc -@@ -88,7 +88,7 @@ PermissionStatus ContentSettingToPermissionStatus(ContentSetting setting) { +@@ -89,7 +89,7 @@ PermissionStatus ContentSettingToPermissionStatus(ContentSetting setting) { } // Helper method to convert PermissionType to ContentSettingType. @@ -11,9 +11,9 @@ index 3f612a3cf55ce07de9aa5aa29e94e2338377f90a..6f329e24de35557510651069a903853f switch (permission) { case PermissionType::MIDI: return CONTENT_SETTINGS_TYPE_MIDI; -@@ -132,6 +132,7 @@ ContentSettingsType PermissionTypeToContentSetting(PermissionType permission) { - case PermissionType::PERIODIC_BACKGROUND_SYNC: - return CONTENT_SETTINGS_TYPE_PERIODIC_BACKGROUND_SYNC; +@@ -137,6 +137,7 @@ ContentSettingsType PermissionTypeToContentSetting(PermissionType permission) { + case PermissionType::WAKE_LOCK_SYSTEM: + return CONTENT_SETTINGS_TYPE_WAKE_LOCK_SYSTEM; case PermissionType::NUM: + default: // This will hit the NOTREACHED below. diff --git a/patches/chrome-browser-permissions-permission_uma_util.cc.patch b/patches/chrome-browser-permissions-permission_uma_util.cc.patch index 625c907ed177..18bebf0040bc 100644 --- a/patches/chrome-browser-permissions-permission_uma_util.cc.patch +++ b/patches/chrome-browser-permissions-permission_uma_util.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/permissions/permission_uma_util.cc b/chrome/browser/permissions/permission_uma_util.cc -index 97ae8e1ee0339d5714d3baef177a1e27ce219583..431c5256251904e83ed7c7a7245a39b4eef4f1db 100644 +index 50768c0a91bb5f29760e398ed9c6486a06334b49..18c8118777376ddd24e88ad38576be092e214ba0 100644 --- a/chrome/browser/permissions/permission_uma_util.cc +++ b/chrome/browser/permissions/permission_uma_util.cc @@ -65,7 +65,7 @@ namespace { diff --git a/patches/chrome-browser-plugins-chrome_plugin_service_filter.cc.patch b/patches/chrome-browser-plugins-chrome_plugin_service_filter.cc.patch index ca20e66cb679..02357bf63c90 100644 --- a/patches/chrome-browser-plugins-chrome_plugin_service_filter.cc.patch +++ b/patches/chrome-browser-plugins-chrome_plugin_service_filter.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/plugins/chrome_plugin_service_filter.cc b/chrome/browser/plugins/chrome_plugin_service_filter.cc -index 5c2a2d0adf1ca353d4ab8dd23475c9d6e6df3b55..dc8f62521ba5c78fcee7e79d028ee8ddc8964e7f 100644 +index 55801ac0fee766a5f46314137d4745ff8a1d7f24..9acdabbe23d440d7468cbc9ef3b1e589f74db12c 100644 --- a/chrome/browser/plugins/chrome_plugin_service_filter.cc +++ b/chrome/browser/plugins/chrome_plugin_service_filter.cc -@@ -52,7 +52,7 @@ class ProfileContentSettingObserver : public content_settings::Observer { +@@ -51,7 +51,7 @@ class ProfileContentSettingObserver : public content_settings::Observer { PluginService::GetInstance()->PurgePluginListCache(profile_, false); const GURL primary(primary_pattern.ToString()); diff --git a/patches/chrome-browser-plugins-plugins_resource_service.cc.patch b/patches/chrome-browser-plugins-plugins_resource_service.cc.patch index 407468e59255..3447f9bbea8e 100644 --- a/patches/chrome-browser-plugins-plugins_resource_service.cc.patch +++ b/patches/chrome-browser-plugins-plugins_resource_service.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/plugins/plugins_resource_service.cc b/chrome/browser/plugins/plugins_resource_service.cc -index d7c3801df3e8766b2124b4c73ec3a46631aa5d3b..d6d391d47a4b4540f4177034da6ee475100c78b0 100644 +index 85003dd6cb04d27820e182c75fd76169b269a7e1..f3facf8c650cda32fa59bca6735c897f1aede5ca 100644 --- a/chrome/browser/plugins/plugins_resource_service.cc +++ b/chrome/browser/plugins/plugins_resource_service.cc @@ -55,7 +55,7 @@ const int kStartResourceFetchDelayMs = 60 * 1000; diff --git a/patches/chrome-browser-prefs-browser_prefs.cc.patch b/patches/chrome-browser-prefs-browser_prefs.cc.patch index 57f85203cf1a..58858f7e63e3 100644 --- a/patches/chrome-browser-prefs-browser_prefs.cc.patch +++ b/patches/chrome-browser-prefs-browser_prefs.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc -index 50312cdb0324e3dad18c77c96e5e609bfb259541..2298f9b60d2718d82e721dc8483b114931a30d0d 100644 +index b806315041d481b485a9329097b5b626ff0921b0..73e949fdb3b751b923e759c35f546c9ec38895ea 100644 --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -658,6 +658,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -688,6 +688,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) { #if defined(TOOLKIT_VIEWS) RegisterBrowserViewLocalPrefs(registry); #endif @@ -10,7 +10,7 @@ index 50312cdb0324e3dad18c77c96e5e609bfb259541..2298f9b60d2718d82e721dc8483b1149 } // Register prefs applicable to all profiles. -@@ -908,6 +909,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -945,6 +946,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, #endif RegisterProfilePrefsForMigration(registry); diff --git a/patches/chrome-browser-profiles-profile.cc.patch b/patches/chrome-browser-profiles-profile.cc.patch index a1fe406766b6..92b1243ba5de 100644 --- a/patches/chrome-browser-profiles-profile.cc.patch +++ b/patches/chrome-browser-profiles-profile.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc -index 71d736c9eaf3503e532d72c410f4d4dadff372cd..39114245329d5767f8b51a5c9120c76038018d04 100644 +index 28d3c597acc9e58bab439badb1d1dc9baa139048..4e4a3742f9133dcba49a2ec68a1181a345c5f63b 100644 --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc @@ -140,7 +140,7 @@ const char Profile::kProfileKey[] = "__PROFILE__"; @@ -11,7 +11,7 @@ index 71d736c9eaf3503e532d72c410f4d4dadff372cd..39114245329d5767f8b51a5c9120c760 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); #if defined(OS_ANDROID) registry->RegisterStringPref( -@@ -244,7 +244,7 @@ bool Profile::IsGuestSession() const { +@@ -257,7 +257,7 @@ bool Profile::IsGuestSession() const { chromeos::switches::kGuestSession); return is_guest_session; #else diff --git a/patches/chrome-browser-profiles-profile_impl.cc.patch b/patches/chrome-browser-profiles-profile_impl.cc.patch index ad4ce212270f..596d6c8df28b 100644 --- a/patches/chrome-browser-profiles-profile_impl.cc.patch +++ b/patches/chrome-browser-profiles-profile_impl.cc.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc -index 71619ca3d5271b0f813110dce0e5570b6eebdda7..97003f2bc6f1141ae49dc2a2ac58e5f861fd0615 100644 +index 084648e9606f9847ff722901fb95626677a17c1e..0bcb822c794146ceec8c52c01da8c973fa25b808 100644 --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc @@ -34,6 +34,7 @@ diff --git a/patches/chrome-browser-profiles-profile_io_data.cc.patch b/patches/chrome-browser-profiles-profile_io_data.cc.patch index 87495c2e7913..49db89e3cb79 100644 --- a/patches/chrome-browser-profiles-profile_io_data.cc.patch +++ b/patches/chrome-browser-profiles-profile_io_data.cc.patch @@ -1,16 +1,8 @@ diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc -index a77de6f1abed2133190908db2fe3e417b05bc4f0..e67fcb11518b4d644425fe4275dd7aebb39e68a4 100644 +index 285f9e09a9020e8647fe363f7d3b0c867b1d26ea..10a247b701690ff70f1039a43d94dd164c3f18dd 100644 --- a/chrome/browser/profiles/profile_io_data.cc +++ b/chrome/browser/profiles/profile_io_data.cc -@@ -24,6 +24,7 @@ - #include "base/task/post_task.h" - #include "base/task/task_traits.h" - #include "base/threading/thread_task_runner_handle.h" -+#include "brave/browser/net/brave_profile_network_delegate.h" - #include "build/build_config.h" - #include "chrome/browser/browser_process.h" - #include "chrome/browser/chrome_notification_types.h" -@@ -639,6 +640,9 @@ bool ProfileIOData::IsHandledProtocol(const std::string& scheme) { +@@ -417,6 +417,9 @@ bool ProfileIOData::IsHandledProtocol(const std::string& scheme) { extensions::kExtensionScheme, #endif content::kChromeUIScheme, @@ -20,12 +12,3 @@ index a77de6f1abed2133190908db2fe3e417b05bc4f0..e67fcb11518b4d644425fe4275dd7aeb url::kDataScheme, #if defined(OS_CHROMEOS) content::kExternalFileScheme, -@@ -925,7 +929,7 @@ void ProfileIOData::Init( - std::make_unique(); - - std::unique_ptr chrome_network_delegate( -- new ChromeNetworkDelegate( -+ new BraveProfileNetworkDelegate( - #if BUILDFLAG(ENABLE_EXTENSIONS) - io_thread_globals->extension_event_router_forwarder.get())); - #else diff --git a/patches/chrome-browser-profiles-profile_manager.cc.patch b/patches/chrome-browser-profiles-profile_manager.cc.patch index 00d573f9369a..7ae2c1dc431e 100644 --- a/patches/chrome-browser-profiles-profile_manager.cc.patch +++ b/patches/chrome-browser-profiles-profile_manager.cc.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc -index 4cce9ca9fbf1ded2c4b8334f8ff9be0d43e97803..7b39473be45be8530eb91c1389c96aa65625a7d1 100644 +index bd2715738d89bc9a099d3be0614f720303b98086..0cd794e5c9b6d5dea803cc00b899524ba2ac75e6 100644 --- a/chrome/browser/profiles/profile_manager.cc +++ b/chrome/browser/profiles/profile_manager.cc -@@ -1503,9 +1503,11 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( +@@ -1419,9 +1419,11 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( const base::FilePath last_used_profile_path = GetLastUsedProfileDir(user_data_dir_); const base::FilePath guest_profile_path = GetGuestProfilePath(); @@ -14,7 +14,7 @@ index 4cce9ca9fbf1ded2c4b8334f8ff9be0d43e97803..7b39473be45be8530eb91c1389c96aa6 last_used_profile != nullptr && !last_used_profile->IsLegacySupervised()) { FinishDeletingProfile(profile_dir, last_used_profile_path); -@@ -1518,6 +1520,7 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( +@@ -1434,6 +1436,7 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( base::FilePath cur_path = profile->GetPath(); if (cur_path != profile_dir && cur_path != guest_profile_path && @@ -22,7 +22,7 @@ index 4cce9ca9fbf1ded2c4b8334f8ff9be0d43e97803..7b39473be45be8530eb91c1389c96aa6 !profile->IsLegacySupervised() && !IsProfileDirectoryMarkedForDeletion(cur_path)) { OnNewActiveProfileLoaded(profile_dir, cur_path, std::move(callback), -@@ -1537,6 +1540,7 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( +@@ -1453,6 +1456,7 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( // legacy-supervised. if (cur_path != profile_dir && cur_path != guest_profile_path && @@ -30,7 +30,7 @@ index 4cce9ca9fbf1ded2c4b8334f8ff9be0d43e97803..7b39473be45be8530eb91c1389c96aa6 !entry->IsLegacySupervised() && !IsProfileDirectoryMarkedForDeletion(cur_path)) { fallback_profile_path = cur_path; -@@ -1894,6 +1898,7 @@ void ProfileManager::ScheduleForcedEphemeralProfileForDeletion( +@@ -1867,6 +1871,7 @@ void ProfileManager::ScheduleForcedEphemeralProfileForDeletion( base::FilePath entry_path = entry->GetPath(); if (entry_path == profile_dir || entry_path == GetGuestProfilePath() || diff --git a/patches/chrome-browser-profiles-profile_manager.h.patch b/patches/chrome-browser-profiles-profile_manager.h.patch index a2f14a3ab8cc..fa4a11cd6c53 100644 --- a/patches/chrome-browser-profiles-profile_manager.h.patch +++ b/patches/chrome-browser-profiles-profile_manager.h.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h -index 257e27caed9f6ef1dc984d5cdbae82c3d0daa427..ab13240fbb230326ecd102fa8f60aa5eb17bc4ff 100644 +index 985c64458bdf2c547a5b9286b448aaa2513b2109..a677df807effba3589b6a067ffc940432b064839 100644 --- a/chrome/browser/profiles/profile_manager.h +++ b/chrome/browser/profiles/profile_manager.h -@@ -139,7 +139,7 @@ class ProfileManager : public content::NotificationObserver, +@@ -141,7 +141,7 @@ class ProfileManager : public content::NotificationObserver, // Get the name of the last used profile, or if that's undefined, the default // profile. @@ -11,7 +11,7 @@ index 257e27caed9f6ef1dc984d5cdbae82c3d0daa427..ab13240fbb230326ecd102fa8f60aa5e // Get the Profiles which are currently open, i.e. have open browsers or were // open the last time Chrome was running. Profiles that fail to initialize are -@@ -220,7 +220,7 @@ class ProfileManager : public content::NotificationObserver, +@@ -222,7 +222,7 @@ class ProfileManager : public content::NotificationObserver, // Initializes user prefs of |profile|. This includes profile name and // avatar values. @@ -20,12 +20,12 @@ index 257e27caed9f6ef1dc984d5cdbae82c3d0daa427..ab13240fbb230326ecd102fa8f60aa5e // Register and add testing profile to the ProfileManager. Use ONLY in tests. // This allows the creation of Profiles outside of the standard creation path -@@ -346,7 +346,7 @@ class ProfileManager : public content::NotificationObserver, +@@ -349,7 +349,7 @@ class ProfileManager : public content::NotificationObserver, // Apply settings for profiles created by the system rather than users: The // (desktop) Guest User profile and (desktop) System Profile. - void SetNonPersonalProfilePrefs(Profile* profile); + virtual void SetNonPersonalProfilePrefs(Profile* profile); - // For ChromeOS, determines if profile should be otr. + // Determines if profile should be OTR. bool ShouldGoOffTheRecord(Profile* profile); diff --git a/patches/chrome-browser-renderer_context_menu-render_view_context_menu.h.patch b/patches/chrome-browser-renderer_context_menu-render_view_context_menu.h.patch index df6e978bc652..13b46e0981fa 100644 --- a/patches/chrome-browser-renderer_context_menu-render_view_context_menu.h.patch +++ b/patches/chrome-browser-renderer_context_menu-render_view_context_menu.h.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/renderer_context_menu/render_view_context_menu.h b/chrome/browser/renderer_context_menu/render_view_context_menu.h -index 824741727052dfd87f8f65df8bbb5adf4a9f1e2e..3caba335f84e5126c5912451b5dbcc807b21f62a 100644 +index 7e993b49e93d4a51baa2f6f4bc7953ddc099f4c6..f21255d047bbf411ce4d0509da828c7486f7c668 100644 --- a/chrome/browser/renderer_context_menu/render_view_context_menu.h +++ b/chrome/browser/renderer_context_menu/render_view_context_menu.h -@@ -113,6 +113,7 @@ class RenderViewContextMenu : public RenderViewContextMenuBase { +@@ -112,6 +112,7 @@ class RenderViewContextMenu : public RenderViewContextMenuBase { // Returns true if keyboard lock is active and requires the user to press and // hold escape to exit exclusive access mode. bool IsPressAndHoldEscRequiredToExitFullscreen() const; diff --git a/patches/chrome-browser-resources-bookmarks-bookmarks.html.patch b/patches/chrome-browser-resources-bookmarks-bookmarks.html.patch index 39ff82df9065..8b0bff57b51d 100644 --- a/patches/chrome-browser-resources-bookmarks-bookmarks.html.patch +++ b/patches/chrome-browser-resources-bookmarks-bookmarks.html.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/bookmarks/bookmarks.html b/chrome/browser/resources/bookmarks/bookmarks.html -index b91e6202e695f7347963e1c0dbee0cea46622c62..47978779a4b4cf27b7715276fc068a6163d926df 100644 +index 077405e88cd2b5da78714c900d9d4e392981192e..0698a3fcee0f240fe9dc870292f2e4af7f4cd9d1 100644 --- a/chrome/browser/resources/bookmarks/bookmarks.html +++ b/chrome/browser/resources/bookmarks/bookmarks.html -@@ -28,6 +28,7 @@ +@@ -27,6 +27,7 @@ height: var(--md-toolbar-height); } diff --git a/patches/chrome-browser-resources-bookmarks-toolbar.html.patch b/patches/chrome-browser-resources-bookmarks-toolbar.html.patch index 520934e39070..c2a8715fe24b 100644 --- a/patches/chrome-browser-resources-bookmarks-toolbar.html.patch +++ b/patches/chrome-browser-resources-bookmarks-toolbar.html.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/resources/bookmarks/toolbar.html b/chrome/browser/resources/bookmarks/toolbar.html -index 989db07d3c1f7a2ca97044590b04b02ebd86cb1a..cc5bb8387bd51505e7ea39fb4372a7a17b7d5594 100644 +index d008a5ae9a74c9c97d61dd3ec9540baa226d75b2..c430495b1a9501c3730a3a499663b202968c88f1 100644 --- a/chrome/browser/resources/bookmarks/toolbar.html +++ b/chrome/browser/resources/bookmarks/toolbar.html @@ -1,7 +1,7 @@ diff --git a/patches/chrome-browser-resources-downloads-downloads.html.patch b/patches/chrome-browser-resources-downloads-downloads.html.patch index bcbcf36b97d9..ab14a6e1ede9 100644 --- a/patches/chrome-browser-resources-downloads-downloads.html.patch +++ b/patches/chrome-browser-resources-downloads-downloads.html.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/downloads/downloads.html b/chrome/browser/resources/downloads/downloads.html -index 05a625d0f349264f13bd98fff32984db56aadd2c..1ad650ef5011f79ebf6591ade055338a51a791d1 100644 +index ad88272334d24e2f60327ae30ab1d412a42a6351..43b6993c81b82d814f900d9d06baf6082ba0dd98 100644 --- a/chrome/browser/resources/downloads/downloads.html +++ b/chrome/browser/resources/downloads/downloads.html -@@ -8,6 +8,7 @@ +@@ -7,6 +7,7 @@ $i18n{title} diff --git a/patches/chrome-browser-resources-downloads-manager.html.patch b/patches/chrome-browser-resources-downloads-manager.html.patch index 1a648da21199..f337da16a1d7 100644 --- a/patches/chrome-browser-resources-downloads-manager.html.patch +++ b/patches/chrome-browser-resources-downloads-manager.html.patch @@ -1,13 +1,13 @@ diff --git a/chrome/browser/resources/downloads/manager.html b/chrome/browser/resources/downloads/manager.html -index 015710be621743fbc082460a4203b67d8d76372c..8cae2e6f282e558e087a3b60f0a9a84fe9bc1ba8 100644 +index 3415eceeeb53203260a6b9c1d20e96f38dd2c55e..f05a3eabcb4e3f3ba88678880de9eb101f505d70 100644 --- a/chrome/browser/resources/downloads/manager.html +++ b/chrome/browser/resources/downloads/manager.html -@@ -20,7 +20,7 @@ +@@ -22,7 +22,7 @@
diff --git a/patches/chrome-browser-resources-extensions-sidebar.html.patch b/patches/chrome-browser-resources-extensions-sidebar.html.patch index 32a55f4a071a..625c7e6bfd81 100644 --- a/patches/chrome-browser-resources-extensions-sidebar.html.patch +++ b/patches/chrome-browser-resources-extensions-sidebar.html.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/extensions/sidebar.html b/chrome/browser/resources/extensions/sidebar.html -index 8aaf1ef5fe8867e044d5d42198019e3009fb9de5..c8622c931c4955f8f7f3c9237bcbeb71135ec7e5 100644 +index 4024fb27744c1435d5349f9b51704cd6ed2d818d..fcb385deea6e984a4cc8d7f07e8925d52c708bb0 100644 --- a/chrome/browser/resources/extensions/sidebar.html +++ b/chrome/browser/resources/extensions/sidebar.html -@@ -78,6 +78,7 @@ +@@ -80,6 +80,7 @@ @@ -10,7 +10,7 @@ index 8aaf1ef5fe8867e044d5d42198019e3009fb9de5..c8622c931c4955f8f7f3c9237bcbeb71 diff --git a/patches/chrome-browser-resources-extensions-toolbar.html.patch b/patches/chrome-browser-resources-extensions-toolbar.html.patch index bb6c2b8ff1b3..04410d27f554 100644 --- a/patches/chrome-browser-resources-extensions-toolbar.html.patch +++ b/patches/chrome-browser-resources-extensions-toolbar.html.patch @@ -1,13 +1,13 @@ diff --git a/chrome/browser/resources/extensions/toolbar.html b/chrome/browser/resources/extensions/toolbar.html -index 77ee1f84a66d142b39d34c65bfdc5206061e8c8e..393bea8e5be687d710e11ca7199ecf5d1816ab29 100644 +index 7e08974284adad472b8691ace100770ebd64475c..da03ebaf3c24caf1a227448fada709604bc6cddd 100644 --- a/chrome/browser/resources/extensions/toolbar.html +++ b/chrome/browser/resources/extensions/toolbar.html -@@ -2,7 +2,7 @@ - +@@ -3,7 +3,7 @@ + - + - + diff --git a/patches/chrome-browser-resources-history-app.html.patch b/patches/chrome-browser-resources-history-app.html.patch index d8c2dff46064..424ed72b282c 100644 --- a/patches/chrome-browser-resources-history-app.html.patch +++ b/patches/chrome-browser-resources-history-app.html.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/history/app.html b/chrome/browser/resources/history/app.html -index 736edaf8f1d13ca634b95fd474bf53a06bdd20d6..031eeff954ccb6484a03e7af19205ccd3bbebd29 100644 +index 2e14bd06efe2f8e9df369a24129c4223b3e1cbad..b7a59a270f43fb291d62e7fc00e7b274bed72756 100644 --- a/chrome/browser/resources/history/app.html +++ b/chrome/browser/resources/history/app.html -@@ -92,6 +92,7 @@ +@@ -89,6 +89,7 @@ query-result="[[queryResult_]]" path="history"> @@ -10,7 +10,7 @@ index 736edaf8f1d13ca634b95fd474bf53a06bdd20d6..031eeff954ccb6484a03e7af19205ccd diff --git a/patches/chrome-browser-resources-history-history.html.patch b/patches/chrome-browser-resources-history-history.html.patch index c36e31e86923..de0f2a246795 100644 --- a/patches/chrome-browser-resources-history-history.html.patch +++ b/patches/chrome-browser-resources-history-history.html.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/history/history.html b/chrome/browser/resources/history/history.html -index 18214b510f5ee80dc272eca6677c087f4a67b227..38b9e7eac0db5e7447b3ed255d6c3a2c4f7f1008 100644 +index af0c23e206f7ffb21e3aa21fc869cde92e127fe8..e82c0b1d2ef678c8437c89434ebb22750a4ee652 100644 --- a/chrome/browser/resources/history/history.html +++ b/chrome/browser/resources/history/history.html -@@ -75,6 +75,7 @@ +@@ -77,6 +77,7 @@ justify-content: center; } diff --git a/patches/chrome-browser-resources-history-history_item.html.patch b/patches/chrome-browser-resources-history-history_item.html.patch index 2b4eca9897dc..640f0699de2d 100644 --- a/patches/chrome-browser-resources-history-history_item.html.patch +++ b/patches/chrome-browser-resources-history-history_item.html.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/resources/history/history_item.html b/chrome/browser/resources/history/history_item.html -index d8a261a0b06749cf43bfe3b1fb678d5e6985c505..8d8c28551e6547fb8f413c43d1dce6687d1c008b 100644 +index a8094b71a5895431602912b5d595939b094dbefe..81d996d333742fc2894727cd1013399a7d42d3b2 100644 --- a/chrome/browser/resources/history/history_item.html +++ b/chrome/browser/resources/history/history_item.html @@ -14,11 +14,12 @@ diff --git a/patches/chrome-browser-resources-history-history_toolbar.html.patch b/patches/chrome-browser-resources-history-history_toolbar.html.patch index 8417eb3b0516..aea11f4c8c4b 100644 --- a/patches/chrome-browser-resources-history-history_toolbar.html.patch +++ b/patches/chrome-browser-resources-history-history_toolbar.html.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/resources/history/history_toolbar.html b/chrome/browser/resources/history/history_toolbar.html -index cd86b39440a18e9876082d6cfba1bdb121a9b0ee..7a65c018de5d89a7972c20688991d7e1b09375e3 100644 +index 9357ef7446d8a800a69d029fc86374395db41fc1..0626601b11280c52b96dd8257318a4b6565ea015 100644 --- a/chrome/browser/resources/history/history_toolbar.html +++ b/chrome/browser/resources/history/history_toolbar.html @@ -1,6 +1,6 @@ diff --git a/patches/chrome-browser-resources-local_discovery-local_discovery.js.patch b/patches/chrome-browser-resources-local_discovery-local_discovery.js.patch index 0eb192ecaff7..14ad0bb32642 100644 --- a/patches/chrome-browser-resources-local_discovery-local_discovery.js.patch +++ b/patches/chrome-browser-resources-local_discovery-local_discovery.js.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/local_discovery/local_discovery.js b/chrome/browser/resources/local_discovery/local_discovery.js -index 780d9abd46e3f3a3d808fd268d6f33af7205909b..5c6bb04e40fd8c2e4d01e5b6738281c93f8608f9 100644 +index 7094e5cec6bca24d97a80775dbf4fb5281ddfa4b..983e5120d92faef64cf635e67f5b0f794ca4f549 100644 --- a/chrome/browser/resources/local_discovery/local_discovery.js +++ b/chrome/browser/resources/local_discovery/local_discovery.js -@@ -584,6 +584,7 @@ cr.define('local_discovery', function() { +@@ -541,6 +541,7 @@ cr.define('local_discovery', function() { $('cloud-devices-retry-link') .addEventListener('click', retryLoadCloudDevices); @@ -10,7 +10,7 @@ index 780d9abd46e3f3a3d808fd268d6f33af7205909b..5c6bb04e40fd8c2e4d01e5b6738281c9 $('cloud-devices-login-link') .addEventListener('click', cloudDevicesLoginButtonClicked); -@@ -592,6 +593,7 @@ cr.define('local_discovery', function() { +@@ -549,6 +550,7 @@ cr.define('local_discovery', function() { $('register-overlay-login-button') .addEventListener('click', registerOverlayLoginButtonClicked); diff --git a/patches/chrome-browser-resources-settings-BUILD.gn.patch b/patches/chrome-browser-resources-settings-BUILD.gn.patch index b6b44203e018..c3ba1e5cf721 100644 --- a/patches/chrome-browser-resources-settings-BUILD.gn.patch +++ b/patches/chrome-browser-resources-settings-BUILD.gn.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/resources/settings/BUILD.gn b/chrome/browser/resources/settings/BUILD.gn -index 39d59932f307692f57514d816b6d0494f6e123de..c990d8b8f04f93b7f1bf5107722cd62295ffaed7 100644 +index 90c81d104577e075749584511f53770fe31c9105..f7aa87e98d6c65e35529543721ba02b78ea73d6c 100644 --- a/chrome/browser/resources/settings/BUILD.gn +++ b/chrome/browser/resources/settings/BUILD.gn @@ -31,6 +31,7 @@ if (optimize_webui) { diff --git a/patches/chrome-browser-resources-settings-about_page-about_page.html.patch b/patches/chrome-browser-resources-settings-about_page-about_page.html.patch index c94047081557..11b1d6755d19 100644 --- a/patches/chrome-browser-resources-settings-about_page-about_page.html.patch +++ b/patches/chrome-browser-resources-settings-about_page-about_page.html.patch @@ -1,8 +1,8 @@ diff --git a/chrome/browser/resources/settings/about_page/about_page.html b/chrome/browser/resources/settings/about_page/about_page.html -index 9c777d16b4809b21160fd652b25ce251e0fa0280..a56506960739dce151a2099fb83ad694d4c5b28a 100644 +index 18c371cdbbe94c2b995988994408543ed9dccbcb..d971ad5e836246fa51edbe0d380a7defd5d155c9 100644 --- a/chrome/browser/resources/settings/about_page/about_page.html +++ b/chrome/browser/resources/settings/about_page/about_page.html -@@ -132,7 +132,7 @@ +@@ -136,7 +136,7 @@ diff --git a/patches/chrome-browser-resources-settings-appearance_page-appearance_page.html.patch b/patches/chrome-browser-resources-settings-appearance_page-appearance_page.html.patch index 5a001cf5cb00..3b5fbd68a671 100644 --- a/patches/chrome-browser-resources-settings-appearance_page-appearance_page.html.patch +++ b/patches/chrome-browser-resources-settings-appearance_page-appearance_page.html.patch @@ -1,5 +1,5 @@ diff --git a/chrome/browser/resources/settings/appearance_page/appearance_page.html b/chrome/browser/resources/settings/appearance_page/appearance_page.html -index e9797c97d52d103cec43f84df00f6c566792ba8d..5acbbe09534565ea745b6565da06d06f673f3106 100644 +index df9863a3a64cec001f2d4a40663b0fe8512e9a25..782529ff189b082467619b1f74de65dc963d56ea 100644 --- a/chrome/browser/resources/settings/appearance_page/appearance_page.html +++ b/chrome/browser/resources/settings/appearance_page/appearance_page.html @@ -18,6 +18,12 @@ @@ -15,7 +15,7 @@ index e9797c97d52d103cec43f84df00f6c566792ba8d..5acbbe09534565ea745b6565da06d06f + + + + diff --git a/utility/importer/brave_importer.cc b/utility/importer/brave_importer.cc index 7bf299aa8aeb..ea5f12f246c8 100644 --- a/utility/importer/brave_importer.cc +++ b/utility/importer/brave_importer.cc @@ -39,19 +39,6 @@ #include "sql/statement.h" #include "url/gurl.h" -#if defined(OS_LINUX) -#include "components/os_crypt/key_storage_config_linux.h" -#endif - -#if defined(USE_X11) -#if defined(USE_LIBSECRET) -#include "chrome/browser/password_manager/native_backend_libsecret.h" -#endif -#include "chrome/browser/password_manager/native_backend_kwallet_x.h" -#include "chrome/browser/password_manager/password_store_x.h" -#include "components/os_crypt/key_storage_util_linux.h" -#endif - using base::Time; BraveImporter::BraveImporter() { diff --git a/utility/importer/chrome_importer.cc b/utility/importer/chrome_importer.cc index 2d039b709d71..0152223e1677 100644 --- a/utility/importer/chrome_importer.cc +++ b/utility/importer/chrome_importer.cc @@ -41,20 +41,6 @@ #include "components/os_crypt/key_storage_config_linux.h" #endif -#if defined(USE_X11) -#if defined(USE_LIBSECRET) -#include "chrome/browser/password_manager/native_backend_libsecret.h" -#endif -#include "chrome/browser/password_manager/native_backend_kwallet_x.h" -#include "chrome/browser/password_manager/password_store_x.h" -#include "components/os_crypt/key_storage_util_linux.h" - -base::nix::DesktopEnvironment ChromeImporter::GetDesktopEnvironment() { - std::unique_ptr env(base::Environment::Create()); - return base::nix::GetDesktopEnvironment(env.get()); -} -#endif - using base::Time; ChromeImporter::ChromeImporter() { @@ -314,92 +300,29 @@ double ChromeImporter::chromeTimeToDouble(int64_t time) { } void ChromeImporter::ImportPasswords(const base::FilePath& prefs_filename) { - #if !defined(USE_X11) - base::FilePath passwords_path = - source_path_.Append( - base::FilePath::StringType(FILE_PATH_LITERAL("Login Data"))); - - password_manager::LoginDatabase database(passwords_path); - if (!database.Init()) { - LOG(ERROR) << "LoginDatabase Init() failed"; - return; - } + base::FilePath passwords_path = source_path_.Append( + base::FilePath::StringType(FILE_PATH_LITERAL("Login Data"))); - std::vector> forms; - bool success = database.GetAutofillableLogins(&forms); - if (success) { - for (size_t i = 0; i < forms.size(); ++i) { - bridge_->SetPasswordForm(*forms[i].get()); - } - } - std::vector> blacklist; - success = database.GetBlacklistLogins(&blacklist); - if (success) { - for (size_t i = 0; i < blacklist.size(); ++i) { - bridge_->SetPasswordForm(*blacklist[i].get()); - } - } - #else - base::FilePath prefs_path = source_path_.Append(prefs_filename); - const base::Value *value; - scoped_refptr prefs = new JsonPrefStore(prefs_path); - int local_profile_id; - if (prefs->ReadPrefs() != PersistentPrefStore::PREF_READ_ERROR_NONE) { - return; - } - if (!prefs->GetValue(password_manager::prefs::kLocalProfileId, &value)) { - return; - } - if (!value->GetAsInteger(&local_profile_id)) { - return; - } + password_manager::LoginDatabase database(passwords_path); + if (!database.Init()) { + LOG(ERROR) << "LoginDatabase Init() failed"; + return; + } - std::unique_ptr backend; - base::nix::DesktopEnvironment desktop_env = GetDesktopEnvironment(); - - // WIP proper kEnableEncryptionSelection - os_crypt::SelectedLinuxBackend selected_backend = - os_crypt::SelectBackend(std::string(), true, desktop_env); - if (!backend && - (selected_backend == os_crypt::SelectedLinuxBackend::KWALLET || - selected_backend == os_crypt::SelectedLinuxBackend::KWALLET5)) { - base::nix::DesktopEnvironment used_desktop_env = - selected_backend == os_crypt::SelectedLinuxBackend::KWALLET - ? base::nix::DESKTOP_ENVIRONMENT_KDE4 - : base::nix::DESKTOP_ENVIRONMENT_KDE5; - backend.reset(new NativeBackendKWallet(local_profile_id, - used_desktop_env)); - } else if (selected_backend == os_crypt::SelectedLinuxBackend::GNOME_ANY || - selected_backend == - os_crypt::SelectedLinuxBackend::GNOME_KEYRING || - selected_backend == - os_crypt::SelectedLinuxBackend::GNOME_LIBSECRET) { - #if defined(USE_LIBSECRET) - if (!backend && - (selected_backend == os_crypt::SelectedLinuxBackend::GNOME_ANY || - selected_backend == - os_crypt::SelectedLinuxBackend::GNOME_LIBSECRET)) { - backend.reset(new NativeBackendLibsecret(local_profile_id)); - } - #endif + std::vector> forms; + bool success = database.GetAutofillableLogins(&forms); + if (success) { + for (size_t i = 0; i < forms.size(); ++i) { + bridge_->SetPasswordForm(*forms[i].get()); } - if (backend && backend->Init()) { - std::vector> forms; - bool success = backend->GetAutofillableLogins(&forms); - if (success) { - for (size_t i = 0; i < forms.size(); ++i) { - bridge_->SetPasswordForm(*forms[i].get()); - } - } - std::vector> blacklist; - success = backend->GetBlacklistLogins(&blacklist); - if (success) { - for (size_t i = 0; i < blacklist.size(); ++i) { - bridge_->SetPasswordForm(*blacklist[i].get()); - } - } + } + std::vector> blacklist; + success = database.GetBlacklistLogins(&blacklist); + if (success) { + for (size_t i = 0; i < blacklist.size(); ++i) { + bridge_->SetPasswordForm(*blacklist[i].get()); } - #endif + } } void ChromeImporter::ImportCookies() {