Commit Graph

186 Commits

Author SHA1 Message Date
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 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
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
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
Roman Birg 1bf0cf2ff8 cmsdk: fix javadoc for performance profiles
Native performance manager returns -1 if the feature is unset, not 0.

Change-Id: I77800f474a2cf68f4eda62cfb7239f106a73d458
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-24 13:43:21 -07:00
Roman Birg 99200b900b cmsdk: fix last profile extra constant
Ref: OSS CYAN-7459

Change-Id: I6be1f11e1a48e358cd9050358a3ca5b8b4a6d4e0
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-03-17 14:54:30 -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 a335ba39c2 cmsdk: Mandate cmhw feature xml's for service implementation.
The features 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: I41f4ac60af076743909c6090fd50c3ad045bc9e1
2016-03-15 14:09:04 -07:00
Adnan Begovic 19b267dfff Revert "cmhw: Don't hold a static reference to the service"
This is a bit heavy handed, will provide new patch to attempt
  to provide verbosity on ordering issue where system service
  bind failure is present.

This reverts commit 96cfc7392c.

Change-Id: I8facd08a39c0cfa9837688b00226f37023baef8c
2016-03-14 16:42:28 -07:00
Danesh M 220ab7985e CMSettings : Add display gamma setting
CYNGNOS-1166

Change-Id: I41ee5120359df3dc4702cc2c573c66b06a9bee00
2016-03-14 10:39:30 -07:00
Steve Kondik 96cfc7392c cmhw: Don't hold a static reference to the service
* If getService fails for whatever reason, there is no chance
   to try again. Fix it.

Change-Id: Ibabd73dfbff0b99e0b75fda96eadbde5e8685c74
2016-03-13 05:18:59 -07:00
d34d 5e2d5a6850 CMSettings: Add VIBRATOR_INTENSITY setting
Change-Id: I55025639036becd6df6c945abc904a531ffa4207
TICKET:CYNGNOS-1166
2016-03-11 13:16:12 -08:00
d34d 9714d7f9de CMSettings: Add FEATURE_TOUCH_HOVERING
Unbreaks the build by adding this missing setting used in framework
services.

Change-Id: I4389647b026f0a755623cb822996344755b9590a
TICKET: CYNGNOS-1166
2016-03-11 12:48:12 -08:00
d34d 32788b0555 ExtViews: Guard against bad LLS providers
Add checks in onServiceConnected to make sure the provider was
created correctly and if not, log it and move on without imploding
the universe.

Change-Id: I6929a02631685636e2c52c2d6d13883f0c3a13c4
TICKET: CNYNGOS-2217
2016-03-10 11:47:00 -08: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 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
Michael Bestas 73fafc1140 cmsdk: Add touch gesture haptic feedback setting
Change-Id: I1e26287a700ccc071c0c5dc5ff71c01df86ef6a0
2016-02-27 02:27:28 -08:00
Steve Kondik 6f3c30a9ce cmsdk: Factoring out color temperature to RGB conversion algorithm
* We need this for other things besides LiveDisplay.

Change-Id: I14c80b059beded80c7cee369a9b40f71d6e905e8
2016-02-26 11:50:16 +01:00
Roman Birg e3c966861f cmsdk: send intent to intialize CMHW
Ref: OPO-513

Change-Id: Iedd88bfad12b8f257bb792bf024d8eefa92b321c
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-02-25 09:00:18 -08:00
Steve Kondik ccce292498 cmsdk: Add sanity checks in ColorUtils
* Protect against nulls when generating colors from icons.

Change-Id: I0ba9540848f7be485e713301f2c6c804bd4522e1
2016-02-19 19:12:03 +01:00
Roman Birg 6ad5263eb3 cmsdk: add common action for launching camera from screen gesture
Ref: OPO-427

Change-Id: If97b2ebc864687a53c4ef8253f5d2d0bafc1e996
Signed-off-by: Roman Birg <roman@cyngn.com>
2016-02-18 12:25:41 -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
Michael Bestas 50cf885cca cmsdk: Deprecate POWER_NOTIFICATIONS_ENABLED setting
* We will reuse AOSP CHARGING_SOUNDS_ENABLED

Change-Id: I930ed41dd90f6dd1440ada5bf5b926467d683a46
2016-02-12 13:30:11 -08:00
Petr Sedlacek 14683b949d cmsdk: Add notification light setting to system profiles (1/2)
Change-Id: Ic6705792948c5393fc5ca9b207bc250b252e66da
2016-02-10 14:54:19 -08:00
Danesh M 2d1d7239a5 CMSettings : Add option to pass swipe-up-to-unlock (3/3)
CYNGNOS-1873

Change-Id: Icdd2505dbc56a77f49a76ea61daf75c5d8a24fd6
2016-02-08 15:06:01 -08:00
Steve Kondik d22b115d33 cmsdk: Improve color distance algorithm
* Use CIE2000 deltaE algorithm (from OpenIMAJ)
 * Try harder to find a good looking color (also try dominant color)
 * Use new Palette API

Change-Id: I0f0be52fe7c3e8376f1aa08c4bfa2751cd0659da
2016-02-08 08:11:57 -08:00
Steve Kondik c30bcacbca cmsdk: Add preference for automatic notification colors
Change-Id: I4bdb430917dac69f397995ea1c2abcacfb62136e
2016-02-08 08:11:25 -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
LuK1337 559636d8b7 Add left QS quick pulldown (3/3)
Change-Id: I77c8f0eda1b059bc2c0f0dff1d92834f36cd9de9
2016-01-23 17:00:39 -08:00
Adnan Begovic 7ee149d529 cmsdk: Fix hardware service interfaces.
Always add new interfaces to the bottom of the aidl
  or you break backwards compatability.

Change-Id: I376fbe6869d3fb0002822112eb05d9acddd51572
TICKET: CYNGNOS-1699
2016-01-22 17:09:44 -08:00
Scott Mertz 62579b157a cmsdk: add invalid input checking for persistent storage APIs
Some of this exists in the PersistentStorage implementation, but it
was never formally documented in the APIs.  Inherit the cmhw implementation
error checking & move it into the service.

Add tests to validate the new restrictions & a test that was previously
failing.

Change-Id: I3ecda29fdd28bbc4e6d8ccce7511c4644065ea46
2016-01-22 16:24:33 -08:00
d34d fc50f7cef8 ExtViews: Add action and meta-data
Services that extend KeyguardExternalViewProviderService should also
include this newly defined action in an intent-filter within the
<service> tag in their AndroidManifest.xml.  These services can also
include meta-data that defines a configuration xml which will be used
to define a settings activity that can be launched within a yet to
be defined settings/configuration UI.

Change-Id: I0a5ca09cf6f63413d067f89a9757137102dd09f6
TICKET: CYNGNOS-1687
2016-01-22 15:44:34 -08:00
d34d d994fe130a LiveLockScreen: Add setting for enabled/disabled
Change-Id: I6e9269f4ae20370c8c77019057ee276902df4721
TICKET: CYNGNOS-1686
2016-01-22 15:44:25 -08:00
Adnan Begovic 0d9d1ab12e CMSettings: Introduce concept of protected apps managers.
TICKET: CYNGNOS-84
Change-Id: I06245b0a69eea3474c1c093c5843bd59b5c53a80
2016-01-22 15:14:26 -08:00
Adnan Begovic 80001bff72 cmsdk: Fix BuildTests. Bump parcelable version.
Change-Id: I3084acfa25ca6bd6f5a058995906a050e243a4c9
2016-01-19 13:43:16 -08:00