1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
6 * Copyright (C) 2008 Red Hat, Inc.
8 * Nautilus is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 * Author: David Zeuthen <davidz@redhat.com>
27 * - automount all user-visible media on startup
28 * - but avoid doing autorun for these
29 * - unmount all the media we've automounted on shutdown
30 * - finish x-content / * types
31 * - finalize the semi-spec
32 * - add probing/sniffing code
34 * - implement missing features
35 * - "Open Folder when mounted"
36 * - Autorun spec (e.g. $ROOT/.autostart)
40 #ifndef NAUTILUS_AUTORUN_H
41 #define NAUTILUS_AUTORUN_H
43 #include <gtk/gtkvbox.h>
44 #include <eel/eel-background.h>
45 #include <libnautilus-private/nautilus-file.h>
47 void _g_mount_guess_content_type_async (GMount
*mount
,
48 gboolean force_rescan
,
49 GCancellable
*cancellable
,
50 GAsyncReadyCallback callback
,
53 char ** _g_mount_guess_content_type_finish (GMount
*mount
,
57 char ** _g_mount_guess_content_type (GMount
*mount
,
58 gboolean force_rescan
,
62 typedef void (*NautilusAutorunComboBoxChanged
) (gboolean selected_ask
,
63 gboolean selected_ignore
,
64 gboolean selected_open_folder
,
65 GAppInfo
*selected_app
,
68 typedef void (*NautilusAutorunOpenWindow
) (GMount
*mount
, gpointer user_data
);
70 void nautilus_autorun_prepare_combo_box (GtkWidget
*combo_box
,
71 const char *x_content_type
,
73 gboolean update_settings
,
74 NautilusAutorunComboBoxChanged changed_cb
,
77 void nautilus_autorun_set_preferences (const char *x_content_type
, gboolean pref_ask
, gboolean pref_ignore
, gboolean pref_open_folder
);
78 void nautilus_autorun_get_preferences (const char *x_content_type
, gboolean
*pref_ask
, gboolean
*pref_ignore
, gboolean
*pref_open_folder
);
80 void nautilus_autorun (GMount
*mount
, NautilusAutorunOpenWindow open_window_func
, gpointer user_data
);
82 char **nautilus_autorun_get_x_content_types_for_mount (GMount
*mount
,
83 gboolean force_rescan
);
85 void nautilus_autorun_launch_for_mount (GMount
*mount
, GAppInfo
*app_info
);
87 void nautilus_inhibit_autorun_for_volume (GVolume
*volume
);
88 void nautilus_inhibit_autorun_for_file (GFile
*file
);
90 #endif /* NAUTILUS_AUTORUN_H */