#ifndef ASH_SHELF_SHELF_TOOLTIP_DELEGATE_H_
#define ASH_SHELF_SHELF_TOOLTIP_DELEGATE_H_
#include <string>
#include <vector>
#include "ash/ash_export.h"
namespace gfx {
class Point;
}
namespace ui {
class Event;
}
namespace views {
class View;
}
namespace aura {
class Window;
}
namespace ash {
class ASH_EXPORT ShelfTooltipDelegate {
public:
ShelfTooltipDelegate() = default;
virtual ~ShelfTooltipDelegate() = default;
virtual bool ShouldShowTooltipForView(const views::View* view) const = 0;
virtual bool ShouldHideTooltip(const gfx::Point& cursor_point) const = 0;
virtual const std::vector<aura::Window*> GetOpenWindowsForView(
views::View* view) = 0;
virtual std::u16string GetTitleForView(const views::View* view) const = 0;
virtual views::View* GetViewForEvent(const ui::Event& event) = 0;
};
}
#endif