Skip to content

Refactor FXIOS-15074 ⁃ [Tracking Protection] Use native navigation bar#33067

Open
dicarobinho wants to merge 2 commits intomainfrom
afarcasanu/fxios_15074_32449_tracking_protection_nav_header
Open

Refactor FXIOS-15074 ⁃ [Tracking Protection] Use native navigation bar#33067
dicarobinho wants to merge 2 commits intomainfrom
afarcasanu/fxios_15074_32449_tracking_protection_nav_header

Conversation

@dicarobinho
Copy link
Copy Markdown
Collaborator

📜 Tickets

Jira ticket
Github issue

💡 Description

Removed NavigationHeader component
Using native navigation bar for Tracking Protection screens

🎥 Demos

ScreenRecording_04-08-2026.15-00-42_1.mp4
Before After
Demo

📝 Checklist

  • I filled in the ticket numbers and a description of my work
  • I updated the PR name to follow our PR naming guidelines
  • I ensured unit tests pass and wrote tests for new code
  • If working on UI, I checked and implemented accessibility (Dynamic Text and VoiceOver)
  • If adding telemetry, I read the data stewardship requirements and will request a data review
  • If adding or modifying strings, I read the guidelines and will request a string review from l10n
  • If needed, I updated documentation and added comments to complex code

@dicarobinho dicarobinho requested a review from thatswinnie April 14, 2026 06:41
@dicarobinho dicarobinho marked this pull request as ready for review April 14, 2026 06:41
@dicarobinho dicarobinho requested a review from a team as a code owner April 14, 2026 06:41
@mobiletest-ci-bot
Copy link
Copy Markdown

Messages
📖 Project coverage: 40.99%

🧩 Neat Piece

This PR changes 513 lines. It's a substantial update,
but still review-friendly if there’s a clear description. Thanks for keeping things moving! 🚀

🌟 Documentation star

Great documentation touches. Future you says thank you! 📚

✅ New file code coverage

No new file detected so code coverage gate wasn't ran.

Client.app: Coverage: 39.45

File Coverage
TrackingProtectionViewController.swift 11.44% ⚠️
TrackingProtectionDetailsViewController.swift 0.0% ⚠️
BlockedTrackersTableController.swift 5.65% ⚠️
BlockedTrackersLearnMoreViewController.swift 89.92%
CertificatesViewController.swift 0.0% ⚠️

Generated by 🚫 Danger Swift against d24b574

Copy link
Copy Markdown
Collaborator

@thatswinnie thatswinnie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The sizes of the close button is different - can we adjust this so both are the same?

Image Image

view.accessibilityIdentifier = A11yIds.containerView
}

private lazy var closeButton: UIButton = .build {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should use CloseButton from our component library here instead of configuring a UIButton ourselves.

// MARK: Navigation View
private let navigationView: NavigationHeaderView = .build { header in
header.accessibilityIdentifier = AccessibilityIdentifiers.EnhancedTrackingProtection.BlockedTrackers.headerView
private lazy var closeButton: UIButton = .build {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here: we should use CloseButton from our component library here.

tableView.separatorInset = .zero
}

private lazy var closeButton: UIButton = .build {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here: we should use CloseButton from our component library here.

view.accessibilityIdentifier = AccessibilityIdentifiers.EnhancedTrackingProtection.DetailsScreen.verifiedByView
}

private lazy var closeButton: UIButton = .build {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here: we should use CloseButton from our component library here.

@dicarobinho
Copy link
Copy Markdown
Collaborator Author

Using custom closeButton library component combined with native navigationBar will not have the best results. On the other hand, I don't see a way to resize the native navigationItem.rightBarButtonItem.

Important note: for the main Tracking Protection screen, we are using a custom navigationBar thats why closeButton look different than the others.

ScreenRecording_04-16-2026.10-11-49_1.MP4

@dicarobinho dicarobinho requested a review from thatswinnie April 16, 2026 09:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants