Commit Graph

456 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
Roman Birg 620b1eb908 cmsdk: compile as aar
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>
2016-04-12 15:27:07 -07:00
d34d 8a35e126a7 Themes: Clear out bootanimation if pkgName empty
An empty string for the package name implies the given component
should be cleared out, so make sure updateBootAnim respects that.

Change-Id: I07c7fc64970546c2d73a610d9c0b71f1e757657d
TICKET: CRACKLING-1043
2016-04-12 13:27:58 -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
Michael W 81268bd12c LLS: Fix (possible) NPE
getBroadcastItem is only valid if beginBroadcast is called
RemoteCallbackList.java:
"Retrieve an item in the active broadcast that was previously started
     * with {@link #beginBroadcast}"

Fix logic to do so

TICKET: CYNGNOS-2397
Change-Id: Iec787a088ae3999e5024776ad50143249c434084
2016-04-08 10:36:34 -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
Luis Vidal 2eddb5f7c7 Reset timer when a new weather service provider is selected
If a new weather service provider is selected, reset the timer so
the newly selected provider can process the weather update requests

Change-Id: I2d16000b0eb987c6d0985b465af3259a3619d8ef
TICKET: CYNGNOS-2364
2016-04-06 17:07:09 -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
Michael Bestas f1b172d392 Automatic translation import
Change-Id: I14df405ee407ce9b9b32507255ab8a7fa57ef40a
2016-04-06 01:25:07 +03:00
Michael Bestas 45f1e04519 cmsdk: Improve data usage strings
Change-Id: Iea97226f3a1a7bfc1d79e90f046e5a634d9fedf7
2016-04-04 19:03:17 +03:00
Adnan Begovic 6b879f36e4 cmsdk: Introduce Fig, api level 6.
Change-Id: I2916b1462c1f0b9582f4fefac82f60c20f820b85
TICKET: CYNGNOS-2303
2016-04-01 16:36:38 -07:00
Adnan Begovic 877a0234fa cmsdk: Add release notes for api level 5.
Change-Id: I2ba738197286ce8f5128b08a6a800e06ec321822
2016-04-01 15:53:01 -07:00
d34d ea7d71200d cmsdk: Add test coverage for parceling LiveLockScreenInfo
Change-Id: I75898014f211075bdec06a00289837e1df6f3a84
2016-04-01 15:12:50 -07:00
d34d 3757686b93 cmsdk: Add test coverage for LiveLockScreenInfo.Builder
Change-Id: If802d3fcb5b1941d641d08beabbec9882c8ea451
2016-04-01 15:12:09 -07:00
Adnan Begovic 5f6c9f40c7 cmsdk: Move sdk classes under new sdk directory.
TICKET: CYNGNOS-2299
Change-Id: Ia6c6a1ee901f4f94446c379cbceabfdfced651ef
2016-04-01 12:22:14 -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
gkipnis fcfc13e313 Initial checkin for DataUsageContract
Used for accessing DataUsageProvider which is used by the Settings
App for monitoring per App cellular bandwidth consumption

Change-Id: Iab0fa27de69067c706d98eb08cc0458eb74111dc
2016-04-01 12:09:03 -07:00
gkipnis 891e998adb Added ACTION_DATA_USAGE Intent to directly invoke Settings->DataUsage
Change-Id: I1a1131b60c7a6695ad45d85ff1e9cbc3ac6ea0eb
2016-04-01 12:08:48 -07:00
Adnan Begovic 0ab2886e38 Revert "cmsdk: Fix cm system api stub generation."
This reverts commit d2e7e04bc4.

Change-Id: I307847bfa41cf2dcf3203ff199188422150618be
2016-04-01 11:22:11 -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
Michael Bestas 42a1a85427 cmsdk: Minor weather provider string updates
Change-Id: Ic565daa23ad520484b1c5b802ab6f8d83f6653a8
2016-04-01 17:09:50 +03:00
Adnan Begovic 3726f6bcb9 cmsdk: Add test coverage for parceling of ThemeChangeRequests.
Change-Id: Id0cb15133de1ab5c202417837b7b72e3d3937958
TICKET: CYNGNOS-2307
2016-03-31 17:58:35 -07:00
Adnan Begovic 3916ed759c cmsdk: Add test coverage for ThemeChangeRequestBuilder and object.
Change-Id: I24894d50c6e28939e5f5c3497e0279dbb45ca851
TICKET: CYNGNOS-2307
2016-03-31 17:58:30 -07:00
Adnan Begovic 127c0cf8fe cmsdk: Change parameter type of unregisterProcessingListener.
Change-Id: I96dde056e2f83218a27024ebc94de51fd45299d1
2016-03-31 17:58:28 -07:00
Adnan Begovic 22859efbfd cmsdk: Add preliminary ThemeManager test coverage.
TICKET: CYNGNOS-2307
Change-Id: Ie94ae3cd55678ecb2c631dc10d2335fb5d7362a7
2016-03-31 17:58:24 -07:00
Adnan Begovic d2e7e04bc4 cmsdk: Fix cm system api stub generation.
Change-Id: I04287107d1f2cdfdf9c8cd7f5b713db3466239ec
2016-03-31 17:58:20 -07:00
Adnan Begovic eafcdbd229 cmsdk: Create Concierge parcel handler concept.
Simply, Concierge handles your parcels and makes sure they
  get marshalled and unmarshalled correctly when cross IPC
  boundaries even when there is a version mismatch between the client
  sdk level and the framework implementation.

 On incoming parcel (to be unmarshalled):
     ParcelInfo incomingParcelInfo = Concierge.receiveParcel(incomingParcel);
     int parcelableVersion = incomingParcelInfo.getParcelVersion();

     // Do unmarshalling steps here iterating over every plausible version

     // Complete the process
     incomingParcelInfo.complete();

 On outgoing parcel (to be marshalled):
     ParcelInfo outgoingParcelInfo = Concierge.prepareParcel(incomingParcel);

     // Do marshalling steps here iterating over every plausible version

     // Complete the process
     outgoingParcelInfo.complete();

Change-Id: I0096851e08ce25908e19e39e6bc4af344e85725e
2016-03-31 17:58:11 -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
Roman Birg 46821304e9 CMSettings: add event live lock component key
Ticket: CYNGNOS-2267
Change-Id: Ifa6115f466190c6e45c4d76d2da5a2cdab1bb0e1
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-31 16:07:50 -07:00
d34d 2c5d3d5224 Add callbacks for window attachment
Because we restrict the window type used for live lock screens to
only one instance, we need to know when the current one is detached
so that a new one can be added.

Change-Id: I55cf79a8eeb962b53c01014ec97373403cd073b6
2016-03-31 09:54:50 -07:00
d34d c99582205e LLS: Don't build LlsInfo when defComponent is empty
Unflattening an empty string will result in a null ComponentName
which will cause an IllegalArgumentException when building the
LiveLockScreenInfo.

Change-Id: I0bafddb48a47ef67d9833cd12bff7eb34369425e
2016-03-31 09:49:42 -07:00
Roman Birg a50a323724 LLS: add type
Ticket: CYNGNOS-2267
Change-Id: Iea20e60aef80407911940d901f11b1589baa4483
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-30 08:49:56 -07:00
Roman Birg 9f6530bf03 cmsdk: add live lock screen settings action intent
Ticket: CYNGNOS-2241
Change-Id: I42dbfc96807d1f2aad1f84b100b5e7a2ab68daea
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-30 08:49:30 -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 11334c9592 cmsdk: Add hidden interface for getService on AppSuggestManager.
Also retrieve service on Singleton constructor to match
  patterns of other manager service relationships.

Change-Id: I4dbca5d0a2339603ddfb58ee54959355d24c8a9a
TICKET: CYNGNOS-2319
2016-03-28 10:35:37 -07:00
Michael Bestas 3f42978e6f Automatic translation import
Change-Id: I2c8633db25b85efc83b1539c8c20b9146fb220d5
2016-03-28 08:01:18 -07:00
Michael Bestas 374a17e295 Fix: "cmsdk: Mandate partner feature xml's for service implementation."
* CMContextConstants.Features.PERFORMANCE was mistakely used
  instead of CMContextConstants.Features.PARTNER

Change-Id: I4582b2faac23b0a3d34a5c6396cffa56c6177556
2016-03-28 14:26:12 +02:00
Adnan Begovic b271dcf279 cmsdk: Mandate partner 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: Ic980225df9c115e97f7147cf043cf92bbb225f01
TICKET: CYNGNOS-2293
2016-03-25 14:16:35 -07:00
Adnan Begovic 279ce42664 cmsdk: Mandate performance 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: I50f5993ff9c5107fdeaa9a5aa95377235eb3ac02
TICKET: CYNGNOS-2294
2016-03-25 14:14:14 -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
Adnan Begovic c406211045 cmsdk: Mandate telephony 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: Ib8e41130f143f784088b4566589a4ddc58aa2ace
TICKET: CYNGNOS-2291
2016-03-24 17:34:54 -07:00
Adnan Begovic fe7fd1d489 cmsdk: Mandate app suggest 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: Icda71efc084cf91bd358dba24eee4704179be90e
TICKET: CYNGNOS-2290
2016-03-24 17:25:13 -07:00
Adnan Begovic 21a567428d cmsdk: Mandate profile 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.

TICKET: CYNGNOS-2288
Change-Id: Id0adcc1eaa4a0512faf25f11057c45dc2ac733e0
2016-03-24 16:50:56 -07:00
Adnan Begovic cdf85adde1 cmsdk: Mandate cm sb 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.

TICKET: CYNGNOS-2289
Change-Id: Ice0ae7c45aecbb34e0ea667128b040906c46d7e7
2016-03-24 16:50:40 -07:00