summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/screenshot/MagnifierView.java
Commit message (Collapse)AuthorAgeFilesLines
* Update long screenshot crop ui contrastMatt Casey2021-06-291-1/+4
| | | | | | | | | Scrim 50% opacity background color. Switch crop bounds to colorAccent. Bug: 192277658 Test: Visual inspection in light and dark themes. Change-Id: I433761aada0e13232cfd9a956bdcca0d9ede48d6
* Prevent CropView from getting confused by multiple pointers.Matt Casey2021-04-091-40/+41
| | | | | | | | | | | | | Not really implementing full multitouch, but ensuring that letting up on the first finger doesn't just continue the event with another one. Also refactor some of the MagnifierView's event listening to decouple it from CropView a bit more. Bug: 183240525 Test: Touch one edge with one finger, then put another one down and lift the first, ensure that movement doesn't continue with second finger. Change-Id: Ia9f0293a914fb85f80a746f1093a3b23b23eab73
* Update long screenshot crop per mocksMatt Casey2021-03-201-2/+4
| | | | | | | | | | | | | | | | | - Can crop on both axes (for alignment with markup) - Updated handle drawing - Vertical dragging is functionally the same, but horizontal dragging is allowed if vertical hasn't triggered (intentionally giving priority to vertical since that's the important function here). - Lots of refactoring in CropView to allow for this without filling it with switch statements. - Only showing magnifier for vertical cropping (for now). - Scrim the long screenshot image but nothing beyond that. - Lessen scrim opacity Bug: 180967468 Test: Manual testing Change-Id: I85593414ab5aca12b365da34529d2033226b1cfb
* Allow MagnifierView to switch sides if the touch input movesMatt Casey2021-03-011-4/+34
| | | | | | Bug: 179499370 Test: Observing behavior for touches of varying sides of the screen. Change-Id: I064ad1819ea4cc594fd0ead06b8ae7a173b051de
* Image state restoration for LongScreenshotActivityMatt Casey2021-03-011-7/+7
| | | | | | | | | | | | | | | | - When long screenshot is acquired, save image to a temporary file. - When restoring state, read in that bitmap. - Moved bitmap export code from ScrollCaptureController to LongScreenshotActivity because it needs to be able to export any drawable regardless of source. - Currently deleting the temporary file onDestroy. Bug: 181087631 Test: Enable "don't keep activities" debug setting. Take long screenshot, go to overview and return. Rotate UI. Verify that image restores along with crop bounds and export still works properly. Change-Id: I892ad78025c818c8c65d16f2844daa955cc0b005
* Make magnifier show up opposite touchMatt Casey2021-02-101-1/+3
| | | | | | | | | | | | Touch on left -> magnifier on right, touch on right -> magnifier on left. No dynamic switching for now, just affecting initial placement. Bug: 179499370 Test: Bring up crop UI, drag handles on the left and right, observe magnifier doesn't show up beneath thumb. Change-Id: Ib020b99fec41637bce4e1797412afbdbd9447ab2
* Add MagnifierView to long screenshot UI.Matt Casey2021-02-051-0/+184
- Add a listener for CropView so MagnifierView can react to its motion events. - Make CropView track deltas over the entire motion sequence instead of per-input (tiny deltas were causing floating precision drift) - Animate the MagnifierView in and out. Lots more to do including smarter view placement, better handling of display at the edges, etc, but this seems like a good point to pause and check in. Bug: 179499370 Test: Invocation of long screenshot, observe magnification when altering crop boundaries. Change-Id: Iae721afe835882f383b5f46f6159c06c4c2ebca4