find_bar_host_gtk.cc revision 3f50c38dc070f4bb515c1b64450dae14f316474e
1// Copyright (c) 2006-2009 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/browser/views/find_bar_host.h"
6
7#include "chrome/browser/tab_contents/tab_contents.h"
8#include "chrome/browser/ui/find_bar/find_bar_controller.h"
9#include "chrome/browser/views/frame/browser_view.h"
10#include "chrome/browser/views/tab_contents/tab_contents_view_gtk.h"
11#include "views/widget/widget_gtk.h"
12
13void FindBarHost::AudibleAlert() {
14  // TODO(davemoore) implement.
15  NOTIMPLEMENTED();
16}
17
18void FindBarHost::GetWidgetPositionNative(gfx::Rect* avoid_overlapping_rect) {
19  gfx::Rect frame_rect, webcontents_rect;
20  host()->GetRootWidget()->GetBounds(&frame_rect, true);
21  TabContentsView* tab_view = find_bar_controller_->tab_contents()->view();
22  static_cast<TabContentsViewGtk*>(tab_view)->GetBounds(&webcontents_rect,
23                                                        true);
24  avoid_overlapping_rect->Offset(0, webcontents_rect.y() - frame_rect.y());
25}
26
27bool FindBarHost::ShouldForwardKeyEventToWebpageNative(
28    const views::KeyEvent& key_event) {
29  return true;
30}
31