Background
As part of the ongoing Navigation refresh, we plan to move the History functionality into the Search tab, and remove the "history" view from our main views (tabs).
Requirements
- Show history below search within the Search Tab
- Remove History from bottom tab bar
- History's empty state should show within Search tab if user has no history
- User must be able to clear History
- Adjust spacing of remaining elements to match Figma Do not update icons to use SF icons yet
- Must function on both iPhone and iPad
- Must function in Landscape mode
- At least the last 100 articles must be brought over for the user to see
- Entire history should be retained/cleared as before for future Year in Reviews
- Articles opened from "History" section of Search tab should be logged with an article source of History, not Search
Nice-to-have:
- Upgrade History to Swift UI
Designs
Engineering Notes
Update: We have made initial progress on this with SwiftUI, please build off of branch feature/history-to-search. Old notes below.
We will be updating SearchViewController.swift, which is displayed in the search tab. Note that this same view controller is re-used in these places:
- Explore > search bar search,
- Editor > Insert Link search
- Editor > Edit Link search
- Article > Magnifying glass button
- Article > search bar search (in A/B test)
- In-app web view. Magnifying glass button (Profile > User Page for example)
Extra care must be taken to ensure regressions don't happen in those areas (History is embedded in search ONLY when in search tab).
Would be ideal if we can rebuild the history view in SwiftUI, then embed it's hosting controller within SearchViewController. If this proves too difficult, we can try embedded the existing HistoryViewController in SearchViewController.

