From: "David Stockwell" <dstockwell@frequency-one.com>
To: "BlueZ development" <bluez-devel@lists.sourceforge.net>
Subject: Re: [Bluez-devel] Wizard patch
Date: Fri, 27 Jun 2008 14:38:08 -0500 [thread overview]
Message-ID: <024a01c8d88d$5515a790$6701a8c0@freqonedev> (raw)
In-Reply-To: 1214593557.6131.26.camel@bongo
Is this version working against the old DBus interface, the new, experimental interface, or does it matter?
DS
----- Original Message -----
From: "Michael Terry" <michael.terry@canonical.com>
To: <bluez-devel@lists.sourceforge.net>
Sent: Friday, June 27, 2008 2:05 PM
Subject: [Bluez-devel] Wizard patch
Hello, all!
I have attached a patch against 0.27 (it applies cleanly against CVS) to
complete the wizard in the bluez-gnome source tree.
Here's what my patch does in summary, details below:
Wizard dialog shows list of device types we know how to handle (only
mouse/keyboard/headset right now). Then, it tries to connect to the
appropriate bluetooth dbus service and trust the device. Basically the
same code steps the Properties -> Services tab does, but more
wizardy. :)
I made changes to cleanup the wizard interface (removed a couple of
pages that had low signal/noise ratio) and made several of the
bluetooth_client capable of giving feedback about the operation via a
callback.
Details of changes:
applet/main.c:
Uncomments code to add a menu item for the wizard.
common/bluetooth-device-selection.c:
Fixes broken code to set current filter programmatically.
common/client.[ch]:
setup_services():
Note presence of audio and input services on startup
bluetooth_client_get_name():
Gets user-visible device name for a path
bluetooth_client_available_services():
Returns a mask of the device types supported by services the client
knows about. Not actually used by the rest of my code, but it seemed
possibly useful to one day not show unsupported device types in the
wizard if we wanted to.
bluetooth_client_cancel_call():
Cancels an async call for a particular adapter/address combo. This is
slightly janky because it only allows for one call at a time per pair,
but that's all that we ever need right now.
connect_to_service():
Handles service-specific calls to initiate a device connection. Stuff
like CreateSecureDevice or CreateHeadset.
bluetooth_client_connect():
Kicks off a call to connect_to_service
bluetooth_client_create_bonding():
bluetooth_client_remove_bonding():
bluetooth_client_set_trusted():
bluetooth_client_remove_trust():
Modified to allow callbacks
common/dbus.xml:
Add input.CreateSecureDevice and audio.CreateHeadset
properties/adapter.c:
Update a few calls to client functions do to above prototype changes
wizard/agent.[ch]:
Mostly a copy of applet/agent.c, except:
it only holds passkey code (no auth code)
it shows dialogs immediately wrt a parent window
wizard/main.c:
Comment out intro and info pages -- I think the intro page just gets in
the user's way and there was no content in info page, and even if there
was, it would probably also just get in user's way.
I added a pulsing progress bar to the pairing page to give some
feedback.
I changed wording from 'setup' and 'pair' to 'connect'. I figure that
is more user-friendly (since no real setting up is done by user and they
probably think in terms of connecting to devices not pairing with them).
Pairing process is two-step: bluetooth_client_connect followed by
bluetooth_client_set_trusted.
Show an error if either step fails.
Connect to agent code to display a password prompt immediately in front
of user instead of via bluetooth applet.
wizard/Makefile.am:
Install bluetooth-wizard and add agent.[ch]
Thanks!
-mt
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Bluez-devel mailing list
Bluez-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-devel
next prev parent reply other threads:[~2008-06-27 19:38 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-27 19:05 [Bluez-devel] Wizard patch Michael Terry
2008-06-27 19:18 ` Michael Terry
2008-06-27 19:38 ` David Stockwell [this message]
2008-06-27 19:42 ` Michael Terry
2008-06-27 22:24 ` Marcel Holtmann
2008-06-27 22:23 ` Marcel Holtmann
2008-06-30 12:51 ` Michael Terry
2008-06-30 12:57 ` Marcel Holtmann
2008-06-30 13:20 ` Michael Terry
2008-06-30 14:07 ` Marcel Holtmann
2008-06-30 13:15 ` Michael Terry
2008-06-30 14:06 ` Marcel Holtmann
2008-06-30 15:57 ` Michael Terry
2008-06-30 16:03 ` Marcel Holtmann
2008-06-30 18:53 ` Michael Terry
2008-07-01 1:10 ` Marcel Holtmann
2008-07-09 14:28 ` Michael Terry
2008-08-19 17:33 ` Michael Terry
2008-06-30 13:51 ` Michael Terry
2008-06-30 19:58 ` Michael Terry
2008-06-30 20:01 ` Michael Terry
2008-06-30 20:38 ` Bastien Nocera
2008-06-30 20:42 ` Mario Limonciello
2008-07-01 1:16 ` Marcel Holtmann
2008-06-30 15:48 ` Michael Terry
2008-07-01 1:24 ` Marcel Holtmann
2008-06-27 22:44 ` Bastien Nocera
[not found] ` <031301c8da4d$0bce3720$6701a8c0@freqonedev>
[not found] ` <1214813891.4435.149.camel@cookie.hadess.net>
2008-06-30 13:15 ` David Stockwell
2008-06-30 22:27 ` Luiz Augusto von Dentz
2008-07-01 18:56 ` David Stockwell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='024a01c8d88d$5515a790$6701a8c0@freqonedev' \
--to=dstockwell@frequency-one.com \
--cc=bluez-devel@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox