Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / xwalk / runtime / browser / ui / xwalk_views_delegate.h
1 // Copyright (c) 2013 Intel Corporation. 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 XWALK_RUNTIME_BROWSER_UI_XWALK_VIEWS_DELEGATE_H_
6 #define XWALK_RUNTIME_BROWSER_UI_XWALK_VIEWS_DELEGATE_H_
7
8 #if defined(USE_AURA)
9
10 #include <string>
11 #include "ui/views/views_delegate.h"
12
13 namespace xwalk {
14
15 // Views delegate implementation for Crosswalk. Controls application-wide
16 // aspects of Views toolkit system.
17 class XWalkViewsDelegate : public views::ViewsDelegate {
18  public:
19   XWalkViewsDelegate();
20   virtual ~XWalkViewsDelegate();
21
22   // views::ViewsDelegate implementation.
23   void SaveWindowPlacement(const views::Widget* widget,
24                            const std::string& window_name,
25                            const gfx::Rect& bounds,
26                            ui::WindowShowState show_state) override {}
27   bool GetSavedWindowPlacement(
28       const views::Widget* widget,
29       const std::string& window_name,
30       gfx::Rect* bounds,
31       ui::WindowShowState* show_state) const override;
32   void NotifyAccessibilityEvent(
33       views::View* view,
34       ui::AXEvent event_type) override {}
35   void NotifyMenuItemFocused(const base::string16& menu_name,
36                              const base::string16& menu_item_name,
37                              int item_index,
38                              int item_count,
39                              bool has_submenu) override {}
40   views::NonClientFrameView* CreateDefaultNonClientFrameView(
41       views::Widget* widget) override;
42   void AddRef() override {}
43   void ReleaseRef() override {}
44   content::WebContents* CreateWebContents(
45       content::BrowserContext* browser_context,
46       content::SiteInstance* site_instance) override;
47   void OnBeforeWidgetInit(
48       views::Widget::InitParams* params,
49       views::internal::NativeWidgetDelegate* delegate) override;
50   base::TimeDelta GetDefaultTextfieldObscuredRevealDuration() override;
51 #if defined(OS_WIN)
52   // Retrieves the default window icon to use for windows if none is specified.
53   HICON GetDefaultWindowIcon() const override;
54   bool IsWindowInMetro(gfx::NativeWindow window) const override {
55     return false;
56   }
57 #elif defined(OS_LINUX) && !defined(OS_CHROMEOS)
58   gfx::ImageSkia* GetDefaultWindowIcon() const override;
59 #endif
60
61  private:
62   DISALLOW_COPY_AND_ASSIGN(XWalkViewsDelegate);
63 };
64
65 }  // namespace xwalk
66
67 #endif  // defined(USE_AURA)
68
69 #endif  // XWALK_RUNTIME_BROWSER_UI_XWALK_VIEWS_DELEGATE_H_