Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Unified Diff: ios/chrome/browser/ui/ntp/new_tab_page_view.mm

Issue 2785893003: [ios clean] Add placeholder for NTP bookmarks, chrome home and open tabs. (Closed)
Patch Set: Comment nit Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ios/chrome/browser/ui/ntp/new_tab_page_view.mm
diff --git a/ios/chrome/browser/ui/ntp/new_tab_page_view.mm b/ios/chrome/browser/ui/ntp/new_tab_page_view.mm
index 7f9f7ab87e63cfe169c902b229e1c613ae416218..5245ee5894f6f8217b6a0f9fed9161bb52973cc3 100644
--- a/ios/chrome/browser/ui/ntp/new_tab_page_view.mm
+++ b/ios/chrome/browser/ui/ntp/new_tab_page_view.mm
@@ -80,11 +80,15 @@
[self.scrollView setContentOffset:point animated:NO];
}
- // Trigger a layout. The |-layoutIfNeeded| call is required because sometimes
- // |-layoutSubviews| is not successfully triggered when |-setNeedsLayout| is
- // called after frame changes due to autoresizing masks.
- [self setNeedsLayout];
- [self layoutIfNeeded];
+ // This should never be needed in autolayout.
+ if (self.translatesAutoresizingMaskIntoConstraints) {
+ // Trigger a layout. The |-layoutIfNeeded| call is required because
+ // sometimes |-layoutSubviews| is not successfully triggered when
+ // |-setNeedsLayout| is called after frame changes due to autoresizing
+ // masks.
+ [self setNeedsLayout];
+ [self layoutIfNeeded];
+ }
}
- (void)layoutSubviews {
@@ -102,6 +106,14 @@
CGRectGetMinX(self.bounds), CGRectGetMinY(self.bounds),
CGRectGetWidth(self.bounds), CGRectGetMinY(self.tabBar.frame));
}
+
+ // When using a new_tab_page_view in autolayout -setFrame is never called,
+ // which means all the logic to keep the selected scroll index set is never
+ // called. Rather than refactor away all of this to support ios/clean, just
+ // make sure -setFrame is called when loaded in autolayout.
+ if (!self.translatesAutoresizingMaskIntoConstraints) {
+ [self setFrame:self.frame];
+ }
}
- (void)updateScrollViewContentSize {

Powered by Google App Engine
This is Rietveld 408576698