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/ui/webui/certificate_viewer_webui.h" | 5 #include "chrome/browser/ui/webui/certificate_viewer_webui.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/i18n/time_formatting.h" | 9 #include "base/i18n/time_formatting.h" |
10 #include "base/json/json_writer.h" | 10 #include "base/json/json_writer.h" |
11 #include "base/strings/string_number_conversions.h" | 11 #include "base/strings/string_number_conversions.h" |
12 #include "base/strings/utf_string_conversions.h" | 12 #include "base/strings/utf_string_conversions.h" |
13 #include "chrome/browser/certificate_viewer.h" | 13 #include "chrome/browser/certificate_viewer.h" |
14 #include "chrome/browser/platform_util.h" | 14 #include "chrome/browser/platform_util.h" |
15 #include "chrome/browser/ui/browser_dialogs.h" | 15 #include "chrome/browser/ui/browser_dialogs.h" |
16 #include "chrome/browser/ui/certificate_dialogs.h" | 16 #include "chrome/browser/ui/certificate_dialogs.h" |
17 #include "chrome/browser/ui/webui/certificate_viewer_ui.h" | 17 #include "chrome/browser/ui/webui/certificate_viewer_ui.h" |
18 #include "chrome/browser/ui/webui/constrained_web_dialog_ui.h" | 18 #include "chrome/browser/ui/webui/constrained_web_dialog_ui.h" |
19 #include "chrome/common/net/x509_certificate_model.h" | 19 #include "chrome/common/net/x509_certificate_model.h" |
20 #include "chrome/common/url_constants.h" | 20 #include "chrome/common/url_constants.h" |
21 #include "chrome/grit/generated_resources.h" | 21 #include "chrome/grit/generated_resources.h" |
22 #include "content/public/browser/web_contents.h" | 22 #include "content/public/browser/web_contents.h" |
23 #include "ui/base/l10n/l10n_util.h" | 23 #include "ui/base/l10n/l10n_util.h" |
24 #include "ui/gfx/geometry/size.h" | 24 #include "ui/gfx/geometry/size.h" |
25 | 25 |
26 using content::WebContents; | 26 using content::WebContents; |
27 using content::WebUIMessageHandler; | 27 using content::WebUIMessageHandler; |
28 using web_modal::NativeWebContentsModalDialog; | |
29 | 28 |
30 // Shows a certificate using the WebUI certificate viewer. | 29 // Shows a certificate using the WebUI certificate viewer. |
31 void ShowCertificateViewer(WebContents* web_contents, | 30 void ShowCertificateViewer(WebContents* web_contents, |
32 gfx::NativeWindow parent, | 31 gfx::NativeWindow parent, |
33 net::X509Certificate* cert) { | 32 net::X509Certificate* cert) { |
34 CertificateViewerDialog* dialog = new CertificateViewerDialog(cert); | 33 CertificateViewerDialog* dialog = new CertificateViewerDialog(cert); |
35 dialog->Show(web_contents, parent); | 34 dialog->Show(web_contents, parent); |
36 } | 35 } |
37 | 36 |
38 //////////////////////////////////////////////////////////////////////////////// | 37 //////////////////////////////////////////////////////////////////////////////// |
(...skipping 12 matching lines...) Expand all Loading... |
51 CertificateViewerModalDialog::~CertificateViewerModalDialog() { | 50 CertificateViewerModalDialog::~CertificateViewerModalDialog() { |
52 } | 51 } |
53 | 52 |
54 void CertificateViewerModalDialog::Show(content::WebContents* web_contents, | 53 void CertificateViewerModalDialog::Show(content::WebContents* web_contents, |
55 gfx::NativeWindow parent) { | 54 gfx::NativeWindow parent) { |
56 window_ = chrome::ShowWebDialog(parent, | 55 window_ = chrome::ShowWebDialog(parent, |
57 web_contents->GetBrowserContext(), | 56 web_contents->GetBrowserContext(), |
58 this); | 57 this); |
59 } | 58 } |
60 | 59 |
61 NativeWebContentsModalDialog | 60 gfx::NativeWindow |
62 CertificateViewerModalDialog::GetNativeWebContentsModalDialog() { | 61 CertificateViewerModalDialog::GetNativeWebContentsModalDialog() { |
63 #if defined(USE_AURA) | 62 #if defined(USE_AURA) |
64 return window_; | 63 return window_; |
65 #else | 64 #else |
66 NOTREACHED(); | 65 NOTREACHED(); |
67 return NULL; | 66 return NULL; |
68 #endif | 67 #endif |
69 } | 68 } |
70 | 69 |
71 ui::ModalType CertificateViewerModalDialog::GetDialogModalType() const { | 70 ui::ModalType CertificateViewerModalDialog::GetDialogModalType() const { |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
225 } | 224 } |
226 | 225 |
227 void CertificateViewerDialog::Show(WebContents* web_contents, | 226 void CertificateViewerDialog::Show(WebContents* web_contents, |
228 gfx::NativeWindow parent) { | 227 gfx::NativeWindow parent) { |
229 // TODO(bshe): UI tweaks needed for Aura HTML Dialog, such as adding padding | 228 // TODO(bshe): UI tweaks needed for Aura HTML Dialog, such as adding padding |
230 // on the title for Aura ConstrainedWebDialogUI. | 229 // on the title for Aura ConstrainedWebDialogUI. |
231 dialog_ = ShowConstrainedWebDialog(web_contents->GetBrowserContext(), this, | 230 dialog_ = ShowConstrainedWebDialog(web_contents->GetBrowserContext(), this, |
232 web_contents); | 231 web_contents); |
233 } | 232 } |
234 | 233 |
235 NativeWebContentsModalDialog | 234 gfx::NativeWindow CertificateViewerDialog::GetNativeWebContentsModalDialog() { |
236 CertificateViewerDialog::GetNativeWebContentsModalDialog() { | |
237 return dialog_->GetNativeDialog(); | 235 return dialog_->GetNativeDialog(); |
238 } | 236 } |
239 | 237 |
240 GURL CertificateViewerDialog::GetDialogContentURL() const { | 238 GURL CertificateViewerDialog::GetDialogContentURL() const { |
241 return GURL(chrome::kChromeUICertificateViewerURL); | 239 return GURL(chrome::kChromeUICertificateViewerURL); |
242 } | 240 } |
243 | 241 |
244 ui::ModalType CertificateViewerDialog::GetDialogModalType() const { | 242 ui::ModalType CertificateViewerDialog::GetDialogModalType() const { |
245 return ui::MODAL_TYPE_NONE; | 243 return ui::MODAL_TYPE_NONE; |
246 } | 244 } |
(...skipping 22 matching lines...) Expand all Loading... |
269 base::Bind(&CertificateViewerDialogHandler::RequestCertificateFields, | 267 base::Bind(&CertificateViewerDialogHandler::RequestCertificateFields, |
270 base::Unretained(this))); | 268 base::Unretained(this))); |
271 } | 269 } |
272 | 270 |
273 void CertificateViewerDialogHandler::ExportCertificate( | 271 void CertificateViewerDialogHandler::ExportCertificate( |
274 const base::ListValue* args) { | 272 const base::ListValue* args) { |
275 int cert_index = GetCertificateIndex(args); | 273 int cert_index = GetCertificateIndex(args); |
276 if (cert_index < 0) | 274 if (cert_index < 0) |
277 return; | 275 return; |
278 | 276 |
279 NativeWebContentsModalDialog window = | 277 gfx::NativeWindow window = |
280 platform_util::GetTopLevel(dialog_->GetNativeWebContentsModalDialog()); | 278 platform_util::GetTopLevel(dialog_->GetNativeWebContentsModalDialog()); |
281 ShowCertExportDialog(web_ui()->GetWebContents(), | 279 ShowCertExportDialog(web_ui()->GetWebContents(), |
282 window, | 280 window, |
283 cert_chain_.begin() + cert_index, | 281 cert_chain_.begin() + cert_index, |
284 cert_chain_.end()); | 282 cert_chain_.end()); |
285 } | 283 } |
286 | 284 |
287 void CertificateViewerDialogHandler::RequestCertificateFields( | 285 void CertificateViewerDialogHandler::RequestCertificateFields( |
288 const base::ListValue* args) { | 286 const base::ListValue* args) { |
289 int cert_index = GetCertificateIndex(args); | 287 int cert_index = GetCertificateIndex(args); |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
441 const base::ListValue* args) const { | 439 const base::ListValue* args) const { |
442 int cert_index; | 440 int cert_index; |
443 double val; | 441 double val; |
444 if (!(args->GetDouble(0, &val))) | 442 if (!(args->GetDouble(0, &val))) |
445 return -1; | 443 return -1; |
446 cert_index = static_cast<int>(val); | 444 cert_index = static_cast<int>(val); |
447 if (cert_index < 0 || cert_index >= static_cast<int>(cert_chain_.size())) | 445 if (cert_index < 0 || cert_index >= static_cast<int>(cert_chain_.size())) |
448 return -1; | 446 return -1; |
449 return cert_index; | 447 return cert_index; |
450 } | 448 } |
OLD | NEW |