blob: e87745cf6d625355798e5cef14ddd853da3c704f [file] [log] [blame]
// Copyright (c) 2012 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.
#ifndef CHROME_BROWSER_UI_VIEWS_OMNIBOX_TOUCH_OMNIBOX_POPUP_CONTENTS_VIEW_H_
#define CHROME_BROWSER_UI_VIEWS_OMNIBOX_TOUCH_OMNIBOX_POPUP_CONTENTS_VIEW_H_
#include "base/compiler_specific.h"
#include "chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h"
#include "chrome/browser/ui/views/omnibox/omnibox_result_view.h"
class OmniboxEditModel;
class OmniboxView;
namespace gfx {
class Canvas;
}
namespace views {
class View;
}
class TouchOmniboxResultView : public OmniboxResultView {
public:
TouchOmniboxResultView(OmniboxResultViewModel* model,
int model_index,
LocationBarView* location_bar_view,
const gfx::FontList& font_list);
private:
virtual ~TouchOmniboxResultView();
// OmniboxResultView:
virtual void PaintMatch(gfx::Canvas* canvas,
const AutocompleteMatch& match,
int x) OVERRIDE;
virtual int GetTextHeight() const OVERRIDE;
DISALLOW_COPY_AND_ASSIGN(TouchOmniboxResultView);
};
class TouchOmniboxPopupContentsView
: public OmniboxPopupContentsView {
public:
TouchOmniboxPopupContentsView(const gfx::FontList& font_list,
OmniboxView* omnibox_view,
OmniboxEditModel* edit_model,
LocationBarView* location_bar_view);
virtual ~TouchOmniboxPopupContentsView();
// OmniboxPopupContentsView:
virtual void UpdatePopupAppearance() OVERRIDE;
protected:
// OmniboxPopupContentsView:
virtual void PaintResultViews(gfx::Canvas* canvas) OVERRIDE;
virtual OmniboxResultView* CreateResultView(
OmniboxResultViewModel* model,
int model_index,
const gfx::FontList& font_list) OVERRIDE;
private:
std::vector<View*> GetVisibleChildren();
DISALLOW_COPY_AND_ASSIGN(TouchOmniboxPopupContentsView);
};
#endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_TOUCH_OMNIBOX_POPUP_CONTENTS_VIEW_H_