diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-05-12 22:53:34 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-05-12 22:53:34 +0000 |
commit | 1d9489eac7d6f0807524d3d5de12d210e9e29594 (patch) | |
tree | a51a3bf93136d418082f991f0b8e43d684e5497e /chrome/browser/gtk/slide_animator_gtk.cc | |
parent | 60bf6869e6e692e83d11dcc61007a1849d6bedde (diff) | |
download | chromium_src-1d9489eac7d6f0807524d3d5de12d210e9e29594.zip chromium_src-1d9489eac7d6f0807524d3d5de12d210e9e29594.tar.gz chromium_src-1d9489eac7d6f0807524d3d5de12d210e9e29594.tar.bz2 |
Linux: fix a couple focus issues:
- Don't change focus in FindBarGtk::RestoreSavedFocus() unless the find bar has focus.
- Hide widgets in SlideAnimatorGtk when they aren't showing so they can't get focus.
- Add a check for null focus widget in TabContentsViewGtk::SaveFocus().
Review URL: http://codereview.chromium.org/115254
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15910 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/slide_animator_gtk.cc')
-rw-r--r-- | chrome/browser/gtk/slide_animator_gtk.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/chrome/browser/gtk/slide_animator_gtk.cc b/chrome/browser/gtk/slide_animator_gtk.cc index 31d4d4c..3cf004c 100644 --- a/chrome/browser/gtk/slide_animator_gtk.cc +++ b/chrome/browser/gtk/slide_animator_gtk.cc @@ -91,6 +91,7 @@ void SlideAnimatorGtk::CloseWithoutAnimation() { animation_->Reset(0.0); animation_->Hide(); AnimationProgressed(animation_.get()); + gtk_widget_hide(widget_.get()); } bool SlideAnimatorGtk::IsShowing() { @@ -108,8 +109,11 @@ void SlideAnimatorGtk::AnimationProgressed(const Animation* animation) { } void SlideAnimatorGtk::AnimationEnded(const Animation* animation) { - if (!animation_->IsShowing() && delegate_) - delegate_->Closed(); + if (!animation_->IsShowing()) { + gtk_widget_hide(widget_.get()); + if (delegate_) + delegate_->Closed(); + } } // static |