[Metrics] Make MetricsStateManager take a callback param to check if UMA is enabled.
[chromium-blink-merge.git] / chrome / browser / ui / views / frame / opaque_browser_frame_view_linux.h
blobab84a74c542cc1f20d117c4659bde1f6e2f97c93
1 // Copyright (c) 2013 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_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LINUX_H_
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LINUX_H_
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "chrome/browser/ui/views/frame/opaque_browser_frame_view_platform_specific.h"
11 #include "ui/views/linux_ui/window_button_order_observer.h"
13 class ThemeService;
15 // Plumbs button change events from views::LinuxUI to
16 // OpaqueBrowserFrameViewLayout.
17 class OpaqueBrowserFrameViewLinux
18 : public OpaqueBrowserFrameViewPlatformSpecific,
19 public views::WindowButtonOrderObserver {
20 public:
21 OpaqueBrowserFrameViewLinux(
22 OpaqueBrowserFrameView* view,
23 OpaqueBrowserFrameViewLayout* layout,
24 Profile* profile);
25 virtual ~OpaqueBrowserFrameViewLinux();
27 // Overridden from OpaqueBrowserFrameViewPlatformSpecific:
28 virtual bool IsUsingSystemTheme() OVERRIDE;
30 // Overridden from views::WindowButtonOrderObserver:
31 virtual void OnWindowButtonOrderingChange(
32 const std::vector<views::FrameButton>& leading_buttons,
33 const std::vector<views::FrameButton>& trailing_buttons) OVERRIDE;
35 private:
36 OpaqueBrowserFrameView* view_;
37 OpaqueBrowserFrameViewLayout* layout_;
39 ThemeService* theme_service_;
41 DISALLOW_COPY_AND_ASSIGN(OpaqueBrowserFrameViewLinux);
44 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_LINUX_H_