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

Side by Side Diff: chrome/views/widget/widget_win.h

Issue 78002: Reorganize fullscreen mode handling. Now nearly everything is in WindowWin. ... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 8 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
« no previous file with comments | « chrome/common/win_util.cc ('k') | chrome/views/widget/widget_win.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) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 CHROME_VIEWS_WIDGET_WIDGET_WIN_H_ 5 #ifndef CHROME_VIEWS_WIDGET_WIDGET_WIN_H_
6 #define CHROME_VIEWS_WIDGET_WIDGET_WIN_H_ 6 #define CHROME_VIEWS_WIDGET_WIDGET_WIN_H_
7 7
8 #include <atlbase.h> 8 #include <atlbase.h>
9 #include <atlcrack.h> 9 #include <atlcrack.h>
10 10
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 275
276 HWND SetCapture() { 276 HWND SetCapture() {
277 DCHECK(::IsWindow(GetNativeView())); 277 DCHECK(::IsWindow(GetNativeView()));
278 return ::SetCapture(GetNativeView()); 278 return ::SetCapture(GetNativeView());
279 } 279 }
280 280
281 HWND GetParent() const { 281 HWND GetParent() const {
282 return ::GetParent(GetNativeView()); 282 return ::GetParent(GetNativeView());
283 } 283 }
284 284
285 LONG GetWindowLong(int index) {
286 DCHECK(::IsWindow(GetNativeView()));
287 return ::GetWindowLong(GetNativeView(), index);
288 }
289
285 BOOL GetWindowRect(RECT* rect) const { 290 BOOL GetWindowRect(RECT* rect) const {
286 return ::GetWindowRect(GetNativeView(), rect); 291 return ::GetWindowRect(GetNativeView(), rect);
287 } 292 }
288 293
294 LONG SetWindowLong(int index, LONG new_long) {
295 DCHECK(::IsWindow(GetNativeView()));
296 return ::SetWindowLong(GetNativeView(), index, new_long);
297 }
298
289 BOOL SetWindowPos(HWND hwnd_after, int x, int y, int cx, int cy, UINT flags) { 299 BOOL SetWindowPos(HWND hwnd_after, int x, int y, int cx, int cy, UINT flags) {
290 DCHECK(::IsWindow(GetNativeView())); 300 DCHECK(::IsWindow(GetNativeView()));
291 return ::SetWindowPos(GetNativeView(), hwnd_after, x, y, cx, cy, flags); 301 return ::SetWindowPos(GetNativeView(), hwnd_after, x, y, cx, cy, flags);
292 } 302 }
293 303
294 BOOL IsZoomed() const { 304 BOOL IsZoomed() const {
295 DCHECK(::IsWindow(GetNativeView())); 305 DCHECK(::IsWindow(GetNativeView()));
296 return ::IsZoomed(GetNativeView()); 306 return ::IsZoomed(GetNativeView());
297 } 307 }
298 308
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
443 SetMsgHandled(FALSE); 453 SetMsgHandled(FALSE);
444 } 454 }
445 virtual LRESULT OnSetIcon(UINT size_type, HICON new_icon) { 455 virtual LRESULT OnSetIcon(UINT size_type, HICON new_icon) {
446 SetMsgHandled(FALSE); 456 SetMsgHandled(FALSE);
447 return 0; 457 return 0;
448 } 458 }
449 virtual LRESULT OnSetText(const wchar_t* text) { 459 virtual LRESULT OnSetText(const wchar_t* text) {
450 SetMsgHandled(FALSE); 460 SetMsgHandled(FALSE);
451 return 0; 461 return 0;
452 } 462 }
453 virtual void OnSettingChange(UINT flags, const wchar_t* section); 463 virtual void OnSettingChange(UINT flags, const wchar_t* section) {
464 SetMsgHandled(FALSE);
465 }
454 virtual void OnSize(UINT param, const CSize& size); 466 virtual void OnSize(UINT param, const CSize& size);
455 virtual void OnSysCommand(UINT notification_code, CPoint click) { } 467 virtual void OnSysCommand(UINT notification_code, CPoint click) { }
456 virtual void OnThemeChanged(); 468 virtual void OnThemeChanged();
457 virtual void OnVScroll(int scroll_type, short position, HWND scrollbar) { 469 virtual void OnVScroll(int scroll_type, short position, HWND scrollbar) {
458 SetMsgHandled(FALSE); 470 SetMsgHandled(FALSE);
459 } 471 }
460 virtual void OnWindowPosChanging(WINDOWPOS* window_pos); 472 virtual void OnWindowPosChanging(WINDOWPOS* window_pos) {
473 SetMsgHandled(FALSE);
474 }
461 virtual void OnWindowPosChanged(WINDOWPOS* window_pos) { 475 virtual void OnWindowPosChanged(WINDOWPOS* window_pos) {
462 SetMsgHandled(FALSE); 476 SetMsgHandled(FALSE);
463 } 477 }
464 478
465 // deletes this window as it is destroyed, override to provide different 479 // deletes this window as it is destroyed, override to provide different
466 // behavior. 480 // behavior.
467 virtual void OnFinalMessage(HWND window); 481 virtual void OnFinalMessage(HWND window);
468 482
469 // Start tracking all mouse events so that this window gets sent mouse leave 483 // Start tracking all mouse events so that this window gets sent mouse leave
470 // messages too. |is_nonclient| is true when we should track WM_NCMOUSELEAVE 484 // messages too. |is_nonclient| is true when we should track WM_NCMOUSELEAVE
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
530 // The windows procedure used by all WidgetWins. 544 // The windows procedure used by all WidgetWins.
531 static LRESULT CALLBACK WndProc(HWND window, 545 static LRESULT CALLBACK WndProc(HWND window,
532 UINT message, 546 UINT message,
533 WPARAM w_param, 547 WPARAM w_param,
534 LPARAM l_param); 548 LPARAM l_param);
535 549
536 // Gets the window class name to use when creating the corresponding HWND. 550 // Gets the window class name to use when creating the corresponding HWND.
537 // If necessary, this registers the window class. 551 // If necessary, this registers the window class.
538 std::wstring GetWindowClassName(); 552 std::wstring GetWindowClassName();
539 553
540 // Stops ignoring SetWindowPos() requests (see below).
541 void StopIgnoringPosChanges() { ignore_window_pos_changes_ = false; }
542
543 // The following factory is used for calls to close the WidgetWin 554 // The following factory is used for calls to close the WidgetWin
544 // instance. 555 // instance.
545 ScopedRunnableMethodFactory<WidgetWin> close_widget_factory_; 556 ScopedRunnableMethodFactory<WidgetWin> close_widget_factory_;
546 557
547 // The following factory is used to ignore SetWindowPos() calls for short time
548 // periods.
549 ScopedRunnableMethodFactory<WidgetWin> ignore_pos_changes_factory_;
550
551 // The flags currently being used with TrackMouseEvent to track mouse 558 // The flags currently being used with TrackMouseEvent to track mouse
552 // messages. 0 if there is no active tracking. The value of this member is 559 // messages. 0 if there is no active tracking. The value of this member is
553 // used when tracking is canceled. 560 // used when tracking is canceled.
554 DWORD active_mouse_tracking_flags_; 561 DWORD active_mouse_tracking_flags_;
555 562
556 bool opaque_; 563 bool opaque_;
557 564
558 // Window Styles used when creating the window. 565 // Window Styles used when creating the window.
559 DWORD window_style_; 566 DWORD window_style_;
560 567
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
602 609
603 // Coordinates of the last mouse move event, in screen coordinates. 610 // Coordinates of the last mouse move event, in screen coordinates.
604 int last_mouse_move_x_; 611 int last_mouse_move_x_;
605 int last_mouse_move_y_; 612 int last_mouse_move_y_;
606 613
607 // Instance of accessibility information and handling for MSAA root 614 // Instance of accessibility information and handling for MSAA root
608 CComPtr<IAccessible> accessibility_root_; 615 CComPtr<IAccessible> accessibility_root_;
609 616
610 // Our hwnd. 617 // Our hwnd.
611 HWND hwnd_; 618 HWND hwnd_;
612
613 // The last-seen monitor containing us, and its work area. These are used to
614 // catch updates to the work area and react accordingly.
615 HMONITOR last_monitor_;
616 gfx::Rect last_work_area_;
617
618 // When true, this flag makes us discard incoming SetWindowPos() requests that
619 // only change our position/size. (We still allow changes to Z-order,
620 // activation, etc.)
621 bool ignore_window_pos_changes_;
622 }; 619 };
623 620
624 } // namespace views 621 } // namespace views
625 622
626 #endif // #ifndef CHROME_VIEWS_WIDGET_WIDGET_WIN_H_ 623 #endif // #ifndef CHROME_VIEWS_WIDGET_WIDGET_WIN_H_
OLDNEW
« no previous file with comments | « chrome/common/win_util.cc ('k') | chrome/views/widget/widget_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698