| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ | 5 #ifndef UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ |
| 6 #define UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ | 6 #define UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ |
| 7 | 7 |
| 8 #include "base/macros.h" | 8 #include "base/macros.h" |
| 9 #include "ui/views/view.h" | 9 #include "ui/views/view.h" |
| 10 #include "ui/views/view_targeter_delegate.h" | 10 #include "ui/views/view_targeter_delegate.h" |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 213 | 213 |
| 214 // Called when the size constraints of the window change. | 214 // Called when the size constraints of the window change. |
| 215 void SizeConstraintsChanged(); | 215 void SizeConstraintsChanged(); |
| 216 | 216 |
| 217 // Get/Set client_view property. | 217 // Get/Set client_view property. |
| 218 ClientView* client_view() const { return client_view_; } | 218 ClientView* client_view() const { return client_view_; } |
| 219 void set_client_view(ClientView* client_view) { | 219 void set_client_view(ClientView* client_view) { |
| 220 client_view_ = client_view; | 220 client_view_ = client_view; |
| 221 } | 221 } |
| 222 | 222 |
| 223 void set_mirror_client_in_rtl(bool mirror) { mirror_client_in_rtl_ = mirror; } |
| 224 |
| 223 // Layout just the frame view. This is necessary on Windows when non-client | 225 // Layout just the frame view. This is necessary on Windows when non-client |
| 224 // metrics such as the position of the window controls changes independently | 226 // metrics such as the position of the window controls changes independently |
| 225 // of a window resize message. | 227 // of a window resize message. |
| 226 void LayoutFrameView(); | 228 void LayoutFrameView(); |
| 227 | 229 |
| 228 // Set the accessible name of this view. | 230 // Set the accessible name of this view. |
| 229 void SetAccessibleName(const base::string16& name); | 231 void SetAccessibleName(const base::string16& name); |
| 230 | 232 |
| 231 // NonClientView, View overrides: | 233 // NonClientView, View overrides: |
| 232 gfx::Size GetPreferredSize() const override; | 234 gfx::Size GetPreferredSize() const override; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 245 | 247 |
| 246 private: | 248 private: |
| 247 // ViewTargeterDelegate: | 249 // ViewTargeterDelegate: |
| 248 View* TargetForRect(View* root, const gfx::Rect& rect) override; | 250 View* TargetForRect(View* root, const gfx::Rect& rect) override; |
| 249 | 251 |
| 250 // A ClientView object or subclass, responsible for sizing the contents view | 252 // A ClientView object or subclass, responsible for sizing the contents view |
| 251 // of the window, hit testing and perhaps other tasks depending on the | 253 // of the window, hit testing and perhaps other tasks depending on the |
| 252 // implementation. | 254 // implementation. |
| 253 ClientView* client_view_; | 255 ClientView* client_view_; |
| 254 | 256 |
| 257 // Set to false if client_view_ position shouldn't be mirrored in RTL. |
| 258 bool mirror_client_in_rtl_; |
| 259 |
| 255 // The NonClientFrameView that renders the non-client portions of the window. | 260 // The NonClientFrameView that renders the non-client portions of the window. |
| 256 // This object is not owned by the view hierarchy because it can be replaced | 261 // This object is not owned by the view hierarchy because it can be replaced |
| 257 // dynamically as the system settings change. | 262 // dynamically as the system settings change. |
| 258 std::unique_ptr<NonClientFrameView> frame_view_; | 263 std::unique_ptr<NonClientFrameView> frame_view_; |
| 259 | 264 |
| 260 // The overlay view, when non-NULL and visible, takes up the entire widget and | 265 // The overlay view, when non-NULL and visible, takes up the entire widget and |
| 261 // is placed on top of the ClientView and NonClientFrameView. | 266 // is placed on top of the ClientView and NonClientFrameView. |
| 262 View* overlay_view_; | 267 View* overlay_view_; |
| 263 | 268 |
| 264 // The accessible name of this view. | 269 // The accessible name of this view. |
| 265 base::string16 accessible_name_; | 270 base::string16 accessible_name_; |
| 266 | 271 |
| 267 DISALLOW_COPY_AND_ASSIGN(NonClientView); | 272 DISALLOW_COPY_AND_ASSIGN(NonClientView); |
| 268 }; | 273 }; |
| 269 | 274 |
| 270 } // namespace views | 275 } // namespace views |
| 271 | 276 |
| 272 #endif // UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ | 277 #endif // UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ |
| OLD | NEW |