opaque_browser_frame_view_platform_specific.h revision a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7
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. 4 5#ifndef CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_PLATFORM_SPECIFIC_H_ 6#define CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_PLATFORM_SPECIFIC_H_ 7 8class OpaqueBrowserFrameView; 9class OpaqueBrowserFrameViewLayout; 10 11// Handles platform specific configuration concepts. 12class OpaqueBrowserFrameViewPlatformSpecific { 13 public: 14 virtual ~OpaqueBrowserFrameViewPlatformSpecific() {} 15 16 // Builds an observer for |view| and |layout|. This method returns NULL on 17 // platforms which don't need configuration. 18 static OpaqueBrowserFrameViewPlatformSpecific* Create( 19 OpaqueBrowserFrameView* view, 20 OpaqueBrowserFrameViewLayout* layout); 21 22 // Whether we should show the (minimize,maximize,close) buttons. This can 23 // depend on the current state of the window (e.g., whether it is maximized). 24 // The default implementation always returns true. 25 virtual bool ShouldShowCaptionButtons() const; 26}; 27 28#endif // CHROME_BROWSER_UI_VIEWS_FRAME_OPAQUE_BROWSER_FRAME_VIEW_PLATFORM_SPECIFIC_H_ 29