author | erik <erik> | 2007-03-06 01:24:35 (UTC) |
---|---|---|
committer | erik <erik> | 2007-03-06 01:24:35 (UTC) |
commit | 3efe70df6fdaf32a8213ceadbdd1679a0a658934 (patch) (side-by-side diff) | |
tree | f5f2459bd9435602d43438ae4aca39d9f51927ea /noncore | |
parent | 6b0fa616c4aac654c549621eb0009ab3eb32fe34 (diff) | |
download | opie-3efe70df6fdaf32a8213ceadbdd1679a0a658934.zip opie-3efe70df6fdaf32a8213ceadbdd1679a0a658934.tar.gz opie-3efe70df6fdaf32a8213ceadbdd1679a0a658934.tar.bz2 |
Bluetooth didn't quite work for kernel 2.6 based iPAQs in familiar. This
patch fixes that by reading the distro supplied file in /etc/sysconfig.
This patch was submitted by Slavek Banko. Thank you Slavek!
-rw-r--r-- | noncore/net/opietooth/applet/bluezapplet.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/noncore/net/opietooth/applet/bluezapplet.cpp b/noncore/net/opietooth/applet/bluezapplet.cpp index 787abc6..60fa4f8 100644 --- a/noncore/net/opietooth/applet/bluezapplet.cpp +++ b/noncore/net/opietooth/applet/bluezapplet.cpp @@ -47,16 +47,18 @@ using namespace Opie::Core; #include <qpainter.h> #include <qlayout.h> #include <qframe.h> #include <qpixmap.h> #include <qstring.h> #include <qtimer.h> #include <qpopupmenu.h> #include <qmessagebox.h> +#include <qfile.h> +#include <qtextstream.h> /* STD */ #include <device.h> namespace OpieTooth { BluezApplet::BluezApplet( QWidget *parent, const char *name ) : QWidget( parent, name ) { setFixedHeight( AppLnk::smallIconSize() ); setFixedWidth( AppLnk::smallIconSize() ); @@ -119,16 +121,35 @@ namespace OpieTooth { odebug << "btDevice is ZERO" << oendl; return false; } } int BluezApplet::setBluezStatus(int c, bool sync) { if ( c == 1 ) { + QFile cfg("/etc/sysconfig/bluetooth"); + if ( cfg.open( IO_ReadOnly ) ) { + QTextStream stream( &cfg ); + QString streamIn = stream.read(); + QStringList list = QStringList::split( "\n", streamIn ); + cfg.close(); + if ( list.grep( "BLUETOOTH_PORT=" ).count() > 0 && + list.grep( "BLUETOOTH_PROTOCOL=" ).count() > 0 && + list.grep( "BLUETOOTH_SPEED=" ).count() > 0) + { + btDevice = + new Device( list.grep( "BLUETOOTH_PORT=" )[0].replace( QString( "BLUETOOTH_PORT=" ), ""), + list.grep( "BLUETOOTH_PROTOCOL=" )[0].replace( QString( "BLUETOOTH_PROTOCOL=" ), ""), + list.grep( "BLUETOOTH_SPEED=" )[0].replace( QString( "BLUETOOTH_SPEED=" ), "" ) ); + return 0; + } + } + + // Device-specific stuff - should be removed switch ( ODevice::inst()->model() ) { case Model_iPAQ_H39xx: btDevice = new Device( "/dev/tts/1", "bcsp", "921600" ); break; case Model_iPAQ_H5xxx: btDevice = new Device( "/dev/tts/1", "any", "921600" ); break; |