diff --git a/xfce4-settings-editor/xfce-settings-cell-renderer.c b/xfce4-settings-editor/xfce-settings-cell-renderer.c index b2e7956..e352536 100644 --- a/xfce4-settings-editor/xfce-settings-cell-renderer.c +++ b/xfce4-settings-editor/xfce-settings-cell-renderer.c @@ -100,6 +100,8 @@ static GtkCellEditable *xfce_settings_cell_renderer_start_editing (GtkCellRender const GdkRectangle *background_area, const GdkRectangle *cell_area, GtkCellRendererState flags); +static void xfce_settings_array_to_string (const GValue *src_value, + GValue *dest_value); static void xfce_settings_strv_to_string (const GValue *src_value, GValue *dest_value); @@ -153,6 +155,8 @@ xfce_settings_cell_renderer_class_init (XfceSettingsCellRendererClass *klass) g_value_register_transform_func (G_TYPE_STRV, G_TYPE_STRING, xfce_settings_strv_to_string); + g_value_register_transform_func (G_TYPE_PTR_ARRAY, G_TYPE_STRING, + xfce_settings_array_to_string); } @@ -278,7 +282,8 @@ xfce_settings_cell_renderer_prepare (XfceSettingsCellRenderer *renderer) GValue str_value = { 0, }; if (G_VALUE_TYPE (value) == xfce_settings_array_type () - || G_VALUE_TYPE (value) == G_TYPE_STRV) + || G_VALUE_TYPE (value) == G_TYPE_STRV + || G_VALUE_TYPE (value) == G_TYPE_PTR_ARRAY) goto transform_value; switch (G_VALUE_TYPE (value))