## Filesystem utilities

Filesystem utilities — Functions for working with GIO

## Functions

GMountOperation * | gtk_mount_operation_new ()
gboolean | gtk_mount_operation_is_showing ()
void | gtk_mount_operation_set_parent ()
GtkWindow * | gtk_mount_operation_get_parent ()
void | gtk_mount_operation_set_screen ()
GdkScreen * | gtk_mount_operation_get_screen ()
gboolean | gtk_show_uri ()

## Properties

gboolean | is-showing | Read
GtkWindow * | parent | Read / Write
GdkScreen * | screen | Read / Write

## Types and Values

struct | GtkMountOperation
struct | GtkMountOperationClass

## Object Hierarchy

        GObject
        ╰── GMountOperation
            ╰── GtkMountOperation

## Includes

    #include <gtk/gtk.h>

## Description

The functions and objects described here make working with GTK+ and GIO more convenient.

GtkMountOperation is needed when mounting volumes: It is an implementation of GMountOperation that can be used with GIO functions for mounting volumes such as `g_file_mount_enclosing_volume()`, `g_file_mount_mountable()`, `g_volume_mount()`, `g_mount_unmount_with_operation()` and others.

When necessary, GtkMountOperation shows dialogs to ask for passwords, questions or show processes blocking unmount.

gtk_show_uri() is a convenient way to launch applications for URIs.

Another object that is worth mentioning in this context is GdkAppLaunchContext, which provides visual feedback when lauching applications.

## Functions

### gtk_mount_operation_new ()

    GMountOperation *
    gtk_mount_operation_new (GtkWindow *parent);

Creates a new GtkMountOperation

#### Parameters

parent | transient parent of the window, or `NULL`. | [allow-none]

#### Returns

a new GtkMountOperation

Since 2.14

### gtk_mount_operation_is_showing ()

    gboolean
    gtk_mount_operation_is_showing (GtkMountOperation *op);

Returns whether the GtkMountOperation is currently displaying a window.

#### Parameters

op | a GtkMountOperation |

#### Returns

`TRUE` if `op` is currently displaying a window

Since 2.14

### gtk_mount_operation_set_parent ()

    void
    gtk_mount_operation_set_parent (GtkMountOperation *op,
                                    GtkWindow *parent);

Sets the transient parent for windows shown by the GtkMountOperation.

#### Parameters

op | a GtkMountOperation |
parent | transient parent of the window, or `NULL`. | [allow-none]

Since 2.14

### gtk_mount_operation_get_parent ()

    GtkWindow *
    gtk_mount_operation_get_parent (GtkMountOperation *op);

Gets the transient parent used by the GtkMountOperation

#### Parameters

op | a GtkMountOperation |

#### Returns

the transient parent for windows shown by `op` .

[transfer none]

Since 2.14

### gtk_mount_operation_set_screen ()

    void
    gtk_mount_operation_set_screen (GtkMountOperation *op,
                                    GdkScreen *screen);

Sets the screen to show windows of the GtkMountOperation on.

#### Parameters

op | a GtkMountOperation |
screen | a GdkScreen |

Since 2.14

### gtk_mount_operation_get_screen ()

    GdkScreen *
    gtk_mount_operation_get_screen (GtkMountOperation *op);

Gets the screen on which windows of the GtkMountOperation will be shown.

#### Parameters

op | a GtkMountOperation |

#### Returns

the screen on which windows of `op` are shown.

[transfer none]

Since 2.14

### gtk_show_uri ()

    gboolean
    gtk_show_uri (GdkScreen *screen,
                  const gchar *uri,
                  guint32 timestamp,
                  GError **error);

This is a convenience function for launching the default application to show the uri. The uri must be of a form understood by GIO (i.e. you need to install gvfs to get support for uri schemes such as http:// or ftp://, as only local files are handled by GIO itself). Typical examples are

- `file:///home/gnome/pict.jpg`

- `http://www.gnome.org`

- `mailto:me@gnome.org`

Ideally the timestamp is taken from the event triggering the `gtk_show_uri()` call. If timestamp is not known you can take `GDK_CURRENT_TIME`.

#### Parameters

screen | screen to show the uri on or `NULL` for the default screen. | [allow-none]
uri | the uri to show |
timestamp | a timestamp to prevent focus stealing |
error | a GError that is returned in case of errors |

#### Returns

`TRUE` on success, `FALSE` on error

Since 2.14

## Types and Values

### struct GtkMountOperation

    struct GtkMountOperation;

This should not be accessed directly. Use the accessor functions below.

### struct GtkMountOperationClass

    struct GtkMountOperationClass {
      GMountOperationClass parent_class;
    };

#### Members

GMountOperationClass `parent_class`; | The parent class. |

## Property Details

### The `“is-showing”` property

      “is-showing”               gboolean

Are we showing a dialog.

Flags: Read

Default value: FALSE

### The `“parent”` property

      “parent”                   GtkWindow *

The parent window.

Flags: Read / Write

### The `“screen”` property

      “screen”                   GdkScreen *

The screen where this window will be displayed.

Flags: Read / Write