Saved the context passed to CustomTile.Builder in other to differenciate from the context
used to publish the tile. This allow to load resources (icons) from other packages
Change-Id: I8e40bc59a66f371f3a02f0182e25c6e9eca73c63
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
mWrapper was never sets. getStatusBarInterface() before check mWrapper instance
Change-Id: Ib280fdf70bc96dcc2ec6c86c6a8bc380dc1e3da1
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Applications can now set and expanded style for either a
gridview layout or a listview layout when providing content
to be shown in the details panel.
The mechanism is shown below
mCustomTile = new CustomTile.Builder(this)
...
.setExpandedStyle(new CustomTile.ListExpandedStyle())
.build()
Within SystemUI, if your application states that it wants an expanded
view, the expanded view onclick will take priority over both
the onClick intent as well as the onClickUri.
Change-Id: Ib181dab32d1792b6b778fd1ea2f0531bdf407c5f
Until we can reference these managers through the current context,
we should hide the constants that are utilized to retrieve them.
Current implementations should stick to the singleton getInstance
pattern.
Change-Id: I6c084a3a5b0745b0b6c5d10e000a40f5e61117ea
This onSettingsClick intent will be triggered when the detail
pane is shown in SystemuI and the user clicks "More Settings".
Change-Id: I3ddb65c64e81cd230718e7e6e56c436e5b05df8c
Create a simple CustomTile object with builder which lets a 3rd party
application publish a quick settings tile to the status bar panel.
An example CustomTile build:
CustomTile customTile = new CustomTile.Builder(mContext)
.setLabel("custom label")
.setContentDescription("custom description")
.setOnClickIntent(pendingIntent)
.setOnClickUri(Uri.parse("custom uri"))
.setIcon(R.drawable.ic_launcher)
.build();
Which can be published to the status bar panel via CMStatusBarManager#publishTile.
The CustomTile contains a click intent and click uri which can be
sent or broadcasted when the CustomQSTile's handleClick is fired.
This implementation closely mirrors that of NotificationManager#notify for
notifications. In that each CMStatusBarManager#publishTile can have an appended
id which can be kept by the 3rd party application to either update the tile with,
or to remove the tile via CMStatusBarManager#removeTile.
Change-Id: I4b8a50e4e53ef2ececc9c7fc9c8d0ec6acfd0c0e