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

Side by Side Diff: chrome/browser/ui/gtk/bookmarks/bookmark_editor_gtk.cc

Issue 7310023: Pre-fill the 'Add Page' bookmark window with the current page (gtk and windows). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 9 years, 5 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) 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/gtk/bookmarks/bookmark_editor_gtk.h" 5 #include "chrome/browser/ui/gtk/bookmarks/bookmark_editor_gtk.h"
6 6
7 #include <gtk/gtk.h> 7 #include <gtk/gtk.h>
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 // +---------------------------------------------------------------+ 269 // +---------------------------------------------------------------+
270 // 270 //
271 // * The url and corresponding label are not shown if creating a new folder. 271 // * The url and corresponding label are not shown if creating a new folder.
272 GtkWidget* content_area = GTK_DIALOG(dialog_)->vbox; 272 GtkWidget* content_area = GTK_DIALOG(dialog_)->vbox;
273 gtk_box_set_spacing(GTK_BOX(content_area), gtk_util::kContentAreaSpacing); 273 gtk_box_set_spacing(GTK_BOX(content_area), gtk_util::kContentAreaSpacing);
274 274
275 GtkWidget* vbox = gtk_vbox_new(FALSE, 12); 275 GtkWidget* vbox = gtk_vbox_new(FALSE, 12);
276 276
277 name_entry_ = gtk_entry_new(); 277 name_entry_ = gtk_entry_new();
278 std::string title; 278 std::string title;
279 GURL url;
279 if (details_.type == EditDetails::EXISTING_NODE) { 280 if (details_.type == EditDetails::EXISTING_NODE) {
280 title = UTF16ToUTF8(details_.existing_node->GetTitle()); 281 title = UTF16ToUTF8(details_.existing_node->GetTitle());
282 url = details_.existing_node->GetURL();
281 } else if (details_.type == EditDetails::NEW_FOLDER) { 283 } else if (details_.type == EditDetails::NEW_FOLDER) {
282 title = l10n_util::GetStringUTF8(IDS_BOOMARK_EDITOR_NEW_FOLDER_NAME); 284 title = l10n_util::GetStringUTF8(IDS_BOOMARK_EDITOR_NEW_FOLDER_NAME);
285 } else if (details_.type == EditDetails::NEW_URL) {
286 string16 title16;
287 bookmark_utils::GetURLAndTitleToBookmarkFromCurrentTab(profile_,
288 &url, &title16);
289 title = UTF16ToUTF8(title16);
283 } 290 }
284 gtk_entry_set_text(GTK_ENTRY(name_entry_), title.c_str()); 291 gtk_entry_set_text(GTK_ENTRY(name_entry_), title.c_str());
285 g_signal_connect(name_entry_, "changed", 292 g_signal_connect(name_entry_, "changed",
286 G_CALLBACK(OnEntryChangedThunk), this); 293 G_CALLBACK(OnEntryChangedThunk), this);
287 gtk_entry_set_activates_default(GTK_ENTRY(name_entry_), TRUE); 294 gtk_entry_set_activates_default(GTK_ENTRY(name_entry_), TRUE);
288 295
289 GtkWidget* table; 296 GtkWidget* table;
290 if (details_.type != EditDetails::NEW_FOLDER) { 297 if (details_.type != EditDetails::NEW_FOLDER) {
291 url_entry_ = gtk_entry_new(); 298 url_entry_ = gtk_entry_new();
292 std::string url_spec; 299 gtk_entry_set_text(GTK_ENTRY(url_entry_), url.spec().c_str());
293 if (details_.type == EditDetails::EXISTING_NODE)
294 url_spec = details_.existing_node->GetURL().spec();
295 gtk_entry_set_text(GTK_ENTRY(url_entry_), url_spec.c_str());
296 g_signal_connect(url_entry_, "changed", 300 g_signal_connect(url_entry_, "changed",
297 G_CALLBACK(OnEntryChangedThunk), this); 301 G_CALLBACK(OnEntryChangedThunk), this);
298 gtk_entry_set_activates_default(GTK_ENTRY(url_entry_), TRUE); 302 gtk_entry_set_activates_default(GTK_ENTRY(url_entry_), TRUE);
299 table = gtk_util::CreateLabeledControlsGroup(NULL, 303 table = gtk_util::CreateLabeledControlsGroup(NULL,
300 l10n_util::GetStringUTF8(IDS_BOOMARK_EDITOR_NAME_LABEL).c_str(), 304 l10n_util::GetStringUTF8(IDS_BOOMARK_EDITOR_NAME_LABEL).c_str(),
301 name_entry_, 305 name_entry_,
302 l10n_util::GetStringUTF8(IDS_BOOMARK_EDITOR_URL_LABEL).c_str(), 306 l10n_util::GetStringUTF8(IDS_BOOMARK_EDITOR_URL_LABEL).c_str(),
303 url_entry_, 307 url_entry_,
304 NULL); 308 NULL);
305 309
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after
575 GTK_TREE_MODEL(tree_store_), &new_item_iter); 579 GTK_TREE_MODEL(tree_store_), &new_item_iter);
576 gtk_tree_view_expand_to_path(GTK_TREE_VIEW(tree_view_), path); 580 gtk_tree_view_expand_to_path(GTK_TREE_VIEW(tree_view_), path);
577 581
578 // Make the folder name editable. 582 // Make the folder name editable.
579 gtk_tree_view_set_cursor(GTK_TREE_VIEW(tree_view_), path, 583 gtk_tree_view_set_cursor(GTK_TREE_VIEW(tree_view_), path,
580 gtk_tree_view_get_column(GTK_TREE_VIEW(tree_view_), 0), 584 gtk_tree_view_get_column(GTK_TREE_VIEW(tree_view_), 0),
581 TRUE); 585 TRUE);
582 586
583 gtk_tree_path_free(path); 587 gtk_tree_path_free(path);
584 } 588 }
OLDNEW
« no previous file with comments | « chrome/browser/bookmarks/bookmark_utils.cc ('k') | chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698