universal-access: Set dialog parent externally
This commit is contained in:
parent
88b9b2a149
commit
a27be44a1d
3 changed files with 16 additions and 5 deletions
|
@ -332,7 +332,8 @@ zoom_options_dialog_launch (CcUaPanel *self)
|
||||||
if (self->zoom_options_dialog == NULL)
|
if (self->zoom_options_dialog == NULL)
|
||||||
{
|
{
|
||||||
GtkWindow *window = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self)));
|
GtkWindow *window = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self)));
|
||||||
self->zoom_options_dialog = cc_zoom_options_dialog_new (window);
|
self->zoom_options_dialog = cc_zoom_options_dialog_new ();
|
||||||
|
gtk_window_set_transient_for (GTK_WINDOW (self->zoom_options_dialog), window);
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_window_present_with_time (GTK_WINDOW (self->zoom_options_dialog), GDK_CURRENT_TIME);
|
gtk_window_present_with_time (GTK_WINDOW (self->zoom_options_dialog), GDK_CURRENT_TIME);
|
||||||
|
|
|
@ -450,7 +450,6 @@ cc_zoom_options_dialog_constructed (GObject *object)
|
||||||
G_SETTINGS_BIND_INVERT_BOOLEAN);
|
G_SETTINGS_BIND_INVERT_BOOLEAN);
|
||||||
|
|
||||||
/* ... Cross hairs: length ... */
|
/* ... Cross hairs: length ... */
|
||||||
xhairs_length_add_marks (self, GTK_SCALE (self->crosshair_length_slider));
|
|
||||||
g_settings_bind (self->settings, "cross-hairs-length",
|
g_settings_bind (self->settings, "cross-hairs-length",
|
||||||
gtk_range_get_adjustment (GTK_RANGE (self->crosshair_length_slider)), "value",
|
gtk_range_get_adjustment (GTK_RANGE (self->crosshair_length_slider)), "value",
|
||||||
G_SETTINGS_BIND_DEFAULT);
|
G_SETTINGS_BIND_DEFAULT);
|
||||||
|
@ -477,6 +476,16 @@ cc_zoom_options_dialog_constructed (GObject *object)
|
||||||
pango_attr_list_unref (pango_attrs);
|
pango_attr_list_unref (pango_attrs);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
cc_zoom_options_dialog_realize (GtkWidget *widget)
|
||||||
|
{
|
||||||
|
CcZoomOptionsDialog *self = CC_ZOOM_OPTIONS_DIALOG (widget);
|
||||||
|
|
||||||
|
GTK_WIDGET_CLASS (cc_zoom_options_dialog_parent_class)->realize (widget);
|
||||||
|
|
||||||
|
xhairs_length_add_marks (self, GTK_SCALE (self->crosshair_length_slider));
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
cc_zoom_options_dialog_finalize (GObject *object)
|
cc_zoom_options_dialog_finalize (GObject *object)
|
||||||
{
|
{
|
||||||
|
@ -497,6 +506,8 @@ cc_zoom_options_dialog_class_init (CcZoomOptionsDialogClass *klass)
|
||||||
object_class->finalize = cc_zoom_options_dialog_finalize;
|
object_class->finalize = cc_zoom_options_dialog_finalize;
|
||||||
object_class->constructed = cc_zoom_options_dialog_constructed;
|
object_class->constructed = cc_zoom_options_dialog_constructed;
|
||||||
|
|
||||||
|
widget_class->realize = cc_zoom_options_dialog_realize;
|
||||||
|
|
||||||
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/control-center/universal-access/cc-zoom-options-dialog.ui");
|
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/control-center/universal-access/cc-zoom-options-dialog.ui");
|
||||||
|
|
||||||
gtk_widget_class_bind_template_child (widget_class, CcZoomOptionsDialog, brightness_slider);
|
gtk_widget_class_bind_template_child (widget_class, CcZoomOptionsDialog, brightness_slider);
|
||||||
|
@ -531,10 +542,9 @@ cc_zoom_options_dialog_init (CcZoomOptionsDialog *self)
|
||||||
}
|
}
|
||||||
|
|
||||||
CcZoomOptionsDialog *
|
CcZoomOptionsDialog *
|
||||||
cc_zoom_options_dialog_new (GtkWindow *parent)
|
cc_zoom_options_dialog_new (void)
|
||||||
{
|
{
|
||||||
return g_object_new (cc_zoom_options_dialog_get_type (),
|
return g_object_new (cc_zoom_options_dialog_get_type (),
|
||||||
"transient-for", parent,
|
|
||||||
"use-header-bar", TRUE,
|
"use-header-bar", TRUE,
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,6 @@ G_BEGIN_DECLS
|
||||||
|
|
||||||
G_DECLARE_FINAL_TYPE (CcZoomOptionsDialog, cc_zoom_options_dialog, CC, ZOOM_OPTIONS_DIALOG, GtkDialog)
|
G_DECLARE_FINAL_TYPE (CcZoomOptionsDialog, cc_zoom_options_dialog, CC, ZOOM_OPTIONS_DIALOG, GtkDialog)
|
||||||
|
|
||||||
CcZoomOptionsDialog *cc_zoom_options_dialog_new (GtkWindow *parent);
|
CcZoomOptionsDialog *cc_zoom_options_dialog_new (void);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue