diff --git a/src/apps/webpositive/tabview/TabContainerView.h b/src/apps/webpositive/tabview/TabContainerView.h index 13815d1592..a5a7ee04fa 100644 --- a/src/apps/webpositive/tabview/TabContainerView.h +++ b/src/apps/webpositive/tabview/TabContainerView.h @@ -43,6 +43,7 @@ public: virtual void DoubleClickOutsideTabs() = 0; virtual void UpdateTabScrollability(bool canScrollLeft, bool canScrollRight) = 0; + virtual void SetToolTip(const BString& text) = 0; }; public: diff --git a/src/apps/webpositive/tabview/TabManager.cpp b/src/apps/webpositive/tabview/TabManager.cpp index bdde273b04..743b83916a 100644 --- a/src/apps/webpositive/tabview/TabManager.cpp +++ b/src/apps/webpositive/tabview/TabManager.cpp @@ -307,6 +307,17 @@ public: fTabContainerGroup->EnableScrollButtons(canScrollLeft, canScrollRight); } + virtual void SetToolTip(const BString& text) + { + if (fCurrentToolTip == text) + return; + fCurrentToolTip = text; + fManager->GetTabContainerView()->HideToolTip(); + fManager->GetTabContainerView()->SetToolTip( + reinterpret_cast(NULL)); + fManager->GetTabContainerView()->SetToolTip(fCurrentToolTip.String()); + } + void CloseTab(int32 index); void SetCloseButtonsAvailable(bool available) @@ -333,6 +344,7 @@ private: bool fCloseButtonsAvailable; BMessage* fDoubleClickOutsideTabsMessage; BMessenger fTarget; + BString fCurrentToolTip; }; @@ -502,6 +514,8 @@ WebTabView::MouseMoved(BPoint where, uint32 transit, } } + fController->SetToolTip(Label()); + TabView::MouseMoved(where, transit, dragMessage); } @@ -695,6 +709,13 @@ TabManager::TabGroup() const } +BView* +TabManager::GetTabContainerView() const +{ + return fTabContainerView; +} + + BView* TabManager::ContainerView() const { diff --git a/src/apps/webpositive/tabview/TabManager.h b/src/apps/webpositive/tabview/TabManager.h index 04f86062a2..6558a1620f 100644 --- a/src/apps/webpositive/tabview/TabManager.h +++ b/src/apps/webpositive/tabview/TabManager.h @@ -58,6 +58,7 @@ public: #endif BView* TabGroup() const; + BView* GetTabContainerView() const; BView* ContainerView() const; BView* ViewForTab(int32 tabIndex) const;