Skip to content

Commit

Permalink
update based on feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
Cramsden committed Jan 22, 2025
1 parent 74e5a71 commit 7fbf234
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 19 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@ final class HomepageDiffableDataSource:
snapshot.appendItems([.header(state.headerState)], toSection: .header)

if let topSites = getTopSites(with: state.topSitesState, and: textColor, numberOfCellsPerRow: numberOfCellsPerRow) {
snapshot.appendSections([.topSites(state.topSitesState.numberOfRows)])
snapshot.appendItems(topSites, toSection: .topSites(state.topSitesState.numberOfRows))
snapshot.appendSections([.topSites(numberOfCellsPerRow)])
snapshot.appendItems(topSites, toSection: .topSites(numberOfCellsPerRow))
}

if let stories = getPocketStories(with: state.pocketState) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,17 +67,15 @@ final class HomepageSectionLayoutProvider {

func createLayoutSection(
for section: HomepageSection,
with traitCollection: UITraitCollection,
size: CGSize
with traitCollection: UITraitCollection
) -> NSCollectionLayoutSection {
switch section {
case .header:
return createHeaderSectionLayout(for: traitCollection)
case .topSites(let numberOfRows):
case .topSites(let numberOfTilesPerRow):
return createTopSitesSectionLayout(
for: traitCollection,
size: size,
numberOfRows: numberOfRows
numberOfTilesPerRow: numberOfTilesPerRow
)
case .pocket:
return createPocketSectionLayout(for: traitCollection)
Expand Down Expand Up @@ -153,16 +151,8 @@ final class HomepageSectionLayoutProvider {

private func createTopSitesSectionLayout(
for traitCollection: UITraitCollection,
size: CGSize,
numberOfRows: Int
numberOfTilesPerRow: Int
) -> NSCollectionLayoutSection {
let numberOfTilesPerRow = TopSitesDimensionCalculator.numberOfTilesPerRow(
availableWidth: size.width,
leadingInset: HomepageSectionLayoutProvider.UX.leadingInset(
traitCollection: traitCollection
)
)

let itemSize = NSCollectionLayoutSize(
widthDimension: .fractionalWidth(1.0 / CGFloat(numberOfTilesPerRow)),
heightDimension: .estimated(UX.TopSitesConstants.cellEstimatedSize.height)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ final class HomepageViewController: UIViewController,
}

func newState(state: HomepageState) {
guard self.homepageState != state else { return }
self.homepageState = state
wallpaperView.wallpaperState = state.wallpaperState
dataSource?.updateSnapshot(state: state, numberOfCellsPerRow: numberOfTilesPerRow(for: availableWidth))
}
Expand Down Expand Up @@ -308,8 +308,7 @@ final class HomepageViewController: UIViewController,

return sectionProvider.createLayoutSection(
for: section,
with: environment.traitCollection,
size: environment.container.contentSize
with: environment.traitCollection
)
}
return layout
Expand Down

0 comments on commit 7fbf234

Please sign in to comment.