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
org.cyanogenmod.platform-res provides resources that,
if public, are globally accessible.
This allows us to declare public and internal permissions as
well as reference permissions declared by the android framework
core
Change-Id: Ia7d541f4b403585f7479ecd87895987b8471005b
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