summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnifierCallback.java
Commit message (Collapse)AuthorAgeFilesLines
* Disables tracking focus on move a11y actions.Daniel Hsieh2022-03-011-5/+2
| | | | | | | | | | | | | | After a user perform a11y action, namely moving up/down/left/right, we have to disable tracking focus functionality. We refactor #onDrag to a more general term #onMove to cover any move action which has to disable tracking focus functionality. Bug: 218935435 Test: atest WindowMagnificationTest atest WindowMagnificationControllerTest atest WindowMagnificationManagerTest Change-Id: I578b301645a08c71e874fe2f4fcf2557202abefd
* Support following typing foucs in window mode [2/n].Daniel Hsieh2022-01-051-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are 3 milestones in this feature. 1. Refactor the callbacks for Accessibility in WindowManagerInternal. 2. Implement this feature in such new architecture. 3. Implement the setting choice in preference page. This CL is for the 2nd milestone. We move the window magnification to the typing focus' center position based on the condition of whether a user takes control or not. We only make a movement when the control is not taken by a user or we don't preform the movement for the window magnification. There are 2 methods for a user to take the control. 1. A user use 1 finger to drag the window magnification. 2. A user use 2 finger to drag the window magnification. There is 1 method for a user to release the control. 1. When IME is shown, the control would be released. So, we can decide whether we should make a movement to typing focus given the condition of who take the control. Bug: 194668976 Test: atest MagnificationControllerTest atest WindowMagnificationTest atest WindowMagnificationControllerTest atest WindowMagnificationManagerTest Change-Id: I145f893d412b74c20afe1685449370d1dba99961
* Updates magnification button after an accessibility action is performedmincheli2021-04-071-0/+7
| | | | | | | | | | | | | | | | | | To switch magnification mode, a user has to click the magnifcation button UI. However magnification button UI is visible only when there is an user touch interaction or the magnification shortcut triggered event. However some a11y services like switch-access or voice-access can only interact with magnification UI by performing accessibility actions. To make magnification button showing and able to interact with a user, we also trigger updating magnification button UI when an accessibility action is performed. Bug: 179442890 Test: atest WindowMagnificationControllerTest; atest WindowMagnificationTest;atest MagnificationControllerTest;atest WindowMagnificationManagerTest Change-Id: I8d762096c9cb6a4421d024a7a1af99b3a48a3462
* Handles magnification scale change when requesting Accessibility actionmincheli2020-10-221-0/+9
| | | | | | | | | | | | | | The magnification sale should be consistent between a11y framework and systemUi. So when a user requests to perfom scale a11y action by systemUi, We need to handle it in Framework to ensure consistency of the magnification scale. Bug: 170791657 Test: atest WindowMagnificationTest WindowMagnificationManagerTest WindowMagnificationControllerTest MagnificationControllerTest Change-Id: Iaa34e66f29b320be971d416ce38d770b2265915f Change-Id: I0598accefd62a8cefd93bda6163ac704fdd96cba
* Add source bounds change callbackryanlwlin2020-07-281-0/+8
| | | | | | | | | Add sourcebounds change callback so that A11yFramwork could know the center. It is also for magnification public API callback Bug: 161669184 Test: WindowMagnificationControllerTest Change-Id: I08c1f9c6f9f5eb540d960c89388b93437d79871a
* Implmented the aidl interface for window magnificationryanlwlin2020-03-041-0/+32
Implemented WindowMagnificationConnectionImpl in WindowMagnification. All requestes should post to main thread to change the UI. This interface will be created when getting the request from Accessibility Framework. Bug: 146400227 Test: manual test Change-Id: I0b6033dca3d53e7d271b84a5a3008dccf7447d71