Граф коммитов

318 Коммитов

Автор SHA1 Сообщение Дата
Thomas Zimmermann a4ed330ba0 Bug 1083708: Handle non-existant Bluetooth profile interfaces correctly, r=shawnjohnjr
Bluetooth profile managers just return an error if a profile interface is
not available. Doing so breaks the initialization and cleanup routines. This
patch changes the profile managers to still report an error, but signal
progress to the given result runnable.
2014-10-16 16:40:49 +02:00
Ryan VanderMeulen aa28d3eb31 Merge inbound to m-c. a=merge
CLOSED TREE
2014-10-15 14:31:16 -04:00
Thomas Zimmermann 3fac940f89 Bug 1081981: Fix Out-of-bounds read when decoding BT properties, r=shawnjohnjr
Bluetooth's RSSI property is encoded as pointer to a signed 8-bit
value. Gecko currently interprets this as pointer to a 32-bit
value; so the result of dereferencing the pointer is undefined.

This patch fixes the bug by interpreting the RSSI property correctly.
2014-10-15 11:38:06 +02:00
Jocelyn Liu 701f1dd745 Bug 1080463 - Patch3: [bluetooth2] Notify OPP manager when Bluetooth socket message error occurs(Bug 1052304). r=shuang 2014-10-15 17:49:08 +08:00
Jocelyn Liu cfc8df3183 Bug 1080463 - Patch2: [bluetooth2] Use nsRefPtr to avoid ReplyRunnable being released during IPC process(Bug 1072802). r=shuang 2014-10-15 17:49:04 +08:00
Jocelyn Liu 9cc97e58af Bug 1080463 - Patch1: [bluetooth2] Porting DOMFile/DOMBlob to WebIDL(Bug 1047483). r=shuang 2014-10-15 17:49:00 +08:00
Ryan VanderMeulen 652c5d4a4f Merge inbound to m-c. a=merge 2014-10-07 16:00:48 -04:00
Thomas Zimmermann ff995ec1bd Bug 1065999: Ignore unknown Bluetooth properties, r=shuang
This patch is a workaround for unknown Bluetooth properties. Instead of
failing completely, we simply ignore them.
2014-09-29 11:41:02 +02:00
Edgar Chen 584a54888c Bug 994461 - Part 3: BT changes for IccInfo WebIDL. r=echou 2014-09-15 23:14:49 +08:00
Bobby Holley f4c38cee30 Bug 1065185 - Stop using Promise.jsm over SpecialPowers in marionette tests. r=bz 2014-10-03 10:05:50 +02:00
Ben Tian 74d76f3171 Bug 1075331 - [bluetooth2] Fix build break resulting from bug 994190, r=shuang 2014-10-01 14:04:07 +08:00
Ben Tian 08372cd684 Bug 1074132 - [bluetooth2] Fix build break resulting from bug 1053966, r=shuang 2014-09-29 18:56:48 +08:00
Ben Turner d081140cb0 Bug 994190 - 'Modify main-thread IndexedDB to use PBackground', r=khuey. 2014-09-26 16:21:57 -07:00
Jocelyn Liu f511114c44 Bug 1054830 - Patch3: Add init/cleanup and notification handling functions into GattManager. r=tzimmermann 2014-09-26 11:16:40 +08:00
Jocelyn Liu 4583c43422 Bug 1054830 - Patch2: Implement gatt main/client interface and notifications. r=tzimmermann 2014-09-26 11:16:36 +08:00
Jocelyn Liu 2ca293f81a Bug 1054830 - Patch1: Define structures to represent bluedroid's gatt data structures. r=tzimmermann 2014-09-26 11:16:32 +08:00
Ben Tian ab68065206 Bug 1063066 - [Flame][KK] Bluetooth transfer does not work in Gallery App. r=tzimmermann 2014-09-25 18:35:54 +08:00
Mike Habicher c0376bc34a Bug 1053966 - move mozsettings-changed Observer info from aSubject to aData, r=bz,qDot 2014-09-16 13:15:16 -04:00
Thomas Zimmermann a1f41b2ca9 Bug 1065897: Distribute Bluetooth HAL implementation among multiple files (unter bluetooth2/), r=btian
The files BluetoothHALInterface.{cpp,h} are getting too large. This patch
moves helper functions and profile implementations into separate files.
2014-09-23 09:41:57 +08:00
Thomas Zimmermann d9b7d2733c Bug 1065897: Move Bluedroid code out of BluetoothInterface.{cpp,h} (under bluetooth2/), r=btian
This patch moves BluetoothInterface.{cpp,h} to the generic section
of Gecko's Bluetooth code, and the Bluedroid implementation into
the new files BluetoothHalImplementation.{cpp,h}.

BluetoothHalImplementation.{cpp,h} contains all Bluedroid-specific
code. The classes in BluetoothInterface.{cpp,h} are now interfaces
for Gecko.

--HG--
rename : dom/bluetooth2/bluedroid/BluetoothInterface.cpp => dom/bluetooth2/bluedroid/BluetoothHALInterface.cpp
2014-09-23 09:40:36 +08:00
Kyle Machulis 6568414f5d Bug 1069115 - Make bluetooth webapi marionette tests wait for transaction success when changing settings; r=echou
--HG--
extra : rebase_source : c4fdc80f904987c848bca4b839d8b3f36fefd667
2014-09-22 16:15:07 -07:00
Vicamo Yang ede03dd674 Bug 1063304 - 3.c/3: accommodate other components. r=echen 2014-09-21 15:24:43 +08:00
Ben Turner 46d101f40c Backout bug 994190 and merge over some stuff that landed afterwards on a CLOSED TREE. 2014-09-17 19:36:01 -04:00
Peter Van der Beken dcda2ba9bb Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, remove nsWrapperCache::SetIsDOMBinding. r=bz.
--HG--
extra : rebase_source : 89c476cd9436530b2df5acc903909e34188417a0
2014-10-07 11:44:49 +02:00
Peter Van der Beken 963858ac23 Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, remove some IsDOMBinding asserts. r=bz.
--HG--
extra : rebase_source : 74569bd08dbc0d6755ac45999cfe99725ef6bc0a
2014-10-07 11:44:49 +02:00
Carsten "Tomcat" Book 03e3efbd63 Backed out changeset 9ff2889f236a (bug 1063304) 2014-09-17 13:13:08 +02:00
Ryan VanderMeulen d3fce43e7e Backed out changeset ed586ca080c0 (bug 1053966) for the same Mnw permafails it was backed out for previously. 2014-09-16 16:54:25 -04:00
Mike Habicher e9ff4e12a0 Bug 1053966 - move mozsettings-changed Observer info from aSubject to aData, r=bz,qDot 2014-09-16 13:15:16 -04:00
Vicamo Yang 44379ca746 Bug 1063304 - 3.c/3: accommodate other components. r=echen 2014-09-16 21:20:18 +08:00
Ben Turner 1a91d40956 Bug 994190 - 'Modify main-thread IndexedDB to use PBackground', r=khuey.
--HG--
rename : dom/indexedDB/ipc/SerializationHelpers.h => dom/indexedDB/SerializationHelpers.h
rename : dom/indexedDB/ipc/unit/head.js => dom/indexedDB/test/unit/xpcshell-head-child-process.js
rename : dom/indexedDB/test/unit/head.js => dom/indexedDB/test/unit/xpcshell-head-parent-process.js
rename : dom/ipc/Blob.h => dom/ipc/BlobParent.h
rename : dom/ipc/FileDescriptorSetChild.cpp => ipc/glue/FileDescriptorSetChild.cpp
rename : dom/ipc/FileDescriptorSetChild.h => ipc/glue/FileDescriptorSetChild.h
rename : dom/ipc/FileDescriptorSetParent.cpp => ipc/glue/FileDescriptorSetParent.cpp
rename : dom/ipc/FileDescriptorSetParent.h => ipc/glue/FileDescriptorSetParent.h
rename : dom/ipc/PFileDescriptorSet.ipdl => ipc/glue/PFileDescriptorSet.ipdl
2014-09-13 12:12:19 -04:00
Ben Tian 34940fb0aa Bug 1061481 - Patch 3/3: Implementation of BluetoothDevice.type attribute, f=tzimmermann, r=echou 2014-09-11 10:04:18 +08:00
Ryan VanderMeulen cef6a37510 Backed out changeset 661f503ea524 (bug 1053966) for Mnw perma-fail. 2014-09-10 12:36:12 -04:00
Mike Habicher 8bf31e2480 Bug 1053966 - pass settings change notices to Observers as aSubject instead of aData, r=bz,qdot 2014-08-25 18:06:31 -04:00
Thomas Zimmermann 0f37d126ec Bug 1064264: Remove references to Android from BluetoothServiceBluedroid, r=btian 2014-09-09 16:30:06 +02:00
Thomas Zimmermann 7ef8117ca4 Bug 1064264: Cleanup ANDROID_VERSION from BluetoothA2DPManager (under bluetooth2/), r=btian
All interfaces for Bluetooth profiles are now always available, so we
don't have to check for specific versions of Bluedroid. Instead, we
try to call the methods, and check their results.
2014-09-09 16:30:06 +02:00
Thomas Zimmermann a4917bfb6d Bug 1064264: Make Bluetooth AVRCP interface generally available (under bluetooth2/), r=btian
The methods of |BluetoothAVRCPInterface| are now always available. On
Android versions before 18, which don't support AVRCP, they always
fail with STATUS_UNSUPPORTED.
2014-09-09 16:30:06 +02:00
Thomas Zimmermann f4a6bef003 Bug 1064264: Fix constants in Bluedroid HFP manager (under bluetooth2/), r=btian
This patch replaces the remaining Bluedroid constants from Bluedroid's
|BluetoothHfpManager| with Gecko constants.
2014-09-09 16:30:05 +02:00
Thomas Zimmermann e69a950918 Bug 1064264: Add AVRCP_UID_SIZE to Bluetooth (under bluetooth2/), r=btian
The constant AVRCP_UID_SIZE replaces the corresponding Bluedroid
constant BTRC_UID_SIZE.
2014-09-09 16:30:05 +02:00
Thomas Zimmermann 8b63ef8652 Bug 1059813: Use getter/setter methods of |UnixSocketRawData| in Bluetooth, r=btian 2014-09-08 11:44:02 +02:00
Thomas Zimmermann 261a3f87cf Bug 1062754: Support peer shutdown and EOF in |SocketIOBase|, r=qdot, btian
Calling read on a socket that has been closed for reading by the
peer, read returns 0. The socket is still readable however, so
polling and reading will return constant results of 0 received
bytes.

With this patch, if a socket's peer shuts down reading or if
we reached the EOF, we stop watching the file descriptor for
readability. |SocketIOBase| will detect this case exactly once
and initiate the socket's shutdown.
2014-09-05 10:16:24 +02:00
Thomas Zimmermann f86f3b798c Bug 1061124: Cleanup BluetoothA2DPManager and related code (under bluetooth2/), r=btian
The patch removes unused callbacks and helper runnables from the
Bluedroid implementation of BluetoothA2DPManager. It also removes
the last Bluedroid-specific code from BluetoothUtils.{cpp,h}.
2014-09-05 10:00:41 +02:00
Thomas Zimmermann 9c424c3029 Bug 1061124: Integrate helper runnables into A2DP and AVRCP notifications (under bluetooth2/), r=btian
The helper runnables where necessary to perform certain operations on
the main thread after having received a callback from Bluedroid. The
new notification methods already run on the main thread, so the helper
runnables can be replaced by direct calls.
2014-09-05 10:00:40 +02:00
Thomas Zimmermann ae1052b35e Bug 1061124: Use Bluetooth A2DP and AVRCP notifications (under bluetooth2/), r=btian
This patch converts Bluetooth's A2DP manager and Bluedroid interface
to use notifications instead of callbacks.
2014-09-05 10:00:40 +02:00
Thomas Zimmermann bdd661ae16 Bug 1061124: Implement Bluetooth A2DP notifications (under bluetooth2/), r=btian
This patch adds Bluetooth A2DP and AVRCP notifications to Gecko's
A2DP manager. The code has been taken from taken from the callback
implementations, and adapted to run on the main thread. No further
cleanups have been applied.
2014-09-05 10:00:40 +02:00
Thomas Zimmermann 4d8594f2cb Bug 1061124: Add Bluetooth A2DP and AVRCP notifications (under bluetooth2/), r=btian
This patch adds A2DP and AVRCP notifications and callbacks to
Gecko's Bluedroid interface. Support for AVRCP depends on the
version of the Android base system and is only available on
versions 18, 19 or later.
2014-09-05 10:00:39 +02:00
Ryan VanderMeulen 75f1e2407b Backed out 6 changesets (bug 1059813) by request.
Backed out changeset cffeecd46cad (bug 1059813)
Backed out changeset f991f546dbcd (bug 1059813)
Backed out changeset ab4056a1aa06 (bug 1059813)
Backed out changeset d08a91fee65a (bug 1059813)
Backed out changeset 7bd0ecf96e59 (bug 1059813)
Backed out changeset 0b7a62175398 (bug 1059813)
2014-09-03 11:29:16 -04:00
Thomas Zimmermann d4ab2ddce3 Bug 1059813: Use getter/setter methods of |UnixSocketRawData| in Bluetooth, r=btian 2014-09-03 16:43:14 +02:00
Edgar Chen 26472771cf Bug 843452 - Part 2-2: Bluetooth changes for MobileConnectionService interface. r=echou 2014-07-02 17:14:08 +08:00
Ben Tian b1e4d19ae8 Bug 1060245 - Patch 3/3: Remove BluetoothAdapter::EnableDisable(), r=echou 2014-08-28 16:57:26 +08:00
Ben Tian c49cd3933e Bug 1060245 - Patch 2/3: Cleanup header of adapter, r=echou 2014-08-29 15:38:44 +08:00
Ben Tian e198ab2be5 Bug 1060245 - Patch 1/3: Cleanup headers of manager and device, r=echou 2014-09-02 18:31:18 +08:00
Thomas Zimmermann 541d6e9f52 Bug 1056539: Replace |MainThreadTask| by |CloseScoRunnable| (under bluetooth2/), r=btian
|MainThreadTask| performs different operations on the main thread,
depending on a given command flag. There is only one command, CLOSE_SCO,
in use.

This patch removes the command infrastructure and replaces |MainThreadTask|
by |CloseScoRunnable|, which implements only this single operation.
2014-09-02 18:02:57 +02:00
Thomas Zimmermann c6d11f4e48 Bug 1056539: Cleanup Bluetooth Handsfree manager (under bluetooth2/), r=btian
This patch removes the unusued callback code from Bluetooth's
Handsfree manager.
2014-09-02 18:02:56 +02:00
Thomas Zimmermann a3c3f0346f Bug 1056539: Integrate runnables into Handsfree notifications (under bluetooth2/), r=btian
A number of notifications dispatch runnables to the main thread for
invoking actions. This is not requireed, as notifications already
run on the main thread. This patch merges the runnable's code into
the respective notifications.
2014-09-02 18:02:56 +02:00
Thomas Zimmermann 519eae713e Bug 1056539: Use Bluetooth Handsfree notifications (under bluetooth2/), r=btian
This patch replaces Handsfree callbacks by notifications. One
important change is that the first call to |BluetoothHandsfreeManager::Get|
now happens during initialization. Hence the Handsfree manager is now setup
immediately, instead of later at use.
2014-09-02 18:02:56 +02:00
Thomas Zimmermann 7a32c354b9 Bug 1056539: Implement Bluetooth Handsfree notifications (under bluetooth2/), r=btian
The patch adds notifications support to the Handsfree manager. Each
notification's method is taken from the respective callback code, with
changes to the arguments' data types.
2014-09-02 18:02:55 +02:00
Thomas Zimmermann 6863b412ce Bug 1056539: Add Bluetooth Handsfree notifications (under bluetooth2/), r=btian
The notification interface consists of virtual methods that are
invoked form the Bluetooth backend on certain events. The Handsfree
manager can implement the methods to handle these events.
2014-09-02 18:02:55 +02:00
Thomas Zimmermann 044199e66a Bug 1054242: Cleanup |BluetoothServiceBluedroid| and related functions (under bluetooth2/), r=btian
This patch removes unsued code from |BluetoothServiceBluedroid|, related
functions, and cleans up the file. It

 * removes callbacks,
 * removes callback helper tasks,
 * removes helper functions, and
 * cleans up global variables.
2014-09-02 12:38:46 +02:00
Thomas Zimmermann dbd4ad5330 Bug 1054242: Integrate helper runnables into notification methods (under bluetooth2/), r=btian
Bluedroid callbacks were usually called on a separate thread that
was specific to this task. So Gecko's Bluetooth Core contained a
number of runnables for executing callback operations on the main
thread.

Since all notifications always run on the main thread, the extra
runnables are not required any longer. This patch integrates them
into the notification methods where possible.
2014-09-02 12:38:46 +02:00
Thomas Zimmermann 0e8745814f Bug 1054242: Use Bluetooth Core notifications (under bluetooth2/), r=btian
This patch connects backend and Gecko side of the notification
code. Gecko will now receive notifications instead of Bluedroid
callbacks.
2014-09-02 12:38:46 +02:00
Thomas Zimmermann 20b8e8fc6d Bug 1054242: Implement Bluetooth Core notifications (under bluetooth2/), r=btian
This patch adds the Gecko-side of the Core notifications. The current
implementation of the notification methods has been copied from the
repsective Bluedroid callback methods, with only minor changes to adapt
them to Gecko data types.
2014-09-02 12:38:45 +02:00
Thomas Zimmermann 3d6383e252 Bug 1054242: Add Bluetooth Core notifications (under bluetooth2/), r=btian
A notification is a callback from the Bluetooth backend to inform
Gecko about a event. Bluedroid uses function pointers for this, but
in Gecko we use method calls instead.

Gecko implements notification handlers for the Bluetooth backend. The
backend converts incomming events to Gecko types and forwards them to
the registered notification handler.
2014-09-02 12:38:45 +02:00
Thomas Zimmermann 063cdc9441 Bug 1054242: Add infrastructure for Bluetooth notifications (under bluetooth2/), r=btian
This patch adds some runnable classes for running class methods on
the main thread. This is the base of the upcomming notification
mechanism for Bluetooth.
2014-09-02 12:38:45 +02:00
Birunthan Mohanathas acfc90e91a Bug 1058101 - Flatten dom/network/src/ into parent directory. r=mccr8
--HG--
rename : dom/network/src/Connection.cpp => dom/network/Connection.cpp
rename : dom/network/src/Connection.h => dom/network/Connection.h
rename : dom/network/src/Constants.h => dom/network/Constants.h
rename : dom/network/src/NetUtils.cpp => dom/network/NetUtils.cpp
rename : dom/network/src/NetUtils.h => dom/network/NetUtils.h
rename : dom/network/src/NetworkStatsDB.jsm => dom/network/NetworkStatsDB.jsm
rename : dom/network/src/NetworkStatsManager.js => dom/network/NetworkStatsManager.js
rename : dom/network/src/NetworkStatsManager.manifest => dom/network/NetworkStatsManager.manifest
rename : dom/network/src/NetworkStatsService.jsm => dom/network/NetworkStatsService.jsm
rename : dom/network/src/NetworkStatsServiceProxy.js => dom/network/NetworkStatsServiceProxy.js
rename : dom/network/src/NetworkStatsServiceProxy.manifest => dom/network/NetworkStatsServiceProxy.manifest
rename : dom/network/src/PTCPServerSocket.ipdl => dom/network/PTCPServerSocket.ipdl
rename : dom/network/src/PTCPSocket.ipdl => dom/network/PTCPSocket.ipdl
rename : dom/network/src/PUDPSocket.ipdl => dom/network/PUDPSocket.ipdl
rename : dom/network/src/TCPServerSocket.js => dom/network/TCPServerSocket.js
rename : dom/network/src/TCPServerSocketChild.cpp => dom/network/TCPServerSocketChild.cpp
rename : dom/network/src/TCPServerSocketChild.h => dom/network/TCPServerSocketChild.h
rename : dom/network/src/TCPServerSocketParent.cpp => dom/network/TCPServerSocketParent.cpp
rename : dom/network/src/TCPServerSocketParent.h => dom/network/TCPServerSocketParent.h
rename : dom/network/src/TCPSocket.js => dom/network/TCPSocket.js
rename : dom/network/src/TCPSocket.manifest => dom/network/TCPSocket.manifest
rename : dom/network/src/TCPSocketChild.cpp => dom/network/TCPSocketChild.cpp
rename : dom/network/src/TCPSocketChild.h => dom/network/TCPSocketChild.h
rename : dom/network/src/TCPSocketParent.cpp => dom/network/TCPSocketParent.cpp
rename : dom/network/src/TCPSocketParent.h => dom/network/TCPSocketParent.h
rename : dom/network/src/TCPSocketParentIntermediary.js => dom/network/TCPSocketParentIntermediary.js
rename : dom/network/src/Types.h => dom/network/Types.h
rename : dom/network/src/UDPSocket.cpp => dom/network/UDPSocket.cpp
rename : dom/network/src/UDPSocket.h => dom/network/UDPSocket.h
rename : dom/network/src/UDPSocketChild.cpp => dom/network/UDPSocketChild.cpp
rename : dom/network/src/UDPSocketChild.h => dom/network/UDPSocketChild.h
rename : dom/network/src/UDPSocketParent.cpp => dom/network/UDPSocketParent.cpp
rename : dom/network/src/UDPSocketParent.h => dom/network/UDPSocketParent.h
2014-08-27 10:13:39 -07:00
Kyle Machulis 03d47a099e Bug 846200 - Update Marionette JS WebAPI Tests to use new settings-api permissions; r=echou r=echen
--HG--
extra : rebase_source : 36a9f3e055a2ff7bcf624e9ef7f8f1e4619de6da
2014-08-27 21:01:29 -07:00
Wes Kocher d544bf248c Backed out 17 changesets (bug 843452)
Backed out changeset e72a0297d488 (bug 843452)
Backed out changeset 73f62ce4190f (bug 843452)
Backed out changeset 6d4a49ebd9fc (bug 843452)
Backed out changeset ac93e396669f (bug 843452)
Backed out changeset cf4fc721821e (bug 843452)
Backed out changeset 9a94ea71d232 (bug 843452)
Backed out changeset b95ff097374d (bug 843452)
Backed out changeset 8d6428a93500 (bug 843452)
Backed out changeset e31b86ef0e80 (bug 843452)
Backed out changeset bd4efde535cd (bug 843452)
Backed out changeset 02bbcd8ac571 (bug 843452)
Backed out changeset f7f41bf82b22 (bug 843452)
Backed out changeset 20f42764cd38 (bug 843452)
Backed out changeset 82f8670f5c17 (bug 843452)
Backed out changeset 52f25f1278e3 (bug 843452)
Backed out changeset 181337820a7c (bug 843452)
Backed out changeset 9bd12641af03 (bug 843452)

--HG--
rename : dom/mobileconnection/interfaces/nsIMobileConnectionService.idl => dom/mobileconnection/interfaces/nsIMobileConnectionProvider.idl
2014-08-28 16:51:41 -07:00
Edgar Chen 9f21aaf25e Bug 843452 - Part 2-2: Bluetooth changes for MobileConnectionService interface. r=echou 2014-07-02 17:14:08 +08:00
Ryan VanderMeulen a408d636f2 Backed out 11 changesets (bug 1059079, bug 1015518, bug 900551, bug 846200) for Gaia UI test failures on a CLOSED TREE.
Backed out changeset d85b4e48b3b4 (bug 1015518)
Backed out changeset 663b73ba69ec (bug 1015518)
Backed out changeset 5cf1cb5fa022 (bug 900551)
Backed out changeset b953dd5bfdaa (bug 900551)
Backed out changeset a2b6d7c84100 (bug 900551)
Backed out changeset ceb79fe83d15 (bug 900551)
Backed out changeset f6acf344fbf0 (bug 900551)
Backed out changeset fa269ea53937 (bug 846200)
Backed out changeset b89c84a850f9 (bug 846200)
Backed out changeset b7a7dfbe4e3f (bug 846200)
Backed out changeset c6f54d821c11 (bug 1059079)
2014-08-28 12:49:49 -04:00
Kyle Machulis 71298b134a Bug 846200 - Update Marionette JS WebAPI Tests to use new settings-api permissions; r=echou r=echen 2014-08-27 21:01:29 -07:00
Jamin Liu 9150681cbf Bug 1032755 - Return a DOMException with error message when BluetoothReplyRunnable rejects the promise. r=btian 2014-08-25 14:51:29 +08:00
Thomas Zimmermann fa45e97710 Bug 1050174: Cleanup interface of |BluetoothSocket| (under bluetoth2/), r=btian
This patch cleans up the interface of Bluedroid's |BluetoothScoket|
to look more similar the interface of |UnixSocketConsumer|, from
which it descends.
2014-08-21 09:30:37 +02:00
Thomas Zimmermann 1c0c5f8df9 Bug 1050174: Use |SocketIOShutdownTask| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:37 +02:00
Thomas Zimmermann 609a60d406 Bug 1050174: Use |SocketIOSendTask| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:37 +02:00
Thomas Zimmermann e490b3df7d Bug 1050174: Use |SocketIOTask| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:36 +02:00
Thomas Zimmermann ce5358d3fb Bug 1050174: Use |SocketIOBase| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:36 +02:00
Thomas Zimmermann f93da9feb8 Bug 1050174: Use |SocketIODeleteInstanceRunnable| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:36 +02:00
Thomas Zimmermann 0f813f6b3e Bug 1050174: Use |SocketIORequestClosingRunnable| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:36 +02:00
Thomas Zimmermann 29bc0c4948 Bug 1050174: Use |SocketIOReceiveRunnable| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:35 +02:00
Thomas Zimmermann 4d4747f6fa Bug 1050174: Use |SocketIOEventRunnable| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:35 +02:00
Thomas Zimmermann f2a339c3d2 Bug 1050174: Use |SocketIORunnable| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:35 +02:00
Thomas Zimmermann 86dfe18dc2 Bug 1050174: Use |SocketConsumerBase| for Bluetooth sockets (under bluetooth2/), r=btian 2014-08-21 09:30:34 +02:00
Thomas Zimmermann b894debe3f Bug 1050174: Cleanup fields in |DroidSocketImpl| (under bluetooth2/), r=btian
|DroidSocketImpl| contains several unused fields that are removed
by this patch.
2014-08-21 09:30:34 +02:00
Ed Morley de4909b31e Merge latest green b2g-inbound changeset and mozilla-central; a=merge 2014-08-15 16:54:17 +01:00
Thomas Zimmermann c56444abee Bug 1050126: Convert Bluedroid status codes and error handlers (under bluetooth2/), r=btian
This patch converts Bluedroid status codes in Gecko to the
backend-neutral data type |BluetoothStatus|. All error handlers
have been adapted. The Bluedroid type |bt_status_t| only remains
in |BluetoothInterface|.
2014-08-15 13:41:19 +02:00
Thomas Zimmermann 9b9c948379 Bug 1050126: Convert Bluetooth AVRCP data types in |BluetoothAvrcpInterface| (under bluetooth2/), r=btian
With this patch |BluetoothAvrcpInterface| is responsible for converting all
Bluetooth data types to Bluedroid types. All callers have been adapted.
2014-08-15 13:41:19 +02:00
Thomas Zimmermann 5f4708b49c Bug 1050126: Convert Bluetooth A2DP data types in |BluetoothA2dpInterface| (under bluetooth2/), r=btian
With this patch |BluetoothA2dpInterface| is responsible for converting all
Bluetooth data types to Bluedroid types. All callers have been adapted.
2014-08-15 13:41:19 +02:00
Thomas Zimmermann f1e6d82238 Bug 1050126: Convert Bluetooth Handsfree data types in |BluetoothHandsfreeInterface| (under bluetooth2/), r=btian
With this patch |BluetoothHandsfreeInterface| is responsible for converting all
Bluetooth data types to Bluedroid types. All callers have been adapted.
2014-08-15 13:41:19 +02:00
Thomas Zimmermann 14cb6b6d80 Bug 1050126: Convert Bluetooth Socket data types in |BluetoothSocketInterface| (under bluetooth2/), r=btian
With this patch |BluetoothSocketInterface| is responsible for converting all
Bluetooth data types to Bluedroid types. All callers have been adapted.
2014-08-15 13:41:18 +02:00
Thomas Zimmermann 5f96d43a86 Bug 1050126: Convert Bluetooth data types in |BluetoothInterface| (under bluetooth2/), r=btian
With this patch, |BluetoothInterface| is responsible for converting
all Bluetooth data types to Bluedroid types. All callers have been
adapted.
2014-08-15 13:41:18 +02:00
Jamin Liu 901c96a3e9 Bug 1043180 - Write a marionette test for Bluetooth pairing based on Bluetooth API v2. r=btian 2014-08-14 11:34:22 +08:00
Jamin Liu 94c4c21f5e Bug 1036234 - Fix the follow-up errors from implementation of pairing event handlers. r=btian 2014-08-14 11:34:10 +08:00
Jamin Liu 55bbcf1752 Bug 1036234 - Implement pairing event handlers of BluetoothAdapter. r=btian, r=mrbkap
- EventHandler ondevicepaired;
- EventHandler ondeviceunpaired;
2014-08-12 16:30:42 +08:00
Jamin Liu 97fec21571 Bug 1036233 - Implement pairing methods of Bluetooth API v2. r=btian, r=mrbkap
- Promise<void> pair(DOMString aAddress)
- Promise<void> unpair(DOMString aAddress)
- sequence<BluetoothDevice> getPairedDevices()
2014-08-12 16:30:36 +08:00
Jamin Liu 259c8a71b4 Bug 1036233 - Initialize the data member of BluetoothDevice. r=btian 2014-08-12 16:30:26 +08:00
Nigel Babu 7f86114f33 Backed out changeset 2d0ebc1bc7d6 (bug 1036233) for build bustage ON A CLOSED TREE 2014-08-12 09:00:30 +05:30
Nigel Babu b241b4cbb6 Backed out changeset c5d50f1bc995 (bug 1036233) for build bustage ON A CLOSED TREE 2014-08-12 09:00:20 +05:30
Nigel Babu 7e1903b51c Backed out changeset a471c7c73409 (bug 1036234) for build bustage on A CLOSED TREE 2014-08-12 09:00:08 +05:30
Jamin Liu c87d6c4079 Bug 1036234 - Implement pairing event handlers of BluetoothAdapter. r=btian, r=mrbkap
- EventHandler ondevicepaired;
- EventHandler ondeviceunpaired;
2014-08-12 10:49:59 +08:00
Jamin Liu c435cb1254 Bug 1036233 - Implement pairing methods of Bluetooth API v2. r=btian, r=mrbkap
- Promise<void> pair(DOMString aAddress)
- Promise<void> unpair(DOMString aAddress)
- sequence<BluetoothDevice> getPairedDevices()
2014-08-12 10:49:53 +08:00
Jamin Liu 6ddcdd1ef6 Bug 1036233 - Initialize the data member of BluetoothDevice. r=btian 2014-08-12 10:49:43 +08:00
Vicamo Yang 7a4d8e7265 Bug 1048098: remove redundant flushPermissions, flushPrefEnv from tearing down procedure. r=btian, r=echen 2014-08-08 18:28:58 +08:00
Jocelyn Liu de0443c58f Bug 1050494: Clear sBluetoothThread in BluetoothDBusService on shutdown to fix memory leak. r=shuang 2014-08-08 16:22:32 +08:00
Thomas Zimmermann 92a362d3ac Bug 1048770: Rename |ConnectResultHandler| to |ConnectSocketResultHandler| (under bluetooth2/), r=btian
The linker mixes up |ConnectResultHandler| from BluetoothSocket.cpp
and BluetoothHfpManager.cpp. Consequently one of them gets removed
when linking libxul.so.

This patch works around the problem by renaming |ConnectResultHandler|
in BluetoothSocket.cpp to |ConnectSocketResultHandler|.
2014-08-08 09:58:18 +02:00
Thomas Zimmermann 5bcadb1e61 Bug 1048770: Fix member types of |BluetoothInterfaceRunnable{1,3}<>| (under bluetooth2/), r=btian
When sending a |BluetoothInterfaceRunnable3<>| to the main thread,
in the case of BluetoothSocketResultHandler, the connect and accept
operations transfer string objects by reference from the I/O thread.
When the reference is accessed, the actual string might be removed
already.

The patch fixes the problem by storing the strings as value in the
runnable object.
2014-08-08 09:58:17 +02:00
Jocelyn Liu 763f8f19a9 Bug 1047757: Call ClearOnShutdown(sBluetoothService) to fix memory leak. r=shuang 2014-08-07 14:01:24 +08:00
Ed Morley 1d0a9269db Backed out changeset 9281f9896ce0 (bug 1048098) for webapi test failures 2014-08-05 12:22:00 +01:00
Jocelyn Liu adac77c1ec Bug 1036228 - Patch3: Handle pairing requests and fire pairing events in BluetoothAdapter. r=btian, r=bz 2014-08-05 18:25:54 +08:00
Jocelyn Liu 109a2d162b Bug 1036228 - Patch2: Handle pairing requests reported by bluedroid in bluetooth services. r=btian 2014-08-05 18:25:47 +08:00
Jocelyn Liu 68c5209cb0 Bug 1036228 - Patch1: Add BluetoothPairingRequestListeningHandle.webidl and implement it. r=btian, r=bz 2014-08-05 18:25:42 +08:00
Vicamo Yang a5bcee91bf Bug 1048098: remove redundant flushPermissions, flushPrefEnv from tearing down procedure. r=btian, r=echen 2014-08-05 16:19:06 +08:00
Nathan Froyd 12c76f15f7 Bug 1042878 - part 2 - move MOZ_CAIRO_CFLAGS et al additions to C*FLAGS into moz.build; r=glandium 2014-07-24 11:55:33 -04:00
Thomas Zimmermann 11e265c36c Bug 1045461: Fix HFP fallback code to work with latest Bluetooth changes (under bluetooth2/), r=btian
Recent patches to Bluetooth introduced asynchronous initialization of
profile manager. The code in hfp-fallback was not adapted then. This
patch updates the broken code.
2014-07-29 10:47:31 +02:00
Jocelyn Liu 68cec10ca7 Bug 1033898 - Patch1: Add BluetoothPairingEvent and BluetoothPairingHandlewebidls and their class implementations. r=btian, r=bz 2014-07-28 22:09:00 +02:00
Thomas Zimmermann a4d154c381 Bug 1042691: Asynchronous |BluetoothAvrcpInterface::SetVolume| (under bluetooth2/), r=btian 2014-07-28 09:52:52 +02:00
Thomas Zimmermann 34f4929103 Bug 1042691: Asynchronous AVRCP response interfaces (under bluetooth2/), r=btian 2014-07-28 09:52:51 +02:00
Thomas Zimmermann 36fc86ade8 Bug 1042691: Asynchronous A2DP connect/disconnect (under bluetooth2/), r=btian 2014-07-28 09:52:51 +02:00
Thomas Zimmermann abbdf7f4d9 Bug 1042691: Asynchronous init and cleanup of A2DP/AVRCP (under bluetooth2/), r=btian 2014-07-28 09:52:51 +02:00
Thomas Zimmermann 6c5cf788bd Bug 1042691: Add A2DP/AVRCP result-handler infrastructure (under bluetooth2/), r=btian 2014-07-28 09:52:50 +02:00
Jocelyn Liu f4db9e28a7 Bug 1036232 - Remove redundant code of entering compartment in BT manager and adapter. r=btian 2014-07-25 03:24:00 +02:00
Jocelyn Liu a6b9d588e3 Bug 1038632 - Patch2: Maintain device objects in BluetoothAdapter. r=btian 2014-07-25 15:21:44 +08:00
Mike Hommey bc5d6801bb Bug 1041860 - Avoid setting FINAL_LIBRARY to libraries that further use a FINAL_LIBRARY. r=mshal 2014-07-23 08:37:51 +09:00
Thomas Zimmermann f90b7b92ba Bug 1038645: Asynchronous |BluetoothHandsfreeInterface::PhoneStateChange| (under bluetooth2/), r=btian 2014-07-22 13:53:29 +02:00
Thomas Zimmermann d83face693 Bug 1038645: Asynchronous Bluetooth Handsfree response methods (under bluetooth2/), r=btian 2014-07-22 13:53:29 +02:00
Thomas Zimmermann 047957b89c Bug 1038645: Asynchronous |BluetoothHandsfreeInterface::DeviceStatusNotification| (under bluetooth2/), r=btian 2014-07-22 13:53:29 +02:00
Thomas Zimmermann d1a03f2f88 Bug 1038645: Asynchronous |BluetoothHandsfreeInterface::VolumeControl| (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann 051abd7a03 Bug 1038645: Asynchronous Bluetooth Handsfree voice-recognition functions (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann 8d89f772f2 Bug 1038645: Asynchronous Bluetooth Handsfree connection handling (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann 4748418d2c Bug 1038645: Asynchronous Bluetooth Handsfree init and cleanup methods (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann 005720e0e0 Bug 1038645: Add result-handler class for Bluetooth Handsfree profile (under bluetooth2/), r=btian 2014-07-22 13:53:27 +02:00
Thomas Zimmermann 5e7b83c8fb Bug 1038645: Asynchronous starting and stopping of profile managers (under bluetooth2/), r=btian
Profile managers use the new class |BluetoothProfileResultHandler|
to signal the result of initializing of cleaning up operations to
|BluetoothServiceBluedroid|. |BluetoothServiceBluedroid| proceeds
once all profile handlers have finished.

Future patches will build upon this patch to create completely
asynchronous profile managers.
2014-07-22 13:53:27 +02:00
Thomas Zimmermann 8fbff9070d Bug 1041440: Create Promise using |Promise::Create|, r=btian
This patch fixes a call to the private constructor of |Promise|.
2014-07-21 12:41:29 +02:00
Ben Tian 7c78bbc669 Bug 1038026 - Fire onattributechanged event when adapter fails to turn on/off BT and restores state to Disabled/Enabled, r=echou 2014-07-21 10:44:09 +08:00
Boris Zbarsky 92fb7dde3a Bug 1040263. Eagerly create and preserve Promise reflectors so we always have them available during unlink. r=nsm,bholley. 2014-07-18 21:31:11 -04:00
Ben Tian 99cf08ac11 Bug 1038053 - Resolve stopDiscovery when adapter is not discovering, r=echou 2014-07-17 18:02:40 +08:00
Thomas Zimmermann 1fe5425619 Bug 1039216: Fix build break when building JB 4.2 (under bluetooth2/), r=btian 2014-07-02 17:42:21 +08:00
Thomas Zimmermann 51dbdb677a Bug 1037342: Close file descriptor in BluetoothSocket (under bluetooth2/), r=btian
Currently, BluetoothSocket leaks its file descriptor on close
operations. With this patch when Gecko closes an instance of
BluetoothSocket, the file descriptor is now closed as well.
2014-07-17 09:44:19 +02:00
Jamin Liu 2664e7e4bd Bug 1035651 - Write a marionette test for BluetoothDevice based on Bluetooth API v2. r=btian 2014-07-17 11:08:02 +08:00
Thomas Zimmermann b85592772c Bug 1036977: Remove socket setup from BluetoothSocket (under bluetooth2/), r=btian
This patch removes all code related to socket setup from Bluedroid's
BluetoothSocket. The socket setup is handled by BluetoothInterface;
transparantly to its users.

Since most of the socket setup is now hidden, a comment was added to
DroidSocketImpl that explains the connection phases in server and
client.
2014-07-16 10:25:10 +02:00
Thomas Zimmermann 8d81ad06e7 Bug 1036977: Handle socket setup for |Accept| in BluetoothInterface (under bluetooth2/), r=btian
This patch moves the accept phase of Bluedroid's |Listen| to the
implementation of BluetoothInterface. |BluetoothInterface::Accept|
handles Bluedroid's socket-setup messages and executes the result
handler with the received file descriptor and data.
2014-07-16 10:24:41 +02:00
Thomas Zimmermann 14b9c49fb9 Bug 1036977: Handle socket setup for |Connect| in BluetoothInterface (under bluetooth2/), r=btian
Bluedroid's internal socket setup transfers 2 messages and possibly
a file descriptor as the first data of a socket connection.

This patch moves the socket-setup code for the |Connect| call to
the implementation of BluetoothInterface. BluetoothSocket only
handles the socket setup of |Listen|, and general socket state.
2014-07-16 10:24:33 +02:00
Thomas Zimmermann e0c157ebb2 Bug 1036977: Introduce connection status for Bluedroid sockets (under bluetooth2/), r=btian
In preparaton of moving the Bluedroid socket setup to BluetoothInterface,
this patch introduces connection states for Bluetooth sockets. There are
4 states,

  - Disconnected,
  - Listening,
  - Connecting, and
  - Connected.

All sockets start in Disconnected and transition to Connected via one
of the other states. Server socket transition through Listening, Client
sockets transition through Connecting. There is currently a lot of code
duplication in read and write methods. This will be cleaned up when the
connection setup is handled by BluetoothInterface.
2014-07-16 10:24:19 +02:00
Thomas Zimmermann 0a24c61f83 Bug 1036977: Convert Bluedroid Socket's Connect method to asynchronous design (under bluetooth2/), r=btian 2014-07-16 10:24:05 +02:00
Thomas Zimmermann 5f8dcc4959 Bug 1036977: Convert Bluedroid Socket's Listen method to asynchronous design (under bluetooth2/), r=btian 2014-07-16 10:23:52 +02:00
Thomas Zimmermann 693f376d92 Bug 1036977: Add result handler for Bluetooth Socket interface (under bluetooth2/), r=btian 2014-07-16 10:23:35 +02:00
Jamin Liu 081e15f9c1 Bug 1035652 - Write a marionette test for verifying the discovery process based on bluetooth API v2. r=btian 2014-07-16 16:23:16 +08:00
Ben Tian d366a44a93 Bug 1037291 - Make BluetoothDiscoveryHandle expire when discovery is stopped, r=echou 2014-07-14 11:23:58 +08:00
Jocelyn Liu 2acb00d1df Bug 1006315: Revise BluetoothDevice.webidl and implement it for new WebBluetooth API. r=btian, r=bz 2014-07-14 10:47:19 +08:00
Ben Tian f29bc3ee1c Bug 1027504 - Implement BluetoothClassOfDevice, r=bz, r=echou 2014-07-10 14:42:10 +08:00
Thomas Zimmermann 1b51d02736 Bug 1033961: Asynchronous Bluedroid DUT and LE interfaces (under bluetooth2/), r=btian 2014-07-09 09:39:43 +02:00
Thomas Zimmermann ec26f1ab37 Bug 1033961: Asynchronous authentification in Bluedroid (under bluetooth2/), r=btian 2014-07-09 09:39:31 +02:00