Commit Graph

61 Commits

Author SHA1 Message Date
d34d 10da08aa5e cmsdk: correct naming of THIRD_PARTY_KEYGUARD perm
Change-Id: If2d062a90db340f8415d12897b16667fc834a848
TICKET: CYNGNOS-1705
2016-04-13 12:21:24 -07:00
Luis Vidal ad0d8c53a0 Weather API: Return ID rather than RequestInfo [1/2]
Instead of exposing the RequestInfo object created by the WeatherMgr
return an ID to identify the request. This ID can be later used to
cancel the request if needed. The WeatherProviderService base class
keeps track of the ongoing requests and can map this ID to the
corresponding request

This patch also include the following minor changes:
- Use List instead of ArrayList in API
- Update javadoc to public methods to reflect API changes
- Use UUID random generator in immutable classes to generate the
  hashcode rather than relying solely in the hashcode of the builder
  object.

Change-Id: Ib88dd0ecddd6fdb016b77ac29709fbae092dea29
TICKET: CYNGNOS-2425
TICKET: CYNGNOS-2423
2016-04-13 11:57:38 -07:00
Steve Kondik 1dab5a0ca9 cmsdk: Refactoring LiveDisplay
* Moving LiveDisplay to CMSDK!
 * Completely redesigned the feature for future expansion.
 * No new features in this patch, but a proper API is being
   designed.

Change-Id: Ic8f55678f9141bf3386b2a1cf2fd1e8b3916c278
2016-04-13 01:37:08 -07:00
d34d 16d3dc672e LLS: Deprecate collapseNotificationPanel [1/2]
collapseNotificationPanel is no longer applicable with the updated
UX so deprecate it and document that it will essentially be a no-op

Change-Id: I285bb48e3a9ffec8d554f880edf17e5105c94018
TICKET: CYNGNOS-2392
2016-04-12 09:09:33 -07:00
Luis Vidal 34bf4866db Fix nomenclature for RequestInfo types [1/2]
- Renamed TYPE_GEO_LOCATION_REQ to TYPE_WEATHER_BY_GEO_LOCATION_REQ
  and TYPE_WEATHER_LOCATION_REQ to TYPE_WEATHER_BY_WEATHER_LCATION_REQ
- Prevent null argument on setter methods. Documentation updated to
  warn user of IllegalArgumentException if null is passed

Change-Id: I6ba8fb7fb3a10d8c964414b58e00d9ce77a74e84
TICKET: CYNGNOS-2377
2016-04-08 13:19:48 -07:00
Luis Vidal baaf4a1baf Refactor WeatherInfo class
- Builder constructor takes now 3 args: city name, temp and temp
  unit. This is the minimun data that a weather service should
  provide when a weather update request is processed.
- Float members have been changed to double. Setter/getter methods
  updated.
- New setter/getter methods have been added to set current day high
  and low temp. Forecast list should be used only to provide weather
  forecast for upcoming days (this has been clearly documented).
  WeatherContract was updated to include these 2 new columns
- Added javadoc to all public methods
- Timestamp is not longer required in constructor. A new method
  setTimestamp has been added

Change-Id: Ia1edcfef0e2268f3881fed076c6ad74a81ca7334
TICKET: CYNGNOS-2365
TICKET: CYNGNOS-2382
TICKET: CYNGNOS-2356
TICKET: CYNGNOS-2360
2016-04-08 11:17:22 -07:00
Luis Vidal 06d5c89c43 Add state member to WeatherLocation class
Some weather service providers might require an additional
state (territory) field to better identify a location, so
a new field has been added to WeatherLocation class to hold
this data.

This patch also adds javadoc to public methods

TICKET: CYNGNOS-2384

Change-Id: I927f58d436f044df3c8af496b0f27e017f5e73e3
2016-04-08 10:55:44 -07:00
Luis Vidal 343245f4e6 Add API to cancel an active weather request
Add new API cancelRequest to CMWeatherManager. This will allow
clients to cancel a request that was previuosly submitted to
the weather service.

As part of this change, requestWeatherUpdate(weatherLocation),
requestWeatherUpdate(Location) and lookupCity(cityName) will
now return the RequestInfo object created if the request
was successfully submitted to the weather manager service

TICKET: CYNGNOS-2383
TICKET: CYNGNOS-2385

Change-Id: Ic122f91e0ea8a24d81dbed48741ef1e33567b56c
2016-04-07 22:42:43 -07:00
Adnan Begovic d8c2556c31 cmsdk: Actually return the system property in Build.
TICKET: CYNGNOS-2379
Change-Id: I7c7f3726b34db2b26d63fb4ef95df469fdf7e989
2016-04-06 15:19:22 -07:00
Adnan Begovic 6b879f36e4 cmsdk: Introduce Fig, api level 6.
Change-Id: I2916b1462c1f0b9582f4fefac82f60c20f820b85
TICKET: CYNGNOS-2303
2016-04-01 16:36:38 -07:00
gkipnis 1ee5f204cc Added READ_DATAUSAGE and WRITE_DATAUSAGE permissions
These permissions are used to control access to the DataUsageProvider

Change-Id: I3c0df3900c964d274081fe3bd9038705334819c8
2016-04-01 12:11:03 -07:00
Adnan Begovic df4486fb0e cmsdk: Unhide the Concierge.
Change-Id: I82adee7f9acb67623725acea723b52e08bab7311
2016-04-01 11:21:49 -07:00
Danesh M d549053b2d CmSdk : Swipe offsets and show lockscreen
Allows live lockscreen to listen to keyguard offsets
and show lockscreen.

Change-Id: I1a06c78b95e4e6940e063c6e0ba0e4db44a3c380
2016-04-01 11:17:16 -07:00
Adnan Begovic 127c0cf8fe cmsdk: Change parameter type of unregisterProcessingListener.
Change-Id: I96dde056e2f83218a27024ebc94de51fd45299d1
2016-03-31 17:58:28 -07:00
Luis Vidal 4195a1cf89 Add Weather Content Provider [4/5]
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
2016-03-31 17:36:53 -07:00
d34d bfa500dd15 LLS: Add live lock screen service [1/4]
The live lock screen service is resposonsible for deciding what
LLS should be displayed at any given time.  Live lock screens can
be swapped out using a priority based system.

Change-Id: Ifba73e839b749fe78a9e4ee347dd20eea6bf0a22
2016-03-29 15:02:45 -07:00
Adnan Begovic ccdb292eec cmsdk: Mandate themes feature xml's for service implementation.
The feature xml plays two roles:

      1) To allow sdk interface (constructor) to throw when system
      service is unavailable. This allows for clearer platform
      development debugging.

      2) To allow for simpler disambiguation of what services to
      instrument in a modular environment.

Change-Id: I67b16a0725ed89d5ddbc973b09337d6227087e4d
TICKET: CYNGNOS-2295
2016-03-25 11:19:46 -07:00
Roman Birg 45f57c5c9b update api
I made Cid angry

Change-Id: Ide114bdb0877cdfbce0060f2d0068a63a15ecc63
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-17 15:29:22 -07:00
Roman Birg c46e0ffb69 cmsdk: send connection value when changing network modes
Ref: CYNGNOS-1463

Change-Id: I2ef1feb0d1f135f360dc553e3426bdd7610087bd
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-15 16:08:46 -07:00
Adnan Begovic 2f2d432495 Revert "Allow to ignore presentation indicator of outgoing calls [1/3]"
This adds public cmsdk symbols to the bootclasspath. :(

  2)   testBootClassPathIsClean(org.cyanogenmod.tests.versioning.unit.ClassPathTest)
java.lang.AssertionError: Jar file /system/framework/telephony-common.jar should not have cyanogenmod.alarmclock.ClockContract$AlarmsColumns !

This reverts commit 3a590c3057.

Change-Id: I03cc2796e84e602933e7132f9181a5822c7f327c
2016-03-10 11:46:03 -08:00
Adnan Begovic b4eafda7de cmsdk: Add PerformanceManager tests, Change target permission.
Since PerformanceManager is strictly a CyanogenMod construct,
  it doesn't make sense to enforce the interfaces with an android
  specific permission (even though the implementation is delegated
  to power manager). To keep consistency with the other api's,
  modify the enforcing permission to a cm specific declaration.

  Also add test cases for the PerformanceManager public interfaces.

Change-Id: I430b69dbee73bf94bb60932d1942ab97e3ba193e
2016-03-08 09:24:34 -08:00
Gabriele M 3a590c3057 Allow to ignore presentation indicator of outgoing calls [1/3]
With some mobile network operators, the presentation indicator of
outgoing calls is always set to either "unknown" or "restricted".
As consequence, the dialed number doesn't show up in clear in the
call history. Allow to ignore the presentation indicator of outgoing
calls to never hide the dialed numbers.

Change-Id: Ia7b9fef3a929e512d8ecb704204b36e3836a056b
2016-03-07 17:06:40 -08:00
d34d f2fd836c23 Update stubs to include cyanogenmod.themes package
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
2016-03-04 16:16:22 -08:00
d34d 11a4d480df Add missing WRITE_THEMES from cm_system-current
Change-Id: I607a3813f8b501e1cbd7765fb1df32b1bf1da47d
2016-03-04 15:33:47 -08:00
d34d b3ea2859fd Themes: Refactor themes to CMSDK [2/6]
First attempt at moving as much as possible out of F/B
and into cmsdk

Change-Id: I9e53d1c32e01e88fc3918663dabe0001df922bc2
TICKET: CYNGNOS-2126
2016-03-04 13:59:33 -08:00
Steve Kondik 567b43017a cmsdk: Add cyanogenmod.util to stubs and update API
* ColorUtils was recently added here and it's suitable for general
   consumption. Add this to the API.

Change-Id: Iff89d5714092d02070f1c6805e0e8f95debd980d
2016-03-04 12:46:48 -08:00
Michael Bestas 73fafc1140 cmsdk: Add touch gesture haptic feedback setting
Change-Id: I1e26287a700ccc071c0c5dc5ff71c01df86ef6a0
2016-02-27 02:27:28 -08:00
niks255 783463c739 CMSDK: Allow/Prevent notification light in Zen mode (3 of 3)
Change-Id: Icad93cf6166359debd774259aa186640de34d432
2016-02-15 10:30:26 -08:00
Michael Bestas fcadbf539c cmsdk: launch default music player on headset connect [3/3]
Change-Id: Ibbb0607a56ab4d9246c14632eb4199558866854a
2016-02-12 13:31:31 -08:00
Adnan Begovic cdf4d0d699 cmsdk: Update api for new notification lights profiles options.
Change-Id: I7697308f34c89f6391810e114b12bc7457def725
2016-02-10 18:14:35 -08:00
Adnan Begovic 1d2351e0fc cmsdk: Add elderberry interfaces to api text.
Change-Id: I391f4089e97af6cf8bd55c982979e110d7d8ca91
2016-02-09 11:12:57 -08:00
Matt Wagantall eb82dbf050 cmsdk: cmhw: Add UniqueDeviceId support
It's sometimes useful to know what physical device you're using.

CMHW SerialNumber and an "ro.serialno" property already exists, but
are not guaranteed to be unique. Different OEM may use overlapping
numbering schemes, and sometimes placeholder like "012345ABCDE" are
used.

Attempt to work around these shortcomings by defining a new
UniqueDeviceId class that provides a globally unique device ID that
is both deterministic for a given device and designed not to overlap
with IDs of any other devices.

Change-Id: I3f426972558394ba8e78261273ac8521aa603327
2016-02-02 16:37:59 -08:00
Adnan Begovic 588c05aeb8 cmsdk: Update for new ll interfaces.
Change-Id: I48a7b6aff3ed21db69539b7733e0159db866c270
2016-01-22 17:35:58 -08:00
Adnan Begovic ebf0f55125 cmsdk: Finalize DragonFruit (api level 4).
TICKET: CYNGNOS-1648
Change-Id: I5844bc0bad9968b2c1d2d9e1ca3d65ae9d2d70c8
2016-01-18 13:36:21 -08:00
Adnan Begovic b4b1321666 cmsdk: Update api text.
Change-Id: I76297c11050e7b33ccfc530330ab37cfb8a07916
2016-01-06 17:52:18 -08:00
Adnan Begovic 2d4d51479e cmsdk: Update current api text.
Change-Id: Ib13c389ec64ee04fb8d189b22a94ca676835bfa6
2016-01-02 12:12:37 -08:00
Roman Birg d29499ddf7 cmsdk: update api for level 3
Change-Id: Ie5ed566934ff7a69ba71a5f080bd49929f7f71fe
Signed-off-by: Roman Birg <roman@cyngn.com>
(cherry picked from commit 1bb37d9676a97c9b5bbb7fea8493afdfeebb64c8)
2015-12-23 09:33:51 -08:00
Adnan Begovic 10d20252e4 cmsdk: Update API text for constants changes.
Change-Id: Ie820bae6db375e6d5429f495829d3d24f8a3469c
2015-09-30 17:49:52 -07:00
Danesh M c56b48eac0 CmSdk : Update api text for thermal monitor
Change-Id: I5e58a86244dc40572305d52244dda6e230fb56f5
2015-09-24 18:19:23 -07:00
herriojr e78ca4d6fe Added Application Suggestions.
Added in custom Resolver to handle providing suggestions.

Added in Service to handle providing suggestions to custom resolver.

Added in ability to provider suggestions through a Proxy to another
application which must be installed during compile time if one is
to be used. This is a similar implementation to how the Location
Services work.

Change-Id: Id960260596b7bb6485caa1e1d07744e387a4c6e9
2015-09-14 14:29:43 -07:00
Adnan Begovic 9f381bc89f cmsdk: Update api text for Persistent Storage API.
Change-Id: Icdbe63ba416f62d12f25b521541162d72c8040d4
2015-09-09 17:29:30 -07:00
Matt Garnes 087f2b536d Update API txt files for cyanogenmod.media.MediaRecorder.
Update API txt files for PartnerInterface.

Change-Id: I9a7d184791f9078b724c46cb5c9f7f2fe4557719
2015-09-09 11:57:43 -07:00
Matt Garnes eabd575721 Add Broadcast action and query API for AudioSource.HOTWORD.
- Add ACTION_HOTWORD_INPUT_CHANGED broadcast action and related extras.
- Add getCurrentHotwordPackageName() API to SettingsManager to query the
  current package name of the application that controls the HOTWORD
  input.
- Rename SettingsManager to PartnerInterface.

Change-Id: I5987499cd32908c47a7e8e95d644c483dc32914c
2015-09-08 17:28:20 -07:00
Adnan Begovic 9971604ed5 cmsdk: Update cm-api for hasSensitiveData() and new permissions.
Change-Id: Iffc308a434ee9c82ba4278972bbfe774436bcfab
2015-09-01 17:19:51 -07:00
Yvonne Wong 0eb2999091 Add CMSettingsProvider and CMDatabaseHelper
issue-id: CYNGNOS-828

Change-Id: I01c08c0e432d6a941950a565e5ab6664664e2a7f
2015-08-31 13:52:27 -07:00
Yvonne Wong a632fbcde5 cmsdk: Update cm api text files
Change-Id: I4330eed40d07b98031b76ce345fc8f032e00cf74
2015-08-28 16:18:17 -07:00
Joao Figueiredo 7f50335f2b cmsdk: Dual SIM support on CM SDK
Signed-off-by: Adnan Begovic <adnan@cyngn.com>
Change-Id: I69b349853b0259582956744d9ddd99a187c10fff
2015-08-06 18:56:12 -07:00
Matt Garnes 7820e6d566 Update APIs for new settings and DeskClock support.
Change-Id: Ia53e60c37d868109b69e0435cdb02ded2a041bba
2015-08-06 16:19:56 -07:00
Matt Garnes 51c39ba2d7 Add API to SettingsManager to set zen mode.
- Add a new permission cyanogenmod.permission.MODIFY_SOUND_SETTINGS.
- Only allowed when the caller holds
  cyanogenmod.permission.MODIFY_SOUND_SETTINGS.
- Allows the user to set zen mode to the off, priority interruptions
  only, or no interruptions modes.
- For each mode change, the end condition will be set to null so that
  the mode remains active indefinitely.

Change-Id: Id465509a8cc8d98953bf8cbe06cacff02b9f75a0
2015-08-06 16:18:50 -07:00
Matt Garnes 0cdb1d513c Add SettingsManager.
Add new APIs for changing a subset of system settings.

Protected by cyanogenmod.permission.MODIFY_NETWORK_SETTINGS:
    - Add ability to toggle airplane mode on/off.
    - Add ability to toggle mobile data on/off.

Protected by android.permission.REBOOT:
    - Add ability to shutdown or reboot the device.

Change-Id: I5e943be11260c58afa664f1702c0ecb4413528fe
2015-08-06 11:35:00 -07:00