rpms/bluez-gnome/devel bluez-gnome-make-search-button-work.patch, NONE, 1.1 bluez-gnome.spec, 1.35, 1.36
Bastien Nocera (hadess)
fedora-extras-commits at redhat.com
Mon Feb 11 17:31:59 UTC 2008
- Previous message (by thread): rpms/memtest86+/devel memtest-fix-makefile-for-x86_64.diff, NONE, 1.1 memtest86+.spec, 1.32, 1.33 additional-lib-functions.diff, 1.1, NONE console-boot-parameter.diff, 1.1, NONE parity-bits.diff, 1.1, NONE use-strtoul-in-getval.diff, 1.1, NONE
- Next message (by thread): rpms/urlgfe/devel urlgfe.spec,1.7,1.8
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: hadess
Update of /cvs/pkgs/rpms/bluez-gnome/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15833
Modified Files:
bluez-gnome.spec
Added Files:
bluez-gnome-make-search-button-work.patch
Log Message:
* Mon Feb 11 2008 - Bastien Nocera <bnocera at redhat.com> - 0.18-2
- Add patch to make the search button work
bluez-gnome-make-search-button-work.patch:
--- NEW FILE bluez-gnome-make-search-button-work.patch ---
Index: bluetooth-device-selection.c
===================================================================
RCS file: /cvsroot/bluez/gnome/common/bluetooth-device-selection.c,v
retrieving revision 1.14
diff -u -p -u -p -r1.14 bluetooth-device-selection.c
--- bluetooth-device-selection.c 10 Feb 2008 17:46:51 -0000 1.14
+++ bluetooth-device-selection.c 11 Feb 2008 17:19:34 -0000
@@ -172,7 +172,7 @@ type_to_text (GtkTreeViewColumn *column,
guint type;
gtk_tree_model_get (model, iter, COLUMN_TYPE, &type, -1);
- if (type == BLUETOOTH_TYPE_ANY)
+ if (type == 0)
g_object_set (cell, "text", _("Unknown"), NULL);
else
g_object_set (cell, "text", bluetooth_type_to_string (type), NULL);
@@ -211,16 +211,24 @@ search_button_clicked (GtkButton *button
bluetooth_device_selection_start_discovery (self);
}
-#if 0
static void
-discoveries_completed (BluetoothClient *client, gpointer user_data)
+discovery_started (BluetoothClient *client, const char *adapter_path, gboolean is_default, gpointer user_data)
{
BluetoothDeviceSelection *self = BLUETOOTH_DEVICE_SELECTION(user_data);
BluetoothDeviceSelectionPrivate *priv = BLUETOOTH_DEVICE_SELECTION_GET_PRIVATE(self);
- gtk_widget_set_sensitive (GTK_WIDGET(priv->search_button), TRUE);
+ if (is_default)
+ gtk_widget_set_sensitive (GTK_WIDGET(priv->search_button), FALSE);
+}
+static void
+discovery_completed (BluetoothClient *client, const char *adapter_path, gboolean is_default, gpointer user_data)
+{
+ BluetoothDeviceSelection *self = BLUETOOTH_DEVICE_SELECTION(user_data);
+ BluetoothDeviceSelectionPrivate *priv = BLUETOOTH_DEVICE_SELECTION_GET_PRIVATE(self);
+
+ if (is_default)
+ gtk_widget_set_sensitive (GTK_WIDGET(priv->search_button), TRUE);
}
-#endif
static void
select_browse_device_callback (GtkTreeSelection *selection, gpointer user_data)
@@ -245,7 +253,7 @@ filter_type_func (GtkTreeModel *model, G
return TRUE;
gtk_tree_model_get (model, iter, COLUMN_TYPE, &type, -1);
- return (type == priv->device_type_filter);
+ return (type & priv->device_type_filter);
}
static gboolean
@@ -285,7 +293,7 @@ filter_type_changed_cb (GtkComboBox *wid
BluetoothDeviceSelection *self = BLUETOOTH_DEVICE_SELECTION (data);
BluetoothDeviceSelectionPrivate *priv = BLUETOOTH_DEVICE_SELECTION_GET_PRIVATE(self);
- priv->device_type_filter = gtk_combo_box_get_active (GTK_COMBO_BOX(priv->device_type));
+ priv->device_type_filter = 1 << gtk_combo_box_get_active (GTK_COMBO_BOX(priv->device_type));
if (priv->filter)
gtk_tree_model_filter_refilter (GTK_TREE_MODEL_FILTER (priv->filter));
g_object_notify (G_OBJECT(self), "device-type-filter");
@@ -441,10 +449,10 @@ bluetooth_device_selection_init(Bluetoot
priv->client = bluetooth_client_new ();
-#if 0
- g_signal_connect (G_OBJECT(priv->client), "discoveries-completed",
- G_CALLBACK(discoveries_completed), self);
-#endif
+ g_signal_connect (G_OBJECT(priv->client), "discovery-started",
+ G_CALLBACK(discovery_started), self);
+ g_signal_connect (G_OBJECT(priv->client), "discovery-completed",
+ G_CALLBACK(discovery_completed), self);
tooltips = gtk_tooltips_new ();
@@ -567,7 +575,7 @@ bluetooth_device_selection_init(Bluetoot
/* The types match the types used in client.h */
for (i = 0; i < BLUETOOTH_TYPE_NUM_TYPES; i++) {
gtk_combo_box_append_text (GTK_COMBO_BOX(priv->device_type),
- _(bluetooth_type_to_string (i)));
+ _(bluetooth_type_to_string (1 << i)));
}
g_signal_connect (G_OBJECT (priv->device_type), "changed",
G_CALLBACK(filter_type_changed_cb), self);
@@ -579,8 +587,6 @@ bluetooth_device_selection_init(Bluetoot
g_signal_connect (priv->client, "notify::default-adapter",
G_CALLBACK (default_adapter_changed), self);
-
- bluetooth_device_selection_start_discovery (self);
}
static void
Index: client.c
===================================================================
RCS file: /cvsroot/bluez/gnome/common/client.c,v
retrieving revision 1.40
diff -u -p -u -p -r1.40 client.c
--- client.c 2 Feb 2008 04:09:39 -0000 1.40
+++ client.c 11 Feb 2008 17:19:34 -0000
@@ -52,7 +52,8 @@ struct _BluetoothClientPrivate {
};
enum {
- DISCOVERIES_COMPLETED,
+ DISCOVERY_STARTED,
+ DISCOVERY_COMPLETED,
LAST_SIGNAL
};
@@ -264,7 +265,8 @@ static void insert_device(DBusGProxy *ob
COLUMN_TYPE, type,
COLUMN_BONDED, bonded,
COLUMN_TRUSTED, trusted,
- COLUMN_CONNECTED, connected, -1);
+ COLUMN_CONNECTED, connected,
+ COLUMN_DISCOVERING, FALSE, -1);
return;
}
@@ -280,7 +282,8 @@ static void insert_device(DBusGProxy *ob
COLUMN_TYPE, type,
COLUMN_BONDED, bonded,
COLUMN_TRUSTED, trusted,
- COLUMN_CONNECTED, connected, -1);
+ COLUMN_CONNECTED, connected,
+ COLUMN_DISCOVERING, FALSE, -1);
}
static void invalidate_device(DBusGProxy *object,
@@ -624,6 +627,55 @@ static void mode_changed(DBusGProxy *obj
}
}
+static void discovery_event(DBusGProxy *object,
+ BluetoothClient *client,
+ gboolean starting)
+{
+ BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
+ GtkTreeIter iter;
+ char *adapter;
+ gboolean is_default;
+
+ if (find_iter_for_object(object, BLUETOOTH_CLIENT(client), &iter) == FALSE)
+ return;
+
+ gtk_tree_store_set(priv->store, &iter, COLUMN_DISCOVERING, starting, -1);
+ g_message ("set the device disco to %d", starting);
+
+ /* Find out whether we're checking the default adapter */
+ is_default = FALSE;
+ gtk_tree_model_get (GTK_TREE_MODEL (priv->store), &iter, COLUMN_PATH, &adapter, -1);
+ if (priv->default_adapter != NULL) {
+ if (g_str_equal (priv->default_adapter, adapter) != FALSE)
+ is_default = TRUE;
+ }
+
+ if (starting)
+ g_signal_emit(G_OBJECT(client), client_table_signals[DISCOVERY_STARTED],
+ 0, adapter, is_default);
+ else
+ g_signal_emit(G_OBJECT(client), client_table_signals[DISCOVERY_COMPLETED],
+ 0, adapter, is_default);
+ g_message ("discovery_%s %s %d", starting ? "started" : "completed", adapter, is_default);
+ g_free (adapter);
+}
+
+static void discovery_completed(DBusGProxy *object,
+ gpointer user_data)
+{
+ BluetoothClient *client = BLUETOOTH_CLIENT(user_data);
+
+ discovery_event (object, client, FALSE);
+}
+
+static void discovery_started(DBusGProxy *object,
+ gpointer user_data)
+{
+ BluetoothClient *client = BLUETOOTH_CLIENT(user_data);
+
+ discovery_event (object, client, TRUE);
+}
+
static void add_adapter(const char *path, BluetoothClient *client)
{
BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
@@ -741,8 +793,16 @@ static void add_adapter(const char *path
dbus_g_proxy_connect_signal(object, "TrustRemoved",
G_CALLBACK(trust_removed), client, NULL);
+ dbus_g_proxy_add_signal(object, "DiscoveryStarted", G_TYPE_INVALID);
+
+ dbus_g_proxy_connect_signal(object, "DiscoveryStarted",
+ G_CALLBACK(discovery_started), client, NULL);
+
dbus_g_proxy_add_signal(object, "DiscoveryCompleted", G_TYPE_INVALID);
+ dbus_g_proxy_connect_signal(object, "DiscoveryCompleted",
+ G_CALLBACK(discovery_completed), client, NULL);
+
update_adapter(object, &iter, client);
}
@@ -810,18 +870,6 @@ static void default_adapter_changed(DBus
g_object_notify (G_OBJECT (client), "default-adapter");
}
-#if 0
-static void discovery_completed(DBusGProxy *object,
- gpointer user_data)
-{
- BluetoothClient *client = BLUETOOTH_CLIENT(user_data);
-
- g_signal_emit(G_OBJECT(client), client_table_signals[DISCOVERIES_COMPLETED], 0);
-
- g_message ("discovery_completed");
-}
-#endif
-
static void setup_manager(BluetoothClient *client)
{
BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
@@ -913,10 +961,10 @@ static void bluetooth_client_init(Blueto
priv->registered = FALSE;
- priv->store = gtk_tree_store_new(11, G_TYPE_STRING, G_TYPE_BOOLEAN,
+ priv->store = gtk_tree_store_new(NUM_COLS, G_TYPE_STRING, G_TYPE_BOOLEAN,
G_TYPE_OBJECT, G_TYPE_STRING, G_TYPE_UINT,
G_TYPE_INT, G_TYPE_STRING, G_TYPE_UINT,
- G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN);
+ G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_BOOLEAN);
setup_dbus(client);
@@ -961,15 +1009,25 @@ static void bluetooth_client_class_init(
G_OBJECT_CLASS(klass)->set_property = bluetooth_client_set_property;
G_OBJECT_CLASS(klass)->get_property = bluetooth_client_get_property;
- client_table_signals[DISCOVERIES_COMPLETED] =
- g_signal_new ("discoveries-completed",
+ client_table_signals[DISCOVERY_STARTED] =
+ g_signal_new ("discovery-started",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (BluetoothClientClass,
+ discovery_started),
+ NULL, NULL,
+ marshal_VOID__STRING_BOOLEAN,
+ G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_BOOLEAN);
+
+ client_table_signals[DISCOVERY_COMPLETED] =
+ g_signal_new ("discovery-completed",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (BluetoothClientClass,
- discoveries_completed),
+ discovery_completed),
NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0, G_TYPE_NONE);
+ marshal_VOID__STRING_BOOLEAN,
+ G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_BOOLEAN);
object_class = (GObjectClass *) klass;
@@ -1248,20 +1306,12 @@ gboolean bluetooth_client_discover_devic
gtk_tree_model_get(GTK_TREE_MODEL(priv->store), &iter,
COLUMN_PATH, &path,
- COLUMN_OBJECT, &object, -1);
+ COLUMN_OBJECT, &object,
+ -1);
if (g_ascii_strcasecmp(path, adapter) == 0) {
-#if 0
- /* Disconnect any lingering signals, to avoid the callback
- * being called twice */
- dbus_g_proxy_disconnect_signal(object, "DiscoveryCompleted",
- G_CALLBACK(discovery_completed), client);
- dbus_g_proxy_connect_signal(object, "DiscoveryCompleted",
- G_CALLBACK(discovery_completed), client, NULL);
-
dbus_g_proxy_call(object, "DiscoverDevices",
NULL, G_TYPE_INVALID);
-#endif
return TRUE;
}
Index: client.h
===================================================================
RCS file: /cvsroot/bluez/gnome/common/client.h,v
retrieving revision 1.22
diff -u -p -u -p -r1.22 client.h
--- client.h 2 Feb 2008 04:09:39 -0000 1.22
+++ client.h 11 Feb 2008 17:19:34 -0000
@@ -52,7 +52,8 @@ struct _BluetoothClient {
struct _BluetoothClientClass {
GObjectClass parent_class;
- void (*discoveries_completed) (BluetoothClient *self);
+ void (*discovery_started) (BluetoothClient *self, const char *adapter_path, gboolean is_default);
+ void (*discovery_completed) (BluetoothClient *self, const char *adapter_path, gboolean is_default);
};
GType bluetooth_client_get_type(void);
@@ -71,22 +72,26 @@ enum {
COLUMN_BONDED,
COLUMN_TRUSTED,
COLUMN_CONNECTED,
+ COLUMN_DISCOVERING,
+ NUM_COLS
};
enum {
- BLUETOOTH_TYPE_ANY,
- BLUETOOTH_TYPE_PHONE,
- BLUETOOTH_TYPE_MODEM,
- BLUETOOTH_TYPE_COMPUTER,
- BLUETOOTH_TYPE_NETWORK,
- BLUETOOTH_TYPE_HEADSET,
- BLUETOOTH_TYPE_KEYBOARD,
- BLUETOOTH_TYPE_MOUSE,
- BLUETOOTH_TYPE_CAMERA,
- BLUETOOTH_TYPE_PRINTER,
- BLUETOOTH_TYPE_NUM_TYPES
+ BLUETOOTH_TYPE_ANY = 1,
+ BLUETOOTH_TYPE_PHONE = 1 << 1,
+ BLUETOOTH_TYPE_MODEM = 1 << 2,
+ BLUETOOTH_TYPE_COMPUTER = 1 << 3,
+ BLUETOOTH_TYPE_NETWORK = 1 << 4,
+ BLUETOOTH_TYPE_HEADSET = 1 << 5,
+ BLUETOOTH_TYPE_KEYBOARD = 1 << 6,
+ BLUETOOTH_TYPE_MOUSE = 1 << 7,
+ BLUETOOTH_TYPE_CAMERA = 1 << 8,
+ BLUETOOTH_TYPE_PRINTER = 1 << 9
};
+#define BLUETOOTH_TYPE_NUM_TYPES 10
+#define BLUETOOTH_TYPE_INPUT (BLUETOOTH_TYPE_KEYBOARD | BLUETOOTH_TYPE_MOUSE)
+
const gchar *bluetooth_type_to_string(guint type);
gboolean bluetooth_client_register_passkey_agent(BluetoothClient *self,
Index: marshal.list
===================================================================
RCS file: /cvsroot/bluez/gnome/common/marshal.list,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 marshal.list
--- marshal.list 6 Feb 2008 23:59:27 -0000 1.3
+++ marshal.list 11 Feb 2008 17:19:34 -0000
@@ -1,4 +1,5 @@
VOID:STRING,UINT,INT
VOID:STRING,STRING
+VOID:STRING,BOOLEAN
VOID:STRING,STRING,UINT64
VOID:UINT64
Index: bluez-gnome.spec
===================================================================
RCS file: /cvs/pkgs/rpms/bluez-gnome/devel/bluez-gnome.spec,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- bluez-gnome.spec 11 Feb 2008 13:28:06 -0000 1.35
+++ bluez-gnome.spec 11 Feb 2008 17:31:17 -0000 1.36
@@ -1,6 +1,6 @@
Name: bluez-gnome
Version: 0.18
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Bluetooth pairing and control applet
Group: Applications/System
@@ -10,6 +10,8 @@
Patch1: bluez-gnome-remove-class.patch
Patch2: bluez-gnome-new-sendto-7.patch
Patch3: main.c
+# http://bugzilla.gnome.org/show_bug.cgi?id=515784
+Patch4: bluez-gnome-make-search-button-work.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -52,6 +54,9 @@
%patch1 -p0 -b .remove-class
%patch2 -p0 -b .sendto
cp -a %{PATCH3} sendto/
+pushd common/
+%patch4 -p0 -b .search-button
+popd
%build
aclocal
@@ -135,6 +140,9 @@
%{_datadir}/man/man1/bluetooth-analyzer.1.gz
%changelog
+* Mon Feb 11 2008 - Bastien Nocera <bnocera at redhat.com> - 0.18-2
+- Add patch to make the search button work
+
* Mon Feb 11 2008 - Bastien Nocera <bnocera at redhat.com> - 0.18-1
- Update to 0.18
- Previous message (by thread): rpms/memtest86+/devel memtest-fix-makefile-for-x86_64.diff, NONE, 1.1 memtest86+.spec, 1.32, 1.33 additional-lib-functions.diff, 1.1, NONE console-boot-parameter.diff, 1.1, NONE parity-bits.diff, 1.1, NONE use-strtoul-in-getval.diff, 1.1, NONE
- Next message (by thread): rpms/urlgfe/devel urlgfe.spec,1.7,1.8
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list