luxlabs header browser preview


@class UIViewController, UIBarButtonItem, CompletionListDismissalAnalyticsReporter, NSString, NSMutableSet, UIImage, CompletionListTableViewController, NSTimer, CompletionDetailViewController, UIButton, UniversalSearchSession, UIView, UniversalSearchFirstTimeExperienceViewController, BrowserController, PopoverCatalogViewController, CompletionList, UIColor, SFStartPageViewController, UnifiedField, StartPageController, UIPopoverPresentationController;
@protocol SFStartPageScrollObserver, _SFNavigationBarCommon, LoadProgressObserver, CompletionItem, CatalogViewControllerDelegate;

@interface CatalogViewController : AbstractCatalogViewController <SFStartPageDelegate, CompletionItemActionHandler, CompletionListDelegate, UITableViewDataSource, UITableViewDelegate, UnifiedFieldDelegate, UIPopoverPresentationControllerDelegate, SKStoreProductViewControllerDelegatePrivate, UniversalSearchFeedbackDelegate, UniversalSearchFirstTimeExperienceViewControllerDelegate, TabSnapshotContentProvider> {
    BrowserController *_browserController;
    PopoverCatalogViewController *_popoverCatalogViewController;
    BOOL _transitioningToNewSizeClass;
    UIViewController *_completionDetailViewController;
    UIViewController *_completionDetailViewControllerBeingPresented;
    BOOL _startPageGeometryIsFrozen;
    BOOL _startPageGeometryWasFrozenDuringLastLayout;
    UIButton *_sidebarButton;
    unsigned long long _lastTopHitMatchLength;
    BOOL _dismissingPopover;
    CompletionDetailViewController *_detailViewController;
    BOOL _completionTableIsReloading;
    double _lastScrollOffset;
    struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } _keyboardFrame;
    NSMutableSet *_seenVisibleResults;
    BOOL _feedbackIsBeingGenerated;
    BOOL _lastFeedbackSentWasScrolling;
    BOOL _hasKeyboardBeenDismissedForThisQuery;
    BOOL _waitingOnFirstCompletionListUpdateForTelemetry;
    struct UIEdgeInsets { double top; double left; double bottom; double right; } _contentOverlayInsets;
    BOOL _lastInputWasSearchTextCompletion;
    BOOL _voiceSearchWasInProgress;
    BOOL _hasPendingVoiceSearchUpdate;
    NSTimer *_pendingVoiceSearchTimer;
    CompletionListDismissalAnalyticsReporter *_completionDismissalReporter;
    NSTimer *_timerForClearingCompletionListSearchSuggestionCache;
    BOOL _nextSnapshotRequiresScreenUpdates;
    UIBarButtonItem *_cancelBarButton;
    CompletionListTableViewController *_completionsViewController;
    SFStartPageViewController *_startPageViewController;
    UniversalSearchFirstTimeExperienceViewController *_universalSearchFirstTimeExperienceViewController;
}

@property (retain, nonatomic) id<CompletionItem> lastTopHitMatch;
@property (retain, nonatomic) UniversalSearchSession *parsecSearchSession;
@property (retain, nonatomic) UnifiedField *textField;
@property (retain, nonatomic) CompletionList *completionList;
@property (nonatomic, getter=isContentBorrowed) BOOL contentBorrowed;
@property (weak, nonatomic) id<CatalogViewControllerDelegate> delegate;
@property (weak, nonatomic) id<LoadProgressObserver> loadProgressObserver;
@property (readonly, nonatomic) BOOL isShowingUniversalSearchFirstTimeExperience;
@property (readonly, nonatomic) BOOL isShowingUniversalSearchPrivacyDetails;
@property (retain, nonatomic) id<_SFNavigationBarCommon> navigationBar;
@property (nonatomic) struct UIEdgeInsets { double top; double left; double bottom; double right; } obscuredInsets;
@property (readonly, nonatomic) BOOL popoverIsShowing;
@property (readonly, nonatomic) BOOL startPageDidAppearAtLeastOnce;
@property (retain, nonatomic) NSString *queryString;
@property (nonatomic) BOOL usesPopoverStyleForFavorites;
@property (readonly, nonatomic) UIPopoverPresentationController *popoverPresentationController;
@property (readonly, nonatomic) StartPageController *startPageController;
@property (retain, nonatomic) id<SFStartPageScrollObserver> startPageScrollObserver;
@property (copy, nonatomic) NSString *libraryType;
@property (readonly, nonatomic) double chromelessScrollDistance;
@property (readonly, nonatomic) UIButton *sidebarButton;
@property (readonly, nonatomic) double navigationBarHeight;
@property (readonly, nonatomic) BOOL completionDetailIsPresented;
@property (nonatomic, getter=isShowingCompletions) BOOL showingCompletions;
@property (readonly, nonatomic, getter=isShowingCompletionDetail) BOOL showingCompletionDetail;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) UIImage *snapshotContentImage;
@property (readonly, nonatomic) UIView *snapshotContentView;
@property (readonly, nonatomic) UIColor *snapshotBackgroundColor;
@property (readonly, nonatomic) BOOL snapshotContentShouldUnderlapTopBackdrop;

- (id)universalSearchFirstTimeExperienceViewController;
- (void)cancelFavoritesGestures;
- (void)didGainOwnershipOfCompletionsViewController;
- (id)browserController;
- (double)requiredContentWidth;
- (void)_updatePersonalisationDataForDonation:(id)a0 forPosition:(unsigned long long)a1;
- (void)viewSafeAreaInsetsDidChange;
- (id)startPageViewController;
- (id)completionsViewController;
- (void)reloadNavigationItemAnimated:(BOOL)a0;
- (void)didGainOwnershipOfUniversalSearchFirstTimeExperienceViewController;
- (id)tableView:(id)a0 viewForHeaderInSection:(long long)a1;
- (double)maxContentHeight;
- (void)_cancelClearingCompletionListSearchSuggestionsCache;
- (void)unifiedFieldReflectedItemDidChange:(id)a0;
- (void)_contentSizeCategoryDidChange:(id)a0;
- (long long)numberOfSectionsInTableView:(id)a0;
- (BOOL)tableView:(id)a0 shouldDrawTopSeparatorForSection:(long long)a1;
- (BOOL)_shouldTakeOwnershipOfCompletionsViewController;
- (void)_updateVisibilityForCompletionListTableView:(id)a0;
- (id)tableView:(id)a0 cellForRowAtIndexPath:(id)a1;
- (void)dealloc;
- (long long)tableView:(id)a0 numberOfRowsInSection:(long long)a1;
- (void)completionListDidUpdate:(id)a0 forQuery:(id)a1;
- (void)relinquishOwnershipOfCompletionsViewControllerFromCurrentParent;
- (void)_presentPopoverWithViewController:(id)a0;
- (long long)_relevanceForItem:(id)a0;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })snapshotContentRectInBounds:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0;
- (void)unifiedField:(id)a0 didEngageWithQuerySuggestion:(id)a1 forQueryString:(id)a2;
- (void)completionList:(id)a0 didFetchFavicon:(id)a1 forRowAtIndexPath:(id)a2;
- (void)traitCollectionDidChange:(id)a0;
- (void)viewWillLayoutSubviews;
- (void)startPageUpdatePolicyDidChange;
- (void)search:(id)a0;
- (void)viewDidLayoutSubviews;
- (void)_keyboardDidShow:(id)a0;
- (BOOL)unifiedField:(id)a0 shouldWaitForTopHitForText:(id)a1;
- (void)_commitVoiceSearchIfNecessary;
- (void)_setShowingCompletions:(BOOL)a0 popoverDismissalReason:(long long)a1 completionHandler:(id /* block */)a2;
- (void)textFieldDidBeginEditing:(id)a0;
- (void)tableView:(id)a0 didSelectRowAtIndexPath:(id)a1;
- (void)completionList:(id)a0 didRemoveItem:(id)a1 wasLastInSection:(BOOL)a2 atIndexPath:(id)a3 withCompletionHandler:(id /* block */)a4;
- (void)unifiedFieldVoiceSearchStateDidChange:(id)a0;
- (void)_setContentOverlayInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a0;
- (void)startPageViewController:(id)a0 willPresentCustomizationViewController:(id)a1;
- (void)didCancelUniversalSearchFirstTimeExperienceViewController:(id)a0;
- (void)_updateAlternateContentViewController;
- (id)_cancelBarButtonItem;
- (BOOL)tableView:(id)a0 shouldDrawBottomSeparatorForSection:(long long)a1;
- (void)startPageViewControllerDidScroll:(id)a0 animated:(BOOL)a1;
- (void)_ensureCompletionListAndParsecSession;
- (void)viewDidLoad;
- (void)_keyboardWillShow:(id)a0;
- (void)unifiedFieldExternalSearchDidEnd:(id)a0;
- (void)beginTransitionToNewSizeClassWithState:(id)a0;
- (double)tableView:(id)a0 heightForHeaderInSection:(long long)a1;
- (BOOL)checkAndResetIfNextSnapshotRequiresScreenUpdates;
- (void)_deselectCompletionsViewControllerSelectedRow;
- (void)dismissCompletionsForSizeClassTransition;
- (void)_dismissUniversalSearchFirstTimeExperience:(id)a0 dismissalReason:(long long)a1 completionHandler:(id /* block */)a2;
- (void)resetPrivateBrowsingExplanation;
- (void)_beginParsecSessionIfNeeded;
- (id)tableView:(id)a0 titleForHeaderInSection:(long long)a1;
- (void)presentDetail:(id)a0;
- (void)didGainOwnershipOfStartPageViewController;
- (long long)startPageCustomizationPolicy;
- (void)updatePreferredContentSize;
- (void)_dismissUniversalSearchFirstTimeExperience:(id)a0 dismissalReason:(long long)a1;
- (void)unifiedField:(id)a0 moveCompletionSelectionBySectionOffset:(long long)a1;
- (void)textFieldDidEndEditing:(id)a0;
- (void)updateQuerySuggestionsFromResponse:(id)a0;
- (void)findOnPage;
- (void)goToURL:(id)a0;
- (void)_presentStagedCompletionDetailViewControllerAnimated:(BOOL)a0;
- (void)unifiedField:(id)a0 didEndEditingWithSearch:(id)a1;
- (void)cancelUnifiedFieldSearch;
- (id)unifiedField:(id)a0 topHitForText:(id)a1;
- (id)childViewControllerForStatusBarStyle;
- (void)stopCompleting;
- (void)feedbackButtonWasTappedWithProblemURL:(id)a0;
- (void)_updateStartPageSafeAreaInsets;
- (void)switchToTabWithUUID:(id)a0 inWindowWithUUID:(id)a1 forTabGroupWithUUID:(id)a2;
- (void)completionListDidRestoreCachedCompletions:(id)a0;
- (void)popoverPresentationController:(id)a0 willRepositionPopoverToRect:(inout struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } *)a1 inView:(inout id *)a2;
- (void)_textFieldEditingChanged;
- (void)firstTimeExperienceContinueButtonPressed;
- (id)unifiedTextField;
- (void)_keyboardWillHide:(id)a0;
- (void)didUpdateObscuredInsetsForSizeTransition;
- (id)completionsViewControllerIfLoaded;
- (void)endTransitionToNewSizeClassWithState:(id)a0;
- (void)_logTopHitWasChosen:(BOOL)a0;
- (void)_popoverDismissCompletion;
- (void)updateStartPageHidesEmptyRootViewNavigationBar;
- (void)unifiedFieldSelectCompletionItemIfAvailable:(id)a0;
- (id)tableView:(id)a0 trailingSwipeActionsConfigurationForRowAtIndexPath:(id)a1;
- (void)presentationControllerWillDismiss:(id)a0;
- (void)resume;
- (void)didInteractWithUniversalSearchFirstTimeExperienceViewController:(id)a0;
- (BOOL)_showCompletionsInPopover;
- (void)test_simulateTyping:(id)a0 inGroup:(id)a1 startIndex:(unsigned long long)a2;
- (id)startPageViewController:(id)a0 leadingBarItemsForSection:(id)a1;
- (void)goToURLString:(id)a0;
- (void)_generateVisibleResultsFeedbackForEvent:(long long)a0;
- (void)_presentPopoverWithViewController:(id)a0 completionHandler:(id /* block */)a1;
- (void)_updateBackgroundColorWhenShowingFavoritesNavigationController;
- (BOOL)textFieldShouldClear:(id)a0;
- (void)resetFavorites;
- (void)completionList:(id)a0 topHitDidBecomeReadyForString:(id)a1;
- (BOOL)_completionsViewControllerIsTranslucent;
- (void)updateStartPageCustomizationPolicy;
- (void)unifiedField:(id)a0 didEndEditingWithParsecTopHit:(id)a1;
- (void)clearCachedTabCompletionData;
- (void)showUniversalSearchFirstTimeExperienceIfNotShowing;
- (id)_completionItemAtIndexPath:(id)a0;
- (void)_invalidatePendingVoiceSearchTimer;
- (void).cxx_destruct;
- (void)updateStartPageTopSpacing;
- (void)_reloadCompletionTable;
- (void)_dismissPopoverAnimated:(BOOL)a0 dismissalReason:(long long)a1 completionHandler:(id /* block */)a2;
- (void)_clearParsecSearchSession;
- (void)unifiedField:(id)a0 didEndEditingWithAddress:(id)a1;
- (void)_selectedCompletionItemAtIndexPath:(id)a0;
- (void)relinquishOwnershipOfUniversalSearchFirstTimeExperienceViewControllerFromCurrentParent;
- (void)unifiedField:(id)a0 focusNextKeyView:(BOOL)a1;
- (void)startPageViewControllerDidAppear:(id)a0;
- (long long)_relevanceForResult:(id)a0;
- (double)startPageViewControllerTopPadding:(id)a0;
- (void)updateStartPageControlTintColor;
- (void)dismissWebSearchTipIfNeeded;
- (void)viewDidAppear:(BOOL)a0;
- (void)startPageControllerDidCompleteDismissGesture:(id)a0;
- (id)startPageViewControllerTitleForRootView:(id)a0;
- (void)setShowingCompletions:(BOOL)a0 completionHandler:(id /* block */)a1;
- (id)initWithDelegate:(id)a0 browserController:(id)a1;
- (void)toggleVoiceSearch;
- (void)dismissCompletionDetailWindowAndResumeEditingIfNeeded:(BOOL)a0 completionHandler:(id /* block */)a1;
- (void)_updateVoiceSearchState;
- (void)startPageViewControllerDidUpdateContent:(id)a0;
- (void)viewWillTransitionToSize:(struct CGSize { double x0; double x1; })a0 withTransitionCoordinator:(id)a1;
- (BOOL)unifiedFieldShouldMoveCompletionSelection:(id)a0;
- (BOOL)startPageViewControllerShouldDeferLoadingContentUntilKeyboardAnimatesIn:(id)a0;
- (void)unifiedFieldDidUpdateUserTypedText:(id)a0 forQueryString:(id)a1 didUpdateSuggestions:(BOOL)a2;
- (void)tableViewDidFinishReload:(id)a0;
- (long long)adaptivePresentationStyleForPresentationController:(id)a0 traitCollection:(id)a1;
- (void)updateTabGroupHeading;
- (void)unifiedField:(id)a0 willUpdateUserTypedText:(id)a1 toText:(id)a2;
- (void)searchTextCompletionAccessoryButtonTappedForCompletionItem:(id)a0;
- (void)startPageControllerDidCompleteUnfocusGesture:(id)a0;
- (void)unifiedFieldMakeWindowKey:(id)a0;
- (void)_parsecEnabledDidChange:(id)a0;
- (void)resumeSearchWithQuery:(id)a0;
- (void)productViewController:(id)a0 didFinishWithResult:(long long)a1;
- (long long)_completionListQueryID;
- (BOOL)textFieldShouldBeginEditing:(id)a0;
- (void)unifiedFieldShouldPasteAndNavigate:(id)a0;
- (void)unifiedField:(id)a0 moveCompletionSelectionByRowOffset:(long long)a1;
- (void)didTogglePrivateBrowsing;
- (void)willMoveToParentViewController:(id)a0;
- (void)_showStartPageInPopover;
- (void)scrollViewDidScroll:(id)a0;
- (void)_logQueryEngagement;
- (void)openURLInExternalApplication:(id)a0;
- (BOOL)_shouldUsePopoverForCompletions;
- (BOOL)_shouldPresentCompletionDetailViewControllerAfterSizeTransition:(id)a0;
- (void)_clearCompletionListSearchSuggestionsCacheSoon;
- (void)displayPopover;
- (id)startPageViewController:(id)a0 trailingBarItemsForSection:(id)a1;
- (void)_showCompletionsPopoverIfNecessary;
- (void)willUpdateObscuredInsetsForSizeTransition;

@end