[gnome-control-center] Printers: Don't hide address entry
- From: Marek KaÅÃk <mkasik src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center] Printers: Don't hide address entry
- Date: Tue, 11 Oct 2011 14:32:26 +0000 (UTC)
commit 4665e84df4fc8a47a8c79e8a7d567019d7014b77
Author: Marek Kasik <mkasik redhat com>
Date: Tue Oct 11 16:29:18 2011 +0200
Printers: Don't hide address entry
Don't hide address entry when there is not firewalld available.
It is still possible that firewall is set up correctly and user
should be able to enter address of his network printer and
install it (rhbz #743694).
panels/printers/new-printer-dialog.ui | 108 +++++++++++++++++++++++++++---
panels/printers/pp-new-printer-dialog.c | 72 ++++++++++++++++-----
2 files changed, 152 insertions(+), 28 deletions(-)
---
diff --git a/panels/printers/new-printer-dialog.ui b/panels/printers/new-printer-dialog.ui
index 0704602..fa49087 100644
--- a/panels/printers/new-printer-dialog.ui
+++ b/panels/printers/new-printer-dialog.ui
@@ -54,17 +54,60 @@
<property name="show_tabs">False</property>
<property name="show_border">False</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow2">
+ <object class="GtkNotebook" id="local-devices-notebook">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="hscrollbar_policy">automatic</property>
- <property name="vscrollbar_policy">automatic</property>
+ <property name="show_tabs">False</property>
+ <property name="show_border">False</property>
<child>
- <object class="GtkTreeView" id="local-devices-treeview">
+ <object class="GtkScrolledWindow" id="scrolledwindow2">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="headers_visible">False</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <child>
+ <object class="GtkTreeView" id="local-devices-treeview">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="headers_visible">False</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="tab">
+ <object class="GtkLabel" id="label9">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">page 1</property>
+ </object>
+ <packing>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkTextView" id="local-warning">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="pixels_above_lines">6</property>
+ <property name="editable">False</property>
+ <property name="wrap_mode">word</property>
+ <property name="left_margin">10</property>
+ <property name="right_margin">10</property>
</object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child type="tab">
+ <object class="GtkLabel" id="label10">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">page 2</property>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
</object>
</child>
@@ -83,18 +126,61 @@
<property name="orientation">vertical</property>
<property name="spacing">10</property>
<child>
- <object class="GtkScrolledWindow" id="scrolledwindow1">
+ <object class="GtkNotebook" id="network-devices-notebook">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="hscrollbar_policy">never</property>
- <property name="vscrollbar_policy">automatic</property>
+ <property name="show_tabs">False</property>
+ <property name="show_border">False</property>
<child>
- <object class="GtkTreeView" id="network-devices-treeview">
+ <object class="GtkScrolledWindow" id="scrolledwindow1">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="headers_visible">False</property>
- <property name="headers_clickable">False</property>
+ <property name="hscrollbar_policy">never</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <child>
+ <object class="GtkTreeView" id="network-devices-treeview">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="headers_visible">False</property>
+ <property name="headers_clickable">False</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="tab">
+ <object class="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">page 1</property>
</object>
+ <packing>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkTextView" id="network-warning">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="pixels_above_lines">6</property>
+ <property name="editable">False</property>
+ <property name="wrap_mode">word</property>
+ <property name="left_margin">10</property>
+ <property name="right_margin">10</property>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child type="tab">
+ <object class="GtkLabel" id="label7">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">page 2</property>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
</object>
<packing>
diff --git a/panels/printers/pp-new-printer-dialog.c b/panels/printers/pp-new-printer-dialog.c
index df57faa..21ca382 100644
--- a/panels/printers/pp-new-printer-dialog.c
+++ b/panels/printers/pp-new-printer-dialog.c
@@ -88,8 +88,13 @@ enum
enum
{
DEVICE_TYPE_LOCAL = 0,
- DEVICE_TYPE_NETWORK,
- DEVICE_TYPE_N
+ DEVICE_TYPE_NETWORK
+};
+
+enum
+{
+ STANDARD_TAB = 0,
+ WARNING_TAB
};
typedef struct{
@@ -156,6 +161,7 @@ device_type_selection_changed_cb (GtkTreeSelection *selection,
GtkTreeModel *model;
GtkTreeIter iter;
GtkWidget *treeview = NULL;
+ GtkWidget *notebook = NULL;
GtkWidget *widget;
gchar *device_type_name = NULL;
gint device_type_id = -1;
@@ -175,17 +181,30 @@ device_type_selection_changed_cb (GtkTreeSelection *selection,
widget = (GtkWidget*)
gtk_builder_get_object (pp->builder, "device-type-notebook");
- if (pp->show_warning && device_type == DEVICE_TYPE_NETWORK)
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), 2);
- else
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), device_type);
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), device_type);
if (device_type == DEVICE_TYPE_LOCAL)
- treeview = (GtkWidget*)
- gtk_builder_get_object (pp->builder, "local-devices-treeview");
+ {
+ treeview = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "local-devices-treeview");
+ notebook = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "local-devices-notebook");
+ }
else if (device_type == DEVICE_TYPE_NETWORK)
- treeview = (GtkWidget*)
- gtk_builder_get_object (pp->builder, "network-devices-treeview");
+ {
+ treeview = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "network-devices-treeview");
+ notebook = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "network-devices-notebook");
+ }
+
+ if (notebook)
+ {
+ if (pp->show_warning && device_type == DEVICE_TYPE_NETWORK)
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (notebook), WARNING_TAB);
+ else
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (notebook), STANDARD_TAB);
+ }
widget = (GtkWidget*)
gtk_builder_get_object (pp->builder, "new-printer-add-button");
@@ -613,8 +632,12 @@ devices_get (PpNewPrinterDialog *pp)
if (pp->show_warning)
{
widget = (GtkWidget*)
- gtk_builder_get_object (pp->builder, "device-type-notebook");
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), 2);
+ gtk_builder_get_object (pp->builder, "local-devices-notebook");
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), WARNING_TAB);
+
+ widget = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "network-devices-notebook");
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), WARNING_TAB);
}
in_include = g_variant_builder_new (G_VARIANT_TYPE ("as"));
@@ -1150,6 +1173,8 @@ actualize_devices_list (PpNewPrinterDialog *pp)
GtkTreeIter iter;
GtkWidget *treeview;
GtkWidget *widget;
+ GtkWidget *local_notebook;
+ GtkWidget *network_notebook;
gboolean no_local_device = TRUE;
gboolean no_network_device = TRUE;
gint i;
@@ -1249,10 +1274,15 @@ actualize_devices_list (PpNewPrinterDialog *pp)
widget = (GtkWidget*)
gtk_builder_get_object (pp->builder, "device-type-notebook");
- if (pp->show_warning && device_type == DEVICE_TYPE_NETWORK)
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), 2);
- else
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), device_type);
+ local_notebook = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "local-devices-notebook");
+
+ network_notebook = (GtkWidget*)
+ gtk_builder_get_object (pp->builder, "network-devices-notebook");
+
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (network_notebook), pp->show_warning ? WARNING_TAB : STANDARD_TAB);
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (local_notebook), STANDARD_TAB);
+ gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), device_type);
g_object_unref (network_store);
g_object_unref (local_store);
@@ -1307,7 +1337,15 @@ Network printer detection needs services mdns, ipp, ipp-client \
and samba-client enabled on firewall."));
warning_textview = (GtkTextView*)
- gtk_builder_get_object (pp->builder, "warning-textview");
+ gtk_builder_get_object (pp->builder, "local-warning");
+ text_buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (warning_textview));
+
+ gtk_text_buffer_set_text (text_buffer, "", 0);
+ gtk_text_buffer_get_iter_at_offset (text_buffer, &text_iter, 0);
+ gtk_text_buffer_insert (text_buffer, &text_iter, pp->warning, -1);
+
+ warning_textview = (GtkTextView*)
+ gtk_builder_get_object (pp->builder, "network-warning");
text_buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (warning_textview));
gtk_text_buffer_set_text (text_buffer, "", 0);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]