Commit Graph

95 Commits

Author SHA1 Message Date
Mike Hommey
d10b15b035 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
9f759fe733 Bug 1038645: Asynchronous |BluetoothHandsfreeInterface::PhoneStateChange| (under bluetooth2/), r=btian 2014-07-22 13:53:29 +02:00
Thomas Zimmermann
e6da23b9d8 Bug 1038645: Asynchronous Bluetooth Handsfree response methods (under bluetooth2/), r=btian 2014-07-22 13:53:29 +02:00
Thomas Zimmermann
3e3e02dad1 Bug 1038645: Asynchronous |BluetoothHandsfreeInterface::DeviceStatusNotification| (under bluetooth2/), r=btian 2014-07-22 13:53:29 +02:00
Thomas Zimmermann
92a4009c42 Bug 1038645: Asynchronous |BluetoothHandsfreeInterface::VolumeControl| (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann
cdaab67638 Bug 1038645: Asynchronous Bluetooth Handsfree voice-recognition functions (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann
46caa9f422 Bug 1038645: Asynchronous Bluetooth Handsfree connection handling (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann
0873a65ff9 Bug 1038645: Asynchronous Bluetooth Handsfree init and cleanup methods (under bluetooth2/), r=btian 2014-07-22 13:53:28 +02:00
Thomas Zimmermann
e4f30d0b9a Bug 1038645: Add result-handler class for Bluetooth Handsfree profile (under bluetooth2/), r=btian 2014-07-22 13:53:27 +02:00
Thomas Zimmermann
9b1bbedfbc 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
c3c2e2ac90 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
b2b985efa6 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
c03ab46f93 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
79f9bf4974 Bug 1038053 - Resolve stopDiscovery when adapter is not discovering, r=echou 2014-07-17 18:02:40 +08:00
Thomas Zimmermann
f720f629b0 Bug 1039216: Fix build break when building JB 4.2 (under bluetooth2/), r=btian 2014-07-02 17:42:21 +08:00
Thomas Zimmermann
32aeb1c404 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
265f64f451 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
8324e4bb8a 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
833c315295 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
218eee1aee 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
aafa226fd6 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
e262949b42 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
ad4f6361d2 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
970da4830d Bug 1036977: Add result handler for Bluetooth Socket interface (under bluetooth2/), r=btian 2014-07-16 10:23:35 +02:00
Jamin Liu
45a8eef1a9 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
d44e5969c2 Bug 1037291 - Make BluetoothDiscoveryHandle expire when discovery is stopped, r=echou 2014-07-14 11:23:58 +08:00
Jocelyn Liu
7c565b4fb1 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
85a5b3fe70 Bug 1027504 - Implement BluetoothClassOfDevice, r=bz, r=echou 2014-07-10 14:42:10 +08:00
Thomas Zimmermann
007b4fd7cc Bug 1033961: Asynchronous Bluedroid DUT and LE interfaces (under bluetooth2/), r=btian 2014-07-09 09:39:43 +02:00
Thomas Zimmermann
0ef5154365 Bug 1033961: Asynchronous authentification in Bluedroid (under bluetooth2/), r=btian 2014-07-09 09:39:31 +02:00
Thomas Zimmermann
bea0ee1af9 Bug 1033961: Asynchronous Bluedroid device bonding (under bluetooth2/), r=btian 2014-07-09 09:39:18 +02:00
Thomas Zimmermann
164d45aec7 Bug 1033961: Asynchronous discovery methods in Bluedroid (under bluetooth2/), r=btian 2014-07-09 09:39:04 +02:00
Thomas Zimmermann
16d0770aea Bug 1033961: Asynchronous remote-service methods in Bluedroid (under bluetooth2/), r=btian 2014-07-09 09:38:49 +02:00
Thomas Zimmermann
06ae360365 Bug 1033961: Asynchronous Bluedroid device-property methods (under bluetooth2/), r=btian 2014-07-09 09:38:35 +02:00
Thomas Zimmermann
2244cbf6c3 Bug 1033961: Asynchronous Bluedroid adapter methods (under bluetooth2/), r=btian 2014-07-09 09:38:20 +02:00
Thomas Zimmermann
5a28ab6e1b Bug 1033961: Asynchronous Bluedroid starting and stopping (under bluetooth2/), r=btian 2014-07-09 09:38:06 +02:00
Thomas Zimmermann
1988138e46 Bug 1033961: Split Bluedroid start/stop code (under bluetooth2/), r=btian
This patch prepares refactoring of the Bluedroid start and stop
code towards an asynchronous design.
2014-07-09 09:37:53 +02:00
Thomas Zimmermann
300611466e Bug 1033961: Add result handler for Bluetooth Core profile (under bluetooth2/), r=btian
The result-handler class contains a method for each interface
in the Core profile and a method for failed calls. The patch
also adds runnable classes that execute a result handler's
method on the main thread.
2014-07-09 09:37:40 +02:00
Jamin Liu
66461e6980 Bug 1030536 - Write a marionette test for verifying the setters of adapter based on bluetooth API v2. r=btian 2014-07-09 09:52:11 +08:00
Jamin Liu
462d75d9f0 Bug 1006317 - Write a marionette test for BT on/off based on bluetooth API v2. r=btian 2014-07-08 14:57:01 +08:00
Jamin Liu
b48a248443 Bug 1006320 - Add a marionette test for verifying the functionality BluetoothManager based on bluetooth API v2. r=btian 2014-07-04 16:38:40 +08:00
Jamin Liu
16f26f7455 Bug 1006320 - Remove useless bluetooth API tests from bluetooth2 folder. r=btian 2014-07-04 16:38:26 +08:00
Shawn Huang
b7e83249a9 Bug 1033273 - Part 2: Add InitHfpInterface/DeinitHfpinterface. r=btian 2014-07-03 00:05:00 -04:00
Ben Tian
2ff7fd09f0 Bug 1006314 - Patch 3/3: Revise BluetoothAdapter, r=bz, r=echou 2014-07-02 16:25:50 +08:00
Ben Tian
c3b9087fe4 Bug 1006314 - Patch 2/3: Implement BluetoothDiscoveryHandle, r=bz, r=echou 2014-07-02 11:16:37 +08:00
Ben Tian
1a9fa9cd7d Bug 1033130 - [bluetooth2] Add missing including of BluetoothInterface.h in BluetoothA2dpManager.cpp, r=shuang 2014-07-02 10:36:28 +08:00
Jocelyn Liu
da8dca02d5 Bug 1031253 - Patch: Reject promise if StartStopGonkBluetooth failed. r=btian 2014-07-02 10:13:39 +08:00
Jocelyn Liu
0a7df369c5 Bug 1031252 - Patch: Reject promise for setProperty requests if BT is not enabled. r=btian 2014-07-02 09:41:33 +08:00
Thomas Zimmermann
57a0574fb3 Bug 1031185: Convert Bluetooth to use Bluedroid wrappers (under bluedroid2/), r=btian
This patch converts the Bluedroid backend to use the wrapper
classes. The affected interfaces are Core, Sockets, Handsfree,
A2DP, and AVRCP.
2014-07-01 17:50:46 +02:00
Thomas Zimmermann
2dddff3b83 Bug 1031185: Wrap Bluedroid interfaces in classes (under bluedroid2/), r=btian
This patch adds classes around all Bluedroid interfaces that are
currently used by Gecko. These are Core, Socket, Handsfree, A2DP,
and AVRCP.

All arguments and return values are still Bluedroid types and
constants. Future patches will convert them to interface-neutral
artifacts.
2014-07-01 17:50:30 +02:00