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

Side by Side Diff: chrome/browser/ui/views/tabs/tab_drag_controller.h

Issue 455553003: Do not release capture when starting a move loop on Desktop Linux (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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) 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 CHROME_BROWSER_UI_VIEWS_TABS_TAB_DRAG_CONTROLLER_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_TABS_TAB_DRAG_CONTROLLER_H_
6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_DRAG_CONTROLLER_H_ 6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_DRAG_CONTROLLER_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/memory/weak_ptr.h" 10 #include "base/memory/weak_ptr.h"
(...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after
454 454
455 // The screen that this drag is associated with. Cached, because other UI 455 // The screen that this drag is associated with. Cached, because other UI
456 // elements are NULLd at various points during the lifetime of this object. 456 // elements are NULLd at various points during the lifetime of this object.
457 gfx::Screen* screen_; 457 gfx::Screen* screen_;
458 458
459 // The desktop type that this drag is associated with. Cached, because other 459 // The desktop type that this drag is associated with. Cached, because other
460 // UI elements are NULLd at various points during the lifetime of this 460 // UI elements are NULLd at various points during the lifetime of this
461 // object. 461 // object.
462 chrome::HostDesktopType host_desktop_type_; 462 chrome::HostDesktopType host_desktop_type_;
463 463
464 // Aura mouse capture and release is used on Ash platforms as well as on 464 // Whether capture can be released during the drag. When false, capture should
465 // Linux to ensure that pointer grab is not released prematurely. 465 // not be released when transferring capture between widgets and when starting
466 bool use_aura_capture_policy_; 466 // the move loop.
467 bool can_release_capture_;
467 468
468 // The position of the mouse (in screen coordinates) at the start of the drag 469 // The position of the mouse (in screen coordinates) at the start of the drag
469 // operation. This is used to calculate minimum elasticity before a 470 // operation. This is used to calculate minimum elasticity before a
470 // DraggedTabView is constructed. 471 // DraggedTabView is constructed.
471 gfx::Point start_point_in_screen_; 472 gfx::Point start_point_in_screen_;
472 473
473 // This is the offset of the mouse from the top left of the first Tab where 474 // This is the offset of the mouse from the top left of the first Tab where
474 // dragging began. This is used to ensure that the dragged view is always 475 // dragging began. This is used to ensure that the dragged view is always
475 // positioned at the correct location during the drag, and to ensure that the 476 // positioned at the correct location during the drag, and to ensure that the
476 // detached window is created at the right location. 477 // detached window is created at the right location.
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
587 int attach_index_; 588 int attach_index_;
588 589
589 scoped_ptr<ui::EventHandler> escape_tracker_; 590 scoped_ptr<ui::EventHandler> escape_tracker_;
590 591
591 base::WeakPtrFactory<TabDragController> weak_factory_; 592 base::WeakPtrFactory<TabDragController> weak_factory_;
592 593
593 DISALLOW_COPY_AND_ASSIGN(TabDragController); 594 DISALLOW_COPY_AND_ASSIGN(TabDragController);
594 }; 595 };
595 596
596 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_DRAG_CONTROLLER_H_ 597 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_DRAG_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698