Skip to content
This repository was archived by the owner on Feb 24, 2025. It is now read-only.

Commit

Permalink
Merge release/ios/7.157.0 into main
Browse files Browse the repository at this point in the history
  • Loading branch information
daxmobile authored Feb 11, 2025
2 parents 8b848d7 + 5c05dbd commit 4676645
Show file tree
Hide file tree
Showing 18 changed files with 262 additions and 210 deletions.
1 change: 1 addition & 0 deletions .maestro/release_tests/application-lock.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ tags:
- runFlow:
file: ../shared/setup.yaml

- tapOn: "Browsing Menu"
- tapOn: "Settings"
- scrollUntilVisible:
element: "General"
Expand Down
1 change: 1 addition & 0 deletions .maestro/release_tests/autoclear.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ tags:

# Enable autoclear

- tapOn: "Browsing Menu"
- tapOn: "Settings"
- assertVisible: "Default Browser"
- scrollUntilVisible:
Expand Down
3 changes: 2 additions & 1 deletion .maestro/release_tests/emailprotection.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ tags:
- runFlow:
file: ../shared/setup.yaml

- tapOn: Settings
- tapOn: "Browsing Menu"
- tapOn: "Settings"
# Handling two different flows because of the current experiment
# TODO: Remove the unused flow when the experiment is completed.
- runFlow:
Expand Down
3 changes: 3 additions & 0 deletions .maestro/release_tests/password-authentication.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ tags:
file: ../shared/setup.yaml

# Validate passcode requested when accessing passwords for the first time
- tapOn: "Browsing Menu"
- tapOn: "Settings"
- scrollUntilVisible:
element: "Passwords"
Expand All @@ -30,6 +31,7 @@ tags:
- tapOn: "Done"

# Validate initial authentication
- tapOn: "Browsing Menu"
- tapOn: "Settings"
- scrollUntilVisible:
element: "Passwords"
Expand All @@ -54,6 +56,7 @@ tags:

- tapOn: "DuckDuckGO"

- tapOn: "Browsing Menu"
- tapOn: "Settings"
- scrollUntilVisible:
element: "Passwords"
Expand Down
2 changes: 2 additions & 0 deletions .maestro/release_tests/password-management.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ tags:
file: ../shared/setup.yaml

# Validate passcode requested when accessing passwords for the first time
- tapOn: "Browsing Menu"
- tapOn: "Settings"
- scrollUntilVisible:
element: "Passwords"
Expand Down Expand Up @@ -53,6 +54,7 @@ tags:
- tapOn: "Done"

# Validate everything was saved
- tapOn: "Browsing Menu"
- tapOn: "Settings"
- scrollUntilVisible:
element: "Passwords"
Expand Down
2 changes: 1 addition & 1 deletion Configuration/BuildNumber.xcconfig
Original file line number Diff line number Diff line change
@@ -1 +1 @@
CURRENT_PROJECT_VERSION = 0
CURRENT_PROJECT_VERSION = 1
2 changes: 1 addition & 1 deletion Core/FeatureFlag.swift
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ extension FeatureFlag: FeatureFlagDescribing {
case .syncSeamlessAccountSwitching:
return .remoteReleasable(.subfeature(SyncSubfeature.seamlessAccountSwitching))
case .aiChatNewTabPage:
return .internalOnly()
return .enabled
case .testExperiment:
return .remoteReleasable(.subfeature(ExperimentTestSubfeatures.experimentTestAA))
case .maliciousSiteProtection:
Expand Down
12 changes: 8 additions & 4 deletions Core/PixelEvent.swift
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ extension Pixel {
case settingsAutoconsentOff

case browsingMenuOpened
case browsingMenuOpenedNewTabPage
case browsingMenuNewTab
case browsingMenuAddToBookmarks
case browsingMenuEditBookmark
Expand All @@ -95,6 +96,7 @@ extension Pixel {
case browsingMenuFireproof
case browsingMenuAutofill
case browsingMenuAIChat
case browsingMenuListAIChat

case addressBarShare
case addressBarSettings
Expand Down Expand Up @@ -669,7 +671,8 @@ extension Pixel {
case bookmarksMigrationCouldNotPrepareDatabaseOnFailedMigration
case bookmarksMigrationCouldNotRemoveOldStore
case bookmarksMigrationCouldNotPrepareMultipleFavoriteFolders


case bookmarksOpenFromToolbar
case syncSignupDirect
case syncSignupConnect
case syncLogin
Expand Down Expand Up @@ -1060,6 +1063,7 @@ extension Pixel.Event {
case .settingsMoreSearchSettings: return "m_settings_more_search_settings"

case .browsingMenuOpened: return "mb"
case .browsingMenuOpenedNewTabPage: return "m_nav_menu_ntp"
case .browsingMenuNewTab: return "mb_tb"
case .browsingMenuAddToBookmarks: return "mb_abk"
case .browsingMenuEditBookmark: return "mb_ebk"
Expand All @@ -1079,9 +1083,7 @@ extension Pixel.Event {
case .browsingMenuAutofill: return "m_nav_autofill_menu_item_pressed"

case .browsingMenuShare: return "m_browsingmenu_share"
case .browsingMenuAIChat: return "m_aichat_menu_tab_icon"
case .browsingMenuListPrint: return "m_browsing_menu_list_print"

case .addressBarShare: return "m_addressbar_share"
case .addressBarSettings: return "m_addressbar_settings"
case .addressBarCancelPressedOnNTP: return "m_addressbar_cancel_ntp"
Expand Down Expand Up @@ -1628,7 +1630,7 @@ extension Pixel.Event {
return "m_d_bookmarks_migration_could_not_prepare_database_on_failed_migration"
case .bookmarksMigrationCouldNotRemoveOldStore: return "m_d_bookmarks_migration_could_not_remove_old_store"
case .bookmarksMigrationCouldNotPrepareMultipleFavoriteFolders: return "m_d_bookmarks_migration_could_not_prepare_multiple_favorite_folders"
case .bookmarksOpenFromToolbar: return "m_nav_bookmarks"
case .syncSignupDirect: return "m_sync_signup_direct"
case .syncSignupConnect: return "m_sync_signup_connect"
case .syncLogin: return "m_sync_login"
Expand Down Expand Up @@ -1959,6 +1961,8 @@ extension Pixel.Event {
case .openAIChatFromWidgetQuickAction: return "m_aichat-widget-quickaction"
case .openAIChatFromWidgetControlCenter: return "m_aichat-widget-control-center"
case .openAIChatFromWidgetLockScreenComplication: return "m_aichat-widget-lock-screen-complication"
case .browsingMenuAIChat: return "m_aichat_menu_tab_icon"
case .browsingMenuListAIChat: return "m_browsing_menu_list_aichat"

// MARK: Lifecycle
case .appDidTransitionToUnexpectedState: return "m_debug_app-did-transition-to-unexpected-state-4"
Expand Down
15 changes: 15 additions & 0 deletions DuckDuckGo/Assets.xcassets/FireLeftPadded.imageset/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"images" : [
{
"filename" : "fire_2.pdf",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"template-rendering-intent" : "template"
}
}
Binary file not shown.
2 changes: 1 addition & 1 deletion DuckDuckGo/Base.lproj/OmniBar.xib
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
</imageView>
<button contentMode="scaleToFill" horizontalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" reversesTitleShadowWhenHighlighted="YES" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5FH-Ge-Z9a" userLabel="Dismiss Button">
<rect key="frame" x="-5" y="0.0" width="40" height="40"/>
<accessibility key="accessibilityConfiguration" label="Voice Search"/>
<accessibility key="accessibilityConfiguration" label="Cancel"/>
<constraints>
<constraint firstAttribute="width" priority="900" constant="40" id="QWL-gP-sMT"/>
<constraint firstAttribute="height" constant="40" id="hqB-cj-vKd"/>
Expand Down
16 changes: 14 additions & 2 deletions DuckDuckGo/MainViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ class MainViewController: UIViewController {
viewCoordinator.toolbarForwardButton.action = #selector(onForwardPressed)
viewCoordinator.toolbarFireButton.action = #selector(onFirePressed)
viewCoordinator.toolbarPasswordsButton.action = #selector(onPasswordsPressed)
viewCoordinator.toolbarBookmarksButton.action = #selector(onBookmarksPressed)
viewCoordinator.toolbarBookmarksButton.action = #selector(onToolbarBookmarksPressed)

installSwipeTabs()

Expand Down Expand Up @@ -1984,6 +1984,12 @@ extension MainViewController: OmniBarDelegate {

self.presentedMenuButton.setState(.closeImage, animated: true)
tab.didLaunchBrowsingMenu()

if isNewTabPageEnabled && newTabPageViewController != nil {
Pixel.fire(pixel: .browsingMenuOpenedNewTabPage)
} else {
Pixel.fire(pixel: .browsingMenuOpened)
}
}

@objc func onBookmarksPressed() {
Expand All @@ -1993,7 +1999,12 @@ extension MainViewController: OmniBarDelegate {
performCancel()
segueToBookmarks()
}


@objc func onToolbarBookmarksPressed() {
Pixel.fire(pixel: .bookmarksOpenFromToolbar)
onBookmarksPressed()
}

func onBookmarkEdit() {
ViewHighlighter.hideAll()
hideSuggestionTray()
Expand Down Expand Up @@ -2463,6 +2474,7 @@ extension MainViewController: TabDelegate {
}

func tabDidRequestAIChat(tab: TabViewController) {
Pixel.fire(pixel: .browsingMenuListAIChat)
openAIChat()
}

Expand Down
4 changes: 4 additions & 0 deletions DuckDuckGo/OmniBar.swift
Original file line number Diff line number Diff line change
Expand Up @@ -434,6 +434,10 @@ class OmniBar: UIView {
searchStackContainer.setCustomSpacing(13, after: voiceSearchButton)
}

if oldState.showAccessoryButton != state.showAccessoryButton {
refreshOmnibarPaddingConstraintsForAccessoryButton()
}

UIView.animate(withDuration: 0.0) { [weak self] in
self?.layoutIfNeeded()
}
Expand Down
3 changes: 1 addition & 2 deletions DuckDuckGo/SwipeTabsCoordinator.swift
Original file line number Diff line number Diff line change
Expand Up @@ -112,8 +112,7 @@ class SwipeTabsCoordinator: NSObject {
updateLayout()
scrollToCurrent()

let indexPath = IndexPath(row: self.tabsModel.currentIndex, section: 0)
collectionView.reloadItems(at: [indexPath])
collectionView.reloadData()
}

private func updateLayout() {
Expand Down
2 changes: 1 addition & 1 deletion DuckDuckGo/TabSwitcherViewController+MultiSelect.swift
Original file line number Diff line number Diff line change
Expand Up @@ -489,7 +489,7 @@ extension TabSwitcherViewController {
self.addNewTab()
})

barsHandler.fireButton.primaryAction = action(image: "Fire") { [weak self] in
barsHandler.fireButton.primaryAction = action(image: "FireLeftPadded") { [weak self] in
guard let self else { return }
self.burn(sender: self.barsHandler.fireButton)
}
Expand Down
1 change: 0 additions & 1 deletion DuckDuckGo/TabViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -1131,7 +1131,6 @@ class TabViewController: UIViewController {
}

func didLaunchBrowsingMenu() {
Pixel.fire(pixel: .browsingMenuOpened)
DaxDialogs.shared.resumeRegularFlow()
}

Expand Down
Loading

0 comments on commit 4676645

Please sign in to comment.