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

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_gtk.cc

Issue 11421166: Update screen rects when showing an infobar. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 8 years 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
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 "content/browser/renderer_host/render_widget_host_view_gtk.h" 5 #include "content/browser/renderer_host/render_widget_host_view_gtk.h"
6 6
7 // If this gets included after the gtk headers, then a bunch of compiler 7 // If this gets included after the gtk headers, then a bunch of compiler
8 // errors happen because of a "#define Status int" in Xlib.h, which interacts 8 // errors happen because of a "#define Status int" in Xlib.h, which interacts
9 // badly with net::URLRequestStatus::Status. 9 // badly with net::URLRequestStatus::Status.
10 #include "content/common/view_messages.h" 10 #include "content/common/view_messages.h"
(...skipping 691 matching lines...) Expand 10 before | Expand all | Expand 10 after
702 int height = std::min(size.height(), kMaxWindowHeight); 702 int height = std::min(size.height(), kMaxWindowHeight);
703 if (IsPopup()) { 703 if (IsPopup()) {
704 // We're a popup, honor the size request. 704 // We're a popup, honor the size request.
705 gtk_widget_set_size_request(view_.get(), width, height); 705 gtk_widget_set_size_request(view_.get(), width, height);
706 } 706 }
707 707
708 // Update the size of the RWH. 708 // Update the size of the RWH.
709 if (requested_size_.width() != width || 709 if (requested_size_.width() != width ||
710 requested_size_.height() != height) { 710 requested_size_.height() != height) {
711 requested_size_ = gfx::Size(width, height); 711 requested_size_ = gfx::Size(width, height);
712 host_->SendScreenRects();
712 host_->WasResized(); 713 host_->WasResized();
713 } 714 }
714 } 715 }
715 716
716 void RenderWidgetHostViewGtk::SetBounds(const gfx::Rect& rect) { 717 void RenderWidgetHostViewGtk::SetBounds(const gfx::Rect& rect) {
717 // This is called when webkit has sent us a Move message. 718 // This is called when webkit has sent us a Move message.
718 if (IsPopup()) { 719 if (IsPopup()) {
719 gtk_window_move(GTK_WINDOW(gtk_widget_get_toplevel(view_.get())), 720 gtk_window_move(GTK_WINDOW(gtk_widget_get_toplevel(view_.get())),
720 rect.x(), rect.y()); 721 rect.x(), rect.y());
721 } 722 }
722 723
723 SetSize(rect.size()); 724 SetSize(rect.size());
725 host_->SendScreenRects();
724 } 726 }
725 727
726 gfx::NativeView RenderWidgetHostViewGtk::GetNativeView() const { 728 gfx::NativeView RenderWidgetHostViewGtk::GetNativeView() const {
727 return view_.get(); 729 return view_.get();
728 } 730 }
729 731
730 gfx::NativeViewId RenderWidgetHostViewGtk::GetNativeViewId() const { 732 gfx::NativeViewId RenderWidgetHostViewGtk::GetNativeViewId() const {
731 return GtkNativeViewManager::GetInstance()->GetIdForWidget(view_.get()); 733 return GtkNativeViewManager::GetInstance()->GetIdForWidget(view_.get());
732 } 734 }
733 735
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
976 view_.Own(RenderWidgetHostViewGtkWidget::CreateNewWidget(this)); 978 view_.Own(RenderWidgetHostViewGtkWidget::CreateNewWidget(this));
977 im_context_.reset(new GtkIMContextWrapper(this)); 979 im_context_.reset(new GtkIMContextWrapper(this));
978 plugin_container_manager_.set_host_widget(view_.get()); 980 plugin_container_manager_.set_host_widget(view_.get());
979 key_bindings_handler_.reset(new GtkKeyBindingsHandler(view_.get())); 981 key_bindings_handler_.reset(new GtkKeyBindingsHandler(view_.get()));
980 } 982 }
981 983
982 void RenderWidgetHostViewGtk::DoPopupOrFullscreenInit(GtkWindow* window, 984 void RenderWidgetHostViewGtk::DoPopupOrFullscreenInit(GtkWindow* window,
983 const gfx::Rect& bounds) { 985 const gfx::Rect& bounds) {
984 requested_size_.SetSize(std::min(bounds.width(), kMaxWindowWidth), 986 requested_size_.SetSize(std::min(bounds.width(), kMaxWindowWidth),
985 std::min(bounds.height(), kMaxWindowHeight)); 987 std::min(bounds.height(), kMaxWindowHeight));
988 host_->SendScreenRects();
986 host_->WasResized(); 989 host_->WasResized();
987 990
988 ui::ActiveWindowWatcherX::AddObserver(this); 991 ui::ActiveWindowWatcherX::AddObserver(this);
989 992
990 // Don't set the size when we're going fullscreen. This can confuse the 993 // Don't set the size when we're going fullscreen. This can confuse the
991 // window manager into thinking we're resizing a fullscreen window and 994 // window manager into thinking we're resizing a fullscreen window and
992 // therefore not fullscreen anymore. 995 // therefore not fullscreen anymore.
993 if (!is_fullscreen_) { 996 if (!is_fullscreen_) {
994 gtk_widget_set_size_request( 997 gtk_widget_set_size_request(
995 view_.get(), requested_size_.width(), requested_size_.height()); 998 view_.get(), requested_size_.width(), requested_size_.height());
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after
1529 this)); 1532 this));
1530 } 1533 }
1531 BrowserAccessibilityGtk* root = 1534 BrowserAccessibilityGtk* root =
1532 browser_accessibility_manager_->GetRoot()->ToBrowserAccessibilityGtk(); 1535 browser_accessibility_manager_->GetRoot()->ToBrowserAccessibilityGtk();
1533 1536
1534 atk_object_set_role(root->GetAtkObject(), ATK_ROLE_HTML_CONTAINER); 1537 atk_object_set_role(root->GetAtkObject(), ATK_ROLE_HTML_CONTAINER);
1535 return root->GetAtkObject(); 1538 return root->GetAtkObject();
1536 } 1539 }
1537 1540
1538 } // namespace content 1541 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698