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

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

Issue 155343: Attempt at once-and-for-all fix for bug #2993 (Windows) (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: '' Created 11 years, 5 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 | « no previous file | 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 VIEWS_WIDGET_WIDGET_WIN_H_ 5 #ifndef VIEWS_WIDGET_WIDGET_WIN_H_
6 #define VIEWS_WIDGET_WIDGET_WIN_H_ 6 #define VIEWS_WIDGET_WIDGET_WIN_H_
7 7
8 #include <atlbase.h> 8 #include <atlbase.h>
9 #include <atlapp.h> 9 #include <atlapp.h>
10 #include <atlcrack.h> 10 #include <atlcrack.h>
(...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after
497 // the event in the View system. 497 // the event in the View system.
498 bool ProcessMousePressed(const CPoint& point, 498 bool ProcessMousePressed(const CPoint& point,
499 UINT flags, 499 UINT flags,
500 bool dbl_click, 500 bool dbl_click,
501 bool non_client); 501 bool non_client);
502 void ProcessMouseDragged(const CPoint& point, UINT flags); 502 void ProcessMouseDragged(const CPoint& point, UINT flags);
503 void ProcessMouseReleased(const CPoint& point, UINT flags); 503 void ProcessMouseReleased(const CPoint& point, UINT flags);
504 void ProcessMouseMoved(const CPoint& point, UINT flags, bool is_nonclient); 504 void ProcessMouseMoved(const CPoint& point, UINT flags, bool is_nonclient);
505 void ProcessMouseExited(); 505 void ProcessMouseExited();
506 506
507 // Check for out-of-order mouse button releases
508 void CheckOutOfOrderMouseButtonRelease(int code);
509
507 // Handles re-laying out content in response to a window size change. 510 // Handles re-laying out content in response to a window size change.
508 virtual void ChangeSize(UINT size_param, const CSize& size); 511 virtual void ChangeSize(UINT size_param, const CSize& size);
509 512
510 // Returns whether capture should be released on mouse release. The default 513 // Returns whether capture should be released on mouse release. The default
511 // is true. 514 // is true.
512 virtual bool ReleaseCaptureOnMouseReleased() { return true; } 515 virtual bool ReleaseCaptureOnMouseReleased() { return true; }
513 516
514 // Creates the RootView to be used within this Widget. Can be overridden to 517 // Creates the RootView to be used within this Widget. Can be overridden to
515 // create specialized RootView implementations. 518 // create specialized RootView implementations.
516 virtual RootView* CreateRootView(); 519 virtual RootView* CreateRootView();
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
631 // deliver them. Displaying a window may result in the system generating 634 // deliver them. Displaying a window may result in the system generating
632 // duplicate move events even though the mouse hasn't moved. 635 // duplicate move events even though the mouse hasn't moved.
633 636
634 // If true, the last event was a mouse move event. 637 // If true, the last event was a mouse move event.
635 bool last_mouse_event_was_move_; 638 bool last_mouse_event_was_move_;
636 639
637 // Coordinates of the last mouse move event, in screen coordinates. 640 // Coordinates of the last mouse move event, in screen coordinates.
638 int last_mouse_move_x_; 641 int last_mouse_move_x_;
639 int last_mouse_move_y_; 642 int last_mouse_move_y_;
640 643
644 // Store whether the left and right mouse buttons are swapped in the Windows
645 // settings, and which virtual key code (VK_...) belongs to which button.
646 bool mouse_buttons_are_swapped_;
647 int left_button_code_;
648 int right_button_code_;
649
650 // keep track which buttons are currently pressed
651 int buttons_pressed_;
652
653 // Did we process a release button event out of order? (see ProcessMouseMoved)
654 int released_buttons_out_of_order_;
655
641 // Instance of accessibility information and handling for MSAA root 656 // Instance of accessibility information and handling for MSAA root
642 CComPtr<IAccessible> accessibility_root_; 657 CComPtr<IAccessible> accessibility_root_;
643 658
644 scoped_ptr<DefaultThemeProvider> default_theme_provider_; 659 scoped_ptr<DefaultThemeProvider> default_theme_provider_;
645 660
646 // Our hwnd. 661 // Our hwnd.
647 HWND hwnd_; 662 HWND hwnd_;
648 }; 663 };
649 664
650 } // namespace views 665 } // namespace views
651 666
652 #endif // #ifndef VIEWS_WIDGET_WIDGET_WIN_H_ 667 #endif // #ifndef VIEWS_WIDGET_WIDGET_WIN_H_
OLDNEW
« no previous file with comments | « no previous file | views/widget/widget_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698