[Xfce4-commits] [xfce/xfce4-settings] 44/57: color: Switch to side-by-side layout
noreply at xfce.org
noreply at xfce.org
Thu Mar 21 22:14:32 CET 2019
This is an automated email from the git hooks/post-receive script.
o c h o s i p u s h e d a c o m m i t t o b r a n c h m a s t e r
in repository xfce/xfce4-settings.
commit 1013f9d783af6d86b5dc017fbd4a1d097a4b2d12
Author: Simon Steinbeiss <simon.steinbeiss at elfenbeinturm.at>
Date: Mon Feb 18 00:23:21 2019 +0100
color: Switch to side-by-side layout
This should help avoid scrolling problems.
---
dialogs/color-settings/color-dialog.glade | 228 +++++++++++++++++++-----------
dialogs/color-settings/main.c | 39 +++--
2 files changed, 174 insertions(+), 93 deletions(-)
diff --git a/dialogs/color-settings/color-dialog.glade b/dialogs/color-settings/color-dialog.glade
index 9ef841b..83e3a06 100644
--- a/dialogs/color-settings/color-dialog.glade
+++ b/dialogs/color-settings/color-dialog.glade
@@ -20,8 +20,8 @@
<property name="can_focus">False</property>
<property name="title" translatable="yes">Color Profiles</property>
<property name="window_position">center-on-parent</property>
- <property name="default_width">400</property>
- <property name="default_height">600</property>
+ <property name="default_width">700</property>
+ <property name="default_height">400</property>
<property name="icon_name">preferences-color-symbolic</property>
<property name="type_hint">dialog</property>
<property name="subtitle" translatable="yes">Configure color profiles for your devices</property>
@@ -80,72 +80,30 @@
<property name="vexpand">True</property>
<property name="orientation">vertical</property>
<child>
- <object class="GtkGrid" id="grid">
+ <object class="GtkPaned" id="paned">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="hexpand">True</property>
- <property name="vexpand">True</property>
- <property name="border_width">6</property>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes"><b>Devices</b></property>
- <property name="use_markup">True</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="top_attach">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="margin_top">12</property>
- <property name="label" translatable="yes"><b>Profiles</b></property>
- <property name="use_markup">True</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="left_attach">0</property>
- <property name="top_attach">2</property>
- </packing>
- </child>
+ <property name="can_focus">True</property>
<child>
- <object class="GtkBox">
+ <object class="GtkBox" id="device">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="margin_left">6</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
<property name="orientation">vertical</property>
<child>
- <object class="GtkBox" id="box-devices">
+ <object class="GtkScrolledWindow" id="scrolled-devices">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="orientation">vertical</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="shadow_type">in</property>
+ <property name="min_content_width">250</property>
<child>
- <object class="GtkFrame" id="frame-devices">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="hexpand">True</property>
- <property name="label_xalign">0.5</property>
- <property name="shadow_type">in</property>
- <child>
- <placeholder/>
- </child>
- <child type="label_item">
- <placeholder/>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
+ <placeholder/>
</child>
</object>
<packing>
- <property name="expand">False</property>
+ <property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
@@ -187,46 +145,97 @@
</child>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="top_attach">1</property>
+ <property name="resize">False</property>
+ <property name="shrink">False</property>
</packing>
</child>
<child>
<object class="GtkBox" id="profile">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="vexpand">True</property>
+ <property name="margin_left">12</property>
+ <property name="margin_right">12</property>
+ <property name="margin_top">12</property>
+ <property name="margin_bottom">12</property>
<property name="orientation">vertical</property>
<child>
- <object class="GtkBox" id="label-no-profiles">
+ <object class="GtkGrid">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="hexpand">True</property>
- <property name="orientation">vertical</property>
+ <property name="margin_top">6</property>
+ <property name="margin_bottom">6</property>
+ <property name="row_spacing">3</property>
+ <property name="column_spacing">12</property>
+ <property name="column_homogeneous">True</property>
<child>
- <object class="GtkLabel" id="label-no-profiles-label">
+ <object class="GtkLabel">
<property name="visible">True</property>
- <property name="sensitive">False</property>
<property name="can_focus">False</property>
- <property name="margin_left">12</property>
- <property name="margin_right">12</property>
- <property name="margin_top">12</property>
- <property name="margin_bottom">12</property>
- <property name="hexpand">True</property>
- <property name="label" translatable="yes"><b>No profiles for the selected device.</b></property>
- <property name="use_markup">True</property>
- <property name="justify">center</property>
+ <property name="label" translatable="yes">Model:</property>
+ <property name="xalign">1</property>
</object>
<packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Vendor:</property>
+ <property name="xalign">1</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Colorspace:</property>
+ <property name="xalign">1</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="model">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="vendor">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="colorspace">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">2</property>
</packing>
</child>
- <style>
- <class name="view"/>
- <class name="frame"/>
- </style>
</object>
<packing>
<property name="expand">False</property>
@@ -235,6 +244,21 @@
</packing>
</child>
<child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_top">12</property>
+ <property name="label" translatable="yes"><b>Profiles</b></property>
+ <property name="use_markup">True</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
<object class="GtkFrame" id="box-profiles">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -250,7 +274,43 @@
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="label-no-profiles">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkLabel" id="label-no-profiles-label">
+ <property name="visible">True</property>
+ <property name="sensitive">False</property>
+ <property name="can_focus">False</property>
+ <property name="margin_left">12</property>
+ <property name="margin_right">12</property>
+ <property name="margin_top">12</property>
+ <property name="margin_bottom">12</property>
+ <property name="label" translatable="yes"><b>No profiles for the selected device.</b></property>
+ <property name="use_markup">True</property>
+ <property name="justify">center</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <style>
+ <class name="view"/>
+ <class name="frame"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
</packing>
</child>
<child>
@@ -341,13 +401,13 @@
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">2</property>
+ <property name="position">4</property>
</packing>
</child>
</object>
<packing>
- <property name="left_attach">0</property>
- <property name="top_attach">3</property>
+ <property name="resize">True</property>
+ <property name="shrink">False</property>
</packing>
</child>
</object>
diff --git a/dialogs/color-settings/main.c b/dialogs/color-settings/main.c
index adc34ae..60315c4 100644
--- a/dialogs/color-settings/main.c
+++ b/dialogs/color-settings/main.c
@@ -60,10 +60,11 @@ struct _ColorSettings
GPtrArray *devices;
GCancellable *cancellable;
GDBusProxy *proxy;
- GObject *grid;
GObject *label_no_devices;
- GObject *box_devices;
- GObject *frame_devices;
+ GObject *scrolled_devices;
+ GObject *model;
+ GObject *vendor;
+ GObject *colorspace;
GtkListBox *list_box;
gchar *list_box_filter;
guint list_box_selected_id;
@@ -670,7 +671,7 @@ color_settings_update_device_list_extra_entry (ColorSettings *settings)
device_widgets = gtk_container_get_children (GTK_CONTAINER (settings->list_box));
number_of_devices = g_list_length (device_widgets);
gtk_widget_set_visible (GTK_WIDGET (settings->label_no_devices), number_of_devices == 0);
- gtk_widget_set_visible (GTK_WIDGET (settings->box_devices), number_of_devices > 0);
+ gtk_widget_set_visible (GTK_WIDGET (settings->scrolled_devices), number_of_devices > 0);
}
@@ -681,6 +682,13 @@ color_settings_update_profile_list_extra_entry (ColorSettings *settings)
g_autoptr(GList) profile_widgets = NULL;
guint number_of_profiles;
+ if (CD_IS_DEVICE (settings->current_device)) {
+ gtk_label_set_text (GTK_LABEL (settings->model), cd_device_get_model (settings->current_device));
+ gtk_label_set_text (GTK_LABEL (settings->vendor), cd_device_get_vendor (settings->current_device));
+ gtk_label_set_text (GTK_LABEL (settings->colorspace),
+ cd_colorspace_to_string (cd_device_get_colorspace (settings->current_device)));
+ }
+
/* any profiles to show? */
profile_widgets = gtk_container_get_children (GTK_CONTAINER (settings->profiles_list_box));
number_of_profiles = g_list_length (profile_widgets);
@@ -1057,6 +1065,8 @@ color_settings_dialog_init (GtkBuilder *builder)
{
ColorSettings *settings;
GtkTreeSelection *selection;
+ GObject *paned;
+ GtkCssProvider *provider;
settings = g_new0 (ColorSettings, 1);
settings->cancellable = g_cancellable_new ();
@@ -1069,12 +1079,23 @@ color_settings_dialog_init (GtkBuilder *builder)
g_signal_connect_data (settings->client, "device-removed",
G_CALLBACK (color_settings_device_removed_cb), settings, 0, 0);
+ /* hide separator from GtkPaned */
+ paned = gtk_builder_get_object (builder, "paned");
+ provider = gtk_css_provider_new ();
+ gtk_css_provider_load_from_data (provider,
+ "paned separator { background:transparent; }",
+ -1, NULL);
+ gtk_style_context_add_provider (gtk_widget_get_style_context (GTK_WIDGET (paned)),
+ GTK_STYLE_PROVIDER (provider),
+ GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
+
settings->label_no_devices = gtk_builder_get_object (builder, "label-no-devices");
- settings->box_devices = gtk_builder_get_object (builder, "box-devices");
- settings->grid = gtk_builder_get_object (builder, "grid");
/* Devices ListBox */
- settings->frame_devices = gtk_builder_get_object (builder, "frame-devices");
+ settings->model = gtk_builder_get_object (builder, "model");
+ settings->vendor = gtk_builder_get_object (builder, "vendor");
+ settings->colorspace = gtk_builder_get_object (builder, "colorspace");
+ settings->scrolled_devices = gtk_builder_get_object (builder, "scrolled-devices");
settings->list_box = GTK_LIST_BOX (gtk_list_box_new ());
gtk_list_box_set_sort_func (settings->list_box,
color_settings_sort_func,
@@ -1092,7 +1113,7 @@ color_settings_dialog_init (GtkBuilder *builder)
settings);
settings->list_box_size = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL);
- gtk_container_add (GTK_CONTAINER (settings->frame_devices), GTK_WIDGET (settings->list_box));
+ gtk_container_add (GTK_CONTAINER (settings->scrolled_devices), GTK_WIDGET (settings->list_box));
gtk_widget_show_all (GTK_WIDGET (settings->list_box));
/* Profiles ListBox */
@@ -1215,7 +1236,7 @@ main (gint argc, gchar **argv)
dialog = gtk_builder_get_object (builder, "dialog");
g_signal_connect (dialog, "response",
- G_CALLBACK (color_settings_dialog_response), NULL);
+ G_CALLBACK (color_settings_dialog_response), NULL);
gtk_window_present (GTK_WINDOW (dialog));
/* To prevent the settings dialog to be saved in the session */
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list