org.chromium.chrome.browser.widget.findinpage.FindToolbarManager Java Examples

The following examples show how to use org.chromium.chrome.browser.widget.findinpage.FindToolbarManager. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: ToolbarManager.java    From delion with Apache License 2.0 4 votes vote down vote up
/**
 * Initialize the manager with the components that had native initialization dependencies.
 * <p>
 * Calling this must occur after the native library have completely loaded.
 *
 * @param tabModelSelector     The selector that handles tab management.
 * @param fullscreenManager    The manager in charge of interacting with the fullscreen feature.
 * @param findToolbarManager   The manager for find in page.
 * @param overviewModeBehavior The overview mode manager.
 * @param layoutDriver         A {@link LayoutManager} instance used to watch for scene changes.
 */
public void initializeWithNative(TabModelSelector tabModelSelector,
        ChromeFullscreenManager fullscreenManager,
        final FindToolbarManager findToolbarManager,
        final OverviewModeBehavior overviewModeBehavior,
        final LayoutManager layoutDriver,
        OnClickListener tabSwitcherClickHandler,
        OnClickListener newTabClickHandler,
        OnClickListener bookmarkClickHandler,
        OnClickListener customTabsBackClickHandler) {
    assert !mInitializedWithNative;
    mTabModelSelector = tabModelSelector;

    mToolbar.getLocationBar().updateVisualsForState();
    mToolbar.getLocationBar().setUrlToPageUrl();
    mToolbar.setFullscreenManager(fullscreenManager);
    mToolbar.setOnTabSwitcherClickHandler(tabSwitcherClickHandler);
    mToolbar.setOnNewTabClickHandler(newTabClickHandler);
    mToolbar.setBookmarkClickHandler(bookmarkClickHandler);
    mToolbar.setCustomTabCloseClickHandler(customTabsBackClickHandler);
    mToolbar.setLayoutUpdateHost(layoutDriver);

    mToolbarModel.initializeWithNative();

    mToolbar.addOnAttachStateChangeListener(new OnAttachStateChangeListener() {
        @Override
        public void onViewDetachedFromWindow(View v) {
            Context context = mToolbar.getContext();
            HomepageManager.getInstance(context).removeListener(mHomepageStateListener);
            mTabModelSelector.removeObserver(mTabModelSelectorObserver);
            for (TabModel model : mTabModelSelector.getModels()) {
                model.removeObserver(mTabModelObserver);
            }
            if (mBookmarkBridge != null) {
                mBookmarkBridge.destroy();
                mBookmarkBridge = null;
            }
            if (mTemplateUrlObserver != null) {
                TemplateUrlService.getInstance().removeObserver(mTemplateUrlObserver);
                mTemplateUrlObserver = null;
            }

            // Remove all previously attached observers from the FindToolbarManager.
            if (mFindToolbarManager != null) {
                for (FindToolbarObserver observer : mFindToolbarObservers) {
                    mFindToolbarManager.removeObserver(observer);
                }
            }

            if (overviewModeBehavior != null) {
                overviewModeBehavior.removeOverviewModeObserver(mOverviewModeObserver);
            }
            if (layoutDriver != null) {
                layoutDriver.removeSceneChangeObserver(mSceneChangeObserver);
            }
        }

        @Override
        public void onViewAttachedToWindow(View v) {
            // As we have only just registered for notifications, any that were sent prior to
            // this may have been missed.
            // Calling refreshSelectedTab in case we missed the initial selection notification.
            refreshSelectedTab();
        }
    });

    mFindToolbarManager = findToolbarManager;

    assert fullscreenManager != null;
    mFullscreenManager = fullscreenManager;

    mNativeLibraryReady = false;

    // Add observers to the FindToolbarManager.
    if (mFindToolbarManager != null) {
        for (FindToolbarObserver observer : mFindToolbarObservers) {
            mFindToolbarManager.addObserver(observer);
        }
    }

    if (overviewModeBehavior != null) {
        overviewModeBehavior.addOverviewModeObserver(mOverviewModeObserver);
    }
    if (layoutDriver != null) layoutDriver.addSceneChangeObserver(mSceneChangeObserver);

    onNativeLibraryReady();
    mInitializedWithNative = true;
}
 
Example #2
Source File: ToolbarManager.java    From AndroidChromium with Apache License 2.0 4 votes vote down vote up
/**
 * Initialize the manager with the components that had native initialization dependencies.
 * <p>
 * Calling this must occur after the native library have completely loaded.
 *
 * @param tabModelSelector           The selector that handles tab management.
 * @param controlsVisibilityDelegate The delegate to handle visibility of browser controls.
 * @param findToolbarManager         The manager for find in page.
 * @param overviewModeBehavior       The overview mode manager.
 * @param layoutDriver               A {@link LayoutManager} instance used to watch for scene
 *                                   changes.
 */
public void initializeWithNative(TabModelSelector tabModelSelector,
        BrowserStateBrowserControlsVisibilityDelegate controlsVisibilityDelegate,
        final FindToolbarManager findToolbarManager,
        final OverviewModeBehavior overviewModeBehavior,
        final LayoutManager layoutDriver,
        OnClickListener tabSwitcherClickHandler,
        OnClickListener newTabClickHandler,
        OnClickListener bookmarkClickHandler,
        OnClickListener customTabsBackClickHandler) {
    assert !mInitializedWithNative;
    mTabModelSelector = tabModelSelector;

    mToolbar.getLocationBar().updateVisualsForState();
    mToolbar.getLocationBar().setUrlToPageUrl();
    mToolbar.setBrowserControlsVisibilityDelegate(controlsVisibilityDelegate);
    mToolbar.setOnTabSwitcherClickHandler(tabSwitcherClickHandler);
    mToolbar.setOnNewTabClickHandler(newTabClickHandler);
    mToolbar.setBookmarkClickHandler(bookmarkClickHandler);
    mToolbar.setCustomTabCloseClickHandler(customTabsBackClickHandler);
    mToolbar.setLayoutUpdateHost(layoutDriver);

    mToolbarModel.initializeWithNative();

    mToolbar.addOnAttachStateChangeListener(new OnAttachStateChangeListener() {
        @Override
        public void onViewDetachedFromWindow(View v) {
            Context context = mToolbar.getContext();
            HomepageManager.getInstance(context).removeListener(mHomepageStateListener);
            mTabModelSelector.removeObserver(mTabModelSelectorObserver);
            for (TabModel model : mTabModelSelector.getModels()) {
                model.removeObserver(mTabModelObserver);
            }
            if (mBookmarkBridge != null) {
                mBookmarkBridge.destroy();
                mBookmarkBridge = null;
            }
            if (mTemplateUrlObserver != null) {
                TemplateUrlService.getInstance().removeObserver(mTemplateUrlObserver);
                mTemplateUrlObserver = null;
            }

            // Remove all previously attached observers from the FindToolbarManager.
            if (mFindToolbarManager != null) {
                for (FindToolbarObserver observer : mFindToolbarObservers) {
                    mFindToolbarManager.removeObserver(observer);
                }
            }

            if (overviewModeBehavior != null) {
                overviewModeBehavior.removeOverviewModeObserver(mOverviewModeObserver);
            }
            if (layoutDriver != null) {
                layoutDriver.removeSceneChangeObserver(mSceneChangeObserver);
            }
        }

        @Override
        public void onViewAttachedToWindow(View v) {
            // As we have only just registered for notifications, any that were sent prior to
            // this may have been missed.
            // Calling refreshSelectedTab in case we missed the initial selection notification.
            refreshSelectedTab();
        }
    });

    mFindToolbarManager = findToolbarManager;

    assert controlsVisibilityDelegate != null;
    mControlsVisibilityDelegate = controlsVisibilityDelegate;

    mNativeLibraryReady = false;

    // Add observers to the FindToolbarManager.
    if (mFindToolbarManager != null) {
        for (FindToolbarObserver observer : mFindToolbarObservers) {
            mFindToolbarManager.addObserver(observer);
        }
    }

    if (overviewModeBehavior != null) {
        overviewModeBehavior.addOverviewModeObserver(mOverviewModeObserver);
    }
    if (layoutDriver != null) layoutDriver.addSceneChangeObserver(mSceneChangeObserver);

    onNativeLibraryReady();
    mInitializedWithNative = true;
}
 
Example #3
Source File: ToolbarManager.java    From 365browser with Apache License 2.0 4 votes vote down vote up
/**
 * Initialize the manager with the components that had native initialization dependencies.
 * <p>
 * Calling this must occur after the native library have completely loaded.
 *
 * @param tabModelSelector           The selector that handles tab management.
 * @param controlsVisibilityDelegate The delegate to handle visibility of browser controls.
 * @param findToolbarManager         The manager for find in page.
 * @param overviewModeBehavior       The overview mode manager.
 * @param layoutDriver               A {@link LayoutManager} instance used to watch for scene
 *                                   changes.
 */
public void initializeWithNative(TabModelSelector tabModelSelector,
        BrowserStateBrowserControlsVisibilityDelegate controlsVisibilityDelegate,
        final FindToolbarManager findToolbarManager,
        final OverviewModeBehavior overviewModeBehavior,
        final LayoutManager layoutDriver,
        OnClickListener tabSwitcherClickHandler,
        OnClickListener newTabClickHandler,
        OnClickListener bookmarkClickHandler,
        OnClickListener customTabsBackClickHandler) {
    assert !mInitializedWithNative;
    mTabModelSelector = tabModelSelector;

    mToolbar.getLocationBar().updateVisualsForState();
    mToolbar.getLocationBar().setUrlToPageUrl();
    mToolbar.setBrowserControlsVisibilityDelegate(controlsVisibilityDelegate);
    mToolbar.setOnTabSwitcherClickHandler(tabSwitcherClickHandler);
    mToolbar.setOnNewTabClickHandler(newTabClickHandler);
    mToolbar.setBookmarkClickHandler(bookmarkClickHandler);
    mToolbar.setCustomTabCloseClickHandler(customTabsBackClickHandler);
    mToolbar.setLayoutUpdateHost(layoutDriver);

    mToolbarModel.initializeWithNative();

    mToolbar.addOnAttachStateChangeListener(new OnAttachStateChangeListener() {
        @Override
        public void onViewDetachedFromWindow(View v) {
            Context context = mToolbar.getContext();
            HomepageManager.getInstance(context).removeListener(mHomepageStateListener);
            mTabModelSelector.removeObserver(mTabModelSelectorObserver);
            for (TabModel model : mTabModelSelector.getModels()) {
                model.removeObserver(mTabModelObserver);
            }
            if (mBookmarkBridge != null) {
                mBookmarkBridge.destroy();
                mBookmarkBridge = null;
            }
            if (mTemplateUrlObserver != null) {
                TemplateUrlService.getInstance().removeObserver(mTemplateUrlObserver);
                mTemplateUrlObserver = null;
            }

            // Remove all previously attached observers from the FindToolbarManager.
            if (mFindToolbarManager != null) {
                for (FindToolbarObserver observer : mFindToolbarObservers) {
                    mFindToolbarManager.removeObserver(observer);
                }
            }

            if (overviewModeBehavior != null) {
                overviewModeBehavior.removeOverviewModeObserver(mOverviewModeObserver);
            }
            if (layoutDriver != null) {
                layoutDriver.removeSceneChangeObserver(mSceneChangeObserver);
            }
        }

        @Override
        public void onViewAttachedToWindow(View v) {
            // As we have only just registered for notifications, any that were sent prior to
            // this may have been missed.
            // Calling refreshSelectedTab in case we missed the initial selection notification.
            refreshSelectedTab();
        }
    });

    mFindToolbarManager = findToolbarManager;

    assert controlsVisibilityDelegate != null;
    mControlsVisibilityDelegate = controlsVisibilityDelegate;

    mNativeLibraryReady = false;

    // Add observers to the FindToolbarManager.
    if (mFindToolbarManager != null) {
        for (FindToolbarObserver observer : mFindToolbarObservers) {
            mFindToolbarManager.addObserver(observer);
        }
    }

    if (overviewModeBehavior != null) {
        overviewModeBehavior.addOverviewModeObserver(mOverviewModeObserver);
    }
    if (layoutDriver != null) layoutDriver.addSceneChangeObserver(mSceneChangeObserver);

    onNativeLibraryReady();
    mInitializedWithNative = true;
}