diff options
-rw-r--r-- | chrome/browser/browser_main.cc | 4 | ||||
-rw-r--r-- | chrome/browser/gtk/bookmark_manager_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/browser_window_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/hung_renderer_dialog_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/keyword_editor_view.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/options/fonts_languages_window_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/options/options_window_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/options/passwords_exceptions_window_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/page_info_window_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/process_singleton_dialog.cc | 1 | ||||
-rw-r--r-- | chrome/browser/gtk/task_manager_gtk.cc | 1 | ||||
-rw-r--r-- | chrome/common/gtk_util.cc | 20 | ||||
-rw-r--r-- | chrome/common/gtk_util.h | 3 |
13 files changed, 23 insertions, 14 deletions
diff --git a/chrome/browser/browser_main.cc b/chrome/browser/browser_main.cc index d487b33..d9963c1 100644 --- a/chrome/browser/browser_main.cc +++ b/chrome/browser/browser_main.cc @@ -451,6 +451,10 @@ int BrowserMain(const MainFunctionParams& parameters) { } #endif // !defined(OS_MACOSX) +#if defined(OS_LINUX) + gtk_util::SetDefaultWindowIcon(); +#endif + #if defined(OS_WIN) // This is experimental code. See first_run_win.cc for more info. if (parsed_command_line.HasSwitch(switches::kTryChromeAgain)) { diff --git a/chrome/browser/gtk/bookmark_manager_gtk.cc b/chrome/browser/gtk/bookmark_manager_gtk.cc index 8c33312..278f8ac 100644 --- a/chrome/browser/gtk/bookmark_manager_gtk.cc +++ b/chrome/browser/gtk/bookmark_manager_gtk.cc @@ -308,7 +308,6 @@ BookmarkManagerGtk::BookmarkManagerGtk(Profile* profile) ignore_rightclicks_(false) { InitWidgets(); ConnectAccelerators(); - gtk_util::SetWindowIcon(GTK_WINDOW(window_)); model_->AddObserver(this); if (model_->IsLoaded()) diff --git a/chrome/browser/gtk/browser_window_gtk.cc b/chrome/browser/gtk/browser_window_gtk.cc index d3adae5..acb9745 100644 --- a/chrome/browser/gtk/browser_window_gtk.cc +++ b/chrome/browser/gtk/browser_window_gtk.cc @@ -513,7 +513,6 @@ BrowserWindowGtk::BrowserWindowGtk(Browser* browser) gtk_window_group_add_window(gtk_window_group_new(), window_); g_object_unref(gtk_window_get_group(window_)); - gtk_util::SetWindowIcon(window_); SetGeometryHints(); ConnectHandlersToSignals(); ConnectAccelerators(); diff --git a/chrome/browser/gtk/hung_renderer_dialog_gtk.cc b/chrome/browser/gtk/hung_renderer_dialog_gtk.cc index 2c91ab7..8c67ab4 100644 --- a/chrome/browser/gtk/hung_renderer_dialog_gtk.cc +++ b/chrome/browser/gtk/hung_renderer_dialog_gtk.cc @@ -74,7 +74,6 @@ void HungRendererDialogGtk::Init() { l10n_util::GetStringUTF8(IDS_BROWSER_HANGMONITOR_RENDERER_WAIT).c_str(), GTK_RESPONSE_OK, NULL)); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); gtk_dialog_set_default_response(dialog_, GTK_RESPONSE_OK); g_signal_connect(dialog_, "response", G_CALLBACK(OnDialogResponseThunk), this); diff --git a/chrome/browser/gtk/keyword_editor_view.cc b/chrome/browser/gtk/keyword_editor_view.cc index f3e6e19..763ab32 100644 --- a/chrome/browser/gtk/keyword_editor_view.cc +++ b/chrome/browser/gtk/keyword_editor_view.cc @@ -92,7 +92,6 @@ void KeywordEditorView::Init() { GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); gtk_window_set_default_size(GTK_WINDOW(dialog_), kDialogDefaultWidth, kDialogDefaultHeight); diff --git a/chrome/browser/gtk/options/fonts_languages_window_gtk.cc b/chrome/browser/gtk/options/fonts_languages_window_gtk.cc index af0242e..5898b4a 100644 --- a/chrome/browser/gtk/options/fonts_languages_window_gtk.cc +++ b/chrome/browser/gtk/options/fonts_languages_window_gtk.cc @@ -72,7 +72,6 @@ FontsLanguagesWindowGtk::FontsLanguagesWindowGtk(Profile* profile) GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); gtk_window_set_default_size(GTK_WINDOW(dialog_), 500, -1); gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog_)->vbox), diff --git a/chrome/browser/gtk/options/options_window_gtk.cc b/chrome/browser/gtk/options/options_window_gtk.cc index 28b9820..2f5c750 100644 --- a/chrome/browser/gtk/options/options_window_gtk.cc +++ b/chrome/browser/gtk/options/options_window_gtk.cc @@ -97,7 +97,6 @@ OptionsWindowGtk::OptionsWindowGtk(Profile* profile) gtk_window_set_default_size(GTK_WINDOW(dialog_), 500, -1); gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog_)->vbox), gtk_util::kContentAreaSpacing); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); notebook_ = gtk_notebook_new(); diff --git a/chrome/browser/gtk/options/passwords_exceptions_window_gtk.cc b/chrome/browser/gtk/options/passwords_exceptions_window_gtk.cc index 1f1587b..d163a4f 100644 --- a/chrome/browser/gtk/options/passwords_exceptions_window_gtk.cc +++ b/chrome/browser/gtk/options/passwords_exceptions_window_gtk.cc @@ -83,7 +83,6 @@ PasswordsExceptionsWindowGtk::PasswordsExceptionsWindowGtk(Profile* profile) kPasswordsExceptionsWindowInitialHeight); gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog_)->vbox), gtk_util::kContentAreaSpacing); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); notebook_ = gtk_notebook_new(); diff --git a/chrome/browser/gtk/page_info_window_gtk.cc b/chrome/browser/gtk/page_info_window_gtk.cc index 3a6ec47..dc3b6f6 100644 --- a/chrome/browser/gtk/page_info_window_gtk.cc +++ b/chrome/browser/gtk/page_info_window_gtk.cc @@ -84,7 +84,6 @@ PageInfoWindowGtk::PageInfoWindowGtk(gfx::NativeWindow parent, gtk_window_set_default_size(GTK_WINDOW(dialog_), 500, -1); gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog_)->vbox), gtk_util::kContentAreaSpacing); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); g_signal_connect(dialog_, "response", G_CALLBACK(OnDialogResponse), NULL); g_signal_connect(dialog_, "destroy", G_CALLBACK(OnDestroy), this); diff --git a/chrome/browser/gtk/process_singleton_dialog.cc b/chrome/browser/gtk/process_singleton_dialog.cc index f63e789..a922bda 100644 --- a/chrome/browser/gtk/process_singleton_dialog.cc +++ b/chrome/browser/gtk/process_singleton_dialog.cc @@ -26,7 +26,6 @@ ProcessSingletonDialog::ProcessSingletonDialog(const std::string& message) { l10n_util::GetStringUTF8(IDS_PRODUCT_NAME).c_str()); gtk_dialog_add_button(GTK_DIALOG(dialog_), GTK_STOCK_QUIT, GTK_RESPONSE_REJECT); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); g_signal_connect(G_OBJECT(dialog_), "response", G_CALLBACK(OnResponse), this); diff --git a/chrome/browser/gtk/task_manager_gtk.cc b/chrome/browser/gtk/task_manager_gtk.cc index e9d4095..58c2d72 100644 --- a/chrome/browser/gtk/task_manager_gtk.cc +++ b/chrome/browser/gtk/task_manager_gtk.cc @@ -351,7 +351,6 @@ void TaskManagerGtk::Init() { gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog_)->vbox), gtk_util::kContentAreaSpacing); - gtk_util::SetWindowIcon(GTK_WINDOW(dialog_)); g_signal_connect(G_OBJECT(dialog_), "response", G_CALLBACK(OnResponse), this); g_signal_connect(G_OBJECT(dialog_), "button-release-event", diff --git a/chrome/common/gtk_util.cc b/chrome/common/gtk_util.cc index 31f9b82..16ce02b 100644 --- a/chrome/common/gtk_util.cc +++ b/chrome/common/gtk_util.cc @@ -49,6 +49,15 @@ gboolean OnMouseButtonReleased(GtkWidget* widget, GdkEventButton* event, return TRUE; } +// Ownership of |icon_list| is passed to the caller. +GList* GetIconList() { + ResourceBundle& rb = ResourceBundle::GetSharedInstance(); + GList* icon_list = NULL; + icon_list = g_list_append(icon_list, rb.GetPixbufNamed(IDR_PRODUCT_ICON_32)); + icon_list = g_list_append(icon_list, rb.GetPixbufNamed(IDR_PRODUCT_LOGO_16)); + return icon_list; +} + } // namespace namespace event_utils { @@ -310,14 +319,17 @@ bool WidgetContainsCursor(GtkWidget* widget) { } void SetWindowIcon(GtkWindow* window) { - ResourceBundle& rb = ResourceBundle::GetSharedInstance(); - GList* icon_list = NULL; - icon_list = g_list_append(icon_list, rb.GetPixbufNamed(IDR_PRODUCT_ICON_32)); - icon_list = g_list_append(icon_list, rb.GetPixbufNamed(IDR_PRODUCT_LOGO_16)); + GList* icon_list = GetIconList(); gtk_window_set_icon_list(window, icon_list); g_list_free(icon_list); } +void SetDefaultWindowIcon() { + GList* icon_list = GetIconList(); + gtk_window_set_default_icon_list(icon_list); + g_list_free(icon_list); +} + GtkWidget* AddButtonToDialog(GtkWidget* dialog, const gchar* text, const gchar* stock_id, gint response_id) { GtkWidget* button = gtk_button_new_with_label(text); diff --git a/chrome/common/gtk_util.h b/chrome/common/gtk_util.h index 024bf02..3811d74 100644 --- a/chrome/common/gtk_util.h +++ b/chrome/common/gtk_util.h @@ -130,6 +130,9 @@ bool WidgetContainsCursor(GtkWidget* widget); // border or alt-tab list). void SetWindowIcon(GtkWindow* window); +// Sets the default window icon for windows created in this app. +void SetDefaultWindowIcon(); + // Adds an action button with the given text to the dialog. Only useful when you // want a stock icon but not the stock text to go with it. Returns the button. GtkWidget* AddButtonToDialog(GtkWidget* dialog, const gchar* text, |