Disable view source for Developer Tools.
[chromium-blink-merge.git] / chrome / browser / ui / gtk / tabstrip_origin_provider.h
blob51ff6c9f1ab4c08d1c5c245ce446ab866ec4cd43
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_UI_GTK_TABSTRIP_ORIGIN_PROVIDER_H_
6 #define CHROME_BROWSER_UI_GTK_TABSTRIP_ORIGIN_PROVIDER_H_
8 namespace gfx{
9 class Point;
12 // Abstract interface that provides an offset of a widget. Many pieces of the
13 // UI don't need the full BrowserWindowGtk, but just need information about
14 // its position relative to the tabstrip to draw correctly. This interface
15 // exists to make it easier to test piece by piece.
16 class TabstripOriginProvider {
17 public:
18 virtual ~TabstripOriginProvider() { }
20 // Return the origin of the tab strip in coordinates relative to where we
21 // start drawing the background theme image. This is the x coordinate of
22 // the origin of the GdkWindow of widget(), but the y coordinate of the origin
23 // of widget() itself.
24 // Used to help other widgets draw their background relative to the tabstrip.
25 // Should only be called after both the tabstrip and |widget| have been
26 // allocated.
27 virtual gfx::Point GetTabStripOriginForWidget(GtkWidget* widget) = 0;
30 #endif // CHROME_BROWSER_UI_GTK_TABSTRIP_ORIGIN_PROVIDER_H_