// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.tabmodel;
import org.chromium.chrome.browser.tab.Tab;
/**
* Observes changes to the tab model selector.
*/
public interface TabModelSelectorObserver {
/**
* Called whenever the {@link TabModel} has changed.
*/
void onChange();
/**
* Called when a new tab is created.
*/
void onNewTabCreated(Tab tab);
/**
* Called when a different tab model has been selected.
* @param newModel The newly selected tab model.
* @param oldModel The previously selected tab model.
*/
void onTabModelSelected(TabModel newModel, TabModel oldModel);
/**
* Called when the tab state has been initialized and the current tab count and tab model states
* are reliable.
*/
void onTabStateInitialized();
}