1 // Copyright 2015 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.
5 #include "chrome/browser/ui/browser_dialogs.h"
7 #include "chrome/browser/ui/bookmarks/bookmark_bubble_sign_in_delegate.h"
8 #include "chrome/browser/ui/browser.h"
9 #include "chrome/browser/ui/views/bookmarks/bookmark_bubble_view.h"
10 #include "chrome/browser/ui/views/website_settings/website_settings_popup_view.h"
12 // This file provides definitions of desktop browser dialog-creation methods for
13 // Mac where a Cocoa browser is using Views dialogs. I.e. it is included in the
14 // Cocoa build and definitions under chrome/browser/ui/cocoa may select at
15 // runtime whether to show a Cocoa dialog, or the toolkit-views dialog defined
16 // here (declared in browser_dialogs.h).
20 void ShowWebsiteSettingsBubbleViewsAtPoint(const gfx::Point
& anchor_point
,
22 content::WebContents
* web_contents
,
24 const content::SSLStatus
& ssl
) {
25 WebsiteSettingsPopupView::ShowPopup(nullptr,
26 gfx::Rect(anchor_point
, gfx::Size()),
27 profile
, web_contents
, url
, ssl
);
30 void ShowBookmarkBubbleViewsAtPoint(const gfx::Point
& anchor_point
,
31 gfx::NativeView parent
,
32 bookmarks::BookmarkBubbleObserver
* observer
,
35 bool already_bookmarked
) {
36 // The Views dialog may prompt for sign in.
37 scoped_ptr
<BookmarkBubbleDelegate
> delegate(
38 new BookmarkBubbleSignInDelegate(browser
));
40 BookmarkBubbleView::ShowBubble(nullptr, gfx::Rect(anchor_point
, gfx::Size()),
41 parent
, observer
, delegate
.Pass(),
42 browser
->profile(), url
, already_bookmarked
);