OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/cocoa/js_modal_dialog_cocoa.h" | 5 #include "chrome/browser/ui/cocoa/js_modal_dialog_cocoa.h" |
6 | 6 |
7 #import <Cocoa/Cocoa.h> | 7 #import <Cocoa/Cocoa.h> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #import "base/mac/cocoa_protocols.h" | 10 #import "base/mac/cocoa_protocols.h" |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 [alert_ release]; | 52 [alert_ release]; |
53 [super dealloc]; | 53 [super dealloc]; |
54 } | 54 } |
55 | 55 |
56 // |contextInfo| is the JSModalDialogCocoa that owns us. | 56 // |contextInfo| is the JSModalDialogCocoa that owns us. |
57 - (void)alertDidEnd:(NSAlert*)alert | 57 - (void)alertDidEnd:(NSAlert*)alert |
58 returnCode:(int)returnCode | 58 returnCode:(int)returnCode |
59 contextInfo:(void*)contextInfo { | 59 contextInfo:(void*)contextInfo { |
60 scoped_ptr<JSModalDialogCocoa> native_dialog( | 60 scoped_ptr<JSModalDialogCocoa> native_dialog( |
61 reinterpret_cast<JSModalDialogCocoa*>(contextInfo)); | 61 reinterpret_cast<JSModalDialogCocoa*>(contextInfo)); |
62 std::wstring input; | 62 string16 input; |
63 if (textField_) | 63 if (textField_) |
64 input = base::SysNSStringToWide([textField_ stringValue]); | 64 input = base::SysNSStringToUTF16([textField_ stringValue]); |
65 bool shouldSuppress = false; | 65 bool shouldSuppress = false; |
66 if ([alert showsSuppressionButton]) | 66 if ([alert showsSuppressionButton]) |
67 shouldSuppress = [[alert suppressionButton] state] == NSOnState; | 67 shouldSuppress = [[alert suppressionButton] state] == NSOnState; |
68 switch (returnCode) { | 68 switch (returnCode) { |
69 case NSAlertFirstButtonReturn: { // OK | 69 case NSAlertFirstButtonReturn: { // OK |
70 native_dialog->dialog()->OnAccept(input, shouldSuppress); | 70 native_dialog->dialog()->OnAccept(input, shouldSuppress); |
71 break; | 71 break; |
72 } | 72 } |
73 case NSAlertSecondButtonReturn: { // Cancel | 73 case NSAlertSecondButtonReturn: { // Cancel |
74 // If the user wants to stay on this page, stop quitting (if a quit is in | 74 // If the user wants to stay on this page, stop quitting (if a quit is in |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
128 // Create a helper which will receive the sheet ended selector. It will | 128 // Create a helper which will receive the sheet ended selector. It will |
129 // delete itself when done. It doesn't need anything passed to its init | 129 // delete itself when done. It doesn't need anything passed to its init |
130 // as it will get a contextInfo parameter. | 130 // as it will get a contextInfo parameter. |
131 helper_.reset([[JavaScriptAppModalDialogHelper alloc] init]); | 131 helper_.reset([[JavaScriptAppModalDialogHelper alloc] init]); |
132 | 132 |
133 // Show the modal dialog. | 133 // Show the modal dialog. |
134 alert_ = [helper_ alert]; | 134 alert_ = [helper_ alert]; |
135 NSTextField* field = nil; | 135 NSTextField* field = nil; |
136 if (text_field) { | 136 if (text_field) { |
137 field = [helper_ textField]; | 137 field = [helper_ textField]; |
138 [field setStringValue:base::SysWideToNSString( | 138 [field setStringValue:base::SysUTF16ToNSString( |
139 dialog_->default_prompt_text())]; | 139 dialog_->default_prompt_text())]; |
140 } | 140 } |
141 [alert_ setDelegate:helper_]; | 141 [alert_ setDelegate:helper_]; |
142 [alert_ setInformativeText:base::SysWideToNSString(dialog_->message_text())]; | 142 [alert_ setInformativeText:base::SysUTF16ToNSString(dialog_->message_text())]; |
143 [alert_ setMessageText:base::SysWideToNSString(dialog_->title())]; | 143 [alert_ setMessageText:base::SysUTF16ToNSString(dialog_->title())]; |
144 [alert_ addButtonWithTitle:default_button]; | 144 [alert_ addButtonWithTitle:default_button]; |
145 if (!one_button) { | 145 if (!one_button) { |
146 NSButton* other = [alert_ addButtonWithTitle:other_button]; | 146 NSButton* other = [alert_ addButtonWithTitle:other_button]; |
147 [other setKeyEquivalent:@"\e"]; | 147 [other setKeyEquivalent:@"\e"]; |
148 } | 148 } |
149 if (dialog_->display_suppress_checkbox()) { | 149 if (dialog_->display_suppress_checkbox()) { |
150 [alert_ setShowsSuppressionButton:YES]; | 150 [alert_ setShowsSuppressionButton:YES]; |
151 NSString* suppression_title = l10n_util::GetNSStringWithFixup( | 151 NSString* suppression_title = l10n_util::GetNSStringWithFixup( |
152 IDS_JAVASCRIPT_MESSAGEBOX_SUPPRESS_OPTION); | 152 IDS_JAVASCRIPT_MESSAGEBOX_SUPPRESS_OPTION); |
153 [[alert_ suppressionButton] setTitle:suppression_title]; | 153 [[alert_ suppressionButton] setTitle:suppression_title]; |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
211 | 211 |
212 //////////////////////////////////////////////////////////////////////////////// | 212 //////////////////////////////////////////////////////////////////////////////// |
213 // NativeAppModalDialog, public: | 213 // NativeAppModalDialog, public: |
214 | 214 |
215 // static | 215 // static |
216 NativeAppModalDialog* NativeAppModalDialog::CreateNativeJavaScriptPrompt( | 216 NativeAppModalDialog* NativeAppModalDialog::CreateNativeJavaScriptPrompt( |
217 JavaScriptAppModalDialog* dialog, | 217 JavaScriptAppModalDialog* dialog, |
218 gfx::NativeWindow parent_window) { | 218 gfx::NativeWindow parent_window) { |
219 return new JSModalDialogCocoa(dialog); | 219 return new JSModalDialogCocoa(dialog); |
220 } | 220 } |
OLD | NEW |