Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be94e9ce authored by Song Gao's avatar Song Gao Committed by Myles Watson
Browse files

AVRCP_CT: Support Available Player Changed in bt stack

Add necessary registering for available player changed
notification in system/bt. Also passing notification
up for further processing.

Bug: 146844863
Change-Id: I3d000b6f707fa80c6adb911a74b3de04b573d445
parent 791845da
Loading
Loading
Loading
Loading

system/btif/src/btif_rc.cc

100644 → 100755
+7 −1
Original line number Diff line number Diff line
@@ -3056,7 +3056,8 @@ static void handle_get_capability_response(tBTA_AV_META_MSG* pmeta_msg,
          (p_rsp->param.event_id[xx] == AVRC_EVT_APP_SETTING_CHANGE) ||
          (p_rsp->param.event_id[xx] == AVRC_EVT_NOW_PLAYING_CHANGE) ||
          (p_rsp->param.event_id[xx] == AVRC_EVT_ADDR_PLAYER_CHANGE) ||
          (p_rsp->param.event_id[xx] == AVRC_EVT_UIDS_CHANGE)) {
          (p_rsp->param.event_id[xx] == AVRC_EVT_UIDS_CHANGE) ||
          (p_rsp->param.event_id[xx] == AVRC_EVT_AVAL_PLAYERS_CHANGE)) {
        p_event = (btif_rc_supported_event_t*)osi_malloc(
            sizeof(btif_rc_supported_event_t));
        p_event->event_id = p_rsp->param.event_id[xx];
@@ -3171,6 +3172,11 @@ static void handle_notification_response(tBTA_AV_META_MSG* pmeta_msg,
        break;

      case AVRC_EVT_AVAL_PLAYERS_CHANGE:
        BTIF_TRACE_DEBUG("%s: AVRC_EVT_AVAL_PLAYERS_CHANGE", __func__);
        do_in_jni_thread(
            FROM_HERE,
            base::Bind(bt_rc_ctrl_callbacks->available_player_changed_cb,
                       p_dev->rc_addr));
        break;

      case AVRC_EVT_ADDR_PLAYER_CHANGE:
+3 −0
Original line number Diff line number Diff line
@@ -617,6 +617,8 @@ typedef void (*btrc_ctrl_addressed_player_changed_callback)(
    const RawAddress& bd_addr, uint16_t id);
typedef void (*btrc_ctrl_now_playing_contents_changed_callback)(
    const RawAddress& bd_addr);
typedef void (*btrc_ctrl_available_player_changed_callback)(
    const RawAddress& bd_addr);

/** BT-RC Controller callback structure. */
typedef struct {
@@ -643,6 +645,7 @@ typedef struct {
  btrc_ctrl_addressed_player_changed_callback addressed_player_changed_cb;
  btrc_ctrl_now_playing_contents_changed_callback
      now_playing_contents_changed_cb;
  btrc_ctrl_available_player_changed_callback available_player_changed_cb;
} btrc_ctrl_callbacks_t;

/** Represents the standard BT-RC AVRCP Controller interface. */