| Index: chrome/browser/ui/panels/panel_browser_view.cc
|
| diff --git a/chrome/browser/ui/panels/panel_browser_view.cc b/chrome/browser/ui/panels/panel_browser_view.cc
|
| index 748a4897c69915fe2417fe32322c4a6d91cc37f4..777a0f7d9472f2534575543840a6b87380529d12 100644
|
| --- a/chrome/browser/ui/panels/panel_browser_view.cc
|
| +++ b/chrome/browser/ui/panels/panel_browser_view.cc
|
| @@ -309,10 +309,6 @@ void PanelBrowserView::DestroyPanelBrowser() {
|
| DestroyBrowser();
|
| }
|
|
|
| -NativePanelTesting* PanelBrowserView::GetNativePanelTesting() {
|
| - return this;
|
| -}
|
| -
|
| PanelBrowserFrameView* PanelBrowserView::GetFrameView() const {
|
| return static_cast<PanelBrowserFrameView*>(frame()->GetFrameView());
|
| }
|
| @@ -377,3 +373,57 @@ bool PanelBrowserView::EndDragging(bool cancelled) {
|
| panel_->manager()->EndDragging(cancelled);
|
| return true;
|
| }
|
| +
|
| +// NativePanelTesting implementation.
|
| +class NativePanelTestingWin : public NativePanelTesting {
|
| + public:
|
| + explicit NativePanelTestingWin(PanelBrowserView* panel_browser_view);
|
| +
|
| + private:
|
| + virtual void PressLeftMouseButtonTitlebar(gfx::Point point) OVERRIDE;
|
| + virtual void ReleaseMouseButtonTitlebar() OVERRIDE;
|
| + virtual void DragTitlebar(int delta_x, int delta_y) OVERRIDE;
|
| + virtual void CancelDragTitlebar() OVERRIDE;
|
| + virtual void FinishDragTitlebar() OVERRIDE;
|
| +
|
| + PanelBrowserView* panel_browser_view_;
|
| +};
|
| +
|
| +NativePanelTesting* NativePanelTesting::Create(NativePanel* native_panel) {
|
| + return new NativePanelTestingWin(static_cast<PanelBrowserView*>(
|
| + native_panel));
|
| +}
|
| +
|
| +NativePanelTestingWin::NativePanelTestingWin(
|
| + PanelBrowserView* panel_browser_view) :
|
| + panel_browser_view_(panel_browser_view) {
|
| +}
|
| +
|
| +void NativePanelTestingWin::PressLeftMouseButtonTitlebar(gfx::Point point) {
|
| + views::MouseEvent pressed(ui::ET_MOUSE_PRESSED, point.x(), point.y(),
|
| + ui::EF_LEFT_BUTTON_DOWN);
|
| + panel_browser_view_->OnTitleBarMousePressed(pressed);
|
| +}
|
| +
|
| +void NativePanelTestingWin::ReleaseMouseButtonTitlebar() {
|
| + views::MouseEvent released(ui::ET_MOUSE_RELEASED, 0, 0, 0);
|
| + panel_browser_view_->OnTitleBarMouseReleased(released);
|
| +}
|
| +
|
| +void NativePanelTestingWin::DragTitlebar(int delta_x, int delta_y) {
|
| + gfx::Rect current_bounds = panel_browser_view_->GetRestoredBounds();
|
| + views::MouseEvent dragged(ui::ET_MOUSE_DRAGGED,
|
| + current_bounds.x() + delta_x,
|
| + current_bounds.y() + delta_y,
|
| + ui::EF_LEFT_BUTTON_DOWN);
|
| + panel_browser_view_->OnTitleBarMouseDragged(dragged);
|
| +}
|
| +
|
| +void NativePanelTestingWin::CancelDragTitlebar() {
|
| + panel_browser_view_->OnTitleBarMouseCaptureLost();
|
| +}
|
| +
|
| +void NativePanelTestingWin::FinishDragTitlebar() {
|
| + views::MouseEvent released(ui::ET_MOUSE_RELEASED, 0, 0, 0);
|
| + panel_browser_view_->OnTitleBarMouseReleased(released);
|
| +}
|
|
|