Change the visibility from package private to @hide public. This is
to enable use case of TvInputServices wrapping another
TvInputServices so that it can pass the Surface object it has to the
wrapped service.
Change-Id: Ib1cdc4992a26f2adca099077cb9fa7f8b41c3163
- Implement DeathRecipient for SessionState.
- Implement onServiceDisconnected.
- Add callback methods for notifying the death of Session.
Bug: 14073482
Change-Id: Ifdc54266a878224844a221f0b52415d0bc378e39
InputEvents are recycled in ViewRootImpl. If a event is recycled
between sending the input event to TIS and receiving its results
in TvView, the value of the input event can be changed.
So we use its copied input event in TvView.
Bug: 14792009
Change-Id: I82d4594f28cd72924c56f6e7a0fc12ff7dca1660
TvInputManagerService now creates an InputChannel pair and passes one
end to the app and the other end to the service. Then the TvInputManager
in the app creates an InputEventSender around one end of the channel to
send events and the service creates an InputEventReceiver around the
other end of the channel to receive events.
Most of the newly added code here was borrowed heavily from the IME.
Change-Id: I0bd83847cba0033ccb6f4b6dad267ebeaf5e9c7c
A TvInputService app developers sometimes want to draw UI above a surface
playing TV. For this purpose, we add a window in TIS and allow developers to
attach their customized view on the TV surface.
Change-Id: I65c3dffa17580b8d4c42fac58bbfc8dad338c185
TvInputSession is not used anymore. Instead, TvInputManager.Session
and TvInputService.TvInputSessionImpl are used.
Change-Id: Id252afa76b4ef45f561b1d20095ee235a9fdccf8
This provides APIs to control and create individual television inputs on
the system which will later be hosted by television applications.
Change-Id: I6866d28e78175a1bff2c32a85c5d77e94d0cd60c