## MidoriExtension MidoriExtension |

## Synopsis

    #include <midori/midori.h>

    struct              MidoriExtension;
    struct              MidoriExtensionClass;
    void                midori_extension_activate           (GObject *extension,
                                                             const gchar *filename,
                                                             gboolean activate,
                                                             MidoriApp *app);
    GObject *           midori_extension_activate_gracefully
                                                            (MidoriApp *app,
                                                             const gchar *extension_path,
                                                             const gchar *filename,
                                                             gboolean activate);
    void                midori_extension_deactivate         (MidoriExtension *extension);
    MidoriApp *         midori_extension_get_app            (MidoriExtension *extension);
    gboolean            midori_extension_get_boolean        (MidoriExtension *extension,
                                                             const gchar *name);
    const gchar *       midori_extension_get_config_dir     (MidoriExtension *extension);
    gint                midori_extension_get_integer        (MidoriExtension *extension,
                                                             const gchar *name);
    const gchar *       midori_extension_get_string         (MidoriExtension *extension,
                                                             const gchar *name);
    gchar **            midori_extension_get_string_list    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gsize *length);
    gboolean            midori_extension_has_preferences    (MidoriExtension *extension);
    void                midori_extension_install_boolean    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gboolean default_value);
    void                midori_extension_install_integer    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gint default_value);
    void                midori_extension_install_string     (MidoriExtension *extension,
                                                             const gchar *name,
                                                             const gchar *default_value);
    void                midori_extension_install_string_list
                                                            (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gchar **default_value,
                                                             gsize default_length);
    gboolean            midori_extension_is_active          (MidoriExtension *extension);
    gboolean            midori_extension_is_prepared        (MidoriExtension *extension);
    GObject *           midori_extension_load_from_file     (const gchar *extension_path,
                                                             const gchar *filename,
                                                             gboolean activate,
                                                             gboolean test);
    void                midori_extension_load_from_folder   (MidoriApp *app,
                                                             gchar **keys,
                                                             gboolean activate);
    void                midori_extension_set_boolean        (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gboolean value);
    void                midori_extension_set_integer        (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gint value);
    void                midori_extension_set_string         (MidoriExtension *extension,
                                                             const gchar *name,
                                                             const gchar *value);
    void                midori_extension_set_string_list    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gchar **value,
                                                             gsize length);

## Description

## Details

### struct MidoriExtension

    struct MidoriExtension {
        GObject parent_instance;

        MidoriExtensionPrivate* priv;
    };

### struct MidoriExtensionClass

    struct MidoriExtensionClass {
        GObjectClass parent_class;
    };

### midori_extension_activate ()

    void                midori_extension_activate           (GObject *extension,
                                                             const gchar *filename,
                                                             gboolean activate,
                                                             MidoriApp *app);

### midori_extension_activate_gracefully ()

    GObject *           midori_extension_activate_gracefully
                                                            (MidoriApp *app,
                                                             const gchar *extension_path,
                                                             const gchar *filename,
                                                             gboolean activate);

### midori_extension_deactivate ()

    void                midori_extension_deactivate         (MidoriExtension *extension);

### midori_extension_get_app ()

    MidoriApp *         midori_extension_get_app            (MidoriExtension *extension);

### midori_extension_get_boolean ()

    gboolean            midori_extension_get_boolean        (MidoriExtension *extension,
                                                             const gchar *name);

### midori_extension_get_config_dir ()

    const gchar *       midori_extension_get_config_dir     (MidoriExtension *extension);

### midori_extension_get_integer ()

    gint                midori_extension_get_integer        (MidoriExtension *extension,
                                                             const gchar *name);

### midori_extension_get_string ()

    const gchar *       midori_extension_get_string         (MidoriExtension *extension,
                                                             const gchar *name);

### midori_extension_get_string_list ()

    gchar **            midori_extension_get_string_list    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gsize *length);

### midori_extension_has_preferences ()

    gboolean            midori_extension_has_preferences    (MidoriExtension *extension);

### midori_extension_install_boolean ()

    void                midori_extension_install_boolean    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gboolean default_value);

### midori_extension_install_integer ()

    void                midori_extension_install_integer    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gint default_value);

### midori_extension_install_string ()

    void                midori_extension_install_string     (MidoriExtension *extension,
                                                             const gchar *name,
                                                             const gchar *default_value);

### midori_extension_install_string_list ()

    void                midori_extension_install_string_list
                                                            (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gchar **default_value,
                                                             gsize default_length);

### midori_extension_is_active ()

    gboolean            midori_extension_is_active          (MidoriExtension *extension);

### midori_extension_is_prepared ()

    gboolean            midori_extension_is_prepared        (MidoriExtension *extension);

### midori_extension_load_from_file ()

    GObject *           midori_extension_load_from_file     (const gchar *extension_path,
                                                             const gchar *filename,
                                                             gboolean activate,
                                                             gboolean test);

### midori_extension_load_from_folder ()

    void                midori_extension_load_from_folder   (MidoriApp *app,
                                                             gchar **keys,
                                                             gboolean activate);

### midori_extension_set_boolean ()

    void                midori_extension_set_boolean        (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gboolean value);

### midori_extension_set_integer ()

    void                midori_extension_set_integer        (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gint value);

### midori_extension_set_string ()

    void                midori_extension_set_string         (MidoriExtension *extension,
                                                             const gchar *name,
                                                             const gchar *value);

### midori_extension_set_string_list ()

    void                midori_extension_set_string_list    (MidoriExtension *extension,
                                                             const gchar *name,
                                                             gchar **value,
                                                             gsize length);