Commit Graph

2604 Commits

Author SHA1 Message Date
TreeHugger Robot
3801d3a7d9 Merge "Camera2: Add distortion correction support" into pi-dev 2018-03-27 19:26:44 +00:00
TreeHugger Robot
b57843059a Merge "Tweak FingerprintDialog" into pi-dev 2018-03-27 18:43:17 +00:00
Jerry Zhang
df101a4596 Merge "Write descriptors for Mtp in UsbService" into pi-dev 2018-03-27 02:49:02 +00:00
Kevin Chyn
dba919af3a Tweak FingerprintDialog
FingerprintDialog optional fields should not take up space when null
FingerprintDialog error messages should be delayed until dialog is dismissed

Fixes: 75281164

Test: manual test with FingerprintDialog apk

Change-Id: Iaa95fc8c95b7c9f5fc5d8563ea37fc1f6497fabd
2018-03-26 14:45:23 -07:00
TreeHugger Robot
8cb2aba54d Merge changes from topic "executor_api" into pi-dev
* changes:
  Camera: Accept user-supplied executors in capture sessions
  Camera: Async camera manager calls should use executors
2018-03-26 13:31:30 +00:00
TreeHugger Robot
7ed5fb3e1d Merge changes from topic "bug73953366_bug74605221" into pi-dev
* changes:
  Camera: Complete transition from handlers to executors
  Camera: Camera shouldn't throw 'RejectedExecutionException'
  Revert "Revert "Camera: SessionConfiguration should use Executors""
2018-03-23 17:16:00 +00:00
Emilian Peev
2f0184fa89 Camera: Accept user-supplied executors in capture sessions
It should be possible for clients to pass executors instead of
handlers in any method that accepts capture result listener.

Bug: 3767382
Test: Camera CTS
Change-Id: I605c001533e93e6294d265fcd4d3d5783c313b8a
2018-03-23 14:27:37 +00:00
Jerry Zhang
6d319b8aaa Write descriptors for Mtp in UsbService
The current model for setting up a functionfs
function is:

UsbDeviceManager#setCurrentFunctions() ->
intent is sent to MtpReceiver to write the descriptors ->
init/hal waits for descriptors to write, then pulls up gadget ->
Gadget is configured, a USB_STATE intent starts MtpServer

The main downside of this is a lack of reliability because
the Mtp process could be killed at any point. Normally, a
gadget is unbound if its control endpoint is closed. no_disconnect
works around this, but is still a little janky. In addition, the
extra intent delays the startup of the gadget.

With the new model, UsbDeviceManager writes the descriptors
on initialization. Since it is a system service, it won't be killed.

UsbDeviceManager#setCurrentFunctions() ->
init/hal pulls up gadget ->
Gadget is configured, a USB_STATE intent starts MtpServer
MtpServer calls UsbManager#getControlFd to get a dup of the control
endpoint.

Also modify permissions so system server can access mtp files.

Bug: 72877174
Test: Change usb configurations to ptp/mtp
Change-Id: Id17d2b5930f4e1f37ec1b4f00add9d594174ad49
2018-03-22 11:35:19 -07:00
TreeHugger Robot
4d6dc48d24 Merge changes I7f413e38,I20aba7e9 into pi-dev
* changes:
  Remove FlpHardwareProvider
  Create the stubs lib for com.android.location.provider
2018-03-22 00:29:38 +00:00
TreeHugger Robot
6ed6340e3c Merge changes from topic "SoundTriggerJobService-steps" into pi-dev
* changes:
  Throttle number of sound trigger operations / day
  Add SoundTriggerDetectionService
  Expose SoundTriggerManager and SoundTrigger APIs
2018-03-21 03:27:56 +00:00
TreeHugger Robot
daec95a7f5 Merge "Get current and default brightness configs." into pi-dev 2018-03-21 02:31:19 +00:00
Jiyong Park
4cc3a1c056 Remove FlpHardwareProvider
After Treble's FLP merge into GNSS HAL, the FlpHardwareProvider is just
an empty shell. Removing FusedLocation and/or Flp + Hardware classes
altogether.

Bug: 35726697
Test: m -j
Test: Open Google Map and then walk around. The dot moves as I walk.
Change-Id: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8
2018-03-21 10:36:44 +09:00
Eino-Ville Talvala
1486849e8b Merge "Camera2: Deprecate LENS_RADIAL_DISTORTION, add LENS_DISTORTION" into pi-dev 2018-03-20 21:58:15 +00:00
Philip P. Moltmann
a5fd0294c7 Expose SoundTriggerManager and SoundTrigger APIs
These APIs require a system permissions, hence SystemAPI.

As SoundTrigger is now partially SystemApi and partially internal API a
lot of @hide tags are needed to keep hiding the still internal classes,
fields and methods. As SoundTrigger is heavily used via reflection no
structural change to this class can be made.

The MANAGE_SOUND_TRIGGER permission should be visible to the apps as
the apps need to know which permission to request in their manifest.
If it wouldn't be exposed it would just be a magic string.

Test: built
Change-Id: Ic93d67639e2605c26c961acdd827c14cb0a68f47
Bug: 73829108, 71981721
2018-03-20 13:57:14 -07:00
Emilian Peev
9129aa25c1 Camera: Async camera manager calls should use executors
Methods in camera manager that receive and invoke user supplied
callbacks should also be able to accept executors and invoke them
instead of using user handlers.

Bug: 73953366
Test: Camera CTS
Change-Id: I2f22ada463d7debb90beba3e31579cdb4df42506
2018-03-20 15:46:15 +00:00
Shuzhen Wang
bde1397db8 Camera2: Use Set for physical camera IDs
Because physical camera IDs are not ordered, use Set instead.

Test: Camera CTS
Bug: 74838822
Change-Id: I2ca73ba42f4517283f4c0048f9369498b11eea66
2018-03-19 10:51:45 -07:00
Kenny Guy
6d1009f882 Get current and default brightness configs.
Getter System API to match existing setter for
the bightness configurations.
Getter System API to read the default brightness
configuration.

Bug: 74105596
Test: atest BrightnessTest

Change-Id: If0a0effad6a4ba6da2e5391dd6bde91dc04bad9c
2018-03-19 15:05:25 +00:00
Emilian Peev
9a0ec8c456 Camera: Complete transition from handlers to executors
Executors should be used instead handlers in all camera2
framework code. Remove or refactor any code that still
uses them.

Bug: 73953366
Test: Camera CTS
Change-Id: Ica01d7df5b2e298ea7e11c17fe558bd003072854
2018-03-19 12:55:48 +00:00
TreeHugger Robot
43a4dffd77 Merge "camera2: Add links for aeState" into pi-dev 2018-03-15 22:17:22 +00:00
Chien-Yu Chen
c9ca722ff6 camera2: Add links for aeState
Test: Build
Bug: 74976641
Change-Id: I5da5a59ae1072c9240c42ad7a38fc25548fcea63
2018-03-15 11:14:29 -07:00
Eino-Ville Talvala
4167072142 Camera2: Add distortion correction support
This allows camera devices to correct geometric distortion in their
optics, when requested by the application.

The correction only applies to processed (YUV, JPEG, etc) outputs,
not RAW buffers, or the result metadata.

Test: New CTS test passes
Bug: 74434422
Change-Id: I4566713874a152eaed237e823b8d65de4bcab539
2018-03-14 14:03:07 -07:00
Eino-Ville Talvala
915f5041bb Camera2: Deprecate LENS_RADIAL_DISTORTION, add LENS_DISTORTION
LENS_RADIAL_DISTORTION is inconsistently defined: in some places, it
is documented to operate on the range [-1...1], and in others, on a
range dependent on the camera lens's intrinsic calibration and focal
length.

Since fixing just the definition will not fix any existing devices
that define this value, deprecate the old key and add a new consistent
one to make sure applications only reference the consistent
definition.

Test: Adjusted camera CTS passes
Bug: 74641761
Change-Id: Ica7bcd0bc54baa0bdb1d388c4947431556643393
2018-03-14 14:03:07 -07:00
Robert Carr
ae606b4457 Eliminate usage of global transaction for display configuration.
For seamless rotation to work in the brave new world we need the setting
of the display projection to occur in the same transaction as the
reconfiguration of the stack SurfaceControl. To understand this simply see
that the inverse rotation for seamless rotation happens at the
WindowStateAnimator level so if the stack bounds weren't updated to the new
rotation we would clip. This means: We need to use the pending transaction.
We also need to port the rotation animation to use the pending transaction
as it needs to perform transactions at the same time as setting the display
projection. A pleasant consequence is we can eliminate some "inTransaction"
code-paths that always seemed to be a bit of a wart.

Bug: 72038766
Test: Manual. go/wm-smoke.
Change-Id: I949fbe8150d452c1ef5c13e704ddf87269f824f3
2018-03-14 12:01:01 -07:00
Emilian Peev
b9a5194e9e Camera: Camera shouldn't throw 'RejectedExecutionException'
In case the camera client registers a valid callback but the
respective handler looper exits a 'RejectedExecutionException'
could be thrown by the 'HandlerExecutor' implementation once it
detects that the 'post' method is failing. This exception is not
mentioned in the current camera API and deviates from the usual
behavior where the post status is ignored. To avoid possible
issues with camera clients a new camera specific handler executor
is used which will also ignore the 'post' method return value.

Bug: 74605221
Test: Camera CTS
Change-Id: I2d947ba9cebfc9b4b2a7c88ace6a4060ff7c175e
2018-03-14 17:50:05 +00:00
Emilian Peev
77ca866b53 Revert "Revert "Camera: SessionConfiguration should use Executors""
This reverts commit 90d6fccf01.

Bug: 73953366
Test: Camera CTS
Change-Id: I9092c10ebd3049d886210172cc8364067c439574
2018-03-14 17:12:36 +00:00
TreeHugger Robot
6896508045 Merge "Revert "Camera: SessionConfiguration should use Executors"" into pi-dev 2018-03-13 22:44:21 +00:00
Yin-Chia Yeh
90d6fccf01 Revert "Camera: SessionConfiguration should use Executors"
This reverts commit 004e73c38c.

Bug: 74605221
Bug: 73953366
Change-Id: I1665c3d235434f57a4cd4aa5f082720b83ac10cc
2018-03-13 20:57:42 +00:00
TreeHugger Robot
9d3d6b4076 Merge "Camera: SessionConfiguration should use Executors" into pi-dev 2018-03-12 14:55:34 +00:00
TreeHugger Robot
59444f6abf Merge "Revert "Plumb IME subtype change from IMMS to IMS."" into pi-dev 2018-03-12 08:49:20 +00:00
TreeHugger Robot
c8b967a5de Merge changes from topic "yukawa-b66498367" into pi-dev
* changes:
  Revert "Switch and store keyboard layouts based on IME subtype."
  Revert "Accept null subtype in InputMethodSubtypeHandle."
2018-03-12 01:58:06 +00:00
Tomasz Wasilczyk
940c6919c8 Fix basic broadcastradio HAL 1.1/2.0 functionality.
This change fixes a few minor gaps preventing the reference radio app
from accessing HAL 1.1 and 2.0 devices:
- createAmFmSelector not detecting the radio band
- don't allow configuration-dependant operations before the configuration
  is applied
- allow the initial configuration to be auto-selected

Bug: 74353024
Test: manual
Change-Id: If47872c1bf4cf57c6c39715218d90df9701c372d
2018-03-08 10:00:34 -08:00
TreeHugger Robot
9a2857d927 Merge "Tag @SystemApi to ambient brightness stats API" into pi-dev 2018-03-08 15:59:50 +00:00
Yohei Yukawa
19a4000632 Revert "Plumb IME subtype change from IMMS to IMS."
This reverts commit b097b8262b [1].

Reason for revert:
This is the part 3 of a series of reverts to unlaunch Bug 25752812,
which aimed to improve UX but did not work well.

Note that since this was just a plumbing CL, reverting this CL itself
should introduce no user-visible behavior change.

See I7a2ed6dd39dcd8207d3d94e12cd01d5d67ba4bb5 for the detailed reason
of revert.

 [1]: I58e71ffce9ac9131551a00dd35e24235dadfef87

Bug: 66498367
Test: Manually done
Change-Id: I3e2b9a9faf5234e53d20953886d9d55af680087d
2018-03-07 19:15:38 -08:00
Yohei Yukawa
2d9accb29f Revert "Switch and store keyboard layouts based on IME subtype."
This reverts commit d5f7ed9fe9 [1].

Reason for revert:
This is the part 2 of a series of reverts to unlaunch Bug 25752812,
which aimed to improve UX but did not work well.

See I7a2ed6dd39dcd8207d3d94e12cd01d5d67ba4bb5 for the detailed reason
of revert.

 [1]: Ie88ce1ab77dbfe03ab51d89c1dc9e0a7ddbb3216

Bug: 66498367
Test: Manually done
Change-Id: I207919e3cb081d77712371f58463a5d423717c8f
2018-03-07 19:15:15 -08:00
Yohei Yukawa
36abd8a6d6 Revert "Accept null subtype in InputMethodSubtypeHandle."
This reverts commit 46ac35d09b [1].

Reason for revert:
This is the part 1 of a series of reverts to unlaunch Bug 25752812,
which aimed to improve UX but did not work well.

See I7a2ed6dd39dcd8207d3d94e12cd01d5d67ba4bb5 for the detailed reason
of revert.

 [1]: Ia013784a594ad3beaf30976d047f5ac0fa8185be

Bug: 66498367
Test: Manually done
Change-Id: Ifd17b53704b3dff75b6ef3be6835f51271859933
2018-03-07 19:14:47 -08:00
Tomasz Wasilczyk
fc67739432 Implement front-end support for HAL 2.0 metadata.
Bug: 73816100
Test: instrumentation
Change-Id: I1d4e9094f7a2eaf13a14f5fa560a391fcbae9804
2018-03-07 22:36:24 +00:00
Peeyush Agarwal
90eabcc288 Tag @SystemApi to ambient brightness stats API
Bug: 72931803
Test: Manual
Change-Id: I41ac5569e97cc33c57af55a37135a3f7617a2385
(cherry picked from commit 1584fa6f08)
2018-03-07 16:13:08 +00:00
Emilian Peev
004e73c38c Camera: SessionConfiguration should use Executors
Handlers from clients should not be used any more.
Executors are the preferred method for invoking any
registered callbacks. Replace handlers as much as
possible with executors.

Bug: 73953366
Test: Camera CTS
Change-Id: I96aee1bc46e83dfb76a4c40c7f8ebbe18610788b
2018-03-07 11:01:33 +00:00
TreeHugger Robot
302a8b09c7 Merge "Camera: Clarify AF_REGIONS behavior in capture_result" 2018-03-03 01:33:14 +00:00
TreeHugger Robot
e7ea8d4331 Merge "Camera: another update API for external camera" 2018-03-02 19:56:40 +00:00
Arthur Ishiguro
f0cda31e00 Merge "Mark location classes as Parcelable appropriately" 2018-03-01 17:10:14 +00:00
Arthur Ishiguro
f3ab9cdc41 Mark location classes as Parcelable appropriately
Doesn't add the "final" qualifier,
since make will throw errors due to compatibility issues.

Bug: 69622177
Test: Run CHQTS from master and oc-mr1-dev, verify pass
Change-Id: If02203d7862e77ca4fda7b95a39bbfa3d9f6d87d
2018-03-01 03:10:57 +00:00
Dianne Hackborn
337e01ac10 More work on issue #73301635: Ability to extract device configuration
Now include Gl extensions (thanks to whoever wrote the code
I copied!).

Tweak the protos a bit to include missing info and correct
some things.

Add some new test APIs that are needed for CTS.

Bug: 73301635
Test: atest CtsActivityManagerDeviceTestCases:ActivityManagerGetConfigTests
Change-Id: Ie3f8173d217468246e8b6c7f45b7cbfcb352d60f
2018-02-28 11:29:20 -08:00
Yin-Chia Yeh
bb85e1ccb8 Camera: another update API for external camera
Bug: 72261912
Change-Id: I710200238fe76c440951915ca8c81f4a9fbbe7ef
2018-02-27 11:50:48 -08:00
TreeHugger Robot
f42a1080d5 Merge "Deprecate all inner classes of FingerprintManager" 2018-02-26 17:34:07 +00:00
TreeHugger Robot
e406ac080f Merge "camera: Add OisSamples synthetic key" 2018-02-23 18:47:56 +00:00
Chien-Yu Chen
c804d1cc87 camera: Add OisSamples synthetic key
Add a synthetic OisSamples key containing timestamps and
shifts.

Test: CTS
Bug: 64847201
Change-Id: I0d7ce67a91de7dec65543d626e67ddac76c985c5
2018-02-22 15:38:43 -08:00
Kevin Chyn
0b16b3422d Deprecate all inner classes of FingerprintManager
Fixes: 73750835

Test: build API, documentation looks OK
Change-Id: I49b0fce36e7bedc65ce0575728cc55f68ded8764
2018-02-22 11:50:17 -08:00
TreeHugger Robot
955c583eef Merge "Camera: improve Surface equality check" 2018-02-22 09:37:57 +00:00
Yin-Chia Yeh
4f1514724c Camera: improve Surface equality check
Bug: 72134091 73711267
Change-Id: I0d7b42f8621c1fb19ad9645d8b407eb90b05654d
2018-02-21 16:29:16 -08:00