[Xfce4-commits] <thunar:nick/gtk3> Make the whole thing compile with gtk3.
Nick Schermer
noreply at xfce.org
Tue May 15 19:52:01 CEST 2012
Updating branch refs/heads/nick/gtk3
to 4270285820363ac029fa0a2568b9dd146fd3f9cb (commit)
from 8e9737cbbe4d9df7dcd8aa1951d6b5a15e9ea75b (commit)
commit 4270285820363ac029fa0a2568b9dd146fd3f9cb
Author: Nick Schermer <nick at xfce.org>
Date: Tue May 15 19:49:33 2012 +0200
Make the whole thing compile with gtk3.
Disabled the text-renderer for now, and the throbber has
been replaced with the gtk spinner.
plugins/thunar-sbr/thunar-sbr-case-renamer.c | 6 +-
plugins/thunar-sbr/thunar-sbr-date-renamer.c | 14 +-
plugins/thunar-sbr/thunar-sbr-insert-renamer.c | 10 +-
plugins/thunar-sbr/thunar-sbr-number-renamer.c | 14 +-
plugins/thunar-sbr/thunar-sbr-remove-renamer.c | 10 +-
plugins/thunar-sbr/thunar-sbr-replace-renamer.c | 4 +-
plugins/thunar-sendto-email/main.c | 8 +-
plugins/thunar-uca/thunar-uca-chooser.c | 13 +-
plugins/thunar-uca/thunar-uca-editor.c | 17 +-
plugins/thunar-wallpaper/twp-provider.c | 9 +-
thunar/Makefile.am | 11 -
thunar/thunar-details-view.c | 5 +-
thunar/thunar-settings | 14 +
thunar/thunar-shortcuts-icon-renderer.c | 29 +-
thunar/thunar-shortcuts-view.c | 22 +-
thunar/thunar-size-label.c | 11 +-
thunar/thunar-standard-view.c | 96 +++---
thunar/thunar-statusbar.c | 5 +-
thunar/thunar-templates-action.c | 26 ++-
thunar/thunar-throbber-fallback.h | 31 --
thunar/thunar-throbber-fallback.png | Bin 2713 -> 0 bytes
thunar/thunar-throbber.c | 384 -----------------------
thunar/thunar-throbber.h | 47 ---
thunar/thunar-tree-view.c | 39 ++-
thunar/thunar-window.c | 33 ++-
25 files changed, 216 insertions(+), 642 deletions(-)
diff --git a/plugins/thunar-sbr/thunar-sbr-case-renamer.c b/plugins/thunar-sbr/thunar-sbr-case-renamer.c
index 9f8f2e8..f196c91 100644
--- a/plugins/thunar-sbr/thunar-sbr-case-renamer.c
+++ b/plugins/thunar-sbr/thunar-sbr-case-renamer.c
@@ -110,7 +110,7 @@ thunar_sbr_case_renamer_init (ThunarSbrCaseRenamer *case_renamer)
GtkWidget *hbox;
guint n;
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_box_pack_start (GTK_BOX (case_renamer), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox);
@@ -118,10 +118,10 @@ thunar_sbr_case_renamer_init (ThunarSbrCaseRenamer *case_renamer)
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_CASE_RENAMER_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (case_renamer), "mode", G_OBJECT (combo), "active");
gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, FALSE, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), combo);
diff --git a/plugins/thunar-sbr/thunar-sbr-date-renamer.c b/plugins/thunar-sbr/thunar-sbr-date-renamer.c
index 6f3afcb..c70dbf5 100644
--- a/plugins/thunar-sbr/thunar-sbr-date-renamer.c
+++ b/plugins/thunar-sbr/thunar-sbr-date-renamer.c
@@ -184,11 +184,11 @@ thunar_sbr_date_renamer_init (ThunarSbrDateRenamer *date_renamer)
GtkAdjustment *adjustment;
guint n;
- vbox = gtk_vbox_new (FALSE, 6);
+ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
gtk_box_pack_start (GTK_BOX (date_renamer), vbox, TRUE, TRUE, 0);
gtk_widget_show (vbox);
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox);
@@ -196,10 +196,10 @@ thunar_sbr_date_renamer_init (ThunarSbrDateRenamer *date_renamer)
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_DATE_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (date_renamer), "mode", G_OBJECT (combo), "active");
gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, FALSE, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), combo);
@@ -236,7 +236,7 @@ thunar_sbr_date_renamer_init (ThunarSbrDateRenamer *date_renamer)
atk_relation_set_add (relations, relation);
g_object_unref (G_OBJECT (relation));
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox);
@@ -258,10 +258,10 @@ thunar_sbr_date_renamer_init (ThunarSbrDateRenamer *date_renamer)
adjustment = gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (spinner));
exo_mutual_binding_new (G_OBJECT (date_renamer), "offset", G_OBJECT (adjustment), "value");
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_OFFSET_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (date_renamer), "offset-mode", G_OBJECT (combo), "active");
gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, FALSE, 0);
g_type_class_unref (klass);
diff --git a/plugins/thunar-sbr/thunar-sbr-insert-renamer.c b/plugins/thunar-sbr/thunar-sbr-insert-renamer.c
index 88d49a8..90c2f8c 100644
--- a/plugins/thunar-sbr/thunar-sbr-insert-renamer.c
+++ b/plugins/thunar-sbr/thunar-sbr-insert-renamer.c
@@ -167,10 +167,10 @@ thunar_sbr_insert_renamer_init (ThunarSbrInsertRenamer *insert_renamer)
gtk_box_pack_start (GTK_BOX (insert_renamer), table, TRUE, TRUE, 0);
gtk_widget_show (table);
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_INSERT_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (insert_renamer), "mode", G_OBJECT (combo), "active");
gtk_table_attach (GTK_TABLE (table), combo, 0, 1, 0, 1, GTK_FILL, 0, 0, 0);
g_type_class_unref (klass);
@@ -199,7 +199,7 @@ thunar_sbr_insert_renamer_init (ThunarSbrInsertRenamer *insert_renamer)
gtk_table_attach (GTK_TABLE (table), label, 0, 2, 1, 2, GTK_FILL, 0, 0, 0);
gtk_widget_show (label);
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_table_attach (GTK_TABLE (table), hbox, 2, 3, 1, 2, GTK_FILL, 0, 0, 0);
gtk_widget_show (hbox);
@@ -224,10 +224,10 @@ thunar_sbr_insert_renamer_init (ThunarSbrInsertRenamer *insert_renamer)
atk_relation_set_add (relations, relation);
g_object_unref (G_OBJECT (relation));
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_OFFSET_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (insert_renamer), "offset-mode", G_OBJECT (combo), "active");
gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, FALSE, 0);
g_type_class_unref (klass);
diff --git a/plugins/thunar-sbr/thunar-sbr-number-renamer.c b/plugins/thunar-sbr/thunar-sbr-number-renamer.c
index 18e1783..a3720e5 100644
--- a/plugins/thunar-sbr/thunar-sbr-number-renamer.c
+++ b/plugins/thunar-sbr/thunar-sbr-number-renamer.c
@@ -177,7 +177,7 @@ thunar_sbr_number_renamer_init (ThunarSbrNumberRenamer *number_renamer)
GtkWidget *hbox;
guint n;
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_box_pack_start (GTK_BOX (number_renamer), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox);
@@ -185,10 +185,10 @@ thunar_sbr_number_renamer_init (ThunarSbrNumberRenamer *number_renamer)
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_NUMBER_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (number_renamer), "mode", G_OBJECT (combo), "active");
gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, FALSE, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), combo);
@@ -223,7 +223,7 @@ thunar_sbr_number_renamer_init (ThunarSbrNumberRenamer *number_renamer)
atk_relation_set_add (relations, relation);
g_object_unref (G_OBJECT (relation));
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_box_pack_end (GTK_BOX (number_renamer), hbox, FALSE, FALSE, 0);
gtk_widget_show (hbox);
@@ -231,10 +231,10 @@ thunar_sbr_number_renamer_init (ThunarSbrNumberRenamer *number_renamer)
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
gtk_widget_show (label);
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_TEXT_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (number_renamer), "text-mode", G_OBJECT (combo), "active");
gtk_box_pack_start (GTK_BOX (hbox), combo, FALSE, FALSE, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), combo);
@@ -488,7 +488,7 @@ thunar_sbr_number_renamer_update (ThunarSbrNumberRenamer *number_renamer)
}
/* check if the start entry is realized */
- if (GTK_WIDGET_REALIZED (number_renamer->start_entry))
+ if (gtk_widget_get_realized (GTK_WIDGET (number_renamer->start_entry)))
{
/* check if the "start" value is valid */
if (G_UNLIKELY (invalid))
diff --git a/plugins/thunar-sbr/thunar-sbr-remove-renamer.c b/plugins/thunar-sbr/thunar-sbr-remove-renamer.c
index 0761814..c3dd749 100644
--- a/plugins/thunar-sbr/thunar-sbr-remove-renamer.c
+++ b/plugins/thunar-sbr/thunar-sbr-remove-renamer.c
@@ -198,10 +198,10 @@ thunar_sbr_remove_renamer_init (ThunarSbrRemoveRenamer *remove_renamer)
atk_relation_set_add (relations, relation);
g_object_unref (G_OBJECT (relation));
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_OFFSET_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (remove_renamer), "start-offset-mode", G_OBJECT (combo), "active");
gtk_table_attach (GTK_TABLE (table), combo, 2, 3, 0, 1, GTK_FILL, 0, 0, 0);
g_type_class_unref (klass);
@@ -233,10 +233,10 @@ thunar_sbr_remove_renamer_init (ThunarSbrRemoveRenamer *remove_renamer)
atk_relation_set_add (relations, relation);
g_object_unref (G_OBJECT (relation));
- combo = gtk_combo_box_new_text ();
+ combo = gtk_combo_box_text_new ();
klass = g_type_class_ref (THUNAR_SBR_TYPE_OFFSET_MODE);
for (n = 0; n < klass->n_values; ++n)
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _(klass->values[n].value_nick));
+ gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), NULL, _(klass->values[n].value_nick));
exo_mutual_binding_new (G_OBJECT (remove_renamer), "end-offset-mode", G_OBJECT (combo), "active");
gtk_table_attach (GTK_TABLE (table), combo, 2, 3, 1, 2, GTK_FILL, 0, 0, 0);
g_type_class_unref (klass);
@@ -374,7 +374,7 @@ thunar_sbr_remove_renamer_update (ThunarSbrRemoveRenamer *remove_renamer)
guint end_offset;
/* check if the renamer is realized */
- if (GTK_WIDGET_REALIZED (remove_renamer))
+ if (gtk_widget_get_realized (GTK_WIDGET (remove_renamer)))
{
/* check if start and end offset make sense */
end_offset = (remove_renamer->end_offset_mode == THUNAR_SBR_OFFSET_MODE_LEFT)
diff --git a/plugins/thunar-sbr/thunar-sbr-replace-renamer.c b/plugins/thunar-sbr/thunar-sbr-replace-renamer.c
index ef51512..4ae70c2 100644
--- a/plugins/thunar-sbr/thunar-sbr-replace-renamer.c
+++ b/plugins/thunar-sbr/thunar-sbr-replace-renamer.c
@@ -614,7 +614,7 @@ thunar_sbr_replace_renamer_pcre_update (ThunarSbrReplaceRenamer *replace_renamer
g_free (message);
/* check if the entry is realized */
- if (GTK_WIDGET_REALIZED (replace_renamer->pattern_entry))
+ if (gtk_widget_get_realized (GTK_WIDGET (replace_renamer->pattern_entry)))
{
/* if GTK+ wouldn't be that stupid with style properties and
* type plugins, this would be themable, but unfortunately
@@ -631,7 +631,7 @@ thunar_sbr_replace_renamer_pcre_update (ThunarSbrReplaceRenamer *replace_renamer
else
{
/* check if the entry is realized */
- if (GTK_WIDGET_REALIZED (replace_renamer->pattern_entry))
+ if (gtk_widget_get_realized (GTK_WIDGET (replace_renamer->pattern_entry)))
{
/* reset background/text color */
gtk_widget_modify_base (replace_renamer->pattern_entry, GTK_STATE_NORMAL, NULL);
diff --git a/plugins/thunar-sendto-email/main.c b/plugins/thunar-sendto-email/main.c
index c6e8f11..09685ff 100644
--- a/plugins/thunar-sendto-email/main.c
+++ b/plugins/thunar-sendto-email/main.c
@@ -268,16 +268,16 @@ tse_progress (const gchar *working_directory,
/* allocate the progress dialog */
dialog = gtk_dialog_new_with_buttons (_("Compressing files..."),
- NULL, GTK_DIALOG_NO_SEPARATOR,
+ NULL, 0,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
NULL);
gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_CANCEL);
gtk_window_set_default_size (GTK_WINDOW (dialog), 300, -1);
/* setup the hbox */
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
- gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, TRUE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), hbox, TRUE, TRUE, 0);
gtk_widget_show (hbox);
/* setup the image */
@@ -287,7 +287,7 @@ tse_progress (const gchar *working_directory,
gtk_widget_show (image);
/* setup the vbox */
- vbox = gtk_vbox_new (FALSE, 12);
+ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0);
gtk_widget_show (vbox);
diff --git a/plugins/thunar-uca/thunar-uca-chooser.c b/plugins/thunar-uca/thunar-uca-chooser.c
index f58799d..1b151f0 100644
--- a/plugins/thunar-uca/thunar-uca-chooser.c
+++ b/plugins/thunar-uca/thunar-uca-chooser.c
@@ -110,14 +110,13 @@ thunar_uca_chooser_init (ThunarUcaChooser *uca_chooser)
gtk_dialog_add_button (GTK_DIALOG (uca_chooser), GTK_STOCK_HELP, GTK_RESPONSE_HELP);
gtk_dialog_add_button (GTK_DIALOG (uca_chooser), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE);
gtk_dialog_set_default_response (GTK_DIALOG (uca_chooser), GTK_RESPONSE_CLOSE);
- gtk_dialog_set_has_separator (GTK_DIALOG (uca_chooser), FALSE);
gtk_window_set_default_size (GTK_WINDOW (uca_chooser), 500, 350);
gtk_window_set_destroy_with_parent (GTK_WINDOW (uca_chooser), TRUE);
gtk_window_set_title (GTK_WINDOW (uca_chooser), _("Custom Actions"));
- hbox = gtk_hbox_new (FALSE, 3);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 6);
- gtk_box_pack_start (GTK_BOX (GTK_DIALOG (uca_chooser)->vbox), hbox, FALSE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (uca_chooser))), hbox, FALSE, TRUE, 0);
gtk_widget_show (hbox);
image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DND);
@@ -130,9 +129,9 @@ thunar_uca_chooser_init (ThunarUcaChooser *uca_chooser)
gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
gtk_widget_show (label);
- hbox = gtk_hbox_new (FALSE, 3);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 3);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 6);
- gtk_box_pack_start (GTK_BOX (GTK_DIALOG (uca_chooser)->vbox), hbox, TRUE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (uca_chooser))), hbox, TRUE, TRUE, 0);
gtk_widget_show (hbox);
swin = gtk_scrolled_window_new (NULL, NULL);
@@ -165,7 +164,7 @@ thunar_uca_chooser_init (ThunarUcaChooser *uca_chooser)
gtk_tree_view_column_pack_start (column, renderer, TRUE);
gtk_tree_view_column_set_attributes (column, renderer, "markup", THUNAR_UCA_MODEL_COLUMN_STOCK_LABEL, NULL);
- vbox = gtk_vbox_new (FALSE, 3);
+ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 3);
gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 0);
gtk_widget_show (vbox);
@@ -233,7 +232,7 @@ thunar_uca_chooser_key_press_event (GtkWidget *widget,
GdkEventKey *event)
{
/* close chooser window on Esc key press */
- if (G_UNLIKELY (event->keyval == GDK_Escape))
+ if (G_UNLIKELY (event->keyval == GDK_KEY_Escape))
{
gtk_dialog_response (GTK_DIALOG (widget), GTK_RESPONSE_CLOSE);
return TRUE;
diff --git a/plugins/thunar-uca/thunar-uca-editor.c b/plugins/thunar-uca/thunar-uca-editor.c
index 00add99..fc2f2a8 100644
--- a/plugins/thunar-uca/thunar-uca-editor.c
+++ b/plugins/thunar-uca/thunar-uca-editor.c
@@ -107,13 +107,12 @@ thunar_uca_editor_init (ThunarUcaEditor *uca_editor)
gtk_dialog_add_button (GTK_DIALOG (uca_editor), GTK_STOCK_OK, GTK_RESPONSE_OK);
gtk_dialog_set_alternative_button_order (GTK_DIALOG (uca_editor), GTK_RESPONSE_OK, GTK_RESPONSE_CANCEL, -1);
gtk_dialog_set_default_response (GTK_DIALOG (uca_editor), GTK_RESPONSE_OK);
- gtk_dialog_set_has_separator (GTK_DIALOG (uca_editor), FALSE);
gtk_window_set_destroy_with_parent (GTK_WINDOW (uca_editor), TRUE);
gtk_window_set_resizable (GTK_WINDOW (uca_editor), FALSE);
notebook = gtk_notebook_new ();
gtk_container_set_border_width (GTK_CONTAINER (notebook), 6);
- gtk_box_pack_start (GTK_BOX (GTK_DIALOG (uca_editor)->vbox), notebook, TRUE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (uca_editor))), notebook, TRUE, TRUE, 0);
gtk_widget_show (notebook);
/*
@@ -168,7 +167,7 @@ thunar_uca_editor_init (ThunarUcaEditor *uca_editor)
gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3, GTK_FILL, GTK_FILL, 0, 0);
gtk_widget_show (label);
- hbox = gtk_hbox_new (FALSE, 2);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2);
gtk_table_attach (GTK_TABLE (table), hbox, 1, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
gtk_widget_show (hbox);
@@ -234,7 +233,7 @@ thunar_uca_editor_init (ThunarUcaEditor *uca_editor)
gtk_table_attach (GTK_TABLE (table), align, 0, 2, 5, 6, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
gtk_widget_show (align);
- hbox = gtk_hbox_new (FALSE, 6);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
gtk_table_attach (GTK_TABLE (table), hbox, 0, 2, 6, 7, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
gtk_widget_show (hbox);
@@ -243,7 +242,7 @@ thunar_uca_editor_init (ThunarUcaEditor *uca_editor)
gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0);
gtk_widget_show (image);
- vbox = gtk_vbox_new (FALSE, 6);
+ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0);
gtk_widget_show (vbox);
@@ -433,7 +432,7 @@ thunar_uca_editor_init (ThunarUcaEditor *uca_editor)
gtk_table_attach (GTK_TABLE (table), align, 0, 2, 4, 5, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
gtk_widget_show (align);
- hbox = gtk_hbox_new (FALSE, 6);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
gtk_table_attach (GTK_TABLE (table), hbox, 0, 2, 5, 6, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
gtk_widget_show (hbox);
@@ -652,12 +651,14 @@ thunar_uca_editor_set_icon_name (ThunarUcaEditor *uca_editor,
GdkPixbuf *icon = NULL;
GtkWidget *image;
GtkWidget *label;
+ GtkWidget *child;
g_return_if_fail (THUNAR_UCA_IS_EDITOR (uca_editor));
/* drop the previous button child */
- if (GTK_BIN (uca_editor->icon_button)->child != NULL)
- gtk_widget_destroy (GTK_BIN (uca_editor->icon_button)->child);
+ child = gtk_bin_get_child (GTK_BIN (uca_editor->icon_button));
+ if (child != NULL)
+ gtk_widget_destroy (child);
/* try to load the icon */
if (G_LIKELY (icon_name != NULL && g_path_is_absolute (icon_name)))
diff --git a/plugins/thunar-wallpaper/twp-provider.c b/plugins/thunar-wallpaper/twp-provider.c
index 9c46465..bc66b6b 100644
--- a/plugins/thunar-wallpaper/twp-provider.c
+++ b/plugins/thunar-wallpaper/twp-provider.c
@@ -141,6 +141,7 @@ twp_provider_get_file_actions (ThunarxMenuProvider *menu_provider,
Atom nautilus_selection_atom;
GdkScreen *gdk_screen = gdk_screen_get_default();
gint xscreen = gdk_screen_get_number(gdk_screen);
+ Display *xdisplay = gdk_x11_display_get_xdisplay (gdk_display_get_default ());
desktop_type = DESKTOP_TYPE_NONE;
@@ -180,9 +181,9 @@ twp_provider_get_file_actions (ThunarxMenuProvider *menu_provider,
}
g_snprintf(selection_name, 100, XFDESKTOP_SELECTION_FMT, xscreen);
- xfce_selection_atom = XInternAtom (gdk_display, selection_name, False);
+ xfce_selection_atom = XInternAtom (xdisplay, selection_name, False);
- if ((XGetSelectionOwner(GDK_DISPLAY(), xfce_selection_atom)))
+ if ((XGetSelectionOwner(xdisplay, xfce_selection_atom)))
{
if (_has_xfconf_query)
desktop_type = DESKTOP_TYPE_XFCE;
@@ -191,8 +192,8 @@ twp_provider_get_file_actions (ThunarxMenuProvider *menu_provider,
{
/* FIXME: This is wrong, nautilus WINDOW_ID is not a selection */
g_snprintf(selection_name, 100, NAUTILUS_SELECTION_FMT);
- nautilus_selection_atom = XInternAtom (gdk_display, selection_name, False);
- if((XGetSelectionOwner(GDK_DISPLAY(), nautilus_selection_atom)))
+ nautilus_selection_atom = XInternAtom (xdisplay, selection_name, False);
+ if((XGetSelectionOwner(xdisplay, nautilus_selection_atom)))
{
if (_has_gconftool)
desktop_type = DESKTOP_TYPE_NAUTILUS;
diff --git a/thunar/Makefile.am b/thunar/Makefile.am
index 45175ca..28c446b 100644
--- a/thunar/Makefile.am
+++ b/thunar/Makefile.am
@@ -195,12 +195,6 @@ thunar_SOURCES = \
thunar-stock.h \
thunar-templates-action.c \
thunar-templates-action.h \
- thunar-text-renderer.c \
- thunar-text-renderer.h \
- thunar-throbber.c \
- thunar-throbber.h \
- thunar-throbber-fallback.c \
- thunar-throbber-fallback.h \
thunar-thumbnail-cache.c \
thunar-thumbnail-cache.h \
thunar-thumbnailer.c \
@@ -320,7 +314,6 @@ DISTCLEANFILES += \
thunar-shortcuts-pane-ui.h \
thunar-renamer-dialog-ui.h \
thunar-standard-view-ui.h \
- thunar-throbber-fallback.c \
thunar-thumbnail-frame.c \
thunar-window-ui.h
@@ -333,7 +326,6 @@ BUILT_SOURCES = \
thunar-shortcuts-pane-ui.h \
thunar-renamer-dialog-ui.h \
thunar-standard-view-ui.h \
- thunar-throbber-fallback.c \
thunar-thumbnail-frame.c \
thunar-window-ui.h
@@ -358,9 +350,6 @@ thunar-thumbnail-cache-proxy.h: $(srcdir)/thunar-thumbnail-cache-dbus.xml Makefi
)
endif
-thunar-throbber-fallback.c: $(srcdir)/thunar-throbber-fallback.png Makefile
- $(AM_V_GEN) (echo "#include <thunar/thunar-throbber-fallback.h>" && gdk-pixbuf-csource --extern --raw --stream --name=thunar_throbber_fallback $(srcdir)/thunar-throbber-fallback.png) > thunar-throbber-fallback.c
-
thunar-thumbnail-frame.c: $(srcdir)/thunar-thumbnail-frame.png Makefile
$(AM_V_GEN) (echo "#include <thunar/thunar-thumbnail-frame.h>" && gdk-pixbuf-csource --extern --raw --stream --name=thunar_thumbnail_frame $(srcdir)/thunar-thumbnail-frame.png) > thunar-thumbnail-frame.c
diff --git a/thunar/thunar-details-view.c b/thunar/thunar-details-view.c
index 615181f..7831090 100644
--- a/thunar/thunar-details-view.c
+++ b/thunar/thunar-details-view.c
@@ -28,7 +28,6 @@
#include <thunar/thunar-details-view-ui.h>
#include <thunar/thunar-gtk-extensions.h>
#include <thunar/thunar-private.h>
-#include <thunar/thunar-text-renderer.h>
@@ -225,11 +224,11 @@ thunar_details_view_init (ThunarDetailsView *details_view)
g_signal_connect (G_OBJECT (details_view->column_model), "columns-changed", G_CALLBACK (thunar_details_view_columns_changed), details_view);
/* allocate the shared right-aligned text renderer */
- right_aligned_renderer = g_object_new (THUNAR_TYPE_TEXT_RENDERER, "xalign", 1.0f, NULL);
+ right_aligned_renderer = g_object_new (GTK_TYPE_CELL_RENDERER_TEXT, "xalign", 1.0f, NULL);
g_object_ref_sink (G_OBJECT (right_aligned_renderer));
/* allocate the shared left-aligned text renderer */
- left_aligned_renderer = g_object_new (THUNAR_TYPE_TEXT_RENDERER, "xalign", 0.0f, NULL);
+ left_aligned_renderer = g_object_new (GTK_TYPE_CELL_RENDERER_TEXT, "xalign", 0.0f, NULL);
g_object_ref_sink (G_OBJECT (left_aligned_renderer));
/* allocate the tree view columns */
diff --git a/thunar/thunar-settings b/thunar/thunar-settings
new file mode 100644
index 0000000..b101b6b
--- /dev/null
+++ b/thunar/thunar-settings
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# vi:set et ai sw=2 sts=2 ts=2: */
+
+test "x$DISPLAY" != "x" || DISPLAY=:0
+
+output=`dbus-send --session --print-reply --dest=org.xfce.FileManager \
+ /org/xfce/FileManager org.xfce.FileManager.DisplayPreferencesDialog \
+ "string:$DISPLAY" "string:$DESKTOP_STARTUP_ID"`
+
+if ! [ $? -eq 0 ]; then
+ echo $output
+ exit 1
+fi
diff --git a/thunar/thunar-shortcuts-icon-renderer.c b/thunar/thunar-shortcuts-icon-renderer.c
index 28fa0ed..192d224 100644
--- a/thunar/thunar-shortcuts-icon-renderer.c
+++ b/thunar/thunar-shortcuts-icon-renderer.c
@@ -50,11 +50,10 @@ static void thunar_shortcuts_icon_renderer_set_property (GObject
const GValue *value,
GParamSpec *pspec);
static void thunar_shortcuts_icon_renderer_render (GtkCellRenderer *renderer,
- GdkWindow *window,
+ cairo_t *cr,
GtkWidget *widget,
- GdkRectangle *background_area,
- GdkRectangle *cell_area,
- GdkRectangle *expose_area,
+ const GdkRectangle *background_area,
+ const GdkRectangle *cell_area,
GtkCellRendererState flags);
@@ -176,13 +175,12 @@ thunar_shortcuts_icon_renderer_set_property (GObject *object,
static void
-thunar_shortcuts_icon_renderer_render (GtkCellRenderer *renderer,
- GdkWindow *window,
- GtkWidget *widget,
- GdkRectangle *background_area,
- GdkRectangle *cell_area,
- GdkRectangle *expose_area,
- GtkCellRendererState flags)
+thunar_shortcuts_icon_renderer_render (GtkCellRenderer *renderer,
+ cairo_t *cr,
+ GtkWidget *widget,
+ const GdkRectangle *background_area,
+ const GdkRectangle *cell_area,
+ GtkCellRendererState flags)
{
ThunarShortcutsIconRenderer *shortcuts_icon_renderer = THUNAR_SHORTCUTS_ICON_RENDERER (renderer);
GtkIconTheme *icon_theme;
@@ -198,7 +196,7 @@ thunar_shortcuts_icon_renderer_render (GtkCellRenderer *renderer,
if (G_UNLIKELY (shortcuts_icon_renderer->volume != NULL))
{
/* load the volume icon */
- icon_theme = gtk_icon_theme_get_for_screen (gdk_drawable_get_screen (window));
+ icon_theme = gtk_icon_theme_get_for_screen (gtk_widget_get_screen (widget));
/* look up the volume icon info */
gicon = g_volume_get_icon (shortcuts_icon_renderer->volume);
@@ -247,7 +245,7 @@ thunar_shortcuts_icon_renderer_render (GtkCellRenderer *renderer,
icon_area.y = cell_area->y + (cell_area->height - icon_area.height) / 2;
/* check whether the icon is affected by the expose event */
- if (gdk_rectangle_intersect (expose_area, &icon_area, &draw_area))
+ if (gdk_rectangle_intersect (cell_area, &icon_area, &draw_area))
{
/* render the invalid parts of the icon */
gtk_render_icon (style_context, cr, icon, icon_area.x, icon_area.y);
@@ -260,8 +258,9 @@ thunar_shortcuts_icon_renderer_render (GtkCellRenderer *renderer,
else
{
/* fallback to the default icon renderering */
- (*GTK_CELL_RENDERER_CLASS (thunar_shortcuts_icon_renderer_parent_class)->render) (renderer, window, widget, background_area,
- cell_area, expose_area, flags);
+ (*GTK_CELL_RENDERER_CLASS (thunar_shortcuts_icon_renderer_parent_class)->render) (renderer, cr, widget,
+ background_area,
+ cell_area, flags);
}
}
diff --git a/thunar/thunar-shortcuts-view.c b/thunar/thunar-shortcuts-view.c
index 1a89c7b..25f1ca8 100644
--- a/thunar/thunar-shortcuts-view.c
+++ b/thunar/thunar-shortcuts-view.c
@@ -641,7 +641,8 @@ thunar_shortcuts_view_drag_motion (GtkWidget *widget,
{
GtkTreeViewDropPosition position = GTK_TREE_VIEW_DROP_BEFORE;
ThunarShortcutsView *view = THUNAR_SHORTCUTS_VIEW (widget);
- GdkDragAction action = 0;
+ GdkDragAction action = 0, actions;
+ GdkDragAction suggested_action;
GtkTreeModel *model;
GtkTreePath *path = NULL;
GdkAtom target;
@@ -671,11 +672,14 @@ thunar_shortcuts_view_drag_motion (GtkWidget *widget,
else if (target == gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
{
/* check the action that should be performed */
- if (context->suggested_action == GDK_ACTION_LINK || (context->actions & GDK_ACTION_LINK) != 0)
+ actions = gdk_drag_context_get_actions (context);
+ suggested_action = gdk_drag_context_get_suggested_action (context);
+
+ if (suggested_action == GDK_ACTION_LINK || (actions & GDK_ACTION_LINK) != 0)
action = GDK_ACTION_LINK;
- else if (context->suggested_action == GDK_ACTION_COPY || (context->actions & GDK_ACTION_COPY) != 0)
+ else if (suggested_action == GDK_ACTION_COPY || (actions & GDK_ACTION_COPY) != 0)
action = GDK_ACTION_COPY;
- else if (context->suggested_action == GDK_ACTION_MOVE || (context->actions & GDK_ACTION_MOVE) != 0)
+ else if (suggested_action == GDK_ACTION_MOVE || (actions & GDK_ACTION_MOVE) != 0)
action = GDK_ACTION_MOVE;
else
return FALSE;
@@ -1059,6 +1063,7 @@ thunar_shortcuts_view_compute_drop_actions (ThunarShortcutsView *view,
GtkTreeIter iter;
ThunarFile *file;
gint cell_y;
+ GdkDragAction suggested_action, allowed_actions;
/* determine the shortcuts model */
model = gtk_tree_view_get_model (GTK_TREE_VIEW (view));
@@ -1102,11 +1107,14 @@ thunar_shortcuts_view_compute_drop_actions (ThunarShortcutsView *view,
if (G_UNLIKELY (actions == 0))
{
/* check the action that should be performed */
- if (context->suggested_action == GDK_ACTION_LINK || (context->actions & GDK_ACTION_LINK) != 0)
+ allowed_actions = gdk_drag_context_get_actions (context);
+ suggested_action = gdk_drag_context_get_suggested_action (context);
+
+ if (suggested_action == GDK_ACTION_LINK || (allowed_actions & GDK_ACTION_LINK) != 0)
actions = GDK_ACTION_LINK;
- else if (context->suggested_action == GDK_ACTION_COPY || (context->actions & GDK_ACTION_COPY) != 0)
+ else if (suggested_action == GDK_ACTION_COPY || (allowed_actions & GDK_ACTION_COPY) != 0)
actions = GDK_ACTION_COPY;
- else if (context->suggested_action == GDK_ACTION_MOVE || (context->actions & GDK_ACTION_MOVE) != 0)
+ else if (suggested_action == GDK_ACTION_MOVE || (allowed_actions & GDK_ACTION_MOVE) != 0)
actions = GDK_ACTION_MOVE;
else
return 0;
diff --git a/thunar/thunar-size-label.c b/thunar/thunar-size-label.c
index c83758e..5816a30 100644
--- a/thunar/thunar-size-label.c
+++ b/thunar/thunar-size-label.c
@@ -32,7 +32,6 @@
#include <thunar/thunar-gtk-extensions.h>
#include <thunar/thunar-private.h>
#include <thunar/thunar-size-label.h>
-#include <thunar/thunar-throbber.h>
#include <thunar/thunar-deep-count-job.h>
@@ -148,7 +147,7 @@ thunar_size_label_init (ThunarSizeLabel *size_label)
gtk_widget_show (ebox);
/* add the throbber widget */
- size_label->throbber = thunar_throbber_new ();
+ size_label->throbber = gtk_spinner_new ();
exo_binding_new (G_OBJECT (size_label->throbber), "visible", G_OBJECT (ebox), "visible");
gtk_container_add (GTK_CONTAINER (ebox), size_label->throbber);
gtk_widget_show (size_label->throbber);
@@ -260,7 +259,7 @@ thunar_size_label_button_press_event (GtkWidget *ebox,
}
/* be sure to stop and hide the throbber */
- thunar_throbber_set_animated (THUNAR_THROBBER (size_label->throbber), FALSE);
+ gtk_spinner_stop (GTK_SPINNER (size_label->throbber));
gtk_widget_hide (size_label->throbber);
/* tell the user that the operation was canceled */
@@ -348,7 +347,7 @@ thunar_size_label_file_changed (ThunarFile *file,
}
/* be sure to stop and hide the throbber */
- thunar_throbber_set_animated (THUNAR_THROBBER (size_label->throbber), FALSE);
+ gtk_spinner_stop (GTK_SPINNER (size_label->throbber));
gtk_widget_hide (size_label->throbber);
/* check if the file is a directory */
@@ -429,7 +428,7 @@ thunar_size_label_finished (ExoJob *job,
g_source_remove (size_label->animate_timer_id);
/* stop and hide the throbber */
- thunar_throbber_set_animated (THUNAR_THROBBER (size_label->throbber), FALSE);
+ gtk_spinner_stop (GTK_SPINNER (size_label->throbber));
gtk_widget_hide (size_label->throbber);
/* disconnect from the job */
@@ -489,7 +488,7 @@ thunar_size_label_animate_timer (gpointer user_data)
GDK_THREADS_ENTER ();
/* animate and display the throbber */
- thunar_throbber_set_animated (THUNAR_THROBBER (size_label->throbber), TRUE);
+ gtk_spinner_start (GTK_SPINNER (size_label->throbber));
gtk_widget_show (size_label->throbber);
GDK_THREADS_LEAVE ();
diff --git a/thunar/thunar-standard-view.c b/thunar/thunar-standard-view.c
index 0696f22..bfd324e 100644
--- a/thunar/thunar-standard-view.c
+++ b/thunar/thunar-standard-view.c
@@ -49,7 +49,6 @@
#include <thunar/thunar-standard-view.h>
#include <thunar/thunar-standard-view-ui.h>
#include <thunar/thunar-templates-action.h>
-#include <thunar/thunar-text-renderer.h>
#include <thunar/thunar-thumbnailer.h>
#if defined(GDK_WINDOWING_X11)
@@ -112,8 +111,8 @@ static void thunar_standard_view_set_property (GOb
static void thunar_standard_view_realize (GtkWidget *widget);
static void thunar_standard_view_unrealize (GtkWidget *widget);
static void thunar_standard_view_grab_focus (GtkWidget *widget);
-static gboolean thunar_standard_view_expose_event (GtkWidget *widget,
- GdkEventExpose *event);
+static gboolean thunar_standard_view_draw (GtkWidget *widget,
+ cairo_t *cr);
static GList *thunar_standard_view_get_selected_files (ThunarComponent *component);
static void thunar_standard_view_set_selected_files (ThunarComponent *component,
GList *selected_files);
@@ -418,7 +417,7 @@ thunar_standard_view_class_init (ThunarStandardViewClass *klass)
gtkwidget_class->realize = thunar_standard_view_realize;
gtkwidget_class->unrealize = thunar_standard_view_unrealize;
gtkwidget_class->grab_focus = thunar_standard_view_grab_focus;
- gtkwidget_class->expose_event = thunar_standard_view_expose_event;
+ gtkwidget_class->draw = thunar_standard_view_draw;
klass->delete_selected_files = thunar_standard_view_delete_selected_files;
klass->connect_ui_manager = (gpointer) exo_noop;
@@ -608,9 +607,9 @@ thunar_standard_view_init (ThunarStandardView *standard_view)
exo_binding_new (G_OBJECT (standard_view), "zoom-level", G_OBJECT (standard_view->icon_renderer), "size");
/* setup the name renderer */
- standard_view->name_renderer = thunar_text_renderer_new ();
+ standard_view->name_renderer = gtk_cell_renderer_text_new ();
g_object_ref_sink (G_OBJECT (standard_view->name_renderer));
- exo_binding_new (G_OBJECT (standard_view->preferences), "misc-single-click", G_OBJECT (standard_view->name_renderer), "follow-prelit");
+ /* TODO exo_binding_new (G_OBJECT (standard_view->preferences), "misc-single-click", G_OBJECT (standard_view->name_renderer), "follow-prelit");*/
/* be sure to update the selection whenever the folder changes */
g_signal_connect_swapped (G_OBJECT (standard_view->model), "notify::folder", G_CALLBACK (thunar_standard_view_selection_changed), standard_view);
@@ -954,36 +953,30 @@ thunar_standard_view_grab_focus (GtkWidget *widget)
static gboolean
-thunar_standard_view_expose_event (GtkWidget *widget,
- GdkEventExpose *event)
+thunar_standard_view_draw (GtkWidget *widget,
+ cairo_t *cr)
{
- gboolean result = FALSE;
- cairo_t *cr;
- gint x, y, width, height;
+ gboolean result;
+ GtkAllocation alloc;
+ GtkStyleContext *style_context;
/* let the scrolled window do it's work */
- result = (*GTK_WIDGET_CLASS (thunar_standard_view_parent_class)->expose_event) (widget, event);
+ result = (*GTK_WIDGET_CLASS (thunar_standard_view_parent_class)->draw) (widget, cr);
/* render the folder drop shadow */
if (G_UNLIKELY (THUNAR_STANDARD_VIEW (widget)->priv->drop_highlight))
{
- x = widget->allocation.x;
- y = widget->allocation.y;
- width = widget->allocation.width;
- height = widget->allocation.height;
+ gtk_widget_get_allocation (widget, &alloc);
- gtk_paint_shadow (widget->style, widget->window,
- GTK_STATE_NORMAL, GTK_SHADOW_OUT,
- NULL, widget, "dnd",
- x, y, width, height);
-
- /* the cairo version looks better here, so we use it if possible */
- cr = gdk_cairo_create (widget->window);
- cairo_set_source_rgb (cr, 0.0, 0.0, 0.0);
- cairo_set_line_width (cr, 1.0);
- cairo_rectangle (cr, x + 0.5, y + 0.5, width - 1, height - 1);
- cairo_stroke (cr);
- cairo_destroy (cr);
+ style_context = gtk_widget_get_style_context (widget);
+ gtk_style_context_save (style_context);
+ gtk_style_context_add_class (style_context, GTK_STYLE_CLASS_DND);
+
+ gtk_render_frame (style_context, cr,
+ alloc.x + 0.5, alloc.y + 0.5,
+ alloc.width - 1, alloc.height - 1);
+
+ gtk_style_context_restore (style_context);
}
return result;
@@ -2446,7 +2439,7 @@ thunar_standard_view_motion_notify_event (GtkWidget *view,
GdkEventMotion *event,
ThunarStandardView *standard_view)
{
- GdkDragContext *context;
+ //GdkDragContext *context;
GtkTargetList *target_list;
_thunar_return_val_if_fail (THUNAR_IS_STANDARD_VIEW (standard_view), FALSE);
@@ -2460,8 +2453,8 @@ thunar_standard_view_motion_notify_event (GtkWidget *view,
/* allocate the drag context (preferred action is to ask the user) */
target_list = gtk_target_list_new (drag_targets, G_N_ELEMENTS (drag_targets));
- context = gtk_drag_begin (view, target_list, GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK, 3, (GdkEvent *) event);
- context->suggested_action = GDK_ACTION_ASK;
+ /*context = */gtk_drag_begin (view, target_list, GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_ASK, 3, (GdkEvent *) event);
+ /*TODO no way to set suggested action context->suggested_action = GDK_ACTION_ASK; */
gtk_target_list_unref (target_list);
return TRUE;
@@ -2550,7 +2543,8 @@ thunar_standard_view_key_press_event (GtkWidget *view,
_thunar_return_val_if_fail (THUNAR_IS_STANDARD_VIEW (standard_view), FALSE);
/* need to catch "/" and "~" first, as the views would otherwise start interactive search */
- if ((event->keyval == GDK_slash || event->keyval == GDK_asciitilde || event->keyval == GDK_dead_tilde) && !(event->state & (~GDK_SHIFT_MASK & gtk_accelerator_get_default_mod_mask ())))
+ if ((event->keyval == GDK_KEY_slash || event->keyval == GDK_KEY_asciitilde || event->keyval == GDK_KEY_dead_tilde)
+ && !(event->state & (~GDK_SHIFT_MASK & gtk_accelerator_get_default_mod_mask ())))
{
/* popup the location selector (in whatever way) */
if (event->keyval == GDK_KEY_dead_tilde)
@@ -2594,7 +2588,8 @@ thunar_standard_view_drag_drop (GtkWidget *view,
if (G_LIKELY (file != NULL))
{
/* determine the file name from the DnD source window */
- if (gdk_property_get (context->source_window, gdk_atom_intern_static_string ("XdndDirectSave0"),
+ if (gdk_property_get (gdk_drag_context_get_source_window (context),
+ gdk_atom_intern_static_string ("XdndDirectSave0"),
gdk_atom_intern_static_string ("text/plain"), 0, 1024, FALSE, NULL, NULL,
&prop_len, &prop_text) && prop_text != NULL)
{
@@ -2607,13 +2602,13 @@ thunar_standard_view_drag_drop (GtkWidget *view,
{
/* allocate the relative path for the target */
path = g_file_resolve_relative_path (thunar_file_get_file (file),
- (const gchar *)prop_text);
+ (const gchar *) prop_text);
/* determine the new URI */
uri = g_file_get_uri (path);
/* setup the property */
- gdk_property_change (GDK_DRAWABLE (context->source_window),
+ gdk_property_change (gdk_drag_context_get_source_window (context),
gdk_atom_intern_static_string ("XdndDirectSave0"),
gdk_atom_intern_static_string ("text/plain"), 8,
GDK_PROP_MODE_REPLACE, (const guchar *) uri,
@@ -2733,7 +2728,7 @@ thunar_standard_view_drag_data_received (GtkWidget *view,
&& gtk_selection_data_get_data (selection_data)[0] == 'F'))
{
/* indicate that we don't provide "F" fallback */
- gdk_property_change (GDK_DRAWABLE (context->source_window),
+ gdk_property_change (gdk_drag_context_get_source_window (context),
gdk_atom_intern_static_string ("XdndDirectSave0"),
gdk_atom_intern_static_string ("text/plain"), 8,
GDK_PROP_MODE_REPLACE, (const guchar *) "", 0);
@@ -2790,13 +2785,14 @@ thunar_standard_view_drag_data_received (GtkWidget *view,
/* determine the toplevel window */
toplevel = gtk_widget_get_toplevel (view);
- if (toplevel != NULL && gtk_widget_get_toplevel (toplevel))
+ if (toplevel != NULL)
{
#if defined(GDK_WINDOWING_X11)
/* on X11, we can supply the parent window id here */
argv[n++] = "--xid";
argv[n++] = g_newa (gchar, 32);
- g_snprintf (argv[n - 1], 32, "%ld", (glong) GDK_WINDOW_XID (toplevel->window));
+ g_snprintf (argv[n - 1], 32, "%ld",
+ (glong) GDK_WINDOW_XID (gtk_widget_get_window (toplevel)));
#endif
}
@@ -2839,9 +2835,9 @@ thunar_standard_view_drag_data_received (GtkWidget *view,
if (G_LIKELY ((actions & (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK)) != 0))
{
/* ask the user what to do with the drop data */
- action = (context->action == GDK_ACTION_ASK)
+ action = (gdk_drag_context_get_actions (context) == GDK_ACTION_ASK)
? thunar_dnd_ask (GTK_WIDGET (standard_view), file, standard_view->priv->drop_file_list, timestamp, actions)
- : context->action;
+ : gdk_drag_context_get_actions (context);
/* perform the requested action */
if (G_LIKELY (action != 0))
@@ -2930,7 +2926,7 @@ thunar_standard_view_drag_motion (GtkWidget *view,
&& thunar_file_is_directory (file)
&& thunar_file_is_writable (file)))
{
- action = context->suggested_action;
+ action = gdk_drag_context_get_suggested_action (context);
}
/* reset path if we cannot drop */
@@ -3221,16 +3217,20 @@ thunar_standard_view_drag_scroll_timer (gpointer user_data)
gint y, x;
gint w, h;
GtkWidget *child;
+ GdkDevice *device;
+ GdkDeviceManager *device_manager;
GDK_THREADS_ENTER ();
/* verify that we are realized */
- if (G_LIKELY (gtk_widget_get_realized (standard_view)))
+ if (G_LIKELY (gtk_widget_get_realized (GTK_WIDGET (standard_view))))
{
/* determine pointer location and window geometry */
child = gtk_bin_get_child (GTK_BIN (standard_view));
- gdk_window_get_pointer (gtk_widget_get_window (child), &x, &y, NULL);
- gdk_window_get_geometry (gtk_widget_get_window (child), NULL, NULL, &w, &h, NULL);
+ device_manager = gdk_display_get_device_manager (gtk_widget_get_display (child));
+ device = gdk_device_manager_get_client_pointer (device_manager);
+ gdk_window_get_device_position (gtk_widget_get_window (child), device, &x, &y, NULL);
+ gdk_window_get_geometry (gtk_widget_get_window (child), NULL, NULL, &w, &h);
/* check if we are near the edge (vertical) */
offset = y - (2 * 20);
@@ -3244,7 +3244,9 @@ thunar_standard_view_drag_scroll_timer (gpointer user_data)
adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (standard_view));
/* determine the new value */
- value = CLAMP (adjustment->value + 2 * offset, adjustment->lower, adjustment->upper - adjustment->page_size);
+ value = CLAMP (gtk_adjustment_get_value (adjustment) + 2 * offset,
+ gtk_adjustment_get_lower (adjustment),
+ gtk_adjustment_get_upper (adjustment) - gtk_adjustment_get_page_size (adjustment));
/* apply the new value */
gtk_adjustment_set_value (adjustment, value);
@@ -3262,7 +3264,9 @@ thunar_standard_view_drag_scroll_timer (gpointer user_data)
adjustment = gtk_scrolled_window_get_hadjustment (GTK_SCROLLED_WINDOW (standard_view));
/* determine the new value */
- value = CLAMP (adjustment->value + 2 * offset, adjustment->lower, adjustment->upper - adjustment->page_size);
+ value = CLAMP (gtk_adjustment_get_value (adjustment) + 2 * offset,
+ gtk_adjustment_get_lower (adjustment),
+ gtk_adjustment_get_upper (adjustment) - gtk_adjustment_get_page_size (adjustment));
/* apply the new value */
gtk_adjustment_set_value (adjustment, value);
diff --git a/thunar/thunar-statusbar.c b/thunar/thunar-statusbar.c
index 3b8533b..db4d680 100644
--- a/thunar/thunar-statusbar.c
+++ b/thunar/thunar-statusbar.c
@@ -89,11 +89,11 @@ thunar_statusbar_class_init (ThunarStatusbarClass *klass)
if (!style_initialized)
{
- gtk_rc_parse_string ("style \"thunar-statusbar-internal\" {\n"
+ /* TODO gtk_rc_parse_string ("style \"thunar-statusbar-internal\" {\n"
" GtkStatusbar::shadow-type = GTK_SHADOW_NONE\n"
"}\n"
"class \"ThunarStatusbar\" "
- "style \"thunar-statusbar-internal\"\n");
+ "style \"thunar-statusbar-internal\"\n"); */
}
}
@@ -103,7 +103,6 @@ static void
thunar_statusbar_init (ThunarStatusbar *statusbar)
{
statusbar->context_id = gtk_statusbar_get_context_id (GTK_STATUSBAR (statusbar), "Main text");
- gtk_statusbar_set_has_resize_grip (GTK_STATUSBAR (statusbar), TRUE);
}
diff --git a/thunar/thunar-templates-action.c b/thunar/thunar-templates-action.c
index 2202dc5..5f9ec74 100644
--- a/thunar/thunar-templates-action.c
+++ b/thunar/thunar-templates-action.c
@@ -323,6 +323,7 @@ thunar_templates_action_files_ready (ThunarJob *job,
GList *pp;
gchar *label;
gchar *dot;
+ GList *children;
/* determine the menu to add the items and submenus to */
menu = g_object_get_data (G_OBJECT (job), "menu");
@@ -402,8 +403,9 @@ thunar_templates_action_files_ready (ThunarJob *job,
{
/* determine the submenu for this directory item */
submenu = gtk_menu_item_get_submenu (GTK_MENU_ITEM (lp->data));
+ children = gtk_container_get_children (GTK_CONTAINER (submenu));
- if (GTK_MENU_SHELL (submenu)->children == NULL)
+ if (children == NULL)
{
/* the directory submenu is empty, destroy it */
gtk_widget_destroy (lp->data);
@@ -413,6 +415,7 @@ thunar_templates_action_files_ready (ThunarJob *job,
/* the directory has template files, so add it to its parent menu */
gtk_menu_shell_prepend (GTK_MENU_SHELL (pp->data), lp->data);
gtk_widget_show (lp->data);
+ g_list_free (children);
}
}
@@ -437,6 +440,7 @@ thunar_templates_action_load_error (ThunarJob *job,
{
GtkWidget *item;
GtkWidget *menu;
+ GList *children;
_thunar_return_if_fail (THUNAR_IS_JOB (job));
_thunar_return_if_fail (error != NULL);
@@ -446,13 +450,21 @@ thunar_templates_action_load_error (ThunarJob *job,
menu = g_object_get_data (G_OBJECT (job), "menu");
/* check if any items were added to the menu */
- if (G_LIKELY (menu != NULL && GTK_MENU_SHELL (menu)->children == NULL))
+ if (G_LIKELY (menu != NULL))
{
- /* tell the user that no templates were found */
- item = gtk_menu_item_new_with_label (error->message);
- gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
- gtk_widget_set_sensitive (item, FALSE);
- gtk_widget_show (item);
+ children = gtk_container_get_children (GTK_CONTAINER (menu));
+ if (children == NULL)
+ {
+ /* tell the user that no templates were found */
+ item = gtk_menu_item_new_with_label (error->message);
+ gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
+ gtk_widget_set_sensitive (item, FALSE);
+ gtk_widget_show (item);
+ }
+ else
+ {
+ g_list_free (children);
+ }
}
}
diff --git a/thunar/thunar-throbber-fallback.h b/thunar/thunar-throbber-fallback.h
deleted file mode 100644
index 6481258..0000000
--- a/thunar/thunar-throbber-fallback.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* $Id$ */
-/*-
- * Copyright (c) 2006 Benedikt Meurer <benny at xfce.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the Free
- * Software Foundation; either version 2 of the License, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
- * Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef __THUNAR_THROBBER_FALLBACK_H__
-#define __THUNAR_THROBBER_FALLBACK_H__
-
-#include <glib.h>
-
-G_BEGIN_DECLS;
-
-extern const guint8 thunar_throbber_fallback[];
-
-G_END_DECLS;
-
-#endif /* !__THUNAR_THROBBER_FALLBACK_H__ */
diff --git a/thunar/thunar-throbber-fallback.png b/thunar/thunar-throbber-fallback.png
deleted file mode 100644
index 5f0a19d..0000000
Binary files a/thunar/thunar-throbber-fallback.png and /dev/null differ
diff --git a/thunar/thunar-throbber.c b/thunar/thunar-throbber.c
deleted file mode 100644
index 83a6157..0000000
--- a/thunar/thunar-throbber.c
+++ /dev/null
@@ -1,384 +0,0 @@
-/* $Id$ */
-/*-
- * Copyright (c) 2005-2006 Benedikt Meurer <benny at xfce.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the Free
- * Software Foundation; either version 2 of the License, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
- * Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <exo/exo.h>
-
-#include <thunar/thunar-gobject-extensions.h>
-#include <thunar/thunar-private.h>
-#include <thunar/thunar-throbber.h>
-#include <thunar/thunar-throbber-fallback.h>
-
-
-
-/* Property identifiers */
-enum
-{
- PROP_0,
- PROP_ANIMATED,
-};
-
-
-
-static void thunar_throbber_dispose (GObject *object);
-static void thunar_throbber_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec);
-static void thunar_throbber_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec);
-static void thunar_throbber_realize (GtkWidget *widget);
-static void thunar_throbber_unrealize (GtkWidget *widget);
-static void thunar_throbber_get_preferred_width (GtkWidget *widget,
- gint *normal_width,
- gint *minimal_width);
-static void thunar_throbber_get_preferred_heigh (GtkWidget *widget,
- gint *normal_height,
- gint *minimal_height);
-static gboolean thunar_throbber_draw (GtkWidget *widget,
- cairo_t *cr);
-static gboolean thunar_throbber_timer (gpointer user_data);
-static void thunar_throbber_timer_destroy (gpointer user_data);
-
-
-
-struct _ThunarThrobberClass
-{
- GtkWidgetClass __parent__;
-};
-
-struct _ThunarThrobber
-{
- GtkWidget __parent__;
-
- GdkPixbuf *icon;
-
- gboolean animated;
- gint index;
- gint timer_id;
-};
-
-
-
-G_DEFINE_TYPE (ThunarThrobber, thunar_throbber, GTK_TYPE_WIDGET)
-
-
-
-static void
-thunar_throbber_class_init (ThunarThrobberClass *klass)
-{
- GtkWidgetClass *gtkwidget_class;
- GObjectClass *gobject_class;
- GdkPixbuf *icon;
-
- gobject_class = G_OBJECT_CLASS (klass);
- gobject_class->dispose = thunar_throbber_dispose;
- gobject_class->get_property = thunar_throbber_get_property;
- gobject_class->set_property = thunar_throbber_set_property;
-
- gtkwidget_class = GTK_WIDGET_CLASS (klass);
- gtkwidget_class->realize = thunar_throbber_realize;
- gtkwidget_class->unrealize = thunar_throbber_unrealize;
- gtkwidget_class->size_request = thunar_throbber_size_request;
- gtkwidget_class->draw = thunar_throbber_draw;
-
- /**
- * ThunarThrobber:animated:
- *
- * Whether the throbber should display an animation.
- **/
- g_object_class_install_property (gobject_class,
- PROP_ANIMATED,
- g_param_spec_boolean ("animated",
- "animated",
- "animated",
- FALSE,
- EXO_PARAM_READWRITE));
-
- /* register the "process-working" fallback icon */
- icon = gdk_pixbuf_new_from_inline (-1, thunar_throbber_fallback, FALSE, NULL);
- gtk_icon_theme_add_builtin_icon ("process-working", 16, icon);
- g_object_unref (G_OBJECT (icon));
-}
-
-
-
-static void
-thunar_throbber_init (ThunarThrobber *throbber)
-{
- gtk_widget_set_has_window (GTK_WIDGET (throbber), FALSE);
- throbber->timer_id = -1;
-}
-
-
-
-static void
-thunar_throbber_dispose (GObject *object)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (object);
-
- /* stop any running animation */
- if (G_UNLIKELY (throbber->timer_id >= 0))
- g_source_remove (throbber->timer_id);
-
- (*G_OBJECT_CLASS (thunar_throbber_parent_class)->dispose) (object);
-}
-
-
-
-static void
-thunar_throbber_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (object);
-
- switch (prop_id)
- {
- case PROP_ANIMATED:
- g_value_set_boolean (value, thunar_throbber_get_animated (throbber));
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-
-
-static void
-thunar_throbber_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (object);
-
- switch (prop_id)
- {
- case PROP_ANIMATED:
- thunar_throbber_set_animated (throbber, g_value_get_boolean (value));
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-
-
-static void
-thunar_throbber_realize (GtkWidget *widget)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (widget);
- GtkIconTheme *icon_theme;
-
- /* let Gtk+ realize the widget */
- (*GTK_WIDGET_CLASS (thunar_throbber_parent_class)->realize) (widget);
-
- /* determine the icon theme for our screen */
- icon_theme = gtk_icon_theme_get_for_screen (gtk_widget_get_screen (widget));
-
- /* try to lookup the "process-working" icon */
- throbber->icon = gtk_icon_theme_load_icon (icon_theme, "process-working", 16, GTK_ICON_LOOKUP_USE_BUILTIN | GTK_ICON_LOOKUP_NO_SVG, NULL);
-}
-
-
-
-static void
-thunar_throbber_unrealize (GtkWidget *widget)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (widget);
-
- /* release the icon if any */
- if (G_LIKELY (throbber->icon != NULL))
- {
- g_object_unref (G_OBJECT (throbber->icon));
- throbber->icon = NULL;
- }
-
- /* let Gtk+ unrealize the widget */
- (*GTK_WIDGET_CLASS (thunar_throbber_parent_class)->unrealize) (widget);
-}
-
-
-
-static void
-thunar_throbber_get_preferred_width (GtkWidget *widget,
- gint *normal_width,
- gint *minimal_width)
-{
- *normal_width = *minimal_width = 16;
-}
-
-
-
-static void
-thunar_throbber_get_preferred_height (GtkWidget *widget,
- gint *normal_height,
- gint *minimal_height)
-{
- *normal_height = *minimal_height = 16;
-}
-
-
-
-static gboolean
-thunar_throbber_draw (GtkWidget *widget,
- cairo_t *cr)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (widget);
- gint icon_index;
- gint icon_cols;
- gint icon_rows;
- gint icon_x;
- gint icon_y;
-
- /* verify that we have a valid icon */
- if (G_LIKELY (throbber->icon != NULL))
- {
- /* determine the icon columns and icon rows */
- icon_cols = gdk_pixbuf_get_width (throbber->icon) / 16;
- icon_rows = gdk_pixbuf_get_height (throbber->icon) / 16;
-
- /* verify that the icon is usable */
- if (G_LIKELY (icon_cols > 0 && icon_rows > 0))
- {
- /* determine the icon index */
- icon_index = throbber->index % (icon_cols * icon_rows);
-
- /* make sure, we don't display the "empty state" while animated */
- if (G_LIKELY (throbber->timer_id >= 0))
- icon_index = MAX (icon_index, 1);
-
- /* determine the icon x/y offset for the icon index */
- icon_x = (icon_index % icon_cols) * 16;
- icon_y = (icon_index / icon_cols) * 16;
-
- /* render the given part of the icon */
- gtk_render_icon_pixbuf (gtk_widget_get_style_context (widget),
- cr, throbber->icon, icon_x, icon_y);
- }
- }
-
- return TRUE;
-}
-
-
-
-static gboolean
-thunar_throbber_timer (gpointer user_data)
-{
- ThunarThrobber *throbber = THUNAR_THROBBER (user_data);
-
- GDK_THREADS_ENTER ();
- throbber->index += 1;
- gtk_widget_queue_draw (GTK_WIDGET (throbber));
- GDK_THREADS_LEAVE ();
-
- return throbber->animated;
-}
-
-
-
-static void
-thunar_throbber_timer_destroy (gpointer user_data)
-{
- THUNAR_THROBBER (user_data)->index = 0;
- THUNAR_THROBBER (user_data)->timer_id = -1;
-}
-
-
-
-/**
- * thunar_throbber_new:
- *
- * Allocates a new #ThunarThrobber instance.
- *
- * Return value: the newly allocated #ThunarThrobber.
- **/
-GtkWidget*
-thunar_throbber_new (void)
-{
- return g_object_new (THUNAR_TYPE_THROBBER, NULL);
-}
-
-
-
-/**
- * thunar_throbber_get_animated:
- * @throbber : a #ThunarThrobber.
- *
- * Returns whether @throbber is currently animated.
- *
- * Return value: %TRUE if @throbber is animated.
- **/
-gboolean
-thunar_throbber_get_animated (const ThunarThrobber *throbber)
-{
- _thunar_return_val_if_fail (THUNAR_IS_THROBBER (throbber), FALSE);
- return throbber->animated;
-}
-
-
-
-/**
- * thunar_throbber_set_animated:
- * @throbber : a #ThunarThrobber.
- * @animated : whether to animate @throbber.
- *
- * If @animated is %TRUE, @throbber will display an animation.
- **/
-void
-thunar_throbber_set_animated (ThunarThrobber *throbber,
- gboolean animated)
-{
- _thunar_return_if_fail (THUNAR_IS_THROBBER (throbber));
-
- /* check if we're already in the requested state */
- if (G_UNLIKELY (throbber->animated == animated))
- return;
-
- /* pick up the new state */
- throbber->animated = animated;
-
- /* start the timer if animated and not already running */
- if (animated && (throbber->timer_id < 0))
- {
- /* start the animation */
- throbber->timer_id = g_timeout_add_full (G_PRIORITY_LOW, 25, thunar_throbber_timer,
- throbber, thunar_throbber_timer_destroy);
- }
-
- /* schedule a redraw with the new animation state */
- gtk_widget_queue_draw (GTK_WIDGET (throbber));
-
- /* notify listeners */
- g_object_notify (G_OBJECT (throbber), "animated");
-}
-
-
diff --git a/thunar/thunar-throbber.h b/thunar/thunar-throbber.h
deleted file mode 100644
index 9484f42..0000000
--- a/thunar/thunar-throbber.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* $Id$ */
-/*-
- * Copyright (c) 2005-2006 Benedikt Meurer <benny at xfce.org>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the Free
- * Software Foundation; either version 2 of the License, or (at your option)
- * any later version.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
- * Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifndef __THUNAR_THROBBER_H__
-#define __THUNAR_THROBBER_H__
-
-#include <gtk/gtk.h>
-
-G_BEGIN_DECLS;
-
-typedef struct _ThunarThrobberClass ThunarThrobberClass;
-typedef struct _ThunarThrobber ThunarThrobber;
-
-#define THUNAR_TYPE_THROBBER (thunar_throbber_get_type ())
-#define THUNAR_THROBBER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), THUNAR_TYPE_THROBBER, ThunarThrobber))
-#define THUNAR_THROBBER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), THUNAR_TYPE_THROBBER, ThunarThrobberClass))
-#define THUNAR_IS_THROBBER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), THUNAR_TYPE_THROBBER))
-#define THUNAR_IS_THROBBER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), THUNAR_TYPE_THROBBER))
-#define THUNAR_THROBBER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), THUNAR_TYPE_THROBBER, ThunarThrobberClass))
-
-GType thunar_throbber_get_type (void) G_GNUC_CONST;
-
-GtkWidget *thunar_throbber_new (void) G_GNUC_MALLOC;
-
-gboolean thunar_throbber_get_animated (const ThunarThrobber *throbber);
-void thunar_throbber_set_animated (ThunarThrobber *throbber,
- gboolean animated);
-
-G_END_DECLS;
-
-#endif /* !__THUNAR_THROBBER_H__ */
diff --git a/thunar/thunar-tree-view.c b/thunar/thunar-tree-view.c
index e8eb09e..a1dca9e 100644
--- a/thunar/thunar-tree-view.c
+++ b/thunar/thunar-tree-view.c
@@ -786,9 +786,10 @@ thunar_tree_view_drag_data_received (GtkWidget *widget,
if (G_LIKELY ((actions & (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK)) != 0))
{
/* ask the user what to do with the drop data */
- action = (context->action == GDK_ACTION_ASK)
+ actions = gdk_drag_context_get_actions (context);
+ action = (actions == GDK_ACTION_ASK)
? thunar_dnd_ask (GTK_WIDGET (view), file, view->drop_file_list, timestamp, actions)
- : context->action;
+ : actions;
/* perform the requested action */
if (G_LIKELY (action != 0))
@@ -2336,23 +2337,27 @@ thunar_tree_view_cursor_idle_destroy (gpointer user_data)
static gboolean
thunar_tree_view_drag_scroll_timer (gpointer user_data)
{
- ThunarTreeView *view = THUNAR_TREE_VIEW (user_data);
- GtkAdjustment *vadjustment;
- GtkTreePath *start_path;
- GtkTreePath *end_path;
- GtkTreePath *path;
- gfloat value;
- gint offset;
- gint y, h;
+ ThunarTreeView *view = THUNAR_TREE_VIEW (user_data);
+ GtkAdjustment *vadjustment;
+ GtkTreePath *start_path;
+ GtkTreePath *end_path;
+ GtkTreePath *path;
+ gfloat value;
+ gint offset;
+ gint y, h;
+ GdkDevice *device;
+ GdkDeviceManager *device_manager;
GDK_THREADS_ENTER ();
/* verify that we are realized */
- if (gtk_widget_get_realized (view))
+ if (gtk_widget_get_realized (GTK_WIDGET (view)))
{
/* determine pointer location and window geometry */
- gdk_window_get_pointer (gtk_widget_get_window (GTK_WIDGET (view)), NULL, &y, NULL);
- gdk_window_get_geometry (gtk_widget_get_window (GTK_WIDGET (view)), NULL, NULL, NULL, &h, NULL);
+ device_manager = gdk_display_get_device_manager (gtk_widget_get_display (GTK_WIDGET (view)));
+ device = gdk_device_manager_get_client_pointer (device_manager);
+ gdk_window_get_device_position (gtk_widget_get_window (GTK_WIDGET (view)), device, NULL, &y, NULL);
+ gdk_window_get_geometry (gtk_widget_get_window (GTK_WIDGET (view)), NULL, NULL, NULL, &h);
/* check if we are near the edge */
offset = y - (2 * 20);
@@ -2363,13 +2368,15 @@ thunar_tree_view_drag_scroll_timer (gpointer user_data)
if (G_UNLIKELY (offset != 0))
{
/* determine the vertical adjustment */
- vadjustment = gtk_tree_view_get_vadjustment (GTK_TREE_VIEW (view));
+ vadjustment = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (view));
/* determine the new value */
- value = CLAMP (vadjustment->value + 2 * offset, vadjustment->lower, vadjustment->upper - vadjustment->page_size);
+ value = CLAMP (gtk_adjustment_get_value (vadjustment) + 2 * offset,
+ gtk_adjustment_get_lower (vadjustment),
+ gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_page_size (vadjustment));
/* check if we have a new value */
- if (G_UNLIKELY (vadjustment->value != value))
+ if (G_UNLIKELY (gtk_adjustment_get_value (vadjustment) != value))
{
/* apply the new value */
gtk_adjustment_set_value (vadjustment, value);
diff --git a/thunar/thunar-window.c b/thunar/thunar-window.c
index 348b6a1..e8a8477 100644
--- a/thunar/thunar-window.c
+++ b/thunar/thunar-window.c
@@ -56,7 +56,6 @@
#include <thunar/thunar-private.h>
#include <thunar/thunar-statusbar.h>
#include <thunar/thunar-stock.h>
-#include <thunar/thunar-throbber.h>
#include <thunar/thunar-trash-action.h>
#include <thunar/thunar-tree-pane.h>
#include <thunar/thunar-window.h>
@@ -788,12 +787,13 @@ thunar_window_init (ThunarWindow *window)
/* append the menu item for the throbber */
item = gtk_menu_item_new ();
gtk_widget_set_sensitive (GTK_WIDGET (item), FALSE);
- gtk_menu_item_set_right_justified (GTK_MENU_ITEM (item), TRUE);
+ gtk_widget_set_hexpand (GTK_WIDGET (item), TRUE);
+ gtk_widget_set_halign (GTK_WIDGET (item), GTK_ALIGN_END);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), item);
gtk_widget_show (item);
/* place the throbber into the menu item */
- window->throbber = thunar_throbber_new ();
+ window->throbber = gtk_spinner_new ();
gtk_container_add (GTK_CONTAINER (item), window->throbber);
gtk_widget_show (window->throbber);
@@ -801,9 +801,9 @@ thunar_window_init (ThunarWindow *window)
if (G_UNLIKELY (geteuid () == 0))
{
/* install default settings for the root warning text box */
- gtk_rc_parse_string ("style\"thunar-window-root-style\"{bg[NORMAL]=\"#b4254b\"\nfg[NORMAL]=\"#fefefe\"}\n"
+ /* TODO gtk_rc_parse_string ("style\"thunar-window-root-style\"{bg[NORMAL]=\"#b4254b\"\nfg[NORMAL]=\"#fefefe\"}\n"
"widget\"ThunarWindow.*.root-warning\"style\"thunar-window-root-style\"\n"
- "widget\"ThunarWindow.*.root-warning.GtkLabel\"style\"thunar-window-root-style\"\n");
+ "widget\"ThunarWindow.*.root-warning.GtkLabel\"style\"thunar-window-root-style\"\n"); */
/* add the box for the root warning */
ebox = gtk_event_box_new ();
@@ -822,7 +822,7 @@ thunar_window_init (ThunarWindow *window)
gtk_widget_show (separator);
}
- window->paned = gtk_hpaned_new ();
+ window->paned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
gtk_container_set_border_width (GTK_CONTAINER (window->paned), 0);
gtk_table_attach (GTK_TABLE (window->table), window->paned, 0, 1, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
gtk_widget_show (window->paned);
@@ -1204,10 +1204,12 @@ static gboolean
thunar_window_configure_event (GtkWidget *widget,
GdkEventConfigure *event)
{
- ThunarWindow *window = THUNAR_WINDOW (widget);
+ ThunarWindow *window = THUNAR_WINDOW (widget);
+ GtkAllocation alloc;
/* check if we have a new dimension here */
- if (widget->allocation.width != event->width || widget->allocation.height != event->height)
+ gtk_widget_get_allocation (widget, &alloc);
+ if (alloc.width != event->width || alloc.height != event->height)
{
/* drop any previous timer source */
if (window->save_geometry_timer_id > 0)
@@ -1902,7 +1904,7 @@ thunar_window_action_view_changed (GtkRadioAction *action,
g_signal_connect_swapped (G_OBJECT (window->view), "change-directory", G_CALLBACK (thunar_window_set_current_directory), window);
exo_binding_new (G_OBJECT (window), "current-directory", G_OBJECT (window->view), "current-directory");
exo_binding_new (G_OBJECT (window), "show-hidden", G_OBJECT (window->view), "show-hidden");
- exo_binding_new (G_OBJECT (window->view), "loading", G_OBJECT (window->throbber), "animated");
+ exo_binding_new (G_OBJECT (window->view), "loading", G_OBJECT (window->throbber), "active");
exo_binding_new (G_OBJECT (window->view), "selected-files", G_OBJECT (window->launcher), "selected-files");
exo_mutual_binding_new (G_OBJECT (window->view), "zoom-level", G_OBJECT (window), "zoom-level");
gtk_table_attach (GTK_TABLE (window->view_box), window->view, 0, 1, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
@@ -2580,23 +2582,26 @@ thunar_window_notify_loading (ThunarView *view,
ThunarWindow *window)
{
GdkCursor *cursor;
+ GdkWindow *gdkwindow;
_thunar_return_if_fail (THUNAR_IS_VIEW (view));
_thunar_return_if_fail (THUNAR_IS_WINDOW (window));
_thunar_return_if_fail (THUNAR_VIEW (window->view) == view);
- if (gtk_widget_get_realized (window))
+ if (gtk_widget_get_realized (GTK_WIDGET (window)))
{
+ gdkwindow = gtk_widget_get_window (GTK_WIDGET (window));
+
/* setup the proper cursor */
if (thunar_view_get_loading (view))
{
cursor = gdk_cursor_new (GDK_WATCH);
- gdk_window_set_cursor (GTK_WIDGET (window)->window, cursor);
- gdk_cursor_unref (cursor);
+ gdk_window_set_cursor (gdkwindow, cursor);
+ g_object_unref (G_OBJECT (cursor));
}
else
{
- gdk_window_set_cursor (GTK_WIDGET (window)->window, NULL);
+ gdk_window_set_cursor (gdkwindow, NULL);
}
}
}
@@ -2681,7 +2686,7 @@ thunar_window_save_geometry_timer (gpointer user_data)
if (G_LIKELY (remember_geometry))
{
/* check if the window is still visible */
- if (gtk_widget_get_visible (window))
+ if (gtk_widget_get_visible (GTK_WIDGET (window)))
{
/* determine the current state of the window */
state = gdk_window_get_state (gtk_widget_get_window (GTK_WIDGET (window)));
More information about the Xfce4-commits
mailing list