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

Side by Side Diff: ui/aura/window.h

Issue 9181012: Don't activate a window if screen is locked. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: reduced the scope Created 8 years, 11 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_AURA_WINDOW_H_ 5 #ifndef UI_AURA_WINDOW_H_
6 #define UI_AURA_WINDOW_H_ 6 #define UI_AURA_WINDOW_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <string> 10 #include <string>
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 // Claims or relinquishes the claim to focus. 213 // Claims or relinquishes the claim to focus.
214 void Focus(); 214 void Focus();
215 void Blur(); 215 void Blur();
216 216
217 // Returns true if the Window is currently the focused window. 217 // Returns true if the Window is currently the focused window.
218 bool HasFocus() const; 218 bool HasFocus() const;
219 219
220 // Returns true if the Window can be focused. 220 // Returns true if the Window can be focused.
221 virtual bool CanFocus() const; 221 virtual bool CanFocus() const;
222 222
223 // Returns true if the Window can receive events.
224 virtual bool CanReceiveEvents() const;
225
223 // Returns the FocusManager for the Window, which may be attached to a parent 226 // Returns the FocusManager for the Window, which may be attached to a parent
224 // Window. Can return NULL if the Window has no FocusManager. 227 // Window. Can return NULL if the Window has no FocusManager.
225 virtual internal::FocusManager* GetFocusManager(); 228 virtual internal::FocusManager* GetFocusManager();
226 virtual const internal::FocusManager* GetFocusManager() const; 229 virtual const internal::FocusManager* GetFocusManager() const;
227 230
228 // Does a mouse capture on the window. This does nothing if the window isn't 231 // Does a mouse capture on the window. This does nothing if the window isn't
229 // showing (VISIBILITY_SHOWN) or isn't contained in a valid window hierarchy. 232 // showing (VISIBILITY_SHOWN) or isn't contained in a valid window hierarchy.
230 void SetCapture(); 233 void SetCapture();
231 234
232 // Releases a mouse capture. 235 // Releases a mouse capture.
(...skipping 10 matching lines...) Expand all
243 void SetIntProperty(const char* name, int value); 246 void SetIntProperty(const char* name, int value);
244 247
245 // Returns the window property for given |name|. Returns NULL or 0 if 248 // Returns the window property for given |name|. Returns NULL or 0 if
246 // the property does not exist. 249 // the property does not exist.
247 // TODO(oshima): Returning 0 for non existing property is problematic. 250 // TODO(oshima): Returning 0 for non existing property is problematic.
248 // Fix ViewProp to be able to tell if the property exists and 251 // Fix ViewProp to be able to tell if the property exists and
249 // change it to -1. 252 // change it to -1.
250 void* GetProperty(const char* name) const; 253 void* GetProperty(const char* name) const;
251 int GetIntProperty(const char* name) const; 254 int GetIntProperty(const char* name) const;
252 255
256 // This window is currently stopping event propagation for any windows behind
sky 2012/01/12 21:11:36 Returns true if this window ...
oshima 2012/01/12 21:32:50 Done.
257 // it in the z-order.
258 bool StopsEventPropagation() const;
259
253 protected: 260 protected:
254 // Returns the root window or NULL if we aren't yet attached to the root 261 // Returns the root window or NULL if we aren't yet attached to the root
255 // window. 262 // window.
256 virtual RootWindow* GetRootWindow(); 263 virtual RootWindow* GetRootWindow();
257 264
258 // Called when the |window| is detached from the root window by being removed 265 // Called when the |window| is detached from the root window by being removed
259 // from its parent. 266 // from its parent.
260 virtual void WindowDetachedFromRootWindow(aura::Window* window); 267 virtual void WindowDetachedFromRootWindow(aura::Window* window);
261 268
262 private: 269 private:
263 friend class LayoutManager; 270 friend class LayoutManager;
264 271
265 // Changes the bounds of the window without condition. 272 // Changes the bounds of the window without condition.
266 void SetBoundsInternal(const gfx::Rect& new_bounds); 273 void SetBoundsInternal(const gfx::Rect& new_bounds);
267 274
268 // Updates the visible state of the layer, but does not make visible-state 275 // Updates the visible state of the layer, but does not make visible-state
269 // specific changes. Called from Show()/Hide(). 276 // specific changes. Called from Show()/Hide().
270 void SetVisible(bool visible); 277 void SetVisible(bool visible);
271 278
272 // Schedules a paint for the Window's entire bounds. 279 // Schedules a paint for the Window's entire bounds.
273 void SchedulePaint(); 280 void SchedulePaint();
274 281
275 // This window is currently stopping event propagation for any windows behind
276 // it in the z-order.
277 bool StopsEventPropagation() const;
278
279 // Gets a Window (either this one or a subwindow) containing |local_point|. 282 // Gets a Window (either this one or a subwindow) containing |local_point|.
280 // If |return_tightest| is true, returns the tightest-containing (i.e. 283 // If |return_tightest| is true, returns the tightest-containing (i.e.
281 // furthest down the hierarchy) Window containing the point; otherwise, 284 // furthest down the hierarchy) Window containing the point; otherwise,
282 // returns the loosest. If |for_event_handling| is true, then hit-test masks 285 // returns the loosest. If |for_event_handling| is true, then hit-test masks
283 // and StopsEventPropagation() are honored; otherwise, only bounds checks are 286 // and StopsEventPropagation() are honored; otherwise, only bounds checks are
284 // performed. 287 // performed.
285 Window* GetWindowForPoint(const gfx::Point& local_point, 288 Window* GetWindowForPoint(const gfx::Point& local_point,
286 bool return_tightest, 289 bool return_tightest,
287 bool for_event_handling); 290 bool for_event_handling);
288 291
289 // Called when this window's parent has changed. 292 // Called when this window's parent has changed.
290 void OnParentChanged(); 293 void OnParentChanged();
291 294
292 // Called when this window's stacking order among its siblings is changed. 295 // Called when this window's stacking order among its siblings is changed.
293 void OnStackingChanged(); 296 void OnStackingChanged();
294 297
295 // Overridden from ui::LayerDelegate: 298 // Overridden from ui::LayerDelegate:
296 virtual void OnPaintLayer(gfx::Canvas* canvas) OVERRIDE; 299 virtual void OnPaintLayer(gfx::Canvas* canvas) OVERRIDE;
297 300
298 // Updates the layer name with a name based on the window's name and id. 301 // Updates the layer name with a name based on the window's name and id.
299 void UpdateLayerName(const std::string& name); 302 void UpdateLayerName(const std::string& name);
300 303
304 // Returns true if the Window is behind a window that stops event propagation.
sky 2012/01/12 21:11:36 'the Window' -> 'this Window'
oshima 2012/01/12 21:32:50 Done.
305 bool IsBehindStopEventsWindow() const;
306
301 client::WindowType type_; 307 client::WindowType type_;
302 308
303 WindowDelegate* delegate_; 309 WindowDelegate* delegate_;
304 310
305 scoped_ptr<ui::Layer> layer_; 311 scoped_ptr<ui::Layer> layer_;
306 312
307 // The Window's parent. 313 // The Window's parent.
308 Window* parent_; 314 Window* parent_;
309 315
310 // Child windows. Topmost is last. 316 // Child windows. Topmost is last.
(...skipping 29 matching lines...) Expand all
340 // TODO(oshima): Consolidcate ViewProp and aura::window property 346 // TODO(oshima): Consolidcate ViewProp and aura::window property
341 // implementation. 347 // implementation.
342 std::map<const char*, void*> prop_map_; 348 std::map<const char*, void*> prop_map_;
343 349
344 DISALLOW_COPY_AND_ASSIGN(Window); 350 DISALLOW_COPY_AND_ASSIGN(Window);
345 }; 351 };
346 352
347 } // namespace aura 353 } // namespace aura
348 354
349 #endif // UI_AURA_WINDOW_H_ 355 #endif // UI_AURA_WINDOW_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698