Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Side by Side Diff: ui/views/window/non_client_view.h

Issue 1773393002: Address some bubble clipping issues (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: no aa Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ui/views/view.cc ('k') | ui/views/window/non_client_view.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 int resize_corner_width, 58 int resize_corner_width,
59 bool can_resize); 59 bool can_resize);
60 60
61 // Returns the bounds (in this View's parent's coordinates) that the client 61 // Returns the bounds (in this View's parent's coordinates) that the client
62 // view should be laid out within. 62 // view should be laid out within.
63 virtual gfx::Rect GetBoundsForClientView() const = 0; 63 virtual gfx::Rect GetBoundsForClientView() const = 0;
64 64
65 virtual gfx::Rect GetWindowBoundsForClientBounds( 65 virtual gfx::Rect GetWindowBoundsForClientBounds(
66 const gfx::Rect& client_bounds) const = 0; 66 const gfx::Rect& client_bounds) const = 0;
67 67
68 // Gets the clip mask (in this View's parent's coordinates) that should be
69 // applied to the client view. Returns false if no special clip should be
70 // used.
71 virtual bool GetClientMask(const gfx::Size& size,
72 gfx::Path* mask) const;
73
68 // This function must ask the ClientView to do a hittest. We don't do this in 74 // This function must ask the ClientView to do a hittest. We don't do this in
69 // the parent NonClientView because that makes it more difficult to calculate 75 // the parent NonClientView because that makes it more difficult to calculate
70 // hittests for regions that are partially obscured by the ClientView, e.g. 76 // hittests for regions that are partially obscured by the ClientView, e.g.
71 // HTSYSMENU. 77 // HTSYSMENU.
72 // Return value is one of the windows HT constants (see ui/base/hit_test.h). 78 // Return value is one of the windows HT constants (see ui/base/hit_test.h).
73 virtual int NonClientHitTest(const gfx::Point& point) = 0; 79 virtual int NonClientHitTest(const gfx::Point& point) = 0;
74 80
75 // Used to make the hosting widget shaped (non-rectangular). For a 81 // Used to make the hosting widget shaped (non-rectangular). For a
76 // rectangular window do nothing. For a shaped window update |window_mask| 82 // rectangular window do nothing. For a shaped window update |window_mask|
77 // accordingly. |size| is the size of the widget. 83 // accordingly. |size| is the size of the widget.
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 263
258 // The accessible name of this view. 264 // The accessible name of this view.
259 base::string16 accessible_name_; 265 base::string16 accessible_name_;
260 266
261 DISALLOW_COPY_AND_ASSIGN(NonClientView); 267 DISALLOW_COPY_AND_ASSIGN(NonClientView);
262 }; 268 };
263 269
264 } // namespace views 270 } // namespace views
265 271
266 #endif // UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_ 272 #endif // UI_VIEWS_WINDOW_NON_CLIENT_VIEW_H_
OLDNEW
« no previous file with comments | « ui/views/view.cc ('k') | ui/views/window/non_client_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698