~ubuntu-branches/ubuntu/lucid/brasero/lucid-updates

« back to all changes in this revision

Viewing changes to src/brasero-file-chooser.c

  • Committer: Bazaar Package Importer
  • Author(s): Didier Roche
  • Date: 2010-06-24 11:22:46 UTC
  • mfrom: (1.3.7 upstream)
  • Revision ID: james.westby@ubuntu.com-20100624112246-s5ubbf8tafqkir0m
Tags: 2.30.2-0ubuntu1
* New upstream release
  - Lot's of memleak fixes
  - Fixed a runtime warning related to cancelling tracker searches
  - Crash in brasero_data_project_node_removed at
    brasero-data-project.c:1163
  - brasero crashed with SIGSEGV in brasero_data_project_remove_node()
    (LP: #561319)
  - Fix a few runtime warnings with the Cover Editor
  - Text in cover editor does not show up automatically (LP: #469459)
  - Removed use of deprecated flags
  - Use accessor functions instead direct access (use GSEAL GnomeGoal)
  - Fix a bug in the layout on first start (side pane was hidden and
    remained so until the user moved it)
  - Save printer settings for cover printing
  - Write the contents of the GtkTextBuffer displayed line by displayed
    line which should improve the layout
  - "Write to Disc" button sensitivity regression
  - Fix flaw in mask that led libburn plugin not to work (not to be picked
    up actually) in some circumstances
  - Fails to burn ANY audio project
  - Move columns doesn't work (LP: #581759)
  - Brasero does not correctly handle double clicking on column separators
    (LP: #581885)
  - Bad info when burning, high CPU usage and slow burn
  - Change the priority for cdrdao and raised the one of cdda2wav plugin
  - brasero crashed with SIGSEGV in
    brasero_mmc3_get_performa nce_wrt_spd_desc() (LP: #564766)
  - brasero crashed with SIGSEGV in brasero_scsi_command_issue_sync()
    (LP: #444832)
  - Do not check for symlinks on cdda2wav so the plugin can use icedax.
  - Brasero's failure with some file names (LP: #380643)
  - Pressing create audio cd does nothing
  - Empty project not available
  - can't actually save error logs
  - doesn't handle incorrect temp dirs properly
  - Fix multi DND in GtkFileChooser
  - Displays "starting to record" during whole burn process
  - Fix wrong report of speed with both cdrecord and wodim
  - Disk project doesn't save the disk title (LP: #587924)
  - Brasero reports outdated cdrtools on cdrtools-3.00 (LP: #592075)
  - misc bug fixes
  - Updated Translations
* Removed upstream patches:
  - debian/patches/90_git_audio_project_creation.patch,
    debian/patches/91_git_audio_project_creation.patch,
    debian/patches/92_git_audio_cd_recording.patch,
    debian/patches/93_git_new_caps_function_definition.patch
* debian/patches/99_autoconf.patch:
  - refreshed

Show diffs side-by-side

added added

removed removed

Lines of Context:
37
37
#include <gtk/gtk.h>
38
38
 
39
39
#include "eggtreemultidnd.h"
 
40
#include "brasero-multi-dnd.h"
40
41
 
41
42
#include "brasero-setting.h"
42
43
#include "brasero-file-chooser.h"
188
189
                                                   BRASERO_SETTING_BRASERO_FILE_CHOOSER_PERCENT,
189
190
                                                   &percent);
190
191
 
191
 
                if (GPOINTER_TO_INT (percent) < 0) {
192
 
                        /* No value so set something sane */
193
 
                        percent = GINT_TO_POINTER (30);
 
192
                if (GPOINTER_TO_INT (percent) >= 0) {
 
193
                        position = allocation->width * GPOINTER_TO_INT (percent) / 10000;
 
194
                        gtk_paned_set_position (GTK_PANED (widget), position);
194
195
                }
 
196
                else
 
197
                        gtk_paned_set_position (GTK_PANED (widget), 30 * allocation->width / 100);
195
198
 
196
 
                position = allocation->width * GPOINTER_TO_INT (percent) / 10000;
197
 
                gtk_paned_set_position (GTK_PANED (widget), position);
 
199
                /* Don't connect to position signal until it was first allocated */
198
200
                g_object_set_data (G_OBJECT (widget), "position_set", GINT_TO_POINTER (TRUE));
199
 
 
200
 
                /* Don't connect to position signal until it was first allocated */
201
201
                g_signal_connect (widget,
202
202
                                  "notify::position",
203
203
                                  G_CALLBACK (brasero_file_chooser_position_changed),
211
211
        brasero_file_chooser_position_percent (G_OBJECT (widget), width, position);
212
212
}
213
213
 
 
214
static void
 
215
brasero_file_chooser_notify_model (GtkTreeView *treeview,
 
216
                                   GParamSpec *pspec,
 
217
                                   gpointer NULL_data)
 
218
{
 
219
        GtkTreeModel *model;
 
220
 
 
221
        model = gtk_tree_view_get_model (treeview);
 
222
        if (model && !EGG_IS_TREE_MULTI_DRAG_SOURCE (model)) {
 
223
                GType type;
 
224
 
 
225
                type = G_OBJECT_TYPE (model);
 
226
                brasero_enable_multi_DND_for_model_type (type);
 
227
        }
 
228
}
 
229
 
214
230
void
215
231
brasero_file_chooser_customize (GtkWidget *widget, gpointer null_data)
216
232
{
217
 
 
218
233
        /* we explore everything until we reach a treeview (there are two) */
219
234
        if (GTK_IS_TREE_VIEW (widget)) {
220
235
                GtkTargetList *list;
229
244
                 * the warning messages we get if we do */
230
245
 
231
246
                if (found
232
 
                &&  gtk_tree_selection_get_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (widget))) == GTK_SELECTION_MULTIPLE)
 
247
                &&  gtk_tree_selection_get_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (widget))) == GTK_SELECTION_MULTIPLE) {
 
248
                        GtkTreeModel *model;
 
249
 
 
250
                        /* This is done because GtkFileChooser does not use a
 
251
                         * GtkListStore or GtkTreeStore any more. */
233
252
                        egg_tree_multi_drag_add_drag_support (GTK_TREE_VIEW (widget));
 
253
                        model = gtk_tree_view_get_model (GTK_TREE_VIEW (widget));
 
254
                        if (model) {
 
255
                                GType type;
 
256
 
 
257
                                type = G_OBJECT_TYPE (model);
 
258
                                brasero_enable_multi_DND_for_model_type (type);
 
259
                        }
 
260
                        else
 
261
                                g_signal_connect (widget,
 
262
                                                  "notify::model",
 
263
                                                  G_CALLBACK (brasero_file_chooser_notify_model),
 
264
                                                  NULL);
 
265
                }
234
266
        }
235
267
        else if (GTK_IS_BUTTON (widget)) {
236
268
                GtkWidget *image;