summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/precall/impl/PreCallImpl.java
Commit message (Collapse)AuthorAgeFilesLines
* Use new instances of PreCallAction on activity resumetwyen2018-05-151-5/+0
| | | | | | | | | | | | Previously the same action instance is used every time the PreCallActivity is resumed. This causes some state to be retain, for example the isDiscarding state on CallingAccountSelector prevents canceling the next dialog to abort the call. Actions should not retain state between activity life cycles. TEST=TAP Bug: 79692264 Test: TAP PiperOrigin-RevId: 196696224 Change-Id: Ifa604f431563dd1fb123a42e2a64b34c001e897d
* Use PreCall.start instead of context.startActivity when starting calls from ↵zachh2018-04-191-10/+8
| | | | | | | | | | | | | | | | call log. For some reason not understood, startActivity with the call intent causes the current activity (MainActivity) to be paused, resumed, and paused again. This results in an opportunity to double-tap the row which causes the InCallUi to open in bubble mode (this is also not well understood). In any event, PreCall.start eventually uses TelecomManager to place the call rather than startActivity, which is presumably the thing that fixes the problem. Also refactored TestPreCallModule to remove the many test implementations of PreCall and remove the static field in the module which could cause test interference. TEST=manual Bug: 78187587 Test: manual PiperOrigin-RevId: 193596093 Change-Id: I933020d33db1c158628f14b30c2681c59c86201b
* Fix UK numbers in international format with extra 0twyen2018-03-261-1/+5
| | | | | | | | | See class comment on UkRegionPrefixInInternationalFormatHandler Bug: 32501490 Test: Unit tests PiperOrigin-RevId: 190296011 Change-Id: I6f01935f022fc288ad702735b38cb297fb9d2621
* Add PreCall step to check permissiontwyen2017-12-141-1/+2
| | | | | | | | | If CALL_PHONE is missing PreCall will abort immediately and show a toast. Bug: 70565989,70566029 Test: PermissionCheckActionTest PiperOrigin-RevId: 179123070 Change-Id: I0d43c6acd44e77562752c871bed0223b2f787dde
* Add impressions for dual sim featurestwyen2017-11-291-0/+3
| | | | | | | Bug: 69618691 Test: CallingAccountSelectorTest PiperOrigin-RevId: 177062349 Change-Id: I4bc9098d06c541b607cca293269cf3489077b6c2
* Implement headless PreCalltwyen2017-11-181-0/+20
| | | | | | | | | | | If no actions require an activity, instead of launching the PreCallActivity, all actions will be performed immediately, and the call intent will be sent to telecom directly. This reduces the latency & risk when mutli SIM is not supported. Bug: 68953196 Test: PreCallImplTest, HeadlessPreCallCoordinatorTest PiperOrigin-RevId: 176032790 Change-Id: I03258e8643f18c65a8e5b1a84b18b71b30638044
* Hook up pre-call actionstwyen2017-11-111-1/+2
| | | | | | | | | This CL replaces all instance of CallIntentBuilder.build() with PreCall.getIntent(), which when run as an activity, will finish building the intent with user interaction. Bug: 64216442 Test: manual PiperOrigin-RevId: 174924323 Change-Id: If41868df4c7ed078d03bd3431fa85b8947056a01
* Implement CallingAccountSelector and AssistedDialActionZachary Heidepriem2017-11-111-1/+1
| | | | | | | | | | | | | CallingAccountSelector examines the CallIntentBuilder, and if the PhoneAccountHandle is missing on a multi-SIM device while the default is not set, it will show a dialog to let the user select it. This step used to be after the in call UI is launched and telecom wants dialer to disambiguate. This step is moved to pre call as dialer need more control, like voicemail calls should always prompt, or the preferred SIM info might be available. This also allows telecom to send the selected PhoneAccountHandle to other apps so they have more information on how to rewrite numbers. AssistedDialAction replaces the step previously in CallIntentBuilder.build(), and rewrites the URI. Pre-call actions are not hooked up for dialing in this CL yet, assisted dialing will still be broken. Bug: 64216442 Test: CallingAccountSelectorTest, AssistedDialActionTest PiperOrigin-RevId: 174917321 Change-Id: Iba2e9092f83c036b402d4044a48ff5c44e806210
* Implement PreCallCoordinatortwyen2017-11-111-0/+46
When the user makes a call, the PreCallCoordinator will get a list of actions to perform from PreCallActionProviderComponent and apply them to the pending CallIntentBuilder, before sending the built intent to telecom Bug: 64216442 Test: PreCallExecutorImplTest PiperOrigin-RevId: 174911537 Change-Id: Ide5ec431d4e6e7879fcdfdbbbd7ea5eed9963b2c