-
Notifications
You must be signed in to change notification settings - Fork 443
Conversation
…. Add container view for `SignMessageRequest`s.
… in case removed from mojo interface in future.
The security team is monitoring all repositories for certain keywords. This PR includes the word(s) "login" and so security team members have been added as reviewers to take a look. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One nit, but no blockers. LGTM for security
Sources/BraveWallet/Panels/Signature Request/SignInWithEthereumView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignInWithEthereumView.swift
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignInWithEthereumView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignInWithEthereumView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignInWithEthereumView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignMessageRequestView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignMessageRequestView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignMessageRequestView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignMessageRequestView.swift
Outdated
Show resolved
Hide resolved
Sources/BraveWallet/Panels/Signature Request/SignMessageRequestView.swift
Outdated
Show resolved
Hide resolved
…odifier, `headline`/`subheadline` fonts, localize domain/message colons, handle action function
@kylehickinson all comments should be addressed in f2266bf |
|
I think the wrapping works better than truncation here since we have the space, and user can tap & hold to copy the full address. |
* Add view for displaying Sign In With Ethereum / Brave Wallet requests. Add container view for `SignMessageRequest`s. * Use `OriginInfo` to display origin in SIWE details to preserve port & in case removed from mojo interface in future. * Title case * Address PR comment; casing for 'Sign in with Brave Wallet' navigation title. * Address PR comments; rounded rectangle blockie, ViewBuilder overlay modifier, `headline`/`subheadline` fonts, localize domain/message colons, handle action function * Resolve unit test; move String extensions to separate file.
* Fix brave/brave-ios#8146: Fixes Tab Selection and mode switching (brave/brave-ios#8147) * Ref brave/brave-ios#8078: Improve tab bar look with new colours (brave/brave-ios#8138) * Fix # 7770: Discrepancy in the titles of multiple settings screens (brave/brave-ios#8139) * Fix brave/brave-ios#8148: Problem with toggling Sync Types from Settings (brave/brave-ios#8149) * Ref brave/brave-ios#4879: VPN Churn Improvements - Callout Logic and Settings Changes (brave/brave-ios#8040) * Fix brave/brave-ios#8017: Opening Private Tab from App Icon Long Press with Basic Challenge (brave/brave-ios#8152) * Fix brave/brave-ios#8155: Update user agent for iOS 17. (brave/brave-ios#8156) * Fix brave/brave-ios#7645: Explicitly end interactive tab reorder before starting again (brave/brave-ios#8161) * Ref brave/brave-ios#3939: When deleting history, delete its Screen Time entry. (brave/brave-ios#8153) * Fix brave/brave-ios#8013: Fix Playlist Crash on iPad due to invalid Scene (brave/brave-ios#8162) * Fix brave/brave-ios#8058, Fix brave/brave-ios#8074: Implement tab bar reorder via drag & drop for iPad (brave/brave-ios#8164) * Fix brave/brave-ios#8167: Show Brave News onboarding if language support is added later (brave/brave-ios#8170) This is only supported for new users since a new preference is required to track language check failures * No Bug: Update github actions variables (brave/brave-ios#8177) * Fix brave/brave-ios#8007: Add additional details to webcompat report (brave/brave-ios#8117) * Fix brave/brave-ios#8178: Set the NTP-SI P3A total count correctly (brave/brave-ios#8179) * Ref brave/brave-ios#8007: Change webcompat report copy to show additional sent fields (brave/brave-ios#8181) * Fix brave/brave-ios#8183: Allow menu to be presented properly in compact-width iPads (brave/brave-ios#8184) Unfortunately PanModal enforces the presentation to a `popover` on iPads regardless of size classes, so we must allow the arrow direction to be `down` as well here since the toolbar will be at the bottom on compact-width size classes. This also means that on iPads even with iPhone layouts they get shown as a popover which is not ideal and should be fixed later. * No Bug: Fix build on Xcode 15.1 beta (brave/brave-ios#8185) * Add Release Notes for iOS Release 1.52 (brave/brave-ios#7905) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix 8163: Notification asking to set Brave as the default browser is still shown after an external link opened via the 3P app (brave/brave-ios#8186) * No Bug: Move Playlist backend into its own target (brave/brave-ios#8192) * Ref brave/brave-ios#8076: Bump BraveCore to 1.59.111 (brave/brave-ios#8195) This is a 1.59.x release candidate and includes a fresh install launch crash fix * Bump postcss from 8.4.29 to 8.4.31 (brave/brave-ios#8198) Bumps [postcss](https://github.com/postcss/postcss) from 8.4.29 to 8.4.31. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](postcss/postcss@8.4.29...8.4.31) --- updated-dependencies: - dependency-name: postcss dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix brave/brave-ios#8160: User asset duplication caused by a new iOS17 memory leaks (brave/brave-ios#8174) * Fix brave/brave-ios#8190: Add in-page search to the debug histograms controller (brave/brave-ios#8199) * Fix brave/brave-ios#7755: Reinsert the favs overlay when bottom bar mode changes (brave/brave-ios#8201) * Ref brave/brave-ios#8078: Fix collapsed URL bar background color (brave/brave-ios#8202) The tabs bar now has a background and in general colors around these have changed so we can now just set the alpha of the tabs bar entirely instead of the subviews alone * Fix brave/brave-ios#8006: NFT Spam Management (brave/brave-ios#8055) * Fix brave/brave-ios#8072: Portfolio v2 (brave/brave-ios#8140) * Integrate Portfolio v2 UI * Remove floating Buy/Send/Swap button * Use reusable modifier for reading view size * Fix brave/brave-ios#8218: Fix issue with not applying aggressive only filter lists (brave/brave-ios#8220) * Fix unwanted removal of content blockers upon launch (brave/brave-ios#8222) * Fix unwanted removal of content blockers upon launch * Use mutable reduce * Change reduce to a map * Fix brave/brave-ios#8089, brave/brave-ios#6538: Portfolio Settings / Menu View (brave/brave-ios#8175) * Integrate new MainMenuView to replace context menu used for 3-dot menu in Wallet * Fix entire Wallet dismissing on lock / auto-lock on iOS 16.4 and later * Fix brave/brave-ios#8157: Add 1.58 translations. (brave/brave-ios#8231) * Fix brave/brave-ios#8191: Fix crashes due to compiling too many engines, too quickly (brave/brave-ios#8224) * Fix brave/brave-ios#8239: Remove hard coded YouTube script (brave/brave-ios#8238) * Fix brave/brave-ios#8232: Display 0 for send amount for all percentage if selected token balanc… (brave/brave-ios#8234) * Fix brave/brave-ios#8241: Fix Menu not updating when the private-mode changes (brave/brave-ios#8242) Fix menu not updating when the private-mode changes * Fix brave/brave-ios#8206, fix brave/brave-ios#8207: Back-Forward list UI improvements (brave/brave-ios#8208) This commit also updates NTP/internal url to use Brave's logo, ref brave/brave-ios#5357 * Fix brave/brave-ios#8209: Better message when tracking is disabled for the Privacy Hub. (brave/brave-ios#8210) * Fix brave/brave-ios#8229: Disable save changes until changes made (brave/brave-ios#8240) Disable Save Changes button in Filters until changes are made * Fix brave/brave-ios#8228: Switch to UIScene notifications (brave/brave-ios#8249) * Fix brave/brave-ios#8235: Fix potential crash around changing VPN regions (brave/brave-ios#8237) * Ref brave/brave-ios#8076: Update brave-core to 1.59.117 (brave/brave-ios#8250) * Fix brave/brave-ios#8254, Fix brave/brave-ios#8251: Ensure Brave News uses the correct Ads instance (brave/brave-ios#8256) When Rewards or Brave News is turned off the `BraveAds` instance is replaced, however `FeedDataSource` could still hold onto a reference to the old instance which could cause a crash if opting into News via Brave News settings and if opted in via the NTP it could cause ads to not appear since the old ads instance is not initialized. * Fix brave/brave-ios#7924: Swap protocol fees (brave/brave-ios#8233) * Swap protocol fees * Reset buy & sell amount when either buy or sell token changes. * Fix brave/brave-ios#8259: 3rd party check for request blocking (brave/brave-ios#8260) * Fix brave/brave-ios#8217: Remove Cookie Consent info popup. (brave/brave-ios#8230) * Fix brave/brave-ios#8268: UIGraphicsBeginImageContextWithOptions causing Intermittent crash while taking Tab Screenshot (brave/brave-ios#8269) * Fix brave/brave-ios#8205: Support NFT removal. Updates for NFT spam management new design (brave/brave-ios#8226) * Fix brave/brave-ios#8221: Cleanup logs for ad-block (brave/brave-ios#8223) * Ref brave/brave-ios#8270 Add `SubmitReportView` (brave/brave-ios#8123) * Add `SubmitReportView` * Fix success dialogue on submit webcompat report view * Hide cancel button on submit report view upon submit * Add webcompat report button to settings * Add email content type to webcompat report text field * Fix navigation view * Fix for review * Push web-compat report success * Updated for review * Fix for review * Fix for review * Fix brave/brave-ios#8188: Add ability to run tests against the latest iOS version. (brave/brave-ios#8180) * Fix brave/brave-ios#4358: Add support for downloading `mobileconfig` (brave/brave-ios#8245) This change also: - Adjusts the iCal link downloading to use check the mime type in the instances where an `ics` file may be returned by the server without a path extension but a valid mime type in the response headers. - Removes empty tabs that are left open in the link to download these types of files opens * Fix brave/brave-ios#8284: Fix release compilation (brave/brave-ios#8281) Fix release compilation * Fix brave/brave-ios#8277: Crash on old devices due to too many filter lists enabled (brave/brave-ios#8283) * Fix brave/brave-ios#8272: Add setting to ensure YouTube links always load in Brave (brave/brave-ios#8275) * Fix brave/brave-ios#8291: Onboarding can get stuck if crashed before keyring saved (brave/brave-ios#8293) Add fallback for case where user completes onboarding, but keyring is not saved. Bug could lock user into onboarding without any way to dismiss Wallet or proceed. * Fix brave/brave-ios#8292: Change the minimum number of engines available (brave/brave-ios#8288) * Ref brave/brave-ios#8076: Update brave-core to 1.59.122 (brave/brave-ios#8296) * Fix brave/brave-ios#8297: Bump BraveCore to v1.60.x (brave/brave-ios#8298) * Fix brave/brave-ios#8166: Wallet Tab Bar (brave/brave-ios#8287) * Use TabView for wallet instead of page controller. * Navigation structure updates; each tab has it’s own `NavigationView`. Portfolio navigation bar matches Portfolio background & has no shadow until scrolled. * Fix brave/brave-ios#7945: NFTs displayed in Portfolio when grouped by accounts (brave/brave-ios#8300) Make sure NFTs filtered out when grouping by accounts; resolves NFTs displaying in account groups & possible graph issues (NFT dependent) * Fix brave/brave-ios#8211: Remove the dislike swipe action on ads (brave/brave-ios#8304) This also cleans up and removes the unused open swipe action and accompanying pan gesture * Fix brave/brave-ios#8286: Update "Edit bookmark" to "Edit favorite" when long pressing a favorite (brave/brave-ios#8303) * Fix brave/brave-ios#8073: Add NFT grouping by none/accounts/networks (brave/brave-ios#8289) * Fix brave/brave-ios#8261: Performance issue of `BraveCertificateUtils.formatDate(_:)` (brave/brave-ios#8262) * Fix brave/brave-ios#8255: Reordering Favourites shows duplicated items (brave/brave-ios#8314) * Fix brave/brave-ios#8236: Adding export fail case and alert for success (brave/brave-ios#8315) * Ref brave/brave-ios#8297: Update brave-core to 1.60.104 (brave/brave-ios#8322) Co-authored-by: Jacob Sikorski <[email protected]> * Fix brave/brave-ios#8035: Add `itms-apps`, `itms-appss` and `itmss` to the supported schemes (brave/brave-ios#8318) * Fix brave/brave-ios#8316: Onboarding Title Case Text Change (brave/brave-ios#8323) * Fix brave/brave-ios#8317: Menu Update for VPN Status (brave/brave-ios#8325) * Fix brave/brave-ios#8305 - Ref brave/brave-ios#8297: Allow Syncing All History - Update brave-core to 1.60.105 (brave/brave-ios#8306) * Fix brave/brave-ios#8294: Compile only the needed content blockers eagerly (brave/brave-ios#8295) Compile max content blockers * Fix brave/brave-ios#8329: Send to your Devices action "Send" button placement (brave/brave-ios#8335) * Fix brave/brave-ios#8332: Allow proper caret selection on url bar in overlay mode (brave/brave-ios#8347) This cleans up the duplicate drag interactions as well as fixes the bug where you could no longer move the caret inside of the url bar text field. It also restores a missed delegate method and removes the drop delegate on the active text field so as to not crash * Fix brave/brave-ios#8350: Fix Playlist not working on Youtube at all (brave/brave-ios#8352) Fix playlist media compatibility on Youtube Allow WebKit to reload the page automatically. * Fix brave/brave-ios#8203: Apple Search Ads Install Attribution (brave/brave-ios#8194) * Fix brave/brave-ios#8344: Update VPN text on the paywall (brave/brave-ios#8356) Updating the checkbox paywall information detail * Ref brave/brave-ios#8297: Update brave-core to 1.60.113 (brave/brave-ios#8365) Ref #brave/brave-ios#8297: Update brave-core to 1.60.113 * Fix brave/brave-ios#8357: Disable button to create wallet when wallet is already being created (brave/brave-ios#8358) Disable `Continue` button when already creating/restoring a wallet during create wallet / restore wallet to prevent double taps. * Fix brave/brave-ios#8364: Add missing footer constraint when bottom toolbar is hidden (brave/brave-ios#8367) Missing this constraint would cause the web view container view to have ambiguous height and result in a 0-height web page. * No Bug: Fix flakey `ManageSiteConnectionsStoreTests` (brave/brave-ios#8368) * Fix brave/brave-ios#8369: Disable content blockers when TP is disabled (brave/brave-ios#8370) * Ref brave/brave-ios#8297: Update brave-core to 1.60.114 (brave/brave-ios#8378) * Fix brave/brave-ios#8383: Handling External links on NTP does not work (brave/brave-ios#8384) Check if it is nonactive but NTP tab whole triggering external link navigation * Fix brave/brave-ios#8385: Bump BraveCore to v1.61.x (brave/brave-ios#8386) * Update BraveCore to v1.61.29 * Update BraveCore to v1.61.32 * Wallet fixup * [1.61] Fix brave/brave-ios#8252: Remove KeyringInfo Refactor & Update BraveCore to v1.61.39 (brave/brave-ios#8313) * Update for KeyringInfo removal refactoring * Update BraveCore to v1.61.39 * Fix MOST of the compilation (but not all - Had to comment out one rewards/ads related thing for adsInfo) * Bump to 1.61.51, finish fixing up ads changes * Update BraveCore to v1.61.59 * Update BraveCore to v1.61.69 --------- Co-authored-by: Brandon T <[email protected]> Co-authored-by: Jacob Sikorski <[email protected]> Co-authored-by: Kyle Hickinson <[email protected]> * No Bug: Add brave player copy text (brave/brave-ios#8388) * Fix brave/brave-ios#8333: Add Open Browser History and Open Tabs from Other Devices Activity Based Shortcuts (brave/brave-ios#8387) * No Bug: Update Leo & Leo SF Symbols packages (brave/brave-ios#8389) * Fix brave/brave-ios#7827: Sign In With Ethereum (brave/brave-ios#8319) * Add view for displaying Sign In With Ethereum / Brave Wallet requests. Add container view for `SignMessageRequest`s. * Use `OriginInfo` to display origin in SIWE details to preserve port & in case removed from mojo interface in future. * Title case * Address PR comment; casing for 'Sign in with Brave Wallet' navigation title. * Address PR comments; rounded rectangle blockie, ViewBuilder overlay modifier, `headline`/`subheadline` fonts, localize domain/message colons, handle action function * Resolve unit test; move String extensions to separate file. * Fix brave/brave-ios#8392: Ensure `toString` returns expected value on `Object` (brave/brave-ios#8394) * Fix: brave/brave-ios#8404: Invalid presentation over panel while loading keyring (brave/brave-ios#8405) Fix invalid presentation over panel while loading. * [No Bug]: Ancient Migrations - Unused Preference Cleanup (brave/brave-ios#8395) * Add Release Notes for iOS Release 1.52.1 (brave/brave-ios#8372) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * No Bug: Duplicate localized string key. (brave/brave-ios#8411) * Fix brave/brave-ios#8328: Wallet unlock v2 (brave/brave-ios#8340) * Update UnlockWalletView to v2 designs * Navigation styling * Address PR comments. Add `opticID` biometry type. Maintain error space. * Fix brave/brave-ios#8063: Some V2 updates on under Portfolio/NFT (brave/brave-ios#8382) * Fix brave/brave-ios#8412: Dismiss NFT Discovery and NFT Removal popups when wallet is auto-locked (brave/brave-ios#8413) Dismiss NFT Discovery and NFT Removal popups when wallet is auto-locked * Fix brave/brave-ios#8392: Fix toString override causing issues with WebPages not loading (brave/brave-ios#8409) Fix toString and make it a generative toString * Fix brave/brave-ios#8418: Solana NFT in asset search is not going to NFT details screen (brave/brave-ios#8419) * Fix brave/brave-ios#8349: Transaction Activity v2 UI (brave/brave-ios#8390) * Transaction Activity tab v2 UI * Resolve `TransactionParserTests`, update `TransactionActivityStoreTests` for date grouping * Fix brave/brave-ios#8362: Tabs Disappearing (brave/brave-ios#8420) Fixed Migration for lost tabs. Fixed Window restoration when we don't get an activity from Apple. * Fix brave/brave-ios#8353: Add Subscription Custom Offer Codes Interaction (brave/brave-ios#8354) * Fix brave/brave-ios#7592: Alternative - New Keyboard Shortcuts for tabs "reopen" and "reverse navigation" And Zoom In Zoom Out (brave/brave-ios#8391) * Fix brave/brave-ios#8421: Update the toolbar layout on `viewWillAppear` (brave/brave-ios#8422) On iOS 17 rotating the device with a full screen modal presented (e.g. Playlist, Tab Tray) to landscape then back to portrait does not trigger `traitCollectionDidChange`/`willTransition`/etc calls and so the toolbar remains in the wrong state. * Add Release Notes for iOS Release 1.56 (brave/brave-ios#8414) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8396: Use correct text color for Brave VPN menu button (brave/brave-ios#8427) * [No Bug]: Removing TabMO and Tab Migration (brave/brave-ios#8429) Remove TabMO migration * Fix brave/brave-ios#8423: Remove unnecessary animation in asset detail (brave/brave-ios#8424) * Fix 8431: Copy mistake in confirmation message after resetting VPN config (brave/brave-ios#8433) * Fix brave/brave-ios#8169: Count and open all subfolder urls with Open All (#) (brave/brave-ios#8400) * Fix brave/brave-ios#8393: Update the progress & url correctly when cancelling a load (brave/brave-ios#8432) If you return `cancel` in one of the `decidePolicy*` methods the progress bar gets stuck at 10%. When that load happens on NTP, the url shown also gets stuck showing the cancelled url. * Fix brave/brave-ios#8266: Disable rpc url selection in view mode from dapp request (brave/brave-ios#8434) * Fix 8064: Some v2 updates in NFT details (brave/brave-ios#8408) * Fix brave/brave-ios#8267: rpc url in custom network cannot be updated (brave/brave-ios#8437) * Fix brave/brave-ios#8001: Display the VPN subscription in the App Store (brave/brave-ios#8415) * Add Release Notes for iOS Release 1.57 (brave/brave-ios#8428) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8376: Add 1.60 translations. (brave/brave-ios#8438) * Fix brave/brave-ios#8435: NFT images failing to show in Activity tab Send transactions (brave/brave-ios#8436) * Store optional `NFTMetadata` in `SendDetails` (Solana NFT), and `Eth721TransferDetails`. Fetch NFT metadata on Activity tab and use for NFT icon display. * Update unit test to include nft transaction and verify NFTMetadata is fetched. * Fix brave/brave-ios#8446: Use correct `select` method on BVC when opening URLs (brave/brave-ios#8447) A crash was introduced in brave/brave-ios#8306 due to accidentally calling the Obj-C `select(_ sender:)` method on UIResponder instead of `select(url:)`. * Fix brave/brave-ios#8431: Copy mistake in confirmation message after resetting VPN config (brave/brave-ios#8443) * Fix brave/brave-ios#8451: Defer toolbar state updates on `viewWillAppear` by 1 cycle (brave/brave-ios#8452) For some reason without this there's a chance iOS lays out the toolbars without any safe area insets * Add Release Notes for iOS Release 1.57.1 (brave/brave-ios#8450) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8361: Open Add separator between inactive tabs (brave/brave-ios#8442) * Fix brave/brave-ios#8253: Don't navigate to javascript:// URLs from the omnibox (brave/brave-ios#8456) * Fix brave/brave-ios#8457: Only update toolbar layout when actually required (brave/brave-ios#8458) * Fix brave/brave-ios#8173: Update URL bar design & display origin-only URLs (brave/brave-ios#8417) * Fix brave/brave-ios#8459: Accounts tab modals reset when returning from background (brave/brave-ios#8460) Fix for Accounts modals resetting if KeyringStore changes. Sheet(s) presented from Lists that are redrawn lose their state. * Ref brave/brave-ios#8417: Disable tint adjustment on secure state buttons (brave/brave-ios#8468) This turns off the grayscale effect that is given to the button while controllers are presented on top of the browser * Fix brave/brave-ios#8463: Only display NFTs after user updates any NFT's visibility status (brave/brave-ios#8470) after NFT status chanegd, the re-computation needs to apply on only NFTs. * Ref brave/brave-ios#8385: Bump BraveCore to v1.61.84 (brave/brave-ios#8471) * Fix brave/brave-ios#8475: Always update some toolbar state, move workaround to new API (brave/brave-ios#8476) Sometimes the `traitCollection` is _still_ incorrect in `viewWillAppear` even with a runloop hop, so switching to the new API the iOS 17 SDK introduced `viewIsAppearing` * Ref brave/brave-ios#8417: URL bar revamp design improvements (brave/brave-ios#8480) - Bumps the URL font to `body` (17pt) - Adjusts the toolbar icons to be more inline with design, and makes the bookmark button feel less out of place - Fixes the voice search/QR code icons which didn't get updated browser colors accidentally * Fix brave/brave-ios#8227: When launching the QR code scanning UI while in the Landscape mode, the camera view is rotated 90 degrees (brave/brave-ios#8472) * Fix brave/brave-ios#8462: Custom Networks list not updated when opened via browser settings (brave/brave-ios#8464) Update chain list when custom networks list is opened to handle case when opened via browser settings. * Add Release Notes for iOS Release 1.57.2 (brave/brave-ios#8455) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8445: View recovery phrases button is not tappable (brave/brave-ios#8473) * Fix brave/brave-ios#8481: Race condition in NFT tab when user hide/unhide NFT before balance or metadata is fetched (brave/brave-ios#8486) * Ref brave/brave-ios#8417: Hide "Not Secure" label when tab location view is too small (brave/brave-ios#8488) Also shrinks the placeholder label to fit since it can sometimes get truncated in compact configurations * Fix brave/brave-ios#8489: Follow Safari's behaviour for Desktop-UA (brave/brave-ios#8490) Follow Safari's behaviour for Desktop-UA when in compact horizontal size class. * Fix: brave/brave-ios#8479 - Fix long-press and video detection (brave/brave-ios#8483) * Fix brave/brave-ios#8466: Add a custom prompt for media capture permissions (brave/brave-ios#8467) * Fix brave/brave-ios#8379: Transaction Details v2 UI (brave/brave-ios#8474) * Transaction Details v2 UI * Fix brave/brave-ios#7877: Fix NightMode applying to elements with a background-image (brave/brave-ios#8498) * Fix brave/brave-ios#8484: Portrait Orientation Locking on Phone is not working (brave/brave-ios#8485) * Ref brave/brave-ios#8484: Portrait Orientation Locking on Phone is not working (brave/brave-ios#8499) * Fix brave/brave-ios#7835, brave/brave-ios#8494: Fix handling of External URL when in third-party frames but active tab (brave/brave-ios#8495) * Fix brave/brave-ios#8502: Use correct Brave icons for top news widgets (brave/brave-ios#8503) * Fix brave/brave-ios#7439: Update clear history app intent for SwiftUI (brave/brave-ios#8501) * Fix brave/brave-ios#8504: Bump BraveCore to v1.62.x (brave/brave-ios#8505) * Update BraveCore to v1.62.93 --------- Co-authored-by: Kyle Hickinson <[email protected]> * Fix brave/brave-ios#8497: Scale VPN menu button icon correctly (brave/brave-ios#8506) * Fix brave/brave-ios#8371: Update Rewards icon properly when first enabling it (brave/brave-ios#8512) Also fixes a race condition for first time rewards users where the rewards service hasn't started before they tap the switch to turn it on would cause a UI bug * Add Release Notes for iOS Release 1.58 (brave/brave-ios#8491) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8345, brave/brave-ios#8425: Add 'Creating Wallet...' step to onboarding (brave/brave-ios#8509) * Check for wallet existing before creating Wallet to prevent possible race condition with multi-window. * Add 'Creating Wallet...' step to onboarding for when asynchronous create wallet / restore wallet functions are setting up the wallet and fetching wallet data files. * Fix Wallet re-opened before create/restore wallet callback returns. * Use old api for `ToolbarItemPlacement` as CI is using older Xcode version. * Address PR comments; Fix backup banner showing until network call to fetch wallet data returns after wallet restore. Banner would only be visible if wallet is dismissed and re-opened prior to callback. Fix wallet dismiss on wallet lock. * Address PR comment; Fix `CreatingWalletView` not covering fullscreen by overlaying on ScrollView instead of only on contents. * Fix brave/brave-ios#8518: NFT grid placeholder height is not the same with other grids height (brave/brave-ios#8524) * Fix brave/brave-ios#8136: Assets line chart V2 (brave/brave-ios#8525) * Ref brave/brave-ios#7835, brave/brave-ios#8494: Fix handling of External URL when in third-party frames but active tab brave/brave-ios#8495 (brave/brave-ios#8532) * Fix brave/brave-ios#8517: Update logic for multi-window on iPhone (brave/brave-ios#8531) * Fix brave/brave-ios#8375: Wallet account blockie v2 (brave/brave-ios#8510) * Fix brave/brave-ios#8517: Fix crash on launch due to active window changes (brave/brave-ios#8534) - Fix crash on active window during fresh install. * No Bug: Fix for console warning about `leo.nft` symbol size (brave/brave-ios#8537) Fix for console warning about leo.nft size. * Fix brave/brave-ios#8529: Update logic to support unknown tokens from non-mainnet transactions (brave/brave-ios#8530) Update logic for fetching unknown tokens to support non-mainnet ethereum transactions. Add unknown token fetch to Activity tab. * Fix brave/brave-ios#8493: Privacy Hub hide action approval alert (brave/brave-ios#8508) * Fix brave/brave-ios#2336: Add option to disable Bookmarks/OpenTabs/History suggestions when typing in url (brave/brave-ios#8469) * Fix brave/brave-ios#8114: Support CoW Swap 🐮 orders in Safer Sign (brave/brave-ios#8533) * Refactor `SwapTransactionConfirmationView` into `SaferSignTransactionContainerView` & `SaferSignTransactionView`, remove dependency on `ParsedTransaction` for re-use by Sign panel. * Add SaferSignMessageRequestContainerView & `SignMessageRequestStore` for Safer Sign CoW swaps in Signature Requests. * Refactor `SignMessageRequestContentView` out of `SignMessageRequestView` for re-use. Update `SaferSignMessageRequestContainerView` to use `SignMessageRequestContentView` for details view display. * Add explorer url button to tokens in `SaferSignTransactionView` * Address review comment; always show receiving address in safer sign even when it's same as from address/account. * Add Release Notes for iOS Release 1.58.2 (brave/brave-ios#8544) * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8482, brave/brave-ios#8519: NFT loading improvement (brave/brave-ios#8551) * Fix brave/brave-ios#8515: Update SNS interstitial page copy and help page link (brave/brave-ios#8553) * Fix brave/brave-ios#8548: Refactor `PortfolioSegmentedControl` to be reusable (brave/brave-ios#8549) * Fix brave/brave-ios#8546: Add 1.61 translations. (brave/brave-ios#8557) * Fix brave/brave-ios#8561: Fix issue with stats script sending empty image sources (brave/brave-ios#8559) Fix issue with stats script sending empty image sources * Fix brave/brave-ios#8552: Reopening closed tabs via Cmd + Shift + T is not working when these tabs are closed using Cmd + W (brave/brave-ios#8564) * Fix brave/brave-ios#8547: Page zoom freeze (brave/brave-ios#8570) Fix autolayout issue Co-authored-by: Brandon T <[email protected]> * Fix brave/brave-ios#8566: Remove ScreenTime temporarily. (brave/brave-ios#8568) Seems to cause UI freezes. * Fix brave/brave-ios#7485, brave/brave-ios#8012, brave/brave-ios#8151: Fix Playlist PIP continuation in Background, Data URL playing, Onboarding Popup (brave/brave-ios#8550) * Fix brave/brave-ios#8576: Address bar blank before website starts loading (brave/brave-ios#8577) * Fix brave/brave-ios#8535: Fix toggling night mode (brave/brave-ios#8573) * Ref brave/brave-ios#8504: Bump BraveCore to v1.62.x (brave/brave-ios#8582) * Fix brave/brave-ios#8583: Bump Brave Core to 1.63.x (brave/brave-ios#8584) * Fix brave/brave-ios#8526: Fix the issue of the share button disappearing (brave/brave-ios#8572) * Fix brave/brave-ios#8057: Add Download Delegate to handle PassKit blobs (brave/brave-ios#8588) Add download delegate to handle PassKit blobs * Fix brave/brave-ios#8374: Cursor is misplaced for a selected URL when that URL doesn't fit the screen (brave/brave-ios#8612) * Fix brave/brave-ios#8604: Restore Add Custom Token Auto-complete (brave/brave-ios#8605) * Restore Add Custom Token auto-complete, now supporting all EVMs instead of just Mainnet * Update code comment * Remove unneeded network assignment; network required to fetch auto-complete info * Fix brave/brave-ios#8614: Playlist auto download not working (brave/brave-ios#8615) * Fix brave/brave-ios#8616: Swap Improvements (brave/brave-ios#8617) * For Solana swaps, update `maxRetries` to 2 and `preflightCommitment` to `"processed"` for higher success rates with v4 API. * Fix Solana Swaps not correctly showing loading state when creating a transaction. * Fix possible race condition fetching price quote. Ignore response from prior request if sell amount changes. * Fix brave/brave-ios#8585 - Fix Javascript Disabling <NoScript> (brave/brave-ios#8586) - Fix Javascript Disabling not working * Fix brave/brave-ios#8590: Wallet Swap Service Refactor also Bump Core to 1.63.90 (brave/brave-ios#8613) * Fix brave/brave-ios#8606: Fix background tab navigation (brave/brave-ios#8618) * Fix brave/brave-ios#8619: Send correct ad notification clicked event (brave/brave-ios#8620) * Fix brave/brave-ios#8565: Re-enable Screen-Time. (brave/brave-ios#8611) * Fix brave/brave-ios#8137: Asset detail v2 (brave/brave-ios#8595) * Fix brave/brave-ios#8594: "Scan QR Code" from quick action to open a new tab (brave/brave-ios#8621) * Fix brave/brave-ios#8608: Authenticate when disabling browser lock (brave/brave-ios#8609) - Authenticate when disabling browser lock * Fix brave/brave-ios#8070: Support 'Clean Copy Link' from Sharesheet (brave/brave-ios#8626) * Fix brave/brave-ios#8521: ASA Custom Onboarding Feature Linkage (brave/brave-ios#8591) * Fix brave/brave-ios#8556: Add GPC toggle (brave/brave-ios#8593) * Fix brave/brave-ios#8635: URLBar updates and CertValidation (brave/brave-ios#8634) Update URL bar on cancellation instead of URL change because URL change can update the certificate state. Remove didCommit serverTrust validation as it works fine with URLBar Revamp. Make the cert validation function async-await Remove select as it crashes in debug builds * Fix brave/brave-ios#8603: Jupiter v4 to v6 migration & BraveCore bump to v1.63.107 (brave/brave-ios#8633) * Update `SwapTokenStore` & `SwapTokenStoreTests` for Jupiter v6 changes. * Update BraveCore to v1.63.107 * Fix brave/brave-ios#8560, brave/brave-ios#8542, brave/brave-ios#8558: Two NFT UI bugs and one caching issue (brave/brave-ios#8636) * Fix brave/brave-ios#8562: Update Tracking Protection Stats (brave/brave-ios#8587) * Fix brave/brave-ios#8650: Fix SSL Status on Offline pages and Http pages (brave/brave-ios#8651) * Fix brave/brave-ios#8647: Fix crash when loading invalid URLs (brave/brave-ios#8648) * Fix brave/brave-ios#8649: Improve Performance of Select Token to Send (brave/brave-ios#8654) * Update performance of `SelectAccountTokenStore`; build account sections for changes instead of computed property * Fix for case where balance is 0 after being cached as non-zero does not update cache, don't lose cached balances after failed response. * No Bug: Add Log handler and debug menu for JitsiSDK logs. (brave/brave-ios#8644) * Fix 8630: Disable Button Search Suggestion Opt-in not updating (brave/brave-ios#8632) * Fix brave/brave-ios#8665: Fix an issue where URL won't load if already loaded in a different mode (brave/brave-ios#8666) - Fix URL not loading when the same URL is already open in a different mode * Ref brave/brave-ios#8647: Fix crash when loading invalid URLs (brave/brave-ios#8670) Changing Model to Latest 27 Model * Fix brave/brave-ios#8668: Increase max retries for Solana Swap transactions to improve reliability (brave/brave-ios#8671) Increase maxRetries for Solana Swap transactions to improve reliability. * No Bug: Fix for bad access crash causing flakey test (brave/brave-ios#8684) Fix for bad access crash when accessing non-thread safe dict from background thread. Resolves flakey `SelectAccountTokenStoreTests` unit test test. * No Bug: Brave Talk logs update (brave/brave-ios#8681) * Fix brave/brave-ios#8661: Always allow WebKit to load popup URLs before switching tabs (brave/brave-ios#8683) There was a race condition on older devices that where WebKit would not load the popup URL before Brave attempted to select the tab. Selecting the tab would then attempt to restore it using the tab's current URL which would be `about:blank` since the web view had not made any requests yet. * No Bug: Wrong localized string key. (brave/brave-ios#8686) * Fix brave/brave-ios#8600: Accounts Tab v2 (brave/brave-ios#8659) * Move Backup to `...` menu, and Add/Create Account specific for Accounts tab. * Update `AccountsView` to v2 designs, create `AccountsStore` for building account cards with balances and price information. * Create `AccountsStoreTests` unit test for fetching accounts and tokens with balance / total fiat for each account * Card background using blockie material, refresh list on network change & show/hide test networks, small UI, tweaks * Split `AssetIconView` into `AssetIcon` (no sizing) and `AssetIconView` (applies dynamic sizing). Split `NetworkIcon` into `NetworkIcon` (no sizing) and `NetworkIconView` (applies dynamic sizing). Update `MultipleCircleIconView` to apply a background instead of just a stroke for when transparent icons are used. * Add border to `...` icon in `MultipleCircleIconView` for consistency. * Add Release Notes for iOS Release 1.60 (brave/brave-ios#8581) * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Update CHANGELOG.md * Fix brave/brave-ios#8664: Add content blocker to upgrade passive mixed content (brave/brave-ios#8680) Also hides the 'Not Secure' title when viewing mixed content Due to a WebKit bug we will still be showing the page as insecure even when all http links are promoted, so this will help with that until the bug is fixed by Apple * Add Release Notes for iOS Release 1.60.1 (brave/brave-ios#8691) Update CHANGELOG.md * Fix brave/brave-ios#7757: Resolve flakey Tx Confirmation Test (brave/brave-ios#8687) Use `NetworkInfo` stored on `ParsedTransaction` in `TransactionConfirmationStore`, remove separate published property. * Fix brave/brave-ios#8607: Add 1.62 translations. (brave/brave-ios#8693) * Fix brave/brave-ios#8688: Fix URL-Bar not updating sometimes to show the latest cert status (brave/brave-ios#8698) Trigger cert validation on request failure/cancellation Added a certificate trust error handling when WebKit throws an error internally and we receive no certs! This can mess with the URL Bar, interstitial pages, and cert viewer. Move evaluation of certs to a serial queue. * Ref brave/brave-ios#8664: Hide 'Not Secure' mixed content warning when url is collapsed (brave/brave-ios#8697) * Fix brave/brave-ios#8703: Match Desktop Cert Display (brave/brave-ios#8704) Match Chrome Behaviour for SSL Handshake validation * Fix brave/brave-ios#8705: Add display for version info (brave/brave-ios#8706) - Add display for version info * Fix brave/brave-ios#8516: Add Open in Brave to iOS Share Sheet Action (Action Extension) (brave/brave-ios#8682) * Fix brave/brave-ios#8709: Portfolio filters not opening intermittently (brave/brave-ios#8710) * Move filters sheet modifier to outside of Portfolio `ScrollView` for Portfolio Assets list. Reduce nested `LazyVStack`s where not necessary. * Move filters sheet modifier to outside of Portfolio `ScrollView` for Portfolio NFTs list. * Fix brave/brave-ios#8673: Move NTP P3A helper creation outside of NTP (brave/brave-ios#8676) There was a chance that a user would simply never load a NTP during their session which means that P3A rotations wouldn't trigger new NTP-SI reports each day. This report was supposed to occur each rotation, not specifically per NTP view. * Fix brave/brave-ios#8694: Potential tab loss when window not found (brave/brave-ios#8695) Pass WindowID as a UUID directly to NSPredicate * Ref brave/brave-ios#8583: Update brave-core to 1.63.141 (brave/brave-ios#8724) * Fix brave/brave-ios#8721: Approve transaction does not show confirmation after editing allowance (brave/brave-ios#8725) * Fix case where `TransactionConfirmationStore` is torn down from observation when opening a detail view to edit approve tx permissions, which can cause spinner to show until transaction confirmation modal is dismissed because we miss the transaction updated observation method callback. * Close stores on dismiss of modal to cover case where user manually dismisses modal RequestContainerView * Fix brave/brave-ios#8727: Update scriplet globals (brave/brave-ios#8728) Update scriplet globals * Fix brave/brave-ios#8656: Remove max number of filter lists limit (brave/brave-ios#8657) * Fix brave/brave-ios#8717: Don't handle Brave Talk keyboard shortcuts while in PiP (brave/brave-ios#8719) * Fix brave/brave-ios#8674: Add default browser P3A (brave/brave-ios#8679) * Fix brave/brave-ios#8274: Add support for the daily browser session time P3A metric (brave/brave-ios#8730) * Fix brave/brave-ios#8096: Add blocked page interstitial (brave/brave-ios#8589) * Fix brave/brave-ios#8096: Add blocked page interstitial * Add domain blocking "Proceed" and "Go Back" actions (brave/brave-ios#8628) * Fix brave/brave-ios#8667: Fix webcompat url for internal links (brave/brave-ios#8672) * [ads] Unify iOS kBraveNTPBrandedWallpaper * Fix brave/brave-ios#8663: Account Details v2 (brave/brave-ios#8716) * Account Activity / Details v2 WIP * Update unit tests for transaction sections, assets sorted by fiat * Add security row for dapp supported accounts * Fix cases where currency formatter's `maximumFractionDigits` was not restored in `TransactionParser` (`solEstimatedTxFee` unavailable or `filTxData` unavailable) * Remove old observer extensions from `AccountActivityStore`. * Fix for NFTs not being displayed correctly in transactions list (for NFT transactions) * Update copy for account details rows * Fix brave/brave-ios#8738, brave/brave-ios#8708: Fix memory leak in `SettingsViewController` (brave/brave-ios#8739) * Fix brave/brave-ios#8731: Fix issue with standard mode content blockers with large list (brave/brave-ios#8732) * Fix brave/brave-ios#8736: Fix No Spam NFTs (brave/brave-ios#8742) * Fix brave/brave-ios#8750: Accounts tab add account race condition (brave/brave-ios#8751) Fix race condition when an account is added while balances & prices are being fetched * Allow native Jitsi SDK on dev and staging Brave Talk hosts (brave/brave-ios#8754) * Fix brave/brave-ios#8759: fixed Japanese title of rating brave card (brave/brave-ios#8761) * Update .gitignore --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Brandon-T <[email protected]> Co-authored-by: Soner YUKSEL <[email protected]> Co-authored-by: Michał Buczek <[email protected]> Co-authored-by: Jacob Sikorski <[email protected]> Co-authored-by: smesher <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Nuo Xu <[email protected]> Co-authored-by: StephenHeaps <[email protected]> Co-authored-by: Alexandru Solomon <[email protected]> Co-authored-by: Thai D. V <[email protected]> Co-authored-by: Nikita Vasilev <[email protected]> Co-authored-by: Brandon T <[email protected]> Co-authored-by: tempo810 <[email protected]> Co-authored-by: Kamil Jozwiak <[email protected]> Co-authored-by: Ahmed Shehata <[email protected]> Co-authored-by: aseren <[email protected]> Co-authored-by: Terry Mancey <[email protected]> Co-authored-by: Artem Chaikin <[email protected]> Co-authored-by: Yunosuke Sakai <[email protected]>
* Add view for displaying Sign In With Ethereum / Brave Wallet requests. Add container view for `SignMessageRequest`s. * Use `OriginInfo` to display origin in SIWE details to preserve port & in case removed from mojo interface in future. * Title case * Address PR comment; casing for 'Sign in with Brave Wallet' navigation title. * Address PR comments; rounded rectangle blockie, ViewBuilder overlay modifier, `headline`/`subheadline` fonts, localize domain/message colons, handle action function * Resolve unit test; move String extensions to separate file.
Summary of Changes
SignatureRequestView
which was used for allSignMessageRequest
types into 3 views:SignInWithEthereumView
which is used for displaying Sign In With Ethereum / Brave Wallet requestsSignMessageRequestView
which is the existingSignatureRequestView
, including pilcrow formattingSignMessageRequestContainerView
which is used to switch between the requests when there are multiple. This view also stores the pilcrow formatting & unknown unicode character states so they are preserved when switching between requests.This pull request fixes #7827
Submitter Checklist:
NSLocalizableString()
Test Plan:
Normal flow
No resources
With resources
Errors
Wrong format will fallback to eip-191 sign UI and no error
this is for example wrong statement format
Domain mismatch
Account mismatch
Network mismatch
Regression Test
Verify existing pilcrow & unknown unicode formatting from #6300. Logic is unchanged but views were refactored slightly. Connect to Metamask test dapp and use Safari debugger to submit:
Unknown characters & consecutive new lines
Consecutive new lines & contains pilcrow in message; verify pilcrow in message not replaced
\u{00B6}
in encoded message as it's outside unicode range)Reviewer Checklist:
QA/(Yes|No)
bug
/enhancement