From 6470a9eb1c4fdcfb45b504e9b6ce57941ff956de Mon Sep 17 00:00:00 2001 From: "nsylvain@chromium.org" Date: Thu, 2 Sep 2010 03:04:48 +0000 Subject: Revert 58259 - reland r57885 with a fix for linux/views. We believe this caused a lot of login prompt auth tests to fail with : [5860:5871:2463125642585:FATAL:chrome/browser/gtk/owned_widget_gtk.cc(39)] Check failed: ((((GObject*) g_type_check_instance_cast ((GTypeInstance*) ((widget)), (((GType) ((20) << (2))))))))->ref_count == 1U (3 vs. 1) Backtrace: StackTrace::StackTrace() [0x8b2d896] logging::LogMessage::~LogMessage() [0x8b47321] OwnedWidgetGtk::Destroy() [0x81b2536] LoginHandlerGtk::~LoginHandlerGtk() [0x860a419] base::RefCountedThreadSafe<>::DeleteInternal() [0x82911a4] base::DefaultRefCountedThreadSafeTraits<>::Destruct() [0x82911b7] base::RefCountedThreadSafe<>::Release() [0x8291215] ------ Original message: [GTK] a couple of constrained window fixes: 1) don't grab focus when the parent tab isn't showing. Grab the focus when the tab is brought to the front. 2) handle escape via normal key handling rather than accelerator keys 3) don't allow the content view to take focus (via tab) when the constrained window is showing. BUG=53242, 50799 TEST=see bugs. Also, tabbing between constrained window and url bar should work as expected. Review URL: http://codereview.chromium.org/3235010 TBR=estade@chromium.org Review URL: http://codereview.chromium.org/3293005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58308 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/gtk/focus_store_gtk.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'chrome/browser/gtk/focus_store_gtk.h') diff --git a/chrome/browser/gtk/focus_store_gtk.h b/chrome/browser/gtk/focus_store_gtk.h index 2159f1e..ce3b68b 100644 --- a/chrome/browser/gtk/focus_store_gtk.h +++ b/chrome/browser/gtk/focus_store_gtk.h @@ -1,4 +1,4 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2009 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -19,12 +19,9 @@ class FocusStoreGtk { GtkWidget* widget() const { return widget_; } // Save the widget that is currently focused for |widget|'s toplevel (NOT - // |widget|). + // |widget|). Call with NULL to clear |widget_|. void Store(GtkWidget* widget); - // Save |widget| as the focus widget. Call with NULL to clear |widget_|. - void SetWidget(GtkWidget* widget); - private: // Disconnect the previous destroy handler (if any). void DisconnectDestroyHandler(); -- cgit v1.1