| OLD | NEW |
| 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/speech/speech_recognition_bubble.h" | 5 #include "chrome/browser/speech/speech_recognition_bubble.h" |
| 6 | 6 |
| 7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
| 8 #include "chrome/browser/profiles/profile.h" | 8 #include "chrome/browser/profiles/profile.h" |
| 9 #include "chrome/browser/ui/browser.h" | 9 #include "chrome/browser/ui/browser.h" |
| 10 #include "chrome/browser/ui/browser_finder.h" |
| 10 #include "chrome/browser/ui/gtk/browser_toolbar_gtk.h" | 11 #include "chrome/browser/ui/gtk/browser_toolbar_gtk.h" |
| 11 #include "chrome/browser/ui/gtk/browser_window_gtk.h" | 12 #include "chrome/browser/ui/gtk/browser_window_gtk.h" |
| 12 #include "chrome/browser/ui/gtk/bubble/bubble_gtk.h" | 13 #include "chrome/browser/ui/gtk/bubble/bubble_gtk.h" |
| 13 #include "chrome/browser/ui/gtk/gtk_chrome_link_button.h" | 14 #include "chrome/browser/ui/gtk/gtk_chrome_link_button.h" |
| 14 #include "chrome/browser/ui/gtk/gtk_theme_service.h" | 15 #include "chrome/browser/ui/gtk/gtk_theme_service.h" |
| 15 #include "chrome/browser/ui/gtk/gtk_util.h" | 16 #include "chrome/browser/ui/gtk/gtk_util.h" |
| 16 #include "chrome/browser/ui/gtk/location_bar_view_gtk.h" | 17 #include "chrome/browser/ui/gtk/location_bar_view_gtk.h" |
| 17 #include "content/public/browser/resource_context.h" | 18 #include "content/public/browser/resource_context.h" |
| 18 #include "content/public/browser/speech_recognition_manager.h" | 19 #include "content/public/browser/speech_recognition_manager.h" |
| 19 #include "content/public/browser/web_contents.h" | 20 #include "content/public/browser/web_contents.h" |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 gfx::Rect container_rect; | 180 gfx::Rect container_rect; |
| 180 GetWebContents()->GetContainerBounds(&container_rect); | 181 GetWebContents()->GetContainerBounds(&container_rect); |
| 181 gfx::Rect target_rect(element_rect_.right() - kBubbleTargetOffsetX, | 182 gfx::Rect target_rect(element_rect_.right() - kBubbleTargetOffsetX, |
| 182 element_rect_.bottom(), 1, 1); | 183 element_rect_.bottom(), 1, 1); |
| 183 | 184 |
| 184 if (target_rect.x() < 0 || target_rect.y() < 0 || | 185 if (target_rect.x() < 0 || target_rect.y() < 0 || |
| 185 target_rect.x() > container_rect.width() || | 186 target_rect.x() > container_rect.width() || |
| 186 target_rect.y() > container_rect.height()) { | 187 target_rect.y() > container_rect.height()) { |
| 187 // Target is not in screen view, so point to wrench. | 188 // Target is not in screen view, so point to wrench. |
| 188 Browser* browser = | 189 Browser* browser = |
| 189 Browser::GetOrCreateTabbedBrowser(profile); | 190 browser::FindOrCreateTabbedBrowser(profile); |
| 190 BrowserWindowGtk* browser_window = | 191 BrowserWindowGtk* browser_window = |
| 191 BrowserWindowGtk::GetBrowserWindowForNativeWindow( | 192 BrowserWindowGtk::GetBrowserWindowForNativeWindow( |
| 192 browser->window()->GetNativeHandle()); | 193 browser->window()->GetNativeHandle()); |
| 193 reference_widget = browser_window->GetToolbar()->GetLocationBarView() | 194 reference_widget = browser_window->GetToolbar()->GetLocationBarView() |
| 194 ->location_icon_widget(); | 195 ->location_icon_widget(); |
| 195 target_rect = gtk_util::WidgetBounds(reference_widget); | 196 target_rect = gtk_util::WidgetBounds(reference_widget); |
| 196 } | 197 } |
| 197 bubble_ = BubbleGtk::Show(reference_widget, | 198 bubble_ = BubbleGtk::Show(reference_widget, |
| 198 &target_rect, | 199 &target_rect, |
| 199 content, | 200 content, |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 } | 292 } |
| 292 | 293 |
| 293 } // namespace | 294 } // namespace |
| 294 | 295 |
| 295 SpeechRecognitionBubble* SpeechRecognitionBubble::CreateNativeBubble( | 296 SpeechRecognitionBubble* SpeechRecognitionBubble::CreateNativeBubble( |
| 296 WebContents* web_contents, | 297 WebContents* web_contents, |
| 297 Delegate* delegate, | 298 Delegate* delegate, |
| 298 const gfx::Rect& element_rect) { | 299 const gfx::Rect& element_rect) { |
| 299 return new SpeechRecognitionBubbleGtk(web_contents, delegate, element_rect); | 300 return new SpeechRecognitionBubbleGtk(web_contents, delegate, element_rect); |
| 300 } | 301 } |
| OLD | NEW |