* Add support for negation- prefix with !
* Add requiresAction constraint, which checks if an application is
available to resolve the given action
* Fix issues with operations order
* Add flag to remove a preference if it's intent can't be resolved
* Add helper to allow setting minLines of a preference, since it's
common for things to get weird with the kinds of behavior we
are introducing everywhere
* Add support for nuking *other* preferences. For example with
Doze, many devices have custom features and a extra_settings
panel which is redundant with the switch. Now we can trivially
override the one we don't want.
Change-Id: Ibb14b05add56b403013e908db1105dce9d34faad
* The public SDK build is currently including AIDLs which are
meant to be used for internal purposes only. My assumption
is that this particular implementation was done before we
split off an "internal" SDK, which is used by the platform itself.
* The issue came up when adding an AIDL which has a backing
Java data object which was not included.
* It should be safe to simply hide this interface. All references
to it are hidden already. It is only used for internal purposes
and does not change the API.
* With the internal dependencies removed from the public SDK, we
can completely remove the reference in the makefile.
Change-Id: I0515815543feb077ee5e289b9f900e28758c6e98
* These lived in the Settings app previously, but are now moved as
we need them in a few places.
* The support library required to use these helpers, but we
intentionally reference it using LOCAL_JAVA_LIBRARIES so the
application will need to declare a dependency.
Change-Id: I56844def5e1100ca0300d0027312cc9adcaab941
Include a proguard file with can be consumed by the latest gradle plugin to
merge this ones rules without the rules of the app linked to.
This way devs doesn't need to declare (in a recent version of the gradle plugin)
-dontwarn and -dontnote for cyanogenmod.library when linked to it, because
proguard crashes the build because it cannot access to cm system private classes.
Change-Id: I7c94a9119db744b0029b4d9a8aa782adcbd47b93
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Since aar's contain the raw resource to be compiled into the
consumer package, having the compiled java from the resources
inside of the java archive can lead to multiple instances
of the class in the target package during compilation.
Avoid that scenario by excluding the compile 'cyanogenmod/library'
package from the final aar.
TICKET: CYNGNOS-2305
Change-Id: I3b40205f4c2173ecd059e034312ed18dc9c6de34
for common resources
TICKET: CYNGNOS-2305
Change-Id: Idc1872b5fa3884754b49b08d2f8381f18fba234d
Signed-off-by: Roman Birg <roman@cyngn.com>
Signed-off-by: Adnan Begovic <adnan@cyngn.com>
Introduce CM Weather Manager and Weather Provider Services API.
The CM Weather Manager can be used by apps to request weather
updates.
The Weather Provider Services API allows a third party developer to
implement a weather service to process weather update requests and
update the CM Weather Content Provider data which can be consumed by
any other app holding the required permission.
Change-Id: Idcc80712ba92715109d3577d120f7fea85d6c996
This patch also adds a new variable stub_packages which is used
when generating docs for public and system api, instead of defining
it twice.
Change-Id: I7d87b94088fca5b053f0447067c239006af72ad9
* ColorUtils was recently added here and it's suitable for general
consumption. Add this to the API.
Change-Id: Iff89d5714092d02070f1c6805e0e8f95debd980d
During checkapi-cm invocation under make, the api
text generation dependant on the stubs (which depend
on the sdk intermediates) needs the res package files:
Manifest and R.java, to be available in the intermediates.
Change-Id: I19921f1b5531822341a6804cf83e1b0b21b9f8bf
TICKET: CYNGNOS-2049
Since LOCAL_JACK_ENABLED isn't flexible enough
to have generation of both java archives and jack
binaries, we can work around this by having a
secondary module defined that disables jack compile.
Change-Id: Ied647b659c13b672621d82af536d1ed447d5f7fa
* This can be referenced instead of the standard jar if internal
resource identifiers are needed for sharing between platform apps
(systemui + settings is a good use case).
Change-Id: Ib078f6dd861a0a3a4cdcfccd6e245200d18368c4
- In order to externalize the AlarmClock provider within DeskClock, move
the database contract, ClockContract, into the SDK so that interested parties can
reference it.
- Add CyanogenModAlarmClock to add new utilities for turning existing
alarms on/off and creating new alarms.
Change-Id: I1f11ccc3988bdef10d721e2038b2c7d69a4ae598
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