gi-gio-2.0.32: Gio bindings

Copyright | Will Thompson and Iñaki García Etxebarria
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria
Safe Haskell | Safe-Inferred
Language | Haskell2010

GI.Gio.Objects.VolumeMonitor

Contents

- Exported types
- Methods
  - adoptOrphanMount
  - get
  - getConnectedDrives
  - getMountForUuid
  - getMounts
  - getVolumeForUuid
  - getVolumes
- Signals
  - driveChanged
  - driveConnected
  - driveDisconnected
  - driveEjectButton
  - driveStopButton
  - mountAdded
  - mountChanged
  - mountPreUnmount
  - mountRemoved
  - volumeAdded
  - volumeChanged
  - volumeRemoved

Description

`GVolumeMonitor` is for listing the user interesting devices and volumes on the computer. In other words, what a file selector or file manager would show in a sidebar.

`GVolumeMonitor` is not thread-default-context aware (see `mainContextPushThreadDefault`), and so should not be used other than from the main thread, with no thread-default-context active.

In order to receive updates about volumes and mounts monitored through GVFS, a main loop must be running.

Synopsis

- newtype VolumeMonitor = VolumeMonitor (ManagedPtr VolumeMonitor)
- class (GObject o, IsDescendantOf VolumeMonitor o) => IsVolumeMonitor o
- toVolumeMonitor :: (MonadIO m, IsVolumeMonitor o) => o -> m VolumeMonitor
- volumeMonitorAdoptOrphanMount :: (HasCallStack, MonadIO m, IsMount a) => a -> m Volume
- volumeMonitorGet :: (HasCallStack, MonadIO m) => m VolumeMonitor
- volumeMonitorGetConnectedDrives :: (HasCallStack, MonadIO m, IsVolumeMonitor a) => a -> m [Drive]
- volumeMonitorGetMountForUuid :: (HasCallStack, MonadIO m, IsVolumeMonitor a) => a -> Text -> m (Maybe Mount)
- volumeMonitorGetMounts :: (HasCallStack, MonadIO m, IsVolumeMonitor a) => a -> m [Mount]
- volumeMonitorGetVolumeForUuid :: (HasCallStack, MonadIO m, IsVolumeMonitor a) => a -> Text -> m (Maybe Volume)
- volumeMonitorGetVolumes :: (HasCallStack, MonadIO m, IsVolumeMonitor a) => a -> m [Volume]
- type VolumeMonitorDriveChangedCallback = Drive -> IO ()
- afterVolumeMonitorDriveChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveChangedCallback) -> m SignalHandlerId
- onVolumeMonitorDriveChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveChangedCallback) -> m SignalHandlerId
- type VolumeMonitorDriveConnectedCallback = Drive -> IO ()
- afterVolumeMonitorDriveConnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveConnectedCallback) -> m SignalHandlerId
- onVolumeMonitorDriveConnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveConnectedCallback) -> m SignalHandlerId
- type VolumeMonitorDriveDisconnectedCallback = Drive -> IO ()
- afterVolumeMonitorDriveDisconnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveDisconnectedCallback) -> m SignalHandlerId
- onVolumeMonitorDriveDisconnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveDisconnectedCallback) -> m SignalHandlerId
- type VolumeMonitorDriveEjectButtonCallback = Drive -> IO ()
- afterVolumeMonitorDriveEjectButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveEjectButtonCallback) -> m SignalHandlerId
- onVolumeMonitorDriveEjectButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveEjectButtonCallback) -> m SignalHandlerId
- type VolumeMonitorDriveStopButtonCallback = Drive -> IO ()
- afterVolumeMonitorDriveStopButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveStopButtonCallback) -> m SignalHandlerId
- onVolumeMonitorDriveStopButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveStopButtonCallback) -> m SignalHandlerId
- type VolumeMonitorMountAddedCallback = Mount -> IO ()
- afterVolumeMonitorMountAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountAddedCallback) -> m SignalHandlerId
- onVolumeMonitorMountAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountAddedCallback) -> m SignalHandlerId
- type VolumeMonitorMountChangedCallback = Mount -> IO ()
- afterVolumeMonitorMountChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountChangedCallback) -> m SignalHandlerId
- onVolumeMonitorMountChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountChangedCallback) -> m SignalHandlerId
- type VolumeMonitorMountPreUnmountCallback = Mount -> IO ()
- afterVolumeMonitorMountPreUnmount :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountPreUnmountCallback) -> m SignalHandlerId
- onVolumeMonitorMountPreUnmount :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountPreUnmountCallback) -> m SignalHandlerId
- type VolumeMonitorMountRemovedCallback = Mount -> IO ()
- afterVolumeMonitorMountRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountRemovedCallback) -> m SignalHandlerId
- onVolumeMonitorMountRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountRemovedCallback) -> m SignalHandlerId
- type VolumeMonitorVolumeAddedCallback = Volume -> IO ()
- afterVolumeMonitorVolumeAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeAddedCallback) -> m SignalHandlerId
- onVolumeMonitorVolumeAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeAddedCallback) -> m SignalHandlerId
- type VolumeMonitorVolumeChangedCallback = Volume -> IO ()
- afterVolumeMonitorVolumeChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeChangedCallback) -> m SignalHandlerId
- onVolumeMonitorVolumeChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeChangedCallback) -> m SignalHandlerId
- type VolumeMonitorVolumeRemovedCallback = Volume -> IO ()
- afterVolumeMonitorVolumeRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeRemovedCallback) -> m SignalHandlerId
- onVolumeMonitorVolumeRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeRemovedCallback) -> m SignalHandlerId

# Exported types

newtype VolumeMonitor Source #

Memory-managed wrapper type.

Constructors

VolumeMonitor (ManagedPtr VolumeMonitor) |

#### Instances

Instances details

Eq VolumeMonitor Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor Methods (==) :: VolumeMonitor -> VolumeMonitor -> Bool Source # (/=) :: VolumeMonitor -> VolumeMonitor -> Bool Source #
GObject VolumeMonitor Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor
ManagedPtrNewtype VolumeMonitor Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor Methods toManagedPtr :: VolumeMonitor -> ManagedPtr VolumeMonitor Source #
TypedObject VolumeMonitor Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor Methods glibType :: IO GType Source #
HasParentTypes VolumeMonitor Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor
IsGValue (Maybe VolumeMonitor) Source # | Convert `VolumeMonitor` to and from `GValue`. See `toGValue` and `fromGValue`.
Instance details Defined in GI.Gio.Objects.VolumeMonitor Methods gvalueGType_ :: IO GType Source # gvalueSet_ :: Ptr GValue -> Maybe VolumeMonitor -> IO () Source # gvalueGet_ :: Ptr GValue -> IO (Maybe VolumeMonitor) Source #
type ParentTypes VolumeMonitor Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor type ParentTypes VolumeMonitor = '[Object]

class (GObject o, IsDescendantOf VolumeMonitor o) => IsVolumeMonitor o Source #

Type class for types which can be safely cast to `VolumeMonitor`, for instance with `toVolumeMonitor`.

#### Instances

Instances details

(GObject o, IsDescendantOf VolumeMonitor o) => IsVolumeMonitor o Source # |
Instance details Defined in GI.Gio.Objects.VolumeMonitor

toVolumeMonitor :: (MonadIO m, IsVolumeMonitor o) => o -> m VolumeMonitor Source #

Cast to `VolumeMonitor`, for types for which this is known to be safe. For general casts, use `castTo`.

# Methods

### Click to display all available methods, including inherited ones

Expand

#### Methods

bindProperty, bindPropertyFull, forceFloating, freezeNotify, getv, isFloating, notify, notifyByPspec, ref, refSink, runDispose, stealData, stealQdata, thawNotify, unref, watchClosure.

#### Getters

getConnectedDrives, getData, getMountForUuid, getMounts, getProperty, getQdata, getVolumeForUuid, getVolumes.

#### Setters

setData, setDataFull, setProperty.

## adoptOrphanMount

volumeMonitorAdoptOrphanMount Source #

Arguments

:: (HasCallStack, MonadIO m, IsMount a) |
=> a | `mount`: a `Mount` object to find a parent for
-> m Volume | Returns: the `Volume` object that is the parent for `mount` or `Nothing` if no wants to adopt the `Mount`.

Deprecated: (Since version 2.20)Instead of using this function, `VolumeMonitor`implementations should instead create shadow mounts with the URI ofthe mount they intend to adopt. See the proxy volume monitor ingvfs for an example of this. Also see `mountIsShadowed`,`mountShadow` and `mountUnshadow` functions.

This function should be called by any `VolumeMonitor` implementation when a new `Mount` object is created that is not associated with a `Volume` object. It must be called just before emitting the `mountAdded` signal.

If the return value is not `Nothing`, the caller must associate the returned `Volume` object with the `Mount`. This involves returning it in its `mountGetVolume` implementation. The caller must also listen for the "removed" signal on the returned object and give up its reference when handling that signal

Similarly, if implementing `volumeMonitorAdoptOrphanMount`, the implementor must take a reference to `mount` and return it in its `volumeGetMount` implemented. Also, the implementor must listen for the "unmounted" signal on `mount` and give up its reference upon handling that signal.

There are two main use cases for this function.

One is when implementing a user space file system driver that reads blocks of a block device that is already represented by the native volume monitor (for example a CD Audio file system driver). Such a driver will generate its own `Mount` object that needs to be associated with the `Volume` object that represents the volume.

The other is for implementing a `VolumeMonitor` whose sole purpose is to return `Volume` objects representing entries in the users "favorite servers" list or similar.

## get

volumeMonitorGet Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> m VolumeMonitor | Returns: a reference to the `VolumeMonitor` used by gio. Call `objectUnref` when done with it.

Gets the volume monitor used by gio.

## getConnectedDrives

volumeMonitorGetConnectedDrives Source #

Arguments

:: (HasCallStack, MonadIO m, IsVolumeMonitor a) |
=> a | `volumeMonitor`: a `VolumeMonitor`.
-> m [Drive] | Returns: a `List` of connected `Drive` objects.

Gets a list of drives connected to the system.

The returned list should be freed with `g_list_free()`, after its elements have been unreffed with `objectUnref`.

## getMountForUuid

volumeMonitorGetMountForUuid Source #

Arguments

:: (HasCallStack, MonadIO m, IsVolumeMonitor a) |
=> a | `volumeMonitor`: a `VolumeMonitor`.
-> Text | `uuid`: the UUID to look for
-> m (Maybe Mount) | Returns: a `Mount` or `Nothing` if no such mount is available. Free the returned object with `objectUnref`.

Finds a `Mount` object by its UUID (see `mountGetUuid`)

## getMounts

volumeMonitorGetMounts Source #

Arguments

:: (HasCallStack, MonadIO m, IsVolumeMonitor a) |
=> a | `volumeMonitor`: a `VolumeMonitor`.
-> m [Mount] | Returns: a `List` of `Mount` objects.

Gets a list of the mounts on the system.

The returned list should be freed with `g_list_free()`, after its elements have been unreffed with `objectUnref`.

## getVolumeForUuid

volumeMonitorGetVolumeForUuid Source #

Arguments

:: (HasCallStack, MonadIO m, IsVolumeMonitor a) |
=> a | `volumeMonitor`: a `VolumeMonitor`.
-> Text | `uuid`: the UUID to look for
-> m (Maybe Volume) | Returns: a `Volume` or `Nothing` if no such volume is available. Free the returned object with `objectUnref`.

Finds a `Volume` object by its UUID (see `volumeGetUuid`)

## getVolumes

volumeMonitorGetVolumes Source #

Arguments

:: (HasCallStack, MonadIO m, IsVolumeMonitor a) |
=> a | `volumeMonitor`: a `VolumeMonitor`.
-> m [Volume] | Returns: a `List` of `Volume` objects.

Gets a list of the volumes on the system.

The returned list should be freed with `g_list_free()`, after its elements have been unreffed with `objectUnref`.

# Signals

## driveChanged

type VolumeMonitorDriveChangedCallback Source #

Arguments

= Drive | `drive`: the drive that changed
-> IO () |

Emitted when a drive changes.

afterVolumeMonitorDriveChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveChangedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveChanged signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #driveChanged callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorDriveChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveChangedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveChanged signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #driveChanged callback

## driveConnected

type VolumeMonitorDriveConnectedCallback Source #

Arguments

= Drive | `drive`: a `Drive` that was connected.
-> IO () |

Emitted when a drive is connected to the system.

afterVolumeMonitorDriveConnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveConnectedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveConnected signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #driveConnected callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorDriveConnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveConnectedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveConnected signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #driveConnected callback

## driveDisconnected

type VolumeMonitorDriveDisconnectedCallback Source #

Arguments

= Drive | `drive`: a `Drive` that was disconnected.
-> IO () |

Emitted when a drive is disconnected from the system.

afterVolumeMonitorDriveDisconnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveDisconnectedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveDisconnected signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #driveDisconnected callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorDriveDisconnected :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveDisconnectedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveDisconnected signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #driveDisconnected callback

## driveEjectButton

type VolumeMonitorDriveEjectButtonCallback Source #

Arguments

= Drive | `drive`: the drive where the eject button was pressed
-> IO () |

Emitted when the eject button is pressed on `drive`.

Since: 2.18

afterVolumeMonitorDriveEjectButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveEjectButtonCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveEjectButton signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #driveEjectButton callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorDriveEjectButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveEjectButtonCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveEjectButton signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #driveEjectButton callback

## driveStopButton

type VolumeMonitorDriveStopButtonCallback Source #

Arguments

= Drive | `drive`: the drive where the stop button was pressed
-> IO () |

Emitted when the stop button is pressed on `drive`.

Since: 2.22

afterVolumeMonitorDriveStopButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveStopButtonCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveStopButton signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #driveStopButton callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorDriveStopButton :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorDriveStopButtonCallback) -> m SignalHandlerId Source #

Connect a signal handler for the driveStopButton signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #driveStopButton callback

## mountAdded

type VolumeMonitorMountAddedCallback Source #

Arguments

= Mount | `mount`: a `Mount` that was added.
-> IO () |

Emitted when a mount is added.

afterVolumeMonitorMountAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountAddedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountAdded signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #mountAdded callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorMountAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountAddedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountAdded signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #mountAdded callback

## mountChanged

type VolumeMonitorMountChangedCallback Source #

Arguments

= Mount | `mount`: a `Mount` that changed.
-> IO () |

Emitted when a mount changes.

afterVolumeMonitorMountChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountChangedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountChanged signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #mountChanged callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorMountChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountChangedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountChanged signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #mountChanged callback

## mountPreUnmount

type VolumeMonitorMountPreUnmountCallback Source #

Arguments

= Mount | `mount`: a `Mount` that is being unmounted.
-> IO () |

May be emitted when a mount is about to be removed.

This signal depends on the backend and is only emitted if GIO was used to unmount.

afterVolumeMonitorMountPreUnmount :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountPreUnmountCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountPreUnmount signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #mountPreUnmount callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorMountPreUnmount :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountPreUnmountCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountPreUnmount signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #mountPreUnmount callback

## mountRemoved

type VolumeMonitorMountRemovedCallback Source #

Arguments

= Mount | `mount`: a `Mount` that was removed.
-> IO () |

Emitted when a mount is removed.

afterVolumeMonitorMountRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountRemovedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountRemoved signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #mountRemoved callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorMountRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorMountRemovedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the mountRemoved signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #mountRemoved callback

## volumeAdded

type VolumeMonitorVolumeAddedCallback Source #

Arguments

= Volume | `volume`: a `Volume` that was added.
-> IO () |

Emitted when a mountable volume is added to the system.

afterVolumeMonitorVolumeAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeAddedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the volumeAdded signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #volumeAdded callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorVolumeAdded :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeAddedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the volumeAdded signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #volumeAdded callback

## volumeChanged

type VolumeMonitorVolumeChangedCallback Source #

Arguments

= Volume | `volume`: a `Volume` that changed.
-> IO () |

Emitted when mountable volume is changed.

afterVolumeMonitorVolumeChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeChangedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the volumeChanged signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #volumeChanged callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorVolumeChanged :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeChangedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the volumeChanged signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #volumeChanged callback

## volumeRemoved

type VolumeMonitorVolumeRemovedCallback Source #

Arguments

= Volume | `volume`: a `Volume` that was removed.
-> IO () |

Emitted when a mountable volume is removed from the system.

afterVolumeMonitorVolumeRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeRemovedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the volumeRemoved signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after volumeMonitor #volumeRemoved callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVolumeMonitorVolumeRemoved :: (IsVolumeMonitor a, MonadIO m) => a -> ((?self :: a) => VolumeMonitorVolumeRemovedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the volumeRemoved signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on volumeMonitor #volumeRemoved callback