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

Side by Side Diff: chrome/browser/ui/gtk/browser_window_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
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/browser_window_gtk.h" 5 #include "chrome/browser/ui/gtk/browser_window_gtk.h"
6 6
7 #include <gdk/gdkkeysyms.h> 7 #include <gdk/gdkkeysyms.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <string> 10 #include <string>
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 222
223 GQuark GetBrowserWindowQuarkKey() { 223 GQuark GetBrowserWindowQuarkKey() {
224 static GQuark quark = g_quark_from_static_string(kBrowserWindowKey); 224 static GQuark quark = g_quark_from_static_string(kBrowserWindowKey);
225 return quark; 225 return quark;
226 } 226 }
227 227
228 } // namespace 228 } // namespace
229 229
230 BrowserWindowGtk::BrowserWindowGtk(Browser* browser) 230 BrowserWindowGtk::BrowserWindowGtk(Browser* browser)
231 : window_(NULL), 231 : window_(NULL),
232 window_has_shown_(false),
233 window_container_(NULL), 232 window_container_(NULL),
234 window_vbox_(NULL), 233 window_vbox_(NULL),
235 render_area_vbox_(NULL), 234 render_area_vbox_(NULL),
236 render_area_floating_container_(NULL), 235 render_area_floating_container_(NULL),
237 render_area_event_box_(NULL), 236 render_area_event_box_(NULL),
238 toolbar_border_(NULL), 237 toolbar_border_(NULL),
239 browser_(browser), 238 browser_(browser),
240 state_(GDK_WINDOW_STATE_WITHDRAWN), 239 state_(GDK_WINDOW_STATE_WITHDRAWN),
241 devtools_dock_side_(DEVTOOLS_DOCK_SIDE_BOTTOM), 240 devtools_dock_side_(DEVTOOLS_DOCK_SIDE_BOTTOM),
242 contents_hsplit_(NULL), 241 contents_hsplit_(NULL),
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after
597 gtk_window_iconify(window_); 596 gtk_window_iconify(window_);
598 show_state_after_show_ = ui::SHOW_STATE_NORMAL; 597 show_state_after_show_ = ui::SHOW_STATE_NORMAL;
599 } 598 }
600 599
601 // If we have sized the window by setting a size request for the render 600 // If we have sized the window by setting a size request for the render
602 // area, then undo it so that the render view can later adjust its own 601 // area, then undo it so that the render view can later adjust its own
603 // size. 602 // size.
604 gtk_widget_set_size_request(contents_container_->widget(), -1, -1); 603 gtk_widget_set_size_request(contents_container_->widget(), -1, -1);
605 604
606 browser()->OnWindowDidShow(); 605 browser()->OnWindowDidShow();
607 window_has_shown_ = true;
608 UpdateDevTools();
609 } 606 }
610 607
611 void BrowserWindowGtk::ShowInactive() { 608 void BrowserWindowGtk::ShowInactive() {
612 gtk_window_set_focus_on_map(window_, false); 609 gtk_window_set_focus_on_map(window_, false);
613 gtk_widget_show(GTK_WIDGET(window_)); 610 gtk_widget_show(GTK_WIDGET(window_));
614 } 611 }
615 612
616 void BrowserWindowGtk::SetBoundsImpl(const gfx::Rect& bounds, 613 void BrowserWindowGtk::SetBoundsImpl(const gfx::Rect& bounds,
617 bool exterior, 614 bool exterior,
618 bool move) { 615 bool move) {
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
670 // Cancel any pending callback from the window configure debounce timer. 667 // Cancel any pending callback from the window configure debounce timer.
671 window_configure_debounce_timer_.Stop(); 668 window_configure_debounce_timer_.Stop();
672 669
673 // Likewise for the loading animation. 670 // Likewise for the loading animation.
674 loading_animation_timer_.Stop(); 671 loading_animation_timer_.Stop();
675 672
676 GtkWidget* window = GTK_WIDGET(window_); 673 GtkWidget* window = GTK_WIDGET(window_);
677 // To help catch bugs in any event handlers that might get fired during the 674 // To help catch bugs in any event handlers that might get fired during the
678 // destruction, set window_ to NULL before any handlers will run. 675 // destruction, set window_ to NULL before any handlers will run.
679 window_ = NULL; 676 window_ = NULL;
680 window_has_shown_ = false;
681 titlebar_->set_window(NULL); 677 titlebar_->set_window(NULL);
682 678
683 // We don't want GlobalMenuBar handling any notifications or commands after 679 // We don't want GlobalMenuBar handling any notifications or commands after
684 // the window is destroyed. 680 // the window is destroyed.
685 global_menu_bar_->Disable(); 681 global_menu_bar_->Disable();
686 gtk_widget_destroy(window); 682 gtk_widget_destroy(window);
687 } 683 }
688 684
689 void BrowserWindowGtk::Activate() { 685 void BrowserWindowGtk::Activate() {
690 gtk_window_present(window_); 686 gtk_window_present(window_);
(...skipping 655 matching lines...) Expand 10 before | Expand all | Expand 10 after
1346 1342
1347 toolbar_->UpdateForBookmarkBarVisibility(state == BookmarkBar::DETACHED); 1343 toolbar_->UpdateForBookmarkBarVisibility(state == BookmarkBar::DETACHED);
1348 PlaceBookmarkBar(state == BookmarkBar::DETACHED); 1344 PlaceBookmarkBar(state == BookmarkBar::DETACHED);
1349 bookmark_bar_->SetBookmarkBarState( 1345 bookmark_bar_->SetBookmarkBarState(
1350 state, 1346 state,
1351 animate ? BookmarkBar::ANIMATE_STATE_CHANGE : 1347 animate ? BookmarkBar::ANIMATE_STATE_CHANGE :
1352 BookmarkBar::DONT_ANIMATE_STATE_CHANGE); 1348 BookmarkBar::DONT_ANIMATE_STATE_CHANGE);
1353 } 1349 }
1354 1350
1355 void BrowserWindowGtk::UpdateDevToolsForContents(WebContents* contents) { 1351 void BrowserWindowGtk::UpdateDevToolsForContents(WebContents* contents) {
1356 if (!window_has_shown_)
1357 return;
1358 TRACE_EVENT0("ui::gtk", "BrowserWindowGtk::UpdateDevToolsForContents"); 1352 TRACE_EVENT0("ui::gtk", "BrowserWindowGtk::UpdateDevToolsForContents");
1359 TabContents* old_devtools = devtools_container_->tab(); 1353 TabContents* old_devtools = devtools_container_->tab();
1360 TabContents* devtools_contents = contents ? 1354 TabContents* devtools_contents = contents ?
1361 DevToolsWindow::GetDevToolsContents(contents) : NULL; 1355 DevToolsWindow::GetDevToolsContents(contents) : NULL;
1362 if (old_devtools == devtools_contents) 1356 if (old_devtools == devtools_contents)
1363 return; 1357 return;
1364 1358
1365 if (old_devtools) 1359 if (old_devtools)
1366 devtools_container_->DetachTab(old_devtools); 1360 devtools_container_->DetachTab(old_devtools);
1367 1361
(...skipping 1059 matching lines...) Expand 10 before | Expand all | Expand 10 after
2427 wm_type == ui::WM_OPENBOX || 2421 wm_type == ui::WM_OPENBOX ||
2428 wm_type == ui::WM_XFWM4); 2422 wm_type == ui::WM_XFWM4);
2429 } 2423 }
2430 2424
2431 // static 2425 // static
2432 BrowserWindow* BrowserWindow::CreateBrowserWindow(Browser* browser) { 2426 BrowserWindow* BrowserWindow::CreateBrowserWindow(Browser* browser) {
2433 BrowserWindowGtk* browser_window_gtk = new BrowserWindowGtk(browser); 2427 BrowserWindowGtk* browser_window_gtk = new BrowserWindowGtk(browser);
2434 browser_window_gtk->Init(); 2428 browser_window_gtk->Init();
2435 return browser_window_gtk; 2429 return browser_window_gtk;
2436 } 2430 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/gtk/browser_window_gtk.h ('k') | chrome/browser/ui/gtk/tabs/dragged_tab_controller_gtk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698