~ubuntu-branches/ubuntu/oneiric/gnome-panel/oneiric

« back to all changes in this revision

Viewing changes to gnome-panel/panel-addto.c

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher, Sebastien Bacher, Jeremy Bicha
  • Date: 2011-05-30 11:04:49 UTC
  • mfrom: (1.13.10 upstream) (2.2.5 experimental)
  • Revision ID: james.westby@ubuntu.com-20110530110449-hinl17kxkcefjw6x
Tags: 1:3.0.2-0ubuntu1
[ Sebastien Bacher ]
* New upstream version
* debian/control.in:
  - the new libgweather version is in oneiric, use it
  - drop the python and python-gconf depends, 
    they were added for gnome-panel-add which is still using gconf and buggy
* debian/gnome-panel-data.install:
  - don't install the apport hook, it's only getting gconf datas which 
    doesn't work since gnome-panel uses gsettings
* debian/patches/90_build_fixes.patch:
  - restore build fix from git not applied in the new serie
* debian/patches/01_panel_submenus.patch:
  - don't take that Debian diff, the .menus use the upstream naming in Ubuntu
* debian/patches/06_no_resize_grip.patch:
  - dropped, the issue is fixed in the new version
* debian/patches/50_fix-potfiles.patch:
  - dropped, the issue is fixed in the new version
* debian/watch:
  - track unstable series as well

Drop those delta, since gnome-panel is not the default Ubuntu session now we
can go back to an experience closer to the upstream one: 
* debian/control.in:
  - drop the indicators recommends, unity-2d is the ubuntu fallback session
    so we can get back to use an upstream config for gnome-panel and reduce
    the delta we carry
* debian/patches/04_default_panel_config.patch:
  - don't modify the upstream layout
* debian/patches/05_no_session_delay.patch:
  - no need to tweak the upstream session to optimize it
* debian/patches/16_compiz_workspace_switcher.patch:
  - go back to the upstream switcher behaviour    
* debian/patches/25_dynamic_fusa_detection.patch:
  - not needed since we use the upstream layout, could be ported if someone
    is wanting to do the work though
* debian/patches/30_disable-initial-animation.patch, debian/rules:
  - drop the --disable-initial-animation, that was some login optimization
    but since it's not the default desktop you should go back to the 
    upstream behaviour

[ Jeremy Bicha ]   
* New upstream version
* Merge from Debian experimental, remaining Ubuntu changes:
* debian/control:
  - Recommends gnome-settings-daemon which has the timezone polkit service
* debian/rules:
  - Update translations template.
* debian/gnome-panel-data.install:
  - Install apport hook
  - Install the "About Ubuntu" menu item.
* debian/patches/01_layout.patch:
  - Disabled, Help & About Ubuntu don't fit as well in Gnome Panel 3
* debian/patches/01_panel_submenus.patch.
  - Dropped
* debian/patches/03_dnd_places_link.patch:
  - Disabled, when using Drag'n'Drop from Places menu, install a link launcher
    (.desktop file) instead of copying the entire directory.
* debian/patches/17_about-ubuntu-translation.patch:
  - List ubuntu-about.desktop for translation.
* debian/patches/40_unset_menuproxy.patch:
  - Make sure gnome-panel and the applets don't pick up menu proxies.
* debian/patches/50_fix-potfiles.patch
  - Fix i18n
* debian/patches/85_disable_shutdown_on_ltsp.patch:
  - Suppress the shutdown option in the panel if LTSP_CLIENT is set.
* debian/patches/71_change_bookmark_submenu_limit_value.patch
  - Dropped, picked up by Debian
* debian/patches/18_lockdown_lock_editor.patch:
* debian/patches/90_git_wnck_show_realize.patch:
* debian/patches/90_fix_linking_DSO_link.patch:
* debian/patches/91_gir_annotations.patch
* debian/patches/92_git_calendar_day.patch
* debian/patches/92_git_fix_applets_in_multiscreen.patch:
  - Dropped, applied upstream
* debian/watch:
  - watch unstable versions

Show diffs side-by-side

added added

removed removed

Lines of Context:
34
34
 
35
35
#include "launcher.h"
36
36
#include "panel.h"
37
 
#include "drawer.h"
38
37
#include "panel-applets-manager.h"
39
38
#include "panel-applet-frame.h"
40
39
#include "panel-action-button.h"
43
42
#include "panel-toplevel.h"
44
43
#include "panel-menu-button.h"
45
44
#include "panel-globals.h"
 
45
#include "panel-layout.h"
46
46
#include "panel-lockdown.h"
47
47
#include "panel-util.h"
48
 
#include "panel-profile.h"
49
48
#include "panel-addto.h"
50
49
#include "panel-icon-names.h"
 
50
#include "panel-user-menu.h"
51
51
 
52
52
typedef struct {
53
53
        PanelWidget *panel_widget;
74
74
 
75
75
        guint         name_notify;
76
76
 
77
 
        int           insertion_position;
 
77
        PanelObjectPackType insert_pack_type;
78
78
} PanelAddtoDialog;
79
79
 
80
80
static GQuark panel_addto_dialog_quark = 0;
88
88
        PANEL_ADDTO_MENU,
89
89
        PANEL_ADDTO_MENUBAR,
90
90
        PANEL_ADDTO_SEPARATOR,
91
 
        PANEL_ADDTO_DRAWER
 
91
        PANEL_ADDTO_USER_MENU
92
92
} PanelAddtoItemType;
93
93
 
94
94
typedef struct {
170
170
          "SEPARATOR:NEW",
171
171
          TRUE },
172
172
 
173
 
        { PANEL_ADDTO_DRAWER,
174
 
          N_("Drawer"),
175
 
          N_("A pop out drawer to store other items in"),
176
 
          PANEL_ICON_DRAWER,
 
173
        { PANEL_ADDTO_USER_MENU,
 
174
          N_("User Menu"),
 
175
          N_("Menu to change your settings and your online status"),
 
176
          PANEL_ICON_USER_AVAILABLE,
177
177
          PANEL_ACTION_NONE,
178
178
          NULL,
179
179
          NULL,
180
180
          NULL,
181
 
          "DRAWER:NEW",
 
181
          "USERMENU:NEW",
182
182
          TRUE }
 
183
 
183
184
};
184
185
 
185
186
enum {
325
326
                        const GtkTargetEntry *target,
326
327
                        const char           *text)
327
328
{
328
 
        if (!text || panel_lockdown_get_locked_down ())
 
329
        if (!text || panel_lockdown_get_panels_locked_down_s ())
329
330
                return;
330
331
        
331
332
        gtk_tree_view_enable_model_drag_source (GTK_TREE_VIEW (tree_view),
400
401
                description = panel_applet_info_get_description (info);
401
402
                icon = panel_applet_info_get_icon (info);
402
403
 
403
 
                if (!name || panel_lockdown_is_applet_disabled (iid)) {
 
404
                if (!name ||
 
405
                    panel_lockdown_is_applet_disabled (panel_lockdown_get (),
 
406
                                                       iid)) {
404
407
                        continue;
405
408
                }
406
409
 
477
480
                }
478
481
 
479
482
                if (special_addto_items [i].type == PANEL_ADDTO_LAUNCHER_NEW
480
 
                    && panel_lockdown_get_disable_command_line ())
 
483
                    && panel_lockdown_get_disable_command_line_s ())
481
484
                        continue;
482
485
                
483
486
                panel_addto_append_item (dialog, model, &special_addto_items [i]);
495
498
        if (dialog->filter_applet_model != NULL)
496
499
                return;
497
500
 
498
 
        if (panel_profile_id_lists_are_writable ()) {
 
501
        if (panel_layout_is_writable ()) {
499
502
                dialog->applet_list = panel_addto_query_applets (dialog->applet_list);
500
503
                dialog->applet_list = panel_addto_prepend_internal_applets (dialog->applet_list);
501
504
        }
509
512
                                    G_TYPE_POINTER,
510
513
                                    G_TYPE_STRING);
511
514
 
512
 
        if (panel_profile_id_lists_are_writable ()) {
 
515
        if (panel_layout_is_writable ()) {
513
516
                panel_addto_append_special_applets (dialog, model);
514
517
                if (dialog->applet_list)
515
518
                        panel_addto_append_item (dialog, model, NULL);
526
529
                                                dialog, NULL);
527
530
}
528
531
 
529
 
static void panel_addto_make_application_list (GSList             **parent_list,
530
 
                                               GMenuTreeDirectory  *directory,
531
 
                                               const char          *filename);
 
532
typedef enum {
 
533
        PANEL_ADDTO_MENU_SHOW_DIRECTORIES = 1 << 0,
 
534
        PANEL_ADDTO_MENU_SHOW_ENTRIES     = 1 << 1,
 
535
        PANEL_ADDTO_MENU_SHOW_ALIAS       = 1 << 2
 
536
#define PANEL_ADDTO_MENU_SHOW_ALL (PANEL_ADDTO_MENU_SHOW_DIRECTORIES | PANEL_ADDTO_MENU_SHOW_ENTRIES | PANEL_ADDTO_MENU_SHOW_ALIAS)
 
537
} PanelAddtoMenuShowFlags;
 
538
 
 
539
static void panel_addto_make_application_list (GSList                  **parent_list,
 
540
                                               GMenuTreeDirectory       *directory,
 
541
                                               const char               *filename,
 
542
                                               PanelAddtoMenuShowFlags   show_flags);
532
543
 
533
544
static void
534
545
panel_addto_prepend_directory (GSList             **parent_list,
557
568
 
558
569
        *parent_list = g_slist_prepend (*parent_list, data);
559
570
                        
560
 
        panel_addto_make_application_list (&data->children, directory, filename);
 
571
        /* We always want to show everything in non-root directories */
 
572
        panel_addto_make_application_list (&data->children, directory,
 
573
                                           filename, PANEL_ADDTO_MENU_SHOW_ALL);
561
574
}
562
575
 
563
576
static void
609
622
}
610
623
 
611
624
static void
612
 
panel_addto_make_application_list (GSList             **parent_list,
613
 
                                   GMenuTreeDirectory  *directory,
614
 
                                   const char          *filename)
 
625
panel_addto_make_application_list (GSList                  **parent_list,
 
626
                                   GMenuTreeDirectory       *directory,
 
627
                                   const char               *filename,
 
628
                                   PanelAddtoMenuShowFlags   show_flags)
615
629
{
616
630
        GSList *items;
617
631
        GSList *l;
621
635
        for (l = items; l; l = l->next) {
622
636
                switch (gmenu_tree_item_get_type (l->data)) {
623
637
                case GMENU_TREE_ITEM_DIRECTORY:
624
 
                        panel_addto_prepend_directory (parent_list, l->data, filename);
 
638
                        if (show_flags & PANEL_ADDTO_MENU_SHOW_DIRECTORIES)
 
639
                                panel_addto_prepend_directory (parent_list, l->data, filename);
625
640
                        break;
626
641
 
627
642
                case GMENU_TREE_ITEM_ENTRY:
628
 
                        panel_addto_prepend_entry (parent_list, l->data, filename);
 
643
                        if (show_flags & PANEL_ADDTO_MENU_SHOW_ENTRIES)
 
644
                                panel_addto_prepend_entry (parent_list, l->data, filename);
629
645
                        break;
630
646
 
631
647
                case GMENU_TREE_ITEM_ALIAS:
632
 
                        panel_addto_prepend_alias (parent_list, l->data, filename);
 
648
                        if (show_flags & PANEL_ADDTO_MENU_SHOW_ALIAS)
 
649
                                panel_addto_prepend_alias (parent_list, l->data, filename);
633
650
                        break;
634
651
 
635
652
                default:
702
719
 
703
720
        if ((root = gmenu_tree_get_root_directory (tree))) {
704
721
                panel_addto_make_application_list (&dialog->application_list,
705
 
                                                   root, "applications.menu");
 
722
                                                   root, "applications.menu",
 
723
                                                   PANEL_ADDTO_MENU_SHOW_ALL);
706
724
                panel_addto_populate_application_model (store, NULL, dialog->application_list);
707
725
 
708
726
                gmenu_tree_item_unref (root);
710
728
 
711
729
        gmenu_tree_unref (tree);
712
730
 
713
 
        tree = gmenu_tree_lookup ("settings.menu", GMENU_TREE_FLAGS_NONE);
 
731
        tree = gmenu_tree_lookup ("gnomecc.menu", GMENU_TREE_FLAGS_NONE);
714
732
        gmenu_tree_set_sort_key (tree, GMENU_TREE_SORT_DISPLAY_NAME);
715
733
 
716
734
        if ((root = gmenu_tree_get_root_directory (tree))) {
724
742
                                    COLUMN_SEARCH, NULL,
725
743
                                    -1);
726
744
 
 
745
                /* The gnome-control-center shell does not display toplevel
 
746
                 * entries that are not directories, so do the same. */
727
747
                panel_addto_make_application_list (&dialog->settings_list,
728
 
                                                   root, "settings.menu");
 
748
                                                   root, "gnomecc.menu",
 
749
                                                   PANEL_ADDTO_MENU_SHOW_DIRECTORIES);
729
750
                panel_addto_populate_application_model (store, NULL,
730
751
                                                        dialog->settings_list);
731
752
 
746
767
panel_addto_add_item (PanelAddtoDialog   *dialog,
747
768
                      PanelAddtoItemInfo *item_info)
748
769
{
 
770
        int pack_index;
 
771
 
749
772
        g_assert (item_info != NULL);
750
773
 
 
774
        pack_index = panel_widget_get_new_pack_index (dialog->panel_widget,
 
775
                                                      dialog->insert_pack_type);
 
776
 
751
777
        switch (item_info->type) {
752
778
        case PANEL_ADDTO_APPLET:
753
779
                panel_applet_frame_create (dialog->panel_widget->toplevel,
754
 
                                           dialog->insertion_position,
 
780
                                           dialog->insert_pack_type,
 
781
                                           pack_index,
755
782
                                           item_info->iid);
756
783
                break;
757
784
        case PANEL_ADDTO_ACTION:
758
785
                panel_action_button_create (dialog->panel_widget->toplevel,
759
 
                                            dialog->insertion_position,
 
786
                                            dialog->insert_pack_type,
 
787
                                            pack_index,
760
788
                                            item_info->action_type);
761
789
                break;
762
790
        case PANEL_ADDTO_LAUNCHER_MENU:
764
792
                break;
765
793
        case PANEL_ADDTO_LAUNCHER:
766
794
                panel_launcher_create (dialog->panel_widget->toplevel,
767
 
                                       dialog->insertion_position,
 
795
                                       dialog->insert_pack_type,
 
796
                                       pack_index,
768
797
                                       item_info->launcher_path);
769
798
                break;
770
799
        case PANEL_ADDTO_LAUNCHER_NEW:
771
800
                ask_about_launcher (NULL, dialog->panel_widget,
772
 
                                    dialog->insertion_position, FALSE);
 
801
                                    dialog->insert_pack_type);
773
802
                break;
774
803
        case PANEL_ADDTO_MENU:
775
804
                panel_menu_button_create (dialog->panel_widget->toplevel,
776
 
                                          dialog->insertion_position,
 
805
                                          dialog->insert_pack_type,
 
806
                                          pack_index,
777
807
                                          item_info->menu_filename,
778
808
                                          item_info->menu_path,
779
 
                                          item_info->menu_path != NULL,
780
809
                                          item_info->name);
781
810
                break;
782
811
        case PANEL_ADDTO_MENUBAR:
783
812
                panel_menu_bar_create (dialog->panel_widget->toplevel,
784
 
                                       dialog->insertion_position);
 
813
                                       dialog->insert_pack_type,
 
814
                                       pack_index);
785
815
                break;
786
816
        case PANEL_ADDTO_SEPARATOR:
787
817
                panel_separator_create (dialog->panel_widget->toplevel,
788
 
                                        dialog->insertion_position);
 
818
                                        dialog->insert_pack_type,
 
819
                                        pack_index);
789
820
                break;
790
 
        case PANEL_ADDTO_DRAWER:
791
 
                panel_drawer_create (dialog->panel_widget->toplevel,
792
 
                                     dialog->insertion_position,
793
 
                                     NULL, FALSE, NULL);
 
821
        case PANEL_ADDTO_USER_MENU:
 
822
                panel_user_menu_create (dialog->panel_widget->toplevel,
 
823
                                        dialog->insert_pack_type,
 
824
                                        pack_index);
794
825
                break;
795
826
        }
796
827
}
955
986
static void
956
987
panel_addto_dialog_free (PanelAddtoDialog *dialog)
957
988
{
958
 
        GConfClient *client;
959
 
        GSList      *item;
960
 
 
961
 
        client = panel_gconf_get_client ();
 
989
        GSList *item;
962
990
 
963
991
        if (dialog->name_notify)
964
 
                gconf_client_notify_remove (client, dialog->name_notify);
 
992
                g_signal_handler_disconnect (dialog->panel_widget->toplevel,
 
993
                                             dialog->name_notify);
965
994
        dialog->name_notify = 0;
966
995
 
967
996
        if (dialog->search_text)
1014
1043
}
1015
1044
 
1016
1045
static void
1017
 
panel_addto_name_change (PanelAddtoDialog *dialog,
1018
 
                         const char       *name)
 
1046
panel_addto_name_change (PanelAddtoDialog *dialog)
1019
1047
{
1020
 
        char *title;
1021
 
        char *label;
 
1048
        const char *name;
 
1049
        char       *label;
1022
1050
 
 
1051
        name = panel_toplevel_get_name (dialog->panel_widget->toplevel);
1023
1052
        label = NULL;
1024
1053
 
1025
1054
        if (!PANEL_GLIB_STR_EMPTY (name))
1026
1055
                label = g_strdup_printf (_("Find an _item to add to \"%s\":"),
1027
1056
                                         name);
1028
1057
 
1029
 
        if (panel_toplevel_get_is_attached (dialog->panel_widget->toplevel)) {
1030
 
                title = g_strdup_printf (_("Add to Drawer"));
1031
 
                if (label == NULL)
1032
 
                        label = g_strdup (_("Find an _item to add to the drawer:"));
1033
 
        } else {
1034
 
                title = g_strdup_printf (_("Add to Panel"));
1035
 
                if (label == NULL)
1036
 
                        label = g_strdup (_("Find an _item to add to the panel:"));
1037
 
        }
 
1058
        if (label == NULL)
 
1059
                label = g_strdup (_("Find an _item to add to the panel:"));
1038
1060
 
1039
 
        gtk_window_set_title (GTK_WINDOW (dialog->addto_dialog), title);
1040
 
        g_free (title);
 
1061
        gtk_window_set_title (GTK_WINDOW (dialog->addto_dialog),
 
1062
                              _("Add to Panel"));
1041
1063
 
1042
1064
        gtk_label_set_text_with_mnemonic (GTK_LABEL (dialog->label), label);
1043
1065
        g_free (label);
1044
1066
}
1045
1067
 
1046
1068
static void
1047
 
panel_addto_name_notify (GConfClient      *client,
1048
 
                         guint             cnxn_id,
1049
 
                         GConfEntry       *entry,
 
1069
panel_addto_name_notify (GObject          *gobject,
 
1070
                         GParamSpec       *pspec,
1050
1071
                         PanelAddtoDialog *dialog)
1051
1072
{
1052
 
        GConfValue *value;
1053
 
        const char *key;
1054
 
        const char *text = NULL;
1055
 
 
1056
 
        key = panel_gconf_basename (gconf_entry_get_key (entry));
1057
 
 
1058
 
        if (strcmp (key, "name"))
1059
 
                return;
1060
 
 
1061
 
        value = gconf_entry_get_value (entry);
1062
 
 
1063
 
        if (value && value->type == GCONF_VALUE_STRING)
1064
 
                text = gconf_value_get_string (value);
1065
 
 
1066
 
        if (text)
1067
 
                panel_addto_name_change (dialog, text);
 
1073
        panel_addto_name_change (dialog);
1068
1074
}
1069
1075
 
1070
1076
static gboolean
1185
1191
                                  TRUE);
1186
1192
 
1187
1193
        /* only allow dragging applets if we can add applets */
1188
 
        if (panel_profile_id_lists_are_writable ()) {
 
1194
        if (panel_layout_is_writable ()) {
1189
1195
                switch (data->type) {
1190
1196
                case PANEL_ADDTO_LAUNCHER:
1191
1197
                        panel_addto_setup_launcher_drag (GTK_TREE_VIEW (dialog->tree_view),
1251
1257
{
1252
1258
        PanelAddtoDialog *dialog;
1253
1259
        GtkWidget *dialog_vbox;
1254
 
        GtkWidget *vbox;
1255
1260
        GtkWidget *inner_vbox;
1256
1261
        GtkWidget *find_hbox;
1257
1262
        GtkWidget *sw;
1268
1273
 
1269
1274
        dialog->panel_widget = panel_widget;
1270
1275
        dialog->name_notify =
1271
 
                panel_profile_toplevel_notify_add (
1272
 
                        dialog->panel_widget->toplevel,
1273
 
                        "name",
1274
 
                        (GConfClientNotifyFunc) panel_addto_name_notify,
1275
 
                        dialog);
1276
 
 
 
1276
                g_signal_connect (dialog->panel_widget->toplevel,
 
1277
                                  "notify::name",
 
1278
                                  G_CALLBACK (panel_addto_name_notify),
 
1279
                                  dialog);
1277
1280
 
1278
1281
        dialog->addto_dialog = gtk_dialog_new ();
1279
1282
        gtk_dialog_add_button (GTK_DIALOG (dialog->addto_dialog),
1288
1291
                               GTK_STOCK_CLOSE,
1289
1292
                               GTK_RESPONSE_CLOSE);
1290
1293
        gtk_widget_set_sensitive (GTK_WIDGET (dialog->add_button), FALSE);
1291
 
        gtk_dialog_set_has_separator (GTK_DIALOG (dialog->addto_dialog),
1292
 
                                      FALSE);
1293
1294
        gtk_dialog_set_default_response (GTK_DIALOG (dialog->addto_dialog),
1294
1295
                                         PANEL_ADDTO_RESPONSE_ADD);
1295
1296
 
1296
1297
        gtk_container_set_border_width (GTK_CONTAINER (dialog->addto_dialog), 5);
1297
1298
 
1298
1299
        dialog_vbox = gtk_dialog_get_content_area (GTK_DIALOG (dialog->addto_dialog));
1299
 
        gtk_box_set_spacing (GTK_BOX (dialog_vbox), 2);
 
1300
        gtk_box_set_spacing (GTK_BOX (dialog_vbox), 12);
 
1301
        gtk_container_set_border_width (GTK_CONTAINER (dialog_vbox), 5);
1300
1302
 
1301
1303
        g_signal_connect (G_OBJECT (dialog->addto_dialog), "response",
1302
1304
                          G_CALLBACK (panel_addto_dialog_response), dialog);
1303
1305
        g_signal_connect (dialog->addto_dialog, "destroy",
1304
1306
                          G_CALLBACK (panel_addto_dialog_destroy), dialog);
1305
1307
 
1306
 
        vbox = gtk_vbox_new (FALSE, 12);
1307
 
        gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
1308
 
        gtk_container_add (GTK_CONTAINER (dialog_vbox), vbox);
1309
 
 
1310
1308
        inner_vbox = gtk_vbox_new (FALSE, 6);
1311
 
        gtk_box_pack_start (GTK_BOX (vbox), inner_vbox, TRUE, TRUE, 0);
 
1309
        gtk_box_pack_start (GTK_BOX (dialog_vbox), inner_vbox, TRUE, TRUE, 0);
1312
1310
 
1313
1311
        find_hbox = gtk_hbox_new (FALSE, 6);
1314
1312
        gtk_box_pack_start (GTK_BOX (inner_vbox), find_hbox, FALSE, FALSE, 0);
1390
1388
 
1391
1389
        gtk_container_add (GTK_CONTAINER (sw), dialog->tree_view);
1392
1390
 
1393
 
        gtk_widget_show_all (vbox);
 
1391
        gtk_widget_show_all (dialog_vbox);
1394
1392
 
1395
1393
        panel_toplevel_push_autohide_disabler (dialog->panel_widget->toplevel);
1396
1394
        panel_widget_register_open_dialog (panel_widget,
1397
1395
                                           dialog->addto_dialog);
1398
1396
 
1399
 
        panel_addto_name_change (dialog,
1400
 
                                 panel_toplevel_get_name (dialog->panel_widget->toplevel));
 
1397
        panel_addto_name_change (dialog);
1401
1398
 
1402
1399
        return dialog;
1403
1400
}
1434
1431
                panel_addto_present_applets (dialog);
1435
1432
        }
1436
1433
 
1437
 
        dialog->insertion_position = pd ? pd->insertion_pos : -1;
 
1434
        dialog->insert_pack_type = pd ? pd->insert_pack_type : PANEL_OBJECT_PACK_START;
1438
1435
        gtk_window_set_screen (GTK_WINDOW (dialog->addto_dialog), screen);
1439
1436
        gtk_window_set_default_size (GTK_WINDOW (dialog->addto_dialog),
1440
1437
                                     height * 8 / 7, height);