### Method

# Gio SettingsBackend keys_changed

since: 2.26

#### Declaration

    void
    g_settings_backend_keys_changed (
      GSettingsBackend* backend,
      const gchar* path,
      const gchar* const* items,
      gpointer origin_tag
    )

#### Description

Signals that a list of keys have possibly changed. Backend implementations should call this if keys have possibly changed their values.

`path` must be a valid path (ie starting and ending with a slash and not containing ‘//’). Each string in `items` must form a valid key name when `path` is prefixed to it (ie: each item must not start or end with ‘/’ and must not contain ‘//’).

The meaning of this signal is that any of the key names resulting from the contatenation of `path` with each item in `items` may have changed.

The same rules for when notifications must occur apply as per g_settings_backend_changed(). These two calls can be used interchangeably if exactly one item has changed (although in that case `g_settings_backend_changed()` is definitely preferred).

For efficiency reasons, the implementation should strive for `path` to be as long as possible (ie: the longest common prefix of all of the keys that were changed) but this is not strictly required.

Available since: 2.26

#### Parameters

`path`

  Type: `const gchar*`

  The path containing the changes.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`items`

  Type: An array of `gchar*`

  The `NULL`-terminated list of changed keys.

  The array must be `NULL`-terminated.
  The data is owned by the caller of the method.
  Each element is a NUL terminated UTF-8 string.

`origin_tag`

  Type: `gpointer`

  The origin tag.

  The argument can be `NULL`.
  The data is owned by the caller of the method.