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

Side by Side Diff: chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.cc

Issue 11192006: Revert r161932 "DevTools: [Linux] "dock to right" is broken after turning a tab into a window." (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 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/browser/ui/gtk/browser_window_gtk.cc ('k') | no next file » | 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 #include "chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.h" 5 #include "chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 738 matching lines...) Expand 10 before | Expand all | Expand 10 after
749 749
750 bool DraggedTabControllerGtk::CompleteDrag() { 750 bool DraggedTabControllerGtk::CompleteDrag() {
751 bool destroy_immediately = true; 751 bool destroy_immediately = true;
752 if (attached_tabstrip_) { 752 if (attached_tabstrip_) {
753 // We don't need to do anything other than make the tabs visible again, 753 // We don't need to do anything other than make the tabs visible again,
754 // since the dragged view is going away. 754 // since the dragged view is going away.
755 dragged_view_->AnimateToBounds(GetAnimateBounds(), 755 dragged_view_->AnimateToBounds(GetAnimateBounds(),
756 base::Bind(&DraggedTabControllerGtk::OnAnimateToBoundsComplete, 756 base::Bind(&DraggedTabControllerGtk::OnAnimateToBoundsComplete,
757 base::Unretained(this))); 757 base::Unretained(this)));
758 destroy_immediately = false; 758 destroy_immediately = false;
759 attached_tabstrip_->window()->SetDevToolsDockSide(
760 source_tabstrip_->window()->devtools_dock_side());
761 } else { 759 } else {
762 // Compel the model to construct a new window for the detached 760 // Compel the model to construct a new window for the detached
763 // TabContents. 761 // TabContents.
764 BrowserWindowGtk* window = source_tabstrip_->window(); 762 BrowserWindowGtk* window = source_tabstrip_->window();
765 gfx::Rect window_bounds = window->GetRestoredBounds(); 763 gfx::Rect window_bounds = window->GetRestoredBounds();
766 window_bounds.set_origin(GetWindowCreatePoint()); 764 window_bounds.set_origin(GetWindowCreatePoint());
767 Browser* new_browser = 765 Browser* new_browser =
768 source_tabstrip_->model()->delegate()->CreateNewStripWithContents( 766 source_tabstrip_->model()->delegate()->CreateNewStripWithContents(
769 drag_data_->get(0)->contents_, 767 drag_data_->get(0)->contents_,
770 window_bounds, 768 window_bounds,
771 dock_info_, 769 dock_info_,
772 window->IsMaximized()); 770 window->IsMaximized());
773 TabStripModel* new_model = new_browser->tab_strip_model(); 771 TabStripModel* new_model = new_browser->tab_strip_model();
774 new_model->SetTabPinned( 772 new_model->SetTabPinned(
775 new_model->GetIndexOfTabContents(drag_data_->get(0)->contents_), 773 new_model->GetIndexOfTabContents(drag_data_->get(0)->contents_),
776 drag_data_->get(0)->pinned_); 774 drag_data_->get(0)->pinned_);
777 for (size_t i = 1; i < drag_data_->size(); ++i) { 775 for (size_t i = 1; i < drag_data_->size(); ++i) {
778 new_model->InsertTabContentsAt(static_cast<int>(i), 776 new_model->InsertTabContentsAt(static_cast<int>(i),
779 drag_data_->get(i)->contents_, 777 drag_data_->get(i)->contents_,
780 drag_data_->GetAddTypesForDraggedTabAt(i)); 778 drag_data_->GetAddTypesForDraggedTabAt(i));
781 } 779 }
782 RestoreSelection(new_model); 780 RestoreSelection(new_model);
783 new_browser->window()->SetDevToolsDockSide(window->devtools_dock_side());
784 new_browser->window()->Show(); 781 new_browser->window()->Show();
785 CleanUpHiddenFrame(); 782 CleanUpHiddenFrame();
786 } 783 }
787 784
788 return destroy_immediately; 785 return destroy_immediately;
789 } 786 }
790 787
791 void DraggedTabControllerGtk::ResetDelegates() { 788 void DraggedTabControllerGtk::ResetDelegates() {
792 for (size_t i = 0; i < drag_data_->size(); ++i) { 789 for (size_t i = 0; i < drag_data_->size(); ++i) {
793 if (drag_data_->get(i)->contents_ && 790 if (drag_data_->get(i)->contents_ &&
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
893 890
894 bool DraggedTabControllerGtk::AreTabsConsecutive() { 891 bool DraggedTabControllerGtk::AreTabsConsecutive() {
895 for (size_t i = 1; i < drag_data_->size(); ++i) { 892 for (size_t i = 1; i < drag_data_->size(); ++i) {
896 if (drag_data_->get(i - 1)->source_model_index_ + 1 != 893 if (drag_data_->get(i - 1)->source_model_index_ + 1 !=
897 drag_data_->get(i)->source_model_index_) { 894 drag_data_->get(i)->source_model_index_) {
898 return false; 895 return false;
899 } 896 }
900 } 897 }
901 return true; 898 return true;
902 } 899 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/gtk/browser_window_gtk.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698