sharing: Convert to GtkListBox
https://bugzilla.gnome.org/show_bug.cgi?id=702164
This commit is contained in:
parent
a46a652093
commit
c0abad92e1
2 changed files with 55 additions and 31 deletions
|
@ -20,7 +20,6 @@
|
|||
*/
|
||||
|
||||
#include "cc-sharing-panel.h"
|
||||
#include "egg-list-box/egg-list-box.h"
|
||||
#include "shell/cc-hostname-entry.h"
|
||||
|
||||
#include "cc-sharing-resources.h"
|
||||
|
@ -209,18 +208,18 @@ cc_sharing_panel_run_dialog (CcSharingPanel *self,
|
|||
}
|
||||
|
||||
static void
|
||||
cc_sharing_panel_main_list_box_child_activated (EggListBox *listbox,
|
||||
GtkWidget *widget,
|
||||
CcSharingPanel *self)
|
||||
cc_sharing_panel_main_list_box_row_activated (GtkListBox *listbox,
|
||||
GtkListBoxRow *row,
|
||||
CcSharingPanel *self)
|
||||
{
|
||||
gchar *widget_name, *found;
|
||||
|
||||
widget_name = g_strdup (gtk_buildable_get_name (GTK_BUILDABLE (widget)));
|
||||
widget_name = g_strdup (gtk_buildable_get_name (GTK_BUILDABLE (row)));
|
||||
|
||||
if (!widget_name)
|
||||
return;
|
||||
|
||||
egg_list_box_select_child (listbox, NULL);
|
||||
gtk_list_box_select_row (listbox, NULL);
|
||||
|
||||
/* replace "button" with "dialog" */
|
||||
found = g_strrstr (widget_name, "button");
|
||||
|
@ -237,22 +236,22 @@ out:
|
|||
}
|
||||
|
||||
static void
|
||||
cc_sharing_panel_main_list_box_update_separator (GtkWidget **separator,
|
||||
GtkWidget *child,
|
||||
GtkWidget *before,
|
||||
gpointer user_data)
|
||||
cc_sharing_panel_main_list_box_update_header (GtkListBoxRow *row,
|
||||
GtkListBoxRow *before,
|
||||
gpointer user_data)
|
||||
{
|
||||
if (before == NULL)
|
||||
{
|
||||
g_clear_object (separator);
|
||||
return;
|
||||
}
|
||||
GtkWidget *current;
|
||||
|
||||
if (*separator != NULL)
|
||||
if (before == NULL)
|
||||
return;
|
||||
|
||||
*separator = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL);
|
||||
g_object_ref_sink (*separator);
|
||||
current = gtk_list_box_row_get_header (row);
|
||||
if (current == NULL)
|
||||
{
|
||||
current = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL);
|
||||
gtk_widget_show (current);
|
||||
gtk_list_box_row_set_header (row, current);
|
||||
}
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
@ -984,8 +983,8 @@ cc_sharing_panel_init (CcSharingPanel *self)
|
|||
|
||||
gtk_container_add (GTK_CONTAINER (self), WID ("sharing-panel"));
|
||||
|
||||
g_signal_connect (WID ("main-list-box"), "child-activated",
|
||||
G_CALLBACK (cc_sharing_panel_main_list_box_child_activated), self);
|
||||
g_signal_connect (WID ("main-list-box"), "row-activated",
|
||||
G_CALLBACK (cc_sharing_panel_main_list_box_row_activated), self);
|
||||
|
||||
priv->hostname_cancellable = g_cancellable_new ();
|
||||
|
||||
|
@ -1007,11 +1006,11 @@ cc_sharing_panel_init (CcSharingPanel *self)
|
|||
g_signal_connect (priv->screen_sharing_dialog, "response",
|
||||
G_CALLBACK (gtk_widget_hide), NULL);
|
||||
|
||||
egg_list_box_set_activate_on_single_click (EGG_LIST_BOX (WID ("main-list-box")),
|
||||
gtk_list_box_set_activate_on_single_click (GTK_LIST_BOX (WID ("main-list-box")),
|
||||
TRUE);
|
||||
egg_list_box_set_separator_funcs (EGG_LIST_BOX (WID ("main-list-box")),
|
||||
cc_sharing_panel_main_list_box_update_separator,
|
||||
NULL, NULL);
|
||||
gtk_list_box_set_header_func (GTK_LIST_BOX (WID ("main-list-box")),
|
||||
cc_sharing_panel_main_list_box_update_header,
|
||||
NULL, NULL);
|
||||
|
||||
/* create the master switch */
|
||||
priv->master_switch = gtk_switch_new ();
|
||||
|
|
|
@ -264,10 +264,13 @@
|
|||
<property name="label_xalign">0</property>
|
||||
<property name="shadow_type">in</property>
|
||||
<child>
|
||||
<object class="EggListBox" id="main-list-box">
|
||||
<object class="GtkListBox" id="main-list-box">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<object class="GtkListBoxRow" id="bluetooth-sharing-button">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="bluetooth-sharing-button">
|
||||
<object class="GtkBox" id="box1">
|
||||
<property name="border-width">12</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
|
@ -299,8 +302,13 @@
|
|||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkListBoxRow" id="personal-file-sharing-button">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="personal-file-sharing-button">
|
||||
<object class="GtkBox" id="box2">
|
||||
<property name="border-width">12</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
|
@ -332,8 +340,13 @@
|
|||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkListBoxRow" id="screen-sharing-button">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="screen-sharing-button">
|
||||
<object class="GtkBox" id="box3">
|
||||
<property name="border-width">12</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
|
@ -365,8 +378,13 @@
|
|||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkListBoxRow" id="media-sharing-button">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="media-sharing-button">
|
||||
<object class="GtkBox" id="box4">
|
||||
<property name="border-width">12</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
|
@ -398,8 +416,13 @@
|
|||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkListBoxRow" id="remote-login-button">
|
||||
<property name="visible">True</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="remote-login-button">
|
||||
<object class="GtkBox" id="box5">
|
||||
<property name="border-width">12</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
|
@ -433,6 +456,8 @@
|
|||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
|
@ -1081,7 +1106,7 @@
|
|||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">12</property>
|
||||
<child>
|
||||
<object class="GtkBox" id="box1">
|
||||
<object class="GtkBox" id="box6">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<child>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue