summaryrefslogtreecommitdiff
path: root/java/com/android/incallui/InCallPresenter.java
AgeCommit message (Collapse)Author
2018-06-01Also check call configuration for disconnected callyueg
Test: manual PiperOrigin-RevId: 198609574 Change-Id: Ic5e599b65d81968bdacaf6a90cb1ad34647b8419
2018-05-29Converted ThemeUtil into a DaggerModule.calderwoodra
This enables us to have Google-Sans font in GoogleDialer and Roboto in AOSP. Bug: 79883035 Test: tap PiperOrigin-RevId: 197774497 Change-Id: I1d490ab196a444c62e439444627d659fc42973ea
2018-05-11Use listeners to drive fragment lifecycles.erfanian
Test: tap PiperOrigin-RevId: 196278370 Change-Id: Ied6072caf4a6e87da5ba6395db8c0b0fa55b3f97
2018-04-30Don't start emergency call in background calling mode.yueg
Bug: 74022483 Test: InCallPresenterTest PiperOrigin-RevId: 194877539 Change-Id: If140d716a8019738e145c24cbaab3c03827662cb
2018-04-30Bubble changes for background calling.yueg
Bug: 74022483 Test: manual PiperOrigin-RevId: 194822680 Change-Id: I4df144b21a0fc32e39eb970fadc24ef7eb6e7199
2018-04-28Remove audio change behavior for background calling.yueg
Bug: 74022483 Test: manual PiperOrigin-RevId: 194600612 Change-Id: Idc15d873abfcb47a799e43468ffdd0fe1d90cc5c
2018-04-28Move DialerCall.State to an independent package.wangqi
This refactoring will remove dependency on incall/call package for those classes only dependent on DialerCall.State. The benefit is to remove unnecessary dependency and avoid potential loop dependency in the future. Test: presubmit PiperOrigin-RevId: 194594382 Change-Id: I6b3241bcf10a0a15c495c3c90a13f174c32e3f72
2018-04-28Logging for background calling and HFP device support.yueg
Bug: 74022483,74238896 Test: InCallPresenterTest, AudioRouteSelectorDialogFragmentTest PiperOrigin-RevId: 194589147 Change-Id: If8c6e79838d27b1ca33ed677c19f6555cbdb4494
2018-04-25Show post char dialog without InCallActivity.yueg
Bug: 74022483 Test: InCallPresenterTest PiperOrigin-RevId: 194275941 Change-Id: If5a40a9778e3c0f5a05c7e33f365cb609bf6e74a
2018-04-25Show international call on wifi dialog without InCallActivity.yueg
Bug: 74022483 Test: InCallPresenterTest PiperOrigin-RevId: 194125192 Change-Id: Ie7c50554079fe3a0a23b18ac44fc81b913c3e619
2018-04-25Expose active calls from in call UItwyen
Dual SIM features need to know what phone account the current call is using because usually only one SIM can be in a call at the same time. TEST=TAP Bug: 69675796,72618783 Test: TAP PiperOrigin-RevId: 194121273 Change-Id: I512eb7aca2050f38449b0a911dea9cee9b5ffdb5
2018-04-23Check call configuration for every call instead of every InCallService bound.yueg
Bug: 74022483 Test: InCallPresenterTest PiperOrigin-RevId: 193975862 Change-Id: I7b5bdbd986b3f4a543e1591d06a0829b7fe72e6a
2018-04-17More improvements call flow.erfanian
Bug: 73774461,73774884,73775516,73775590,73775873 Test: unit/manual PiperOrigin-RevId: 193236364 Change-Id: I03726ed7e5a3383f6e8632fb2cf9b948c3203f87
2018-04-09Ensure listeners are added each time setUp is calledroldenburg
Bug: 77666799 Test: existing tests in InCallPresenterTest PiperOrigin-RevId: 192191167 Change-Id: Ifa35451cf94d925f9d73397460b48754952cb216
2018-04-06Use sensible audio route for bubble mode.yueg
Bug: 74022483 Test: InCallPresenterTest PiperOrigin-RevId: 191941513 Change-Id: If2090c6dae63981a46586d785e2836edbdf8a729
2018-04-05Implement background calling.yueg
Bug: 74022483 Test: InCallPresenterTest PiperOrigin-RevId: 191825857 Change-Id: I9c70290da32484faf42a2a25fd6b22ba706cb63e
2018-04-03Implement dialog for responding RTT request.wangqi
Bug: 67596257 Test: manual PiperOrigin-RevId: 191365412 Change-Id: Ida741a837d6495c0d5f51b748f4d6c09a1beafec
2018-03-30Move update color code from CallCardPresenter to InCallPresenter.yueg
Bug: 74022483 Test: manual PiperOrigin-RevId: 191098829 Change-Id: I715a97ba48db9a3a81ef7b27750131a3a3a331b7
2018-03-28Remove unnecessary call to StatusBarNotifier.updateNotification().yueg
The call for incoming call is covered in StatusBarNotifier.onStateChange(). The two calls in InCallActivity is not useful (maybe is before notification becoming foreground). Test: manual PiperOrigin-RevId: 190845157 Change-Id: I0f84f15cfda5294566fa8976e09aac5163f85aa9
2018-03-20Add more boilerplate to the incallui.erfanian
Bug: 73774242 Test: unit tests where they exist PiperOrigin-RevId: 189853302 Change-Id: Ibf3431cc0d7716c2c53c7ea165dfc130102a1bc7
2018-01-17Move onUiShowing() call from onResume/onPause to onStart/onStop.yueg
It makes sure bubble doesn't appear on split screen when in-call UI is not showing. Although bubble still shows in recents screen. It also make sure the same onUiShowing() is not called multiple times. Bug: 67605985,71746139 Test: InCallActivityTest PiperOrigin-RevId: 182280886 Change-Id: I2a28d0258c722d530000729a89751c6d6b1ee6fd
2018-01-10Roll forward the broadcast in-call UI changes.yueg
Test: InCallPresenterTest PiperOrigin-RevId: 181512032 Change-Id: Id120d9fe6f46ad157eab7f97614d0c18b6aef8e1
2017-12-27Remove field prefixes.linyuh
Test: Existing tests PiperOrigin-RevId: 180230450 Change-Id: I0b2589cfeeaef81e42a04efa48af24b4e4d0e95f
2017-12-12Move TelecomCallUtil to com.android.dialertwyen
Since PhoneLookup exposes Call, more common access to the utility is required. Bug: 70355819 Test: TelecomCallUtilTest PiperOrigin-RevId: 178847628 Change-Id: I6cf55ad4e3566596b7b2e8cffb5a1614e6640a8b
2017-12-07Added manifest override for PhoneLookupHistory provider.zachh
Enabled PhoneLookupHistoryRecorder. Bug: 34672501 Test: manual PiperOrigin-RevId: 178030404 Change-Id: I4626262ebed14a9478f5ac8fc89fc81655e98b70
2017-12-07Temporarily disable PhoneHistoryRecorder.zachh
PhoneLookupHistory provider isn't correct overridden in GoogleDialer manifest. I'l fix that in a later CL. Test: manual PiperOrigin-RevId: 177988816 Change-Id: I42af03d22db50bd70219d52826294529462bae43
2017-12-07Added PhoneLookupHistoryRecorder.zachh
When a call is added in InCallUi, it fetches the current PhoneLookupInfo for the call and writes it to PhoneLookupHistory. Required updating PhoneLookupHistoryContentProvider#update to use "replace" to (presumably) atomically insert when a row is missing. Bug: 34672501 Test: unit PiperOrigin-RevId: 177896892 Change-Id: I43f9ded240a81156722be816a9635d586de642a1
2017-11-21Merge what's left in InCallActivityCommon into InCallActivity.linyuh
Bug: 69272096 Test: None PiperOrigin-RevId: 176443652 Change-Id: I90da4789deb4b6337a38cfe010b8aee5090d35e0
2017-11-18Merge the following methods in InCallActivityCommon into InCallActivity:linyuh
1. maybeShowErrorDialogOnDisconnect(DisconnectMessage), 2. onDialogDismissed(), 3. showErrorDialog(Dialog, CharSequence), 4. showInternationalCallOnWifiDialog(DialerCall), 5. showWifiFailedDialog(DialerCall), and 6. showWifiToLteHandoverToast(DialerCall). Renaming in InCallActivity: 1. "maybeShowErrorDialogOnDisconnect" -> "showDialogOrToastForDisconnectedCall", 2. "onHandoverToWifiFailed" -> "showDialogOrToastForWifiHandoverFailure", 3. "onInternationalCallOnWifi" -> "showDialogForInternationalCallOnWifi", and 4. "onWiFiToLteHandover" -> "showToastForWiFiToLteHandover". This is part of the effort to delete InCallActivityCommon. Bug: 69272096 Test: None PiperOrigin-RevId: 175991784 Change-Id: I0b31bd93437e633d2f77b09982e0c7fc94ad8a32
2017-11-18Remove unused code InCallUiBings.getUiReadyBroadcastIntent().yueg
It also fixes NPE when mContext is null in InCallPresenter.onUiShowing(). Test: InCallPresenterTest PiperOrigin-RevId: 175898339 Change-Id: Id4aad7e15310663b9f561e5bdc56be5106e24ca8
2017-10-30Let InCallPresenter instead of StatusBarNotifier implement AudioModeListener.yueg
The bug is caused by old StatusBarNotifier object cancelling new notification. Remove listener for InCallPresenter is safer than for StatusBarNotifer. Test: manual PiperOrigin-RevId: 173734079 Change-Id: Iefdc2d0e399da97bf31dbd5f99beb9ed34bcd874
2017-10-26Set incall button color to match sim color.wangqi
This change also add a handy adb command script run before UI integration test. Bug: 67429956 Test: IncallActivityTest PiperOrigin-RevId: 173565382 Change-Id: I9b8b957f00a0b7d11dbb7f40e8c9f1dbdb8c3928
2017-10-25Improved dagger support for executor services.zachh
By always creating executor services via dagger, we can now bind special versions during espresso tests that can implement idling resources. We should be using idling resources during espresso tests for threads that we create ourselves, because espresso does not know about them. Hopefully this reduces some of the flakiness of espresso tests that we have today. This required converting all existing calls to DialerExecutors to pass a context used to fetch the component, and also required creating new application classes for espresso tests. Test: temporarily added a task which just slept to DialtactsActivity and verified that its integration test failed due to idling resource timeout PiperOrigin-RevId: 173334773 Change-Id: I876a93022d235d62cfc377bf5b06687e21a34758
2017-10-24Rename the new bubble package name from "bubble" to "newbubble".Eric Erfanian
It fixes AOSP for package name conflict. Test: manual PiperOrigin-RevId: 173298696 Change-Id: Id10ebe0bcf029e61f65cf6580c7198abd8395081
2017-10-17Some cleanup of incoming call latency.wangqi
1. Only update secondary info when it's changed. 2. Removed redundant call to update notification on activity start (b/36649622) 3. Use same call back for notification update from contact info query to avoid duplicated call backs. The actual latency reduction is insignificant (<10%). Bug: 36649622,64542087 Test: manual PiperOrigin-RevId: 172475223 Change-Id: I1c91cb5715287991de774a1d9b95e4c8b722d28f
2017-10-12Optimization for incoming call latency.wangqi
There are many binder call triggered by IPC on main thread. This change will try to reduce them by caching thing that's bound to a call. It reduce total binder transaction from 1002 to 664 and saves ~11% latency of incoming call on locked screen. 1. Cache isVoiceMailNumber in DialerCall 2. Cache call capable accounts in DialerCall 3. Cache current country iso in DialerCall 4. Don't set orientation change if it's not changed. This change also add lots of trace info. It won't affect release build though since they are stripped out by proguard. Bug: 64542087 Test: manual PiperOrigin-RevId: 171901266 Change-Id: Iec48f030529aa59974212147276f6d0ae121872a
2017-10-09Implement InCallUiLocktwyen
When any locks are acquired, the InCallActivity will not auto-finish when there are no active calls. The disconnected cause and reject with SMS dialogs are migrated to use this API, which prevents the activity form ending before the user has finished interacting with the dialogs. Bug: 64215256 Test: InCallPresenterTest PiperOrigin-RevId: 171362338 Change-Id: Ied07ebbf6bee056ea6b2314c57f3324561b1651a
2017-09-07Fix crash when Context is null in InCallPresenterroldenburg
We need to use the Context to check if the device is a ODR device for a workaround (http://cl/165734624). It turns out the Context can be null (rarely). In those cases, we should not crash. Bug: 64954483 Test: manual PiperOrigin-RevId: 167326838 Change-Id: I4d8d8de86b5e3a4eca165a562f2ddc6106052c6e
2017-09-06Lazy loading animation of hd icon.wangqi
This save us ~180ms on Go device. (analyzed by systrace) This change also adds some trace information on incallui. Bug: 64542087 Test: manual PiperOrigin-RevId: 167201182 Change-Id: I0e8549cfb3534d518e3990696616855bcf7733f2
2017-08-31Update Dialer source to latest internal Google revision.Eric Erfanian
Previously, Android's Dialer app was developed in an internal Google source control system and only exported to public during AOSP drops. The Dialer team is now switching to a public development model similar to the telephony team. This CL represents all internal Google changes that were committed to Dialer between the public O release and today's tip of tree on internal master. This CL squashes those changes into a single commit. In subsequent changes, changes will be exported on a per-commit basis. Test: make, flash install, run Merged-In: I45270eaa8ce732d71a1bd84b08c7fa0e99af3160 Change-Id: I529aaeb88535b9533c0ae4ef4e6c1222d4e0f1c8 PiperOrigin-RevId: 167068436
2017-05-31Update Dialer to v10 RC45.Eric Erfanian
This release was created following the instructions at: go/dialer-aosp-release Subsequent dialer releases will follow as O bugs are fixed, until we reach our final RC. Version: 10 Candidate: RC45 Branch: dialer-android_release_branch/153304843.1 dialer-android_20170416.00/dialer-android_20170416.00_RC45 This release contains the following bug fixes since RC39: Bug: 38131932 38302993 38347350 38368993 38395481 62100344 Test: make, on device Change-Id: Ib4af5dcc58c684d51ea1f4628b301e40184b81b3
2017-05-15Update Dialer to v10 RC32Eric Erfanian
This release was created following the instructions at: go/dialer-aosp-release Subsequent dialer releases will follow as O bugs are fixed, until we reach our final RC. Version: 10 Candidate: RC32 Branch: dialer-android_release_branch/153304843.1 dialer-android_20170416.00/dialer-android_20170416.00_RC32 This release contains the following bug fixes since RC17: Bug: 33176679 33272455 3646510 36773894 37297649 37413780 37513689 37640315 37680595 37698062 37873639 37901752 37919295 37953423 38062852 38069600 38137349 38173549 38180252 38191514 Test: make, on device Change-Id: I4e4bb630082758e418ff24892b7db3142c6eb09a
2017-05-04Update Dialer to V10 RC16Eric Erfanian
This release was created following the instructions at: go/dialer-aosp-release Subsequent dialer releases will follow as O bugs are fixed, until we reach our final RC. Version: 10 Candidate: RC16 Branch: dialer-android_release_branch/153304843.1 dialer-android/dialer-android_20170416.00/dialer-android_20170416.00_RC16 This release contains the following bug fixes since RC00: Bug: 37324705 35304403 36067503 35304446 33203808 37280992 37346084 35766990 37481880 37424493 36470282 37347691 37519015 37168472 35805360 37545472 27704934 36515614 35766990 37577470 34739750 35801628 36788693 35264204 36708536 37628370 36904650 37314436 37642171 37530847 37637799 37666625 37548549 37648036 37636412 37323529 37630507 35919141 37198343 37548572 36178218 37640315 37663896 37720467 37275944 37710497 31634477 37744796 37348506 37744796 37568534 37672424 34872683 34873026 37681461 34873295 37748373 37526812 37618638 37663896 37536088 37727455 37165687 36651204 36900708 37323529 36902926 37256480 37328353 37432034 37436952 34093562 37720889 37321935 37780300 37781115 37755902 36588206 34258266 37290464 37698062 37618638 37473004 37432034 37918676 37870494 37722091 Test: make, on device Change-Id: I99e1a484ccd578c1f8a13e7a6a4b4952f0791297
2017-05-03This change reflects the Dialer V10 RC00 branch.Eric Erfanian
RC00 is based on: branch: dialer-android_release_branch/153304843.1 synced to: 153304843 following the instructions at go/dialer-aosp-release. In this release: * Removes final apache sources. * Uses native lite compilation. More drops will follow with subsequent release candidates until we reach our final v10 release, in cadence with our prebuilt drops. Test: TreeHugger, on device Change-Id: Ic9684057230f9b579c777820c746cd21bf45ec0f
2017-04-06Update AOSP Dialer source from internal google3 repository atEric Erfanian
cl/152373142. Test: make, treehugger This CL updates the AOSP Dialer source with all the changes that have gone into the private google3 repository. This includes all the changes from cl/151342913 (3/27/2017) to cl/152373142 (4/06/2017). This goal of these drops is to keep the AOSP source in sync with the internal google3 repository. Currently these sync are done by hand with very minor modifications to the internal source code. See the Android.mk file for list of modifications. Our current goal is to do frequent drops (daily if possible) and eventually switched to an automated process. Change-Id: I2fbc88cf6867b90ac8b65f75e5e34468988c7217
2017-03-27Update AOSP Dialer source from internal google3 repository atEric Erfanian
cl/151128062 Test: make, treehugger This CL updates the AOSP Dialer source with all the changes that have gone into the private google3 repository. This includes all the changes from cl/150756069 (3/21/2017) to cl/151128062 (3/24/2017). Notable this release: - Explicitly enumerate host and target dependencies. - Update proguard flag references. This goal of these drops is to keep the AOSP source in sync with the internal google3 repository. Currently these sync are done by hand with very minor modifications to the internal source code. See the Android.mk file for list of modifications. Our current goal is to do frequent drops (daily if possible) and eventually switched to an automated process. Bug: 33210202 36511925 Addresses 33210202 - Proguard support 36511925 - Compiler warnings when building against platform sdk Change-Id: I448ec3b3f2358886859cf7a4ef76a8fcef3244ae
2017-03-21Update AOSP Dialer source from internal google3 repository atEric Erfanian
cl/150756069 Test: make, treehugger This CL updates the AOSP Dialer source with all the changes that have gone into the private google3 repository. This includes all the changes from cl/150392808 (3/16/2017) to cl/150756069 (3/21/2017). This goal of these drops is to keep the AOSP source in sync with the internal google3 repository. Currently these sync are done by hand with very minor modifications to the internal source code. See the Android.mk file for list of modifications. Our current goal is to do frequent drops (daily if possible) and eventually switched to an automated process. Change-Id: I0888b5db52efb28eb8194600e0c7804592f975f3
2017-03-20Revert "Update AOSP Dialer source from internal google3 repository at ↵Eric Erfanian
cl/150622237" This reverts commit 06b6b56e9eaa91ebf757ea641e38a9c885fa40bd. Change-Id: Ida8c5ee67669524dc63b9adc60a6dd392cb9b9a6
2017-03-20Update AOSP Dialer source from internal google3 repository atEric Erfanian
cl/150622237 Test: make, treehugger, on device testing. This CL updates the AOSP Dialer source with all the changes that have gone into the private google3 repository. This includes all the changes from cl/150392808 (3/16/2017) to cl/150622237 (3/20/2017). This goal of these drops is to keep the AOSP source in sync with the internal google3 repository. Currently these sync are done by hand with very minor modifications to the internal source code. See the Android.mk file for list of modifications. Our current goal is to do frequent drops (daily if possible) and eventually switched to an automated process. Change-Id: Id53e0e580a4ef73760a8afb7bb8c265ee27ad535
2017-03-15Update Dialer source from latest green build.Eric Erfanian
* Refactor voicemail component * Add new enriched calling components Test: treehugger, manual aosp testing Change-Id: I521a0f86327d4b42e14d93927c7d613044ed5942
2017-03-01Update dialer sources.Eric Erfanian
Test: Built package and system image. This change clobbers the old source, and is an export from an internal Google repository. The internal repository was forked form Android in March, and this change includes modifications since then, to near the v8 release. Since the fork, we've moved code from monolithic to independent modules. In addition, we've switched to Blaze/Bazel as the build sysetm. This export, however, still uses make. New dependencies have been added: - Dagger - Auto-Value - Glide - Libshortcutbadger Going forward, development will still be in Google3, and the Gerrit release will become an automated export, with the next drop happening in ~ two weeks. Android.mk includes local modifications from ToT. Abridged changelog: Bug fixes ● Not able to mute, add a call when using Phone app in multiwindow mode ● Double tap on keypad triggering multiple key and tones ● Reported spam numbers not showing as spam in the call log ● Crash when user tries to block number while Phone app is not set as default ● Crash when user picks a number from search auto-complete list Visual Voicemail (VVM) improvements ● Share Voicemail audio via standard exporting mechanisms that support file attachment (email, MMS, etc.) ● Make phone number, email and web sites in VVM transcript clickable ● Set PIN before declining VVM Terms of Service {Carrier} ● Set client type for outbound visual voicemail SMS {Carrier} New incoming call and incall UI on older devices (Android M) ● Updated Phone app icon ● New incall UI (large buttons, button labels) ● New and animated Answer/Reject gestures Accessibility ● Add custom answer/decline call buttons on answer screen for touch exploration accessibility services ● Increase size of touch target ● Add verbal feedback when a Voicemail fails to load ● Fix pressing of Phone buttons while in a phone call using Switch Access ● Fix selecting and opening contacts in talkback mode ● Split focus for ‘Learn More’ link in caller id & spam to help distinguish similar text Other ● Backup & Restore for App Preferences ● Prompt user to enable Wi-Fi calling if the call ends due to out of service and Wi-Fi is connected ● Rename “Dialpad” to “Keypad” ● Show "Private number" for restricted calls ● Delete unused items (vcard, add contact, call history) from Phone menu Change-Id: I2a7e53532a24c21bf308bf0a6d178d7ddbca4958