Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(108)

Side by Side Diff: chrome/browser/ui/libgtk2ui/select_file_dialog_impl_gtk2.cc

Issue 18627002: Change dialog texts for folder upload to explicitly indicate it's for 'Uploading' (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: build fix Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 <gdk/gdk.h> 5 #include <gdk/gdk.h>
6 #include <gdk/gdkx.h> 6 #include <gdk/gdkx.h>
7 #include <gtk/gtk.h> 7 #include <gtk/gtk.h>
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <vector> 10 #include <vector>
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 101
102 // Notifies the listener that multiple files were chosen. 102 // Notifies the listener that multiple files were chosen.
103 void MultiFilesSelected(GtkWidget* dialog, 103 void MultiFilesSelected(GtkWidget* dialog,
104 const std::vector<base::FilePath>& files); 104 const std::vector<base::FilePath>& files);
105 105
106 // Notifies the listener that no file was chosen (the action was canceled). 106 // Notifies the listener that no file was chosen (the action was canceled).
107 // Dialog is passed so we can find that |params| pointer that was passed to 107 // Dialog is passed so we can find that |params| pointer that was passed to
108 // us when we were told to show the dialog. 108 // us when we were told to show the dialog.
109 void FileNotSelected(GtkWidget* dialog); 109 void FileNotSelected(GtkWidget* dialog);
110 110
111 GtkWidget* CreateSelectFolderDialog(const std::string& title, 111 GtkWidget* CreateSelectFolderDialog(
112 const base::FilePath& default_path, gfx::NativeWindow parent); 112 Type type,
113 const std::string& title,
114 const base::FilePath& default_path,
115 gfx::NativeWindow parent);
113 116
114 GtkWidget* CreateFileOpenDialog(const std::string& title, 117 GtkWidget* CreateFileOpenDialog(const std::string& title,
115 const base::FilePath& default_path, gfx::NativeWindow parent); 118 const base::FilePath& default_path, gfx::NativeWindow parent);
116 119
117 GtkWidget* CreateMultiFileOpenDialog(const std::string& title, 120 GtkWidget* CreateMultiFileOpenDialog(const std::string& title,
118 const base::FilePath& default_path, gfx::NativeWindow parent); 121 const base::FilePath& default_path, gfx::NativeWindow parent);
119 122
120 GtkWidget* CreateSaveAsDialog(const std::string& title, 123 GtkWidget* CreateSaveAsDialog(const std::string& title,
121 const base::FilePath& default_path, gfx::NativeWindow parent); 124 const base::FilePath& default_path, gfx::NativeWindow parent);
122 125
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 233
231 std::string title_string = UTF16ToUTF8(title); 234 std::string title_string = UTF16ToUTF8(title);
232 235
233 file_type_index_ = file_type_index; 236 file_type_index_ = file_type_index;
234 if (file_types) 237 if (file_types)
235 file_types_ = *file_types; 238 file_types_ = *file_types;
236 239
237 GtkWidget* dialog = NULL; 240 GtkWidget* dialog = NULL;
238 switch (type) { 241 switch (type) {
239 case SELECT_FOLDER: 242 case SELECT_FOLDER:
240 dialog = CreateSelectFolderDialog(title_string, default_path, 243 case SELECT_UPLOAD_FOLDER:
244 dialog = CreateSelectFolderDialog(type, title_string, default_path,
241 owning_window); 245 owning_window);
242 break; 246 break;
243 case SELECT_OPEN_FILE: 247 case SELECT_OPEN_FILE:
244 dialog = CreateFileOpenDialog(title_string, default_path, owning_window); 248 dialog = CreateFileOpenDialog(title_string, default_path, owning_window);
245 break; 249 break;
246 case SELECT_OPEN_MULTI_FILE: 250 case SELECT_OPEN_MULTI_FILE:
247 dialog = CreateMultiFileOpenDialog(title_string, default_path, 251 dialog = CreateMultiFileOpenDialog(title_string, default_path,
248 owning_window); 252 owning_window);
249 break; 253 break;
250 case SELECT_SAVEAS_FILE: 254 case SELECT_SAVEAS_FILE:
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 default_path.value().c_str()); 393 default_path.value().c_str());
390 } 394 }
391 } else if (!last_opened_path_->empty()) { 395 } else if (!last_opened_path_->empty()) {
392 gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), 396 gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog),
393 last_opened_path_->value().c_str()); 397 last_opened_path_->value().c_str());
394 } 398 }
395 return dialog; 399 return dialog;
396 } 400 }
397 401
398 GtkWidget* SelectFileDialogImplGTK::CreateSelectFolderDialog( 402 GtkWidget* SelectFileDialogImplGTK::CreateSelectFolderDialog(
403 Type type,
399 const std::string& title, 404 const std::string& title,
400 const base::FilePath& default_path, 405 const base::FilePath& default_path,
401 gfx::NativeWindow parent) { 406 gfx::NativeWindow parent) {
402 std::string title_string = !title.empty() ? title : 407 std::string title_string = title;
408 if (title_string.empty()) {
409 title_string = (type == SELECT_UPLOAD_FOLDER) ?
410 l10n_util::GetStringUTF8(IDS_SELECT_UPLOAD_FOLDER_DIALOG_TITLE) :
403 l10n_util::GetStringUTF8(IDS_SELECT_FOLDER_DIALOG_TITLE); 411 l10n_util::GetStringUTF8(IDS_SELECT_FOLDER_DIALOG_TITLE);
412 }
413 std::string accept_button_label = (type == SELECT_UPLOAD_FOLDER) ?
414 l10n_util::GetStringUTF8(IDS_SELECT_UPLOAD_FOLDER_DIALOG_UPLOAD_BUTTON) :
415 GTK_STOCK_OPEN;
404 416
405 GtkWidget* dialog = 417 GtkWidget* dialog =
406 gtk_file_chooser_dialog_new(title_string.c_str(), NULL, 418 gtk_file_chooser_dialog_new(title_string.c_str(), NULL,
407 GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, 419 GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
408 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, 420 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
409 GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, 421 accept_button_label.c_str(),
422 GTK_RESPONSE_ACCEPT,
410 NULL); 423 NULL);
411 SetGtkTransientForAura(dialog, parent); 424 SetGtkTransientForAura(dialog, parent);
412 425
413 if (!default_path.empty()) { 426 if (!default_path.empty()) {
414 gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog), 427 gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog),
415 default_path.value().c_str()); 428 default_path.value().c_str());
416 } else if (!last_opened_path_->empty()) { 429 } else if (!last_opened_path_->empty()) {
417 gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), 430 gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog),
418 last_opened_path_->value().c_str()); 431 last_opened_path_->value().c_str());
419 } 432 }
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 g_free(filename); 620 g_free(filename);
608 if (pixbuf) { 621 if (pixbuf) {
609 gtk_image_set_from_pixbuf(GTK_IMAGE(preview_), pixbuf); 622 gtk_image_set_from_pixbuf(GTK_IMAGE(preview_), pixbuf);
610 g_object_unref(pixbuf); 623 g_object_unref(pixbuf);
611 } 624 }
612 gtk_file_chooser_set_preview_widget_active(GTK_FILE_CHOOSER(chooser), 625 gtk_file_chooser_set_preview_widget_active(GTK_FILE_CHOOSER(chooser),
613 pixbuf ? TRUE : FALSE); 626 pixbuf ? TRUE : FALSE);
614 } 627 }
615 628
616 } // namespace libgtk2ui 629 } // namespace libgtk2ui
OLDNEW
« no previous file with comments | « chrome/browser/resources/file_manager/js/file_selection.js ('k') | chrome/browser/ui/libgtk2ui/select_file_dialog_impl_kde.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698