| 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/gtk/collected_cookies_gtk.h" | 5 #include "chrome/browser/ui/gtk/collected_cookies_gtk.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include "base/prefs/pref_service.h" | 8 #include "base/prefs/pref_service.h" |
| 9 #include "chrome/browser/browsing_data/browsing_data_appcache_helper.h" | 9 #include "chrome/browser/browsing_data/browsing_data_appcache_helper.h" |
| 10 #include "chrome/browser/browsing_data/browsing_data_cookie_helper.h" | 10 #include "chrome/browser/browsing_data/browsing_data_cookie_helper.h" |
| (...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 259 gtk_button_box_set_layout(GTK_BUTTON_BOX(button_box), GTK_BUTTONBOX_START); | 259 gtk_button_box_set_layout(GTK_BUTTON_BOX(button_box), GTK_BUTTONBOX_START); |
| 260 gtk_box_set_spacing(GTK_BOX(button_box), ui::kControlSpacing); | 260 gtk_box_set_spacing(GTK_BOX(button_box), ui::kControlSpacing); |
| 261 gtk_box_pack_start(GTK_BOX(cookie_list_vbox), button_box, FALSE, FALSE, | 261 gtk_box_pack_start(GTK_BOX(cookie_list_vbox), button_box, FALSE, FALSE, |
| 262 ui::kControlSpacing); | 262 ui::kControlSpacing); |
| 263 block_allowed_cookie_button_ = gtk_button_new_with_label( | 263 block_allowed_cookie_button_ = gtk_button_new_with_label( |
| 264 l10n_util::GetStringUTF8(IDS_COLLECTED_COOKIES_BLOCK_BUTTON).c_str()); | 264 l10n_util::GetStringUTF8(IDS_COLLECTED_COOKIES_BLOCK_BUTTON).c_str()); |
| 265 g_signal_connect(block_allowed_cookie_button_, "clicked", | 265 g_signal_connect(block_allowed_cookie_button_, "clicked", |
| 266 G_CALLBACK(OnBlockAllowedButtonClickedThunk), this); | 266 G_CALLBACK(OnBlockAllowedButtonClickedThunk), this); |
| 267 gtk_container_add(GTK_CONTAINER(button_box), block_allowed_cookie_button_); | 267 gtk_container_add(GTK_CONTAINER(button_box), block_allowed_cookie_button_); |
| 268 | 268 |
| 269 delete_allowed_cookie_button_ = gtk_button_new_with_label( |
| 270 l10n_util::GetStringUTF8(IDS_COOKIES_REMOVE_LABEL).c_str()); |
| 271 g_signal_connect(delete_allowed_cookie_button_, "clicked", |
| 272 G_CALLBACK(OnDeleteAllowedButtonClickedThunk), this); |
| 273 gtk_container_add(GTK_CONTAINER(button_box), delete_allowed_cookie_button_); |
| 274 |
| 269 // Wrap the vbox inside an hbox so that we can specify padding along the | 275 // Wrap the vbox inside an hbox so that we can specify padding along the |
| 270 // horizontal axis. | 276 // horizontal axis. |
| 271 GtkWidget* box = gtk_hbox_new(FALSE, 0); | 277 GtkWidget* box = gtk_hbox_new(FALSE, 0); |
| 272 gtk_box_pack_start(GTK_BOX(box), cookie_list_vbox, TRUE, TRUE, | 278 gtk_box_pack_start(GTK_BOX(box), cookie_list_vbox, TRUE, TRUE, |
| 273 ui::kControlSpacing); | 279 ui::kControlSpacing); |
| 274 return box; | 280 return box; |
| 275 } | 281 } |
| 276 | 282 |
| 277 GtkWidget* CollectedCookiesGtk::CreateBlockedPane() { | 283 GtkWidget* CollectedCookiesGtk::CreateBlockedPane() { |
| 278 PrefService* prefs = Profile::FromBrowserContext( | 284 PrefService* prefs = Profile::FromBrowserContext( |
| (...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 430 return contains_host_node; | 436 return contains_host_node; |
| 431 } | 437 } |
| 432 | 438 |
| 433 void CollectedCookiesGtk::EnableControls() { | 439 void CollectedCookiesGtk::EnableControls() { |
| 434 // Update button states. | 440 // Update button states. |
| 435 bool enable_for_allowed_cookies = | 441 bool enable_for_allowed_cookies = |
| 436 SelectionContainsHostNode(allowed_selection_, | 442 SelectionContainsHostNode(allowed_selection_, |
| 437 allowed_cookies_tree_adapter_.get()); | 443 allowed_cookies_tree_adapter_.get()); |
| 438 gtk_widget_set_sensitive(block_allowed_cookie_button_, | 444 gtk_widget_set_sensitive(block_allowed_cookie_button_, |
| 439 enable_for_allowed_cookies); | 445 enable_for_allowed_cookies); |
| 446 gtk_widget_set_sensitive( |
| 447 delete_allowed_cookie_button_, |
| 448 gtk_tree_selection_count_selected_rows(allowed_selection_) > 0); |
| 440 | 449 |
| 441 bool enable_for_blocked_cookies = | 450 bool enable_for_blocked_cookies = |
| 442 SelectionContainsHostNode(blocked_selection_, | 451 SelectionContainsHostNode(blocked_selection_, |
| 443 blocked_cookies_tree_adapter_.get()); | 452 blocked_cookies_tree_adapter_.get()); |
| 444 gtk_widget_set_sensitive(allow_blocked_cookie_button_, | 453 gtk_widget_set_sensitive(allow_blocked_cookie_button_, |
| 445 enable_for_blocked_cookies); | 454 enable_for_blocked_cookies); |
| 446 gtk_widget_set_sensitive(for_session_blocked_cookie_button_, | 455 gtk_widget_set_sensitive(for_session_blocked_cookie_button_, |
| 447 enable_for_blocked_cookies); | 456 enable_for_blocked_cookies); |
| 448 } | 457 } |
| 449 | 458 |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 502 gtk_widget_show(infobar_); | 511 gtk_widget_show(infobar_); |
| 503 } | 512 } |
| 504 status_changed_ = true; | 513 status_changed_ = true; |
| 505 } | 514 } |
| 506 | 515 |
| 507 void CollectedCookiesGtk::OnBlockAllowedButtonClicked(GtkWidget* button) { | 516 void CollectedCookiesGtk::OnBlockAllowedButtonClicked(GtkWidget* button) { |
| 508 AddExceptions(allowed_selection_, allowed_cookies_tree_adapter_.get(), | 517 AddExceptions(allowed_selection_, allowed_cookies_tree_adapter_.get(), |
| 509 CONTENT_SETTING_BLOCK); | 518 CONTENT_SETTING_BLOCK); |
| 510 } | 519 } |
| 511 | 520 |
| 521 void CollectedCookiesGtk::OnDeleteAllowedButtonClicked(GtkWidget* button) { |
| 522 GtkTreeModel* model; |
| 523 GList* paths = gtk_tree_selection_get_selected_rows( |
| 524 allowed_selection_, &model); |
| 525 for (GList* item = paths; item; item = item->next) { |
| 526 GtkTreeIter iter; |
| 527 gtk_tree_model_get_iter( |
| 528 model, &iter, reinterpret_cast<GtkTreePath*>(item->data)); |
| 529 CookieTreeNode* node = static_cast<CookieTreeNode*>( |
| 530 allowed_cookies_tree_adapter_->GetNode(&iter)); |
| 531 allowed_cookies_tree_model_->DeleteCookieNode(node); |
| 532 } |
| 533 } |
| 534 |
| 512 void CollectedCookiesGtk::OnAllowBlockedButtonClicked(GtkWidget* button) { | 535 void CollectedCookiesGtk::OnAllowBlockedButtonClicked(GtkWidget* button) { |
| 513 AddExceptions(blocked_selection_, blocked_cookies_tree_adapter_.get(), | 536 AddExceptions(blocked_selection_, blocked_cookies_tree_adapter_.get(), |
| 514 CONTENT_SETTING_ALLOW); | 537 CONTENT_SETTING_ALLOW); |
| 515 } | 538 } |
| 516 | 539 |
| 517 void CollectedCookiesGtk::OnForSessionBlockedButtonClicked(GtkWidget* button) { | 540 void CollectedCookiesGtk::OnForSessionBlockedButtonClicked(GtkWidget* button) { |
| 518 AddExceptions(blocked_selection_, blocked_cookies_tree_adapter_.get(), | 541 AddExceptions(blocked_selection_, blocked_cookies_tree_adapter_.get(), |
| 519 CONTENT_SETTING_SESSION_ONLY); | 542 CONTENT_SETTING_SESSION_ONLY); |
| 520 } | 543 } |
| 521 | 544 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 538 } | 561 } |
| 539 | 562 |
| 540 void CollectedCookiesGtk::OnTreeViewSelectionChange(GtkWidget* selection) { | 563 void CollectedCookiesGtk::OnTreeViewSelectionChange(GtkWidget* selection) { |
| 541 EnableControls(); | 564 EnableControls(); |
| 542 ShowCookieInfo(gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook_))); | 565 ShowCookieInfo(gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook_))); |
| 543 } | 566 } |
| 544 | 567 |
| 545 void CollectedCookiesGtk::OnDestroy(GtkWidget* widget) { | 568 void CollectedCookiesGtk::OnDestroy(GtkWidget* widget) { |
| 546 delete this; | 569 delete this; |
| 547 } | 570 } |
| OLD | NEW |