| Index: chrome/browser/tabs/tab_strip_model_observer.h
|
| diff --git a/chrome/browser/tabs/tab_strip_model_observer.h b/chrome/browser/tabs/tab_strip_model_observer.h
|
| index b2753508c3a3b43e9da450429fcab804dad735de..5a69eb55b187234ce6d333d19b39e3966599ba2a 100644
|
| --- a/chrome/browser/tabs/tab_strip_model_observer.h
|
| +++ b/chrome/browser/tabs/tab_strip_model_observer.h
|
| @@ -8,6 +8,7 @@
|
|
|
| class TabContentsWrapper;
|
| class TabStripModel;
|
| +class TabStripSelectionModel;
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| //
|
| @@ -61,24 +62,26 @@ class TabStripModelObserver {
|
| // happens.
|
| virtual void TabDeactivated(TabContentsWrapper* contents);
|
|
|
| - // Sent when the selection changes. The previously selected tab is identified
|
| - // by |old_contents| and the newly selected tab by |new_contents|. |index| is
|
| - // the index of |new_contents|. When using multiple selection this may be sent
|
| - // even when the active tab has not changed. For example, if the selection is
|
| - // extended this method is invoked to inform observers the selection has
|
| - // changed, but |old_contents| and |new_contents| are the same. If you only
|
| - // care about when the active tab changes, check for when |old_contents|
|
| - // differs from |new_contents|. |user_gesture| specifies whether or not this
|
| + // Sent when the active tab changes. The previously active tab is identified
|
| + // by |old_contents| and the newly active tab by |new_contents|. |index| is
|
| + // the index of |new_contents|. |user_gesture| specifies whether or not this
|
| // was done by a user input event (e.g. clicking on a tab, keystroke) or as a
|
| // side-effect of some other function.
|
| - //
|
| - // TODO(dpapad): Add TabSelectionChanged method for when the selected tabs
|
| - // change.
|
| + // Note: It is possible for the selection to change while the active tab
|
| + // remains unchanged. For example, control-click may not change the active tab
|
| + // but does change the selection. In this case |ActiveTabChanged| is not sent.
|
| + // If you care about any changes to the selection, override
|
| + // TabSelectionChanged.
|
| virtual void ActiveTabChanged(TabContentsWrapper* old_contents,
|
| TabContentsWrapper* new_contents,
|
| int index,
|
| bool user_gesture);
|
|
|
| + // Sent when the selection changes. More precisely when selected tabs, anchor
|
| + // tab or active tab change. |old_model| is a snapshot of the selection model
|
| + // before the change. See also ActiveTabChanged for details.
|
| + virtual void TabSelectionChanged(const TabStripSelectionModel& old_model);
|
| +
|
| // The specified TabContents at |from_index| was moved to |to_index|.
|
| virtual void TabMoved(TabContentsWrapper* contents,
|
| int from_index,
|
|
|