diff options
author | oshima@google.com <oshima@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-04 21:22:24 +0000 |
---|---|---|
committer | oshima@google.com <oshima@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-04 21:22:24 +0000 |
commit | c433f18f2cd98afd02169363614cb49d5eae4aba (patch) | |
tree | 8df575695da3807e6f6b397bf2da1f1f094670f5 | |
parent | 6a527c979951b4716efc2bbf0ca144258c42e389 (diff) | |
download | chromium_src-c433f18f2cd98afd02169363614cb49d5eae4aba.zip chromium_src-c433f18f2cd98afd02169363614cb49d5eae4aba.tar.gz chromium_src-c433f18f2cd98afd02169363614cb49d5eae4aba.tar.bz2 |
Enable CertificateViewer
Use ConstrainedWindow for CertificateViewer
Renamed webui/certificate_viwer.cc|h to webui/certificate_viewer_webui.cc to avoid conflict with chrome/browser/certificate_viewer.cc
BUG=97841
TEST=none
Review URL: http://codereview.chromium.org/8351075
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108715 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/ui/constrained_window.cc | 15 | ||||
-rw-r--r-- | chrome/browser/ui/constrained_window.h | 6 | ||||
-rw-r--r-- | chrome/browser/ui/views/constrained_html_delegate_views.cc | 5 | ||||
-rw-r--r-- | chrome/browser/ui/views/constrained_window_views.cc | 4 | ||||
-rw-r--r-- | chrome/browser/ui/views/constrained_window_views.h | 1 | ||||
-rw-r--r-- | chrome/browser/ui/views/stubs_aura.cc | 6 | ||||
-rw-r--r-- | chrome/browser/ui/webui/certificate_viewer_webui.cc (renamed from chrome/browser/ui/webui/certificate_viewer.cc) | 19 | ||||
-rw-r--r-- | chrome/browser/ui/webui/certificate_viewer_webui.h (renamed from chrome/browser/ui/webui/certificate_viewer.h) | 6 | ||||
-rw-r--r-- | chrome/browser/ui/webui/html_dialog_tab_contents_delegate.cc | 3 | ||||
-rw-r--r-- | chrome/browser/ui/webui/html_dialog_tab_contents_delegate.h | 6 | ||||
-rw-r--r-- | chrome/browser/ui/webui/html_dialog_tab_contents_delegate_unittest.cc | 2 | ||||
-rw-r--r-- | chrome/chrome_browser.gypi | 13 |
12 files changed, 68 insertions, 18 deletions
diff --git a/chrome/browser/ui/constrained_window.cc b/chrome/browser/ui/constrained_window.cc new file mode 100644 index 0000000..d00c070 --- /dev/null +++ b/chrome/browser/ui/constrained_window.cc @@ -0,0 +1,15 @@ +// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/ui/constrained_window.h" + +#include "base/logging.h" + +void ConstrainedWindow::FocusConstrainedWindow() { +} + +gfx::NativeWindow ConstrainedWindow::GetNativeWindow() { + NOTREACHED(); + return NULL; +} diff --git a/chrome/browser/ui/constrained_window.h b/chrome/browser/ui/constrained_window.h index 77e13ac..c3bdf25 100644 --- a/chrome/browser/ui/constrained_window.h +++ b/chrome/browser/ui/constrained_window.h @@ -7,6 +7,7 @@ #pragma once #include "build/build_config.h" +#include "ui/gfx/native_widget_types.h" /////////////////////////////////////////////////////////////////////////////// // ConstrainedWindow @@ -24,7 +25,10 @@ class ConstrainedWindow { virtual void CloseConstrainedWindow() = 0; // Sets focus on the Constrained Window. - virtual void FocusConstrainedWindow() {} + virtual void FocusConstrainedWindow(); + + // Returns the native window of the constrained window. + virtual gfx::NativeWindow GetNativeWindow(); protected: virtual ~ConstrainedWindow() {} diff --git a/chrome/browser/ui/views/constrained_html_delegate_views.cc b/chrome/browser/ui/views/constrained_html_delegate_views.cc index 0f56930..2797243 100644 --- a/chrome/browser/ui/views/constrained_html_delegate_views.cc +++ b/chrome/browser/ui/views/constrained_html_delegate_views.cc @@ -41,7 +41,7 @@ class ConstrainedHtmlDelegateViews : public TabContentsContainer, } virtual void WindowClosing() OVERRIDE { if (!closed_via_webui_) - html_delegate_->OnDialogClosed(""); + html_delegate_->OnDialogClosed(std::string()); } virtual views::Widget* GetWidget() OVERRIDE { return View::GetWidget(); @@ -56,6 +56,9 @@ class ConstrainedHtmlDelegateViews : public TabContentsContainer, // HtmlDialogTabContentsDelegate interface. void HandleKeyboardEvent(const NativeWebKeyboardEvent& event) OVERRIDE {} + virtual void CloseContents(TabContents* source) OVERRIDE { + window_->CloseConstrainedWindow(); + } // Overridden from TabContentsContainer. virtual gfx::Size GetPreferredSize() OVERRIDE { diff --git a/chrome/browser/ui/views/constrained_window_views.cc b/chrome/browser/ui/views/constrained_window_views.cc index 2af44a8..0e69865 100644 --- a/chrome/browser/ui/views/constrained_window_views.cc +++ b/chrome/browser/ui/views/constrained_window_views.cc @@ -644,6 +644,10 @@ void ConstrainedWindowViews::FocusConstrainedWindow() { } } +gfx::NativeView ConstrainedWindowViews::GetNativeWindow() { + return Widget::GetNativeWindow(); +} + //////////////////////////////////////////////////////////////////////////////// // ConstrainedWindowViews, views::Window overrides: diff --git a/chrome/browser/ui/views/constrained_window_views.h b/chrome/browser/ui/views/constrained_window_views.h index 9c5fbc1..fd3583f 100644 --- a/chrome/browser/ui/views/constrained_window_views.h +++ b/chrome/browser/ui/views/constrained_window_views.h @@ -69,6 +69,7 @@ class ConstrainedWindowViews : public views::Widget, virtual void ShowConstrainedWindow() OVERRIDE; virtual void CloseConstrainedWindow() OVERRIDE; virtual void FocusConstrainedWindow() OVERRIDE; + virtual gfx::NativeWindow GetNativeWindow() OVERRIDE; private: // Overridden from views::Widget: diff --git a/chrome/browser/ui/views/stubs_aura.cc b/chrome/browser/ui/views/stubs_aura.cc index f7d270f..037617f 100644 --- a/chrome/browser/ui/views/stubs_aura.cc +++ b/chrome/browser/ui/views/stubs_aura.cc @@ -88,12 +88,12 @@ void ShowCryptoModulePasswordDialog( } // namespace browser - +#if defined(OS_WIN) void ShowCertificateViewer(gfx::NativeWindow parent, net::X509Certificate* cert) { - // TODO(beng); - NOTIMPLEMENTED(); + // No certificate viewer on Windows. } +#endif // static FirstRunBubble* FirstRunBubble::Show( diff --git a/chrome/browser/ui/webui/certificate_viewer.cc b/chrome/browser/ui/webui/certificate_viewer_webui.cc index 8e012ff..f17a4fe 100644 --- a/chrome/browser/ui/webui/certificate_viewer.cc +++ b/chrome/browser/ui/webui/certificate_viewer_webui.cc @@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include "chrome/browser/ui/webui/certificate_viewer_webui.h" + #include "base/bind.h" #include "base/bind_helpers.h" #include "base/i18n/time_formatting.h" @@ -12,7 +14,6 @@ #include "chrome/browser/ui/browser_dialogs.h" #include "chrome/browser/ui/browser_list.h" #include "chrome/browser/ui/gtk/certificate_dialogs.h" -#include "chrome/browser/ui/webui/certificate_viewer.h" #include "chrome/browser/ui/webui/chrome_web_ui.h" #include "chrome/common/net/x509_certificate_model.h" #include "chrome/common/url_constants.h" @@ -20,6 +21,12 @@ #include "ui/base/l10n/l10n_util.h" #include "grit/generated_resources.h" +#if defined(USE_AURA) +#include "chrome/browser/ui/constrained_window.h" +#include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" +#include "chrome/browser/ui/webui/constrained_html_ui.h" +#endif + namespace { // Default width/height of the dialog. @@ -69,9 +76,19 @@ CertificateViewerDialog::~CertificateViewerDialog() { } void CertificateViewerDialog::Show(gfx::NativeWindow parent) { + // TODO(oshima): Should get browser from parent. Browser* browser = BrowserList::GetLastActive(); DCHECK(browser); +#if defined(USE_AURA) + TabContentsWrapper* current_wrapper = + browser->GetSelectedTabContentsWrapper(); + window_ = ConstrainedHtmlUI::CreateConstrainedHtmlDialog( + current_wrapper->profile(), + this, + current_wrapper)->window()->GetNativeWindow(); +#else window_ = browser->BrowserShowHtmlDialog(this, parent); +#endif } bool CertificateViewerDialog::IsDialogModal() const { diff --git a/chrome/browser/ui/webui/certificate_viewer.h b/chrome/browser/ui/webui/certificate_viewer_webui.h index 93566e0..1cfd822 100644 --- a/chrome/browser/ui/webui/certificate_viewer.h +++ b/chrome/browser/ui/webui/certificate_viewer_webui.h @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_UI_WEBUI_CERTIFICATE_VIEWER_H_ -#define CHROME_BROWSER_UI_WEBUI_CERTIFICATE_VIEWER_H_ +#ifndef CHROME_BROWSER_UI_WEBUI_CERTIFICATE_VIEWER_WEBUI_H_ +#define CHROME_BROWSER_UI_WEBUI_CERTIFICATE_VIEWER_WEBUI_H_ #pragma once #include "base/values.h" @@ -103,4 +103,4 @@ class CertificateViewerDialogHandler : public WebUIMessageHandler { DISALLOW_COPY_AND_ASSIGN(CertificateViewerDialogHandler); }; -#endif // CHROME_BROWSER_UI_WEBUI_CERTIFICATE_VIEWER_H_ +#endif // CHROME_BROWSER_UI_WEBUI_CERTIFICATE_VIEWER_WEBUI_H_ diff --git a/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.cc b/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.cc index c9c2dcb..2bc1ef0 100644 --- a/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.cc +++ b/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.cc @@ -83,7 +83,8 @@ void HtmlDialogTabContentsDelegate::AddNewContents( } } -bool HtmlDialogTabContentsDelegate::IsPopup(const TabContents* source) const { +bool HtmlDialogTabContentsDelegate::IsPopupOrPanel( + const TabContents* source) const { // This needs to return true so that we are allowed to be resized by our // contents. return true; diff --git a/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.h b/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.h index 8353bc6..6670578 100644 --- a/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.h +++ b/chrome/browser/ui/webui/html_dialog_tab_contents_delegate.h @@ -49,11 +49,11 @@ class HtmlDialogTabContentsDelegate : public TabContentsDelegate { TabContents* new_contents, WindowOpenDisposition disposition, const gfx::Rect& initial_pos, - bool user_gesture); - virtual bool IsPopup(const TabContents* source) const; + bool user_gesture) OVERRIDE; + virtual bool IsPopupOrPanel(const TabContents* source) const OVERRIDE; virtual bool ShouldAddNavigationToHistory( const history::HistoryAddPageArgs& add_page_args, - content::NavigationType navigation_type); + content::NavigationType navigation_type) OVERRIDE; private: Profile* profile_; // Weak pointer. Always an original profile. diff --git a/chrome/browser/ui/webui/html_dialog_tab_contents_delegate_unittest.cc b/chrome/browser/ui/webui/html_dialog_tab_contents_delegate_unittest.cc index 93353a4..9a5f22e 100644 --- a/chrome/browser/ui/webui/html_dialog_tab_contents_delegate_unittest.cc +++ b/chrome/browser/ui/webui/html_dialog_tab_contents_delegate_unittest.cc @@ -53,7 +53,7 @@ class HtmlDialogTabContentsDelegateTest : public BrowserWithTestWindowTest { TEST_F(HtmlDialogTabContentsDelegateTest, DoNothingMethodsTest) { // None of the following calls should do anything. - EXPECT_TRUE(test_tab_contents_delegate_->IsPopup(NULL)); + EXPECT_TRUE(test_tab_contents_delegate_->IsPopupOrPanel(NULL)); scoped_refptr<history::HistoryAddPageArgs> should_add_args( new history::HistoryAddPageArgs( GURL(), base::Time::Now(), 0, 0, GURL(), history::RedirectList(), diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index 978c959..ed148ae 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -2889,6 +2889,7 @@ 'browser/ui/content_settings/content_setting_bubble_model.h', 'browser/ui/content_settings/content_setting_image_model.cc', 'browser/ui/content_settings/content_setting_image_model.h', + 'browser/ui/constrained_window.cc', 'browser/ui/constrained_window.h', 'browser/ui/constrained_window_tab_helper.cc', 'browser/ui/constrained_window_tab_helper.h', @@ -3638,8 +3639,8 @@ 'browser/ui/webui/bookmarks_ui.h', 'browser/ui/webui/bug_report_ui.cc', 'browser/ui/webui/bug_report_ui.h', - 'browser/ui/webui/certificate_viewer.cc', - 'browser/ui/webui/certificate_viewer.h', + 'browser/ui/webui/certificate_viewer_webui.cc', + 'browser/ui/webui/certificate_viewer_webui.h', 'browser/ui/webui/certificate_viewer_ui.cc', 'browser/ui/webui/certificate_viewer_ui.h', 'browser/ui/webui/chrome_url_data_manager.cc', @@ -4216,6 +4217,10 @@ ['exclude', '^browser/ui/views/task_manager_view.cc'], ['exclude', '^browser/ui/views/task_manager_view.h'], ['exclude', '^browser/ui/views/user_data_dir_dialog.cc'], + ['include', '^browser/ui/webui/certificate_viewer_webui.cc'], + ['include', '^browser/ui/webui/certificate_viewer_webui.h'], + ['include', '^browser/ui/webui/certificate_viewer_ui.cc'], + ['include', '^browser/ui/webui/certificate_viewer_ui.h'], ['include', '^browser/ui/webui/collected_cookies_ui_delegate.cc'], ['include', '^browser/ui/webui/collected_cookies_ui_delegate.h'], ['include', '^browser/ui/webui/cookies_tree_model_adapter.cc'], @@ -4281,8 +4286,8 @@ # native certificate viewers). ['os_posix == 0 or OS == "mac"', { 'sources/': [ - ['exclude', '^browser/ui/webui/certificate_viewer.cc'], - ['exclude', '^browser/ui/webui/certificate_viewer.h'], + ['exclude', '^browser/ui/webui/certificate_viewer_webui.cc'], + ['exclude', '^browser/ui/webui/certificate_viewer_webui.h'], ['exclude', '^browser/ui/webui/certificate_viewer_ui.cc'], ['exclude', '^browser/ui/webui/certificate_viewer_ui.h'], ], |