summaryrefslogtreecommitdiff
path: root/java/com/android/incallui
AgeCommit message (Collapse)Author
2017-12-07Added manifest override for PhoneLookupHistory provider.zachh
Enabled PhoneLookupHistoryRecorder. Bug: 34672501 Test: manual PiperOrigin-RevId: 178030404 Change-Id: I4626262ebed14a9478f5ac8fc89fc81655e98b70
2017-12-07Hide bubble in (New)ReturnToCallController.tearDown().yueg
There is the case that onDisconnect() is not called but InCallService is unbind. Currently we only hide bubble when call disconnected. We should also do it when InCallService is unbind. Test: NewReturnToCallControllerTest, ReturnToCallControllerTest PiperOrigin-RevId: 178029862 Change-Id: I6806c5c80adb06317f09019bdf3420b462225945
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-07Bubble v2 animation changes.yueg
Including: - expanded view expands/collapses from top of itself - small icon on avatar shows on left side when bubble is on right side - when expand on bottom, bubble move up a bit so that expanded view doesn't go off screen. It also go back to previous position when collapse. - remove animation for collapse when move expanded bubble This change should not enable bubble v2 for anyone. Bug: 67605985 Test: manual PiperOrigin-RevId: 177974562 Change-Id: Id83f3f744b717d51fbe58e58769ac2cd2810d2b5
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-30Rollback Broadcast in-call UI changes.yueg
Test: none PiperOrigin-RevId: 177490090 Change-Id: Ide2ea08f89b8a8072913617e6ce4587abffc7df4
2017-11-30Fix NPE crash on video call.wangqi
Bug: 69960961 Test: manual PiperOrigin-RevId: 177486235 Change-Id: I241867456830e0a8479ed0652aac71abc77c86e3
2017-11-30*** Reason for rollback ***roldenburg
Copybara is fixed for AOSP export Bug: 68665330 Test: rollback PiperOrigin-RevId: 177480870 Change-Id: I0ba38e213bb840436fa6dafc4af0a79019ee93f4
2017-11-29Enable timer in emergency call.wangqi
"This phone's number: xxx" is shown for emergency call which replaces in call timer. This change move it to under emergency location service so timer could be shown again. Bug: 69810801 Test: manual PiperOrigin-RevId: 177363955 Change-Id: I543fbbee869923800ffd92a5799819b712f0b953
2017-11-29Prevent change SIM icon from showing during a voicemail calltwyen
Calling the VM other number is to complicated for this release. Bug: 69803593 Test: CallButtonPresenterTest PiperOrigin-RevId: 177193486 Change-Id: I4149abe1d6eea48bb5399e12b9ce43a8e1ef4b37
2017-11-29Refactor DialpadFragment's DtmfKeyListenermaxwelb
This change is the refactoring on DtmfKeyListener and adding tests. The class is an overridden version of DialerKeyListener, but it also supports direct onKeyDown and onKeyUp hooks from the DialpadFragment. There was a lot of duplicated code between these hooks and the overridden methods so the code was refactored to share more logic. The interesting part of this change is using EMPTY_SPANNABLE to call into super type methods instead of having to copy the implementation. This change may also help with OutOfMemoryExceptions because the DtmfKeyListener is promoted from a non-static inner class to a top level class. It no longer maintains an implicit reference to the DialpadFragment, holding onto the DialpadPresenter instead. To support testing this code, the ShadowCall had to be updated since it didn't support checking when a Dtmf tone was playing. Bug: 69133398 Test: DtmfKeyListenerTest, InCallActivityTest PiperOrigin-RevId: 177092841 Change-Id: I368083c71982e14db0ad936432a3a5bdf0dde5ee
2017-11-29Add impressions for dual sim featurestwyen
Bug: 69618691 Test: CallingAccountSelectorTest PiperOrigin-RevId: 177062349 Change-Id: I4bc9098d06c541b607cca293269cf3489077b6c2
2017-11-22Prevent SIM selection and change SIM from showing when there are active callstwyen
Most devices are DSDS (dual SIM dual standby) which only one SIM can have active calls at a time. Telecom will ignore the phone account handle and use the current active SIM. The SIM selection dialog has no effect, and the change SIM button will just redial with the same SIM. Bug: 69417430 Test: CallingAccountSelectorTest, CallButtonPresenterTest PiperOrigin-RevId: 176718021 Change-Id: I231cfeaa5ff77c29cdaf8e0865d096c85cfb7fc4
2017-11-22Bubble v2 UI changes.yueg
Including: - Use exit-to-app icon instead of fullscreen icon for back-to-call button - Use ripple for first button since it needs top-rounded background - Change red hang-up button color and grey icon and text color - Change some dimensions Bug: 67605985 Test: manual PiperOrigin-RevId: 176678427 Change-Id: I3f7836d832f7130f82d7f3764fb392807f3fab9a
2017-11-21Adding call feedback mechanismAndroid Dialer
Test: No impact on existing functionalities PiperOrigin-RevId: 176562444 Change-Id: I209379dde3e920a27d6e735c8494647154e40e5a
2017-11-21Merge what's left in InCallActivityCommon into InCallActivity.linyuh
Bug: 69272096 Test: None PiperOrigin-RevId: 176443652 Change-Id: I90da4789deb4b6337a38cfe010b8aee5090d35e0
2017-11-20Implement SIM selection dialogtwyen
Bug: 64216442,64214592,64213352 Test: N/A PiperOrigin-RevId: 176424724 Change-Id: I1709156098a14ac3bd35d98b913e7b881fcd9b2b
2017-11-18Added place voice call search action to regular search.calderwoodra
When a user types a phone number into the search bar, there isn't an intuitive way for them to place a call when the number doesn't match any existing contacts in the new search UI. This change adds the option to place a voice call from regular search, like the old UI. Bug: 69385190 Test: NSFT PiperOrigin-RevId: 176189153 Change-Id: I6c1561bcce104c56855d996570a79b34da7230ff
2017-11-18Merge the following methods in InCallActivityCommon into InCallActivity:linyuh
01. handleDialerKeyDown(int, KeyEvent), 02. onBackPressed(boolean), 03. onDestroy(), 04. onKeyDown(int, KeyEvent), 05. onKeyUp(int, KeyEvent), 06. onPause(), 07. onSaveInstanceState(Bundle), 08. onStart(), 09. onStop(), 10. updateNavigationBar(boolean), and 11. updateTaskDescription(). Note that InCallActivityCommon#handleDialerKeyDown(int, KeyEvent) is merged into InCallActivity#onKeyDown(int, KeyEvent). This is part of the effort to delete InCallActivityCommon. Bug: 69272096 Test: None PiperOrigin-RevId: 176161247 Change-Id: I6e74c7feec5414fb4bc58814eef3bd297d6eb96f
2017-11-18Implement change SIM animationtwyen
CheckableLabledButton will no longer set icon if the icon has not changed, so the animation will not be interrupted. Bug: 64215256 Test: N/A PiperOrigin-RevId: 176047325 Change-Id: I8cb0c6e706b931406e78c91821f75e266e453ceb
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-11-18Move the following methods from InCallActivityCommon to InCallActivity:linyuh
1. enableInCallOrientationEventListener(boolean) 2. isDialpadVisible() 3. getDialpadFragment() This is part of the effort to delete InCallActivityCommon. Bug: 69272096 Test: None PiperOrigin-RevId: 175898158 Change-Id: Ib0f58dbe35d528a475268a86b2af4119e7cfa381
2017-11-18Automated rollbackroldenburg
END_PUBLIC BEGIN_PUBLIC Automated rollback of changelist 169615685 Test: rollback PiperOrigin-RevId: 175863544 Change-Id: I8785da90afed236cbe897efe774263765f188b14
2017-11-18Move InCallActivityCommon#dismissPendingDialogs to InCallActivity.linyuh
This is part of the effort to delete InCallActivityCommon. Related instance variables remain in InCallActivityCommon for now as they are used in several other places. Temporary getters/setters are added in InCallActivityCommon so that InCallActivity has access to these instance variables. Bug: 69272096 Test: None PiperOrigin-RevId: 175853702 Change-Id: Iaeb96c8ad7acb628393dd5c775ad7f3b40940a2b
2017-11-18Automated rollbackroldenburg
END_PUBLIC BEGIN_PUBLIC Automated rollback of changelist 169756942 Test: rollback PiperOrigin-RevId: 175849764 Change-Id: I3be3899682db84521fd933a5f058d5518ecb1fa1
2017-11-18Move InCallActivityCommon#dismissKeyGuard to InCallActivity.linyuh
This is part of the effort to delete InCallActivityCommon. There are 25 references to InCallActivityCommon in InCallActivity and we will remove them one at a time. Bug: 69272096 Test: None PiperOrigin-RevId: 175718978 Change-Id: I0713bd28c2d34791045be2bb851003000b88abca
2017-11-12Stop turning on the screen when the incoming/outgoing call is via Bluetooth.linyuh
Bug: 38453773 Test: InCallActivityTest PiperOrigin-RevId: 175230358 Change-Id: I2460308e1af554e2198c256fb1f4c62d2b8124b2
2017-11-12Conferece call management screen UI adjustment.yueg
Including: - change action icon color - hide TextView for name if name is empty - if name is empty, use number to generate avatar - don't show number type Bug: 67053842 Test: manual PiperOrigin-RevId: 175188810 Change-Id: I4ba40e5332d7b8567932360d36c8dc6ec3d604a5
2017-11-11Hook up pre-call actionstwyen
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
2017-11-11Fix previous usage of LoggingBinding with Logger class.weijiaxu
Test: In dialer lab. PiperOrigin-RevId: 174781953 Change-Id: I987c0d191a7c5613debb857bab9438d0c1aa20a7
2017-11-11Disable "Switch Camera" button when not transmittingroldenburg
Author: Ravi Paluri <rpaluri@codeaurora.org> Bug: 68677786 Test: CallButtonPresenterTest PiperOrigin-RevId: 174740252 Change-Id: If20e9fb92c4d729a75edf8ac6d088a88d4d319d8
2017-11-11Added phone paused icon to on hold banner.calderwoodra
Public-Origin-Change-Id: If22474d96ee53ce4f7c31fac828fb56022f4fa49 Signed-off-by: Allen Calderwood <calderwoodra@google.com> Author: Kitta Koutarou <koutarou.x.kitta@sonymobile.com> Bug: 62440523 Test: manual PiperOrigin-RevId: 174532793 Change-Id: I436307d42f42387c3d37eb79c99ef9200703d57f
2017-11-11Commit transaction synchronously for OnHoldFragment.yueg
We show OnHoldFragment for new conference call, and remove it after updating info. After cl/172475223, the update only happens once and sometimes removing the fragment happens before adding the fragment. Committing synchronously fix the bug. Test: manual PiperOrigin-RevId: 174374676 Change-Id: I5337f6592ca2924ed6a089ecaefe00d920f85738
2017-11-10Implement some UI changes.yueg
Including: - merge end call button with other buttons - add ripple effect for buttons - adjust elevation according to material design guide - add triangle in expanded view Bug: 67605985 Test: manual PiperOrigin-RevId: 174253861 Change-Id: I7b5315245a322235efb39a9cda26b8686cc7bbf9
2017-11-10Stop ringtone when user opens "respond via message" optionroldenburg
Ringtone should be stopped if user uses the "respond via message" option because user already notices the incoming call and user just feels the ringtone is noisy. Author: Takeshi Tanigawa <takeshi.tanigawa@sonymobile.com> Bug: 63089671 Test: AnswerFragmentTest PiperOrigin-RevId: 174249368 Change-Id: I2c6353cd662f23c20ac3ce873c38f18e8378b0a9
2017-11-07Show dual alphabets on the dialpad if a secondary alphabet is available.linyuh
Bug: 30215380 Test: Manual PiperOrigin-RevId: 174197504 Change-Id: Ide61f65a9dc1c104fa5bf136143c34e193c21396
2017-11-03Add avatar and small icon in bubble primary button.yueg
Bug: 67605985 Test: NewBubbleIntegrationTest, NewReturnToCallControllerTest PiperOrigin-RevId: 174089572 Change-Id: Icaeb41482cffe522e09ee1ec068b5d47f476b146
2017-11-01Update heads up notification based on video stateroldenburg
Refresh heads up notification to show only accept and reject options when incoming Video call is handed over to CS. Author: Suresh Koleti <skolet@codeaurora.org> Bug: 63157046 Test: StatusBarNotifierTest PiperOrigin-RevId: 174077146 Change-Id: Ic74d5a201392c6764ee33f1512bf528f86b80f69
2017-11-01Add more log entries in loggingBinding.weijiaxu
Test: Run in dialer lab PiperOrigin-RevId: 174075702 Change-Id: Ib663dc34d2c0c9e737c6d5f13b16d2b42b714127
2017-11-01Removed helper methods in DialerExecutors.zachh
We now use dagger everywhere for consistency and explicitness. Test: tap PiperOrigin-RevId: 174071122 Change-Id: I15d2f8261a7b753353be9e7d3b80692aa0c1b64d
2017-11-01Use DialpadTextView instead of TextView to show letters under each digit key.linyuh
Bug: 30215380 Test: Manual PiperOrigin-RevId: 174055180 Change-Id: Iac6deb8f9dcb6f3e9da6dfd0d732f29cc34bb7f6
2017-11-01Add logging statement to assert InCallUI branched as expected.erfanian
Test: none PiperOrigin-RevId: 174042820 Change-Id: Ia09f55d9f38b9335b23234cfe399987a3f3a65b1
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-30Clear cached requested video stateroldenburg
This CL accepts this AOSP CL: ag/64881150 Author: Ravi Paluri <rpaluri@codeaurora.org> Bug: 64881150 Test: manual, ImsVideoTechTest PiperOrigin-RevId: 173734014 Change-Id: Ibccc610c85c4bd06f34fc6bb057c356dd74f362d
2017-10-27Fix HOLD option not displayed in voice calls in CDMA + GSM.wangqi
Add hold button for all phone types and rely on SUPPORT_HOLD capability to show it. The issue is that if GSM call is made on devices with CDMA + GSM sim, the default phone type is CDMA so the hold button is not available. This change is a workaround that adding hold button to CDMA button chooser so button choose of all phone type has hold button available and it's totally controlled by telecom's CAPABILITY_SUPPORT_HOLD and CAPABILITY_HOLD. It shouldn't affect CDMA call. Idealy we should use correct phone type but unfortunately it's not well supported on pre-O device. This is upstream change from https://android-review.googlesource.com/#/c/platform/packages/apps/Dialer/+/482377/ Bug: 63911282 Test: ButtonChooserIntegrationTest PiperOrigin-RevId: 173614690 Change-Id: I6e17c1cc69ad50b1ba4c9b09804d5a7b5eeaf496
2017-10-27Move the functionality of ↵linyuh
DialerUtils#getDefaultSharedPreferenceForDeviceProtectedStorageContext(Context) to StorageComponent. Bug: 30224215 Test: none PiperOrigin-RevId: 173612463 Change-Id: Ia89d5d85c31ea2114b196393ae43b803023fc9bf
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-26App latency test migration.weijiaxu
Migrate the existing app latency test to a new solution from Project Fi team. The main change on this new solution is that the data collection part is done by Primes now. Also, a few changes has been made on DialerPrimes class and a new Dialer variant dialer_release_test has been created. The benefits of using primes to collect data are: 1. latency tests dont need to insert lines of code to track latency in dialer codebase 2. be able to collect data on any variants with or without Proguard 3. latency tests now only contain ui interaction to trigger scenarios on which we want add measurements 4. share the same logic with primes on production so that data from testbeds and normal users are comparable. 5. easier for anyone to add interesting data entries. ----------Mobile Harness Below----------------------------------- RELNOTES[INC]:Add entries for dialer to use mobileharness plugin. Test: No PiperOrigin-RevId: 173481741 Change-Id: Ia6812794141382898bea4b34bca90278c5663464
2017-10-26Display CDMA voice privacy icon on notification bar.Eric Erfanian
The locked phone icon will be shown for voice privacy call on CDMA for non-hold status(dialing, ongoing etc.) The onhold icon is same as usual. This change also update on hold icon to quantum vector drawable resources. WANT_LGTM=all Bug: 37529280 Test: StatusBarNotifierTest PiperOrigin-RevId: 173451922 Change-Id: I71d4c03b6953ca72def339c9c0a77bacbaf145f8
2017-10-25Fix crash that isInMultiWindownMode is not supported on M.wangqi
Bug: 68143529 Test: none PiperOrigin-RevId: 173439449 Change-Id: I80ebb4e8b17551144e492424e7aa6d92f26cc576
2017-10-25Fix TMO frozen ViLTE video upon swapping callroldenburg
We were not using the VideoTech interface for these calls and as a result could not restore the camera when swapping calls. Bug: 68160072 Test: manual PiperOrigin-RevId: 173437432 Change-Id: Iec1d363178e2332014f95246637c23f9040cdfee
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-19Fix NPE in TelecomAdapter.stopForegroundNotification().yueg
In InCallServiceImpl.tearDown(), we should only clear inCallService after InCallPresenter.tearDown() where we remove all notification. Also remove null assertion in stopForegroundNotification() since other crash should only happens when there is no notification. Test: StatusBarNotifierTest PiperOrigin-RevId: 172657924 Change-Id: I86e720b80f885aa93f12215fda899ee62eeaba5b
2017-10-17Stop showing partially matched numbers that are not global phone numbers.linyuh
When determining whether two phone numbers are identical enough for caller ID purposes, the Contacts Provider ignores special dialable characters such as '#', '*', '+', etc. This makes it possible for the cursor returned by the Contacts Provider to have multiple rows even when the URI asks for a specific number. For example, suppose the user has two contacts whose numbers are "#123" and "123", respectively. When the URI asks for number "123", both numbers will be returned. Therefore, the following strategy is employed to find a match. If the cursor points to a global phone number (i.e., a number that can be accepted by PhoneNumberUtils#isGlobalPhoneNumber(String)) and the lookup number in the URI is a PARTIAL match, the cursor is a match. If the cursor points to a number that is not a global phone number, the cursor is a match iff the lookup number in the URI is an EXACT match. There is no matched cursor in all other circumstances. UI demo: Suppose the user has a contact named "Service1" with number "#123". Before: Incall UI after the user dials "123": https://photos.app.goo.gl/xFWCD4qy2VR3YEuJ2 Call log UI after the call ends: https://photos.app.goo.gl/FT28GdTBy1dtANtI2 After: Incall UI after the user dials "123": https://photos.app.goo.gl/Io3BisQmsyfnvitV2 Call log UI after the call ends: https://photos.app.goo.gl/6GgRrmx75yUTga3B3 Bug: 30225112 Test: PhoneNumberHelperTest PiperOrigin-RevId: 172505648 Change-Id: Ida554313455ff9ce40432897681f89f58d64af04
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-16Finish AudioRouteSelectorActivity in onAudioRouteSelected.yueg
In previous change, we use AudioRouteSelectorDialogFragment.onCancel() instead of onDismiss(). And selecting an item only calls onDismiss() instead of onCancel(), so the activity is not finished. In this change we finish the activity when an item is selected. Test: manual PiperOrigin-RevId: 172342660 Change-Id: I2d34874ae9e1a7e5ad858b4f1ba855b48647d995
2017-10-16Rename Lightbringer to Duoroldenburg
Now that our Duo integration is public, we no longer need a code name. To avoid any disruption, logging and config related names were not changed. Bug: 63753964 Test: manual, existing tests PiperOrigin-RevId: 172172738 Change-Id: Ib9d3d80761944d850c8c4886def9fef9a28539a4
2017-10-13Enable Lightbringer upgrades on Mroldenburg
Test: existing tests, manual (tested on Nexus 6 running M) PiperOrigin-RevId: 172122858 Change-Id: Ib22e33de3ed134cf76a06af54d054dbb92f91039
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-12Fix for voice screen showing for a short time when making a video callroldenburg
Author: tomoyuki.nishikawa@sony.com This change was inspired by http://aosp/508735 Even though VideoProfile.isVideo(getVideoState() returns true when starting a video call, ImsVideoTech is not ready until call.getVideoCall() returns not null (see https://android.googlesource.com/platform/packages/apps/Dialer/+/master/java/com/android/incallui/videotech/ims/ImsVideoTech.java#66) During the time between VideoProfile.isVideo(getVideoState() being true but call.getVideoCall() returning null, we are incorrectly showing the phone call UI instead of the video call UI. To fix this, we need to trust the VideoProfile check in addition to the VideoTech check. We still need to check VideoTech for other video options aside from just IMS VT. Bug: 67712159 Test: manual PiperOrigin-RevId: 171892356 Change-Id: Ibe1f9de60aaa4adc971401bee0277961cfe037e4
2017-10-12Fix incallui to use latest ux mocks for assisted dialing.erfanian
* Remove old language icon from bottom row. Screenshot=In change as scuba test Bug: 64205446 Test: new unit tests PiperOrigin-RevId: 171858076 Change-Id: Idf781be193dae3593f778af1ac833f046abd87e3
2017-10-11Implement SIM swappingtwyen
When the call is still ringing, a new button is added to allow to user to call with the other SIM. A background worker will be created to hang up the phone and redial with the other SIM. The in call UI will be prevented from ending during the process. Video: https://drive.google.com/a/google.com/file/d/0B2eYBUUznfyTSl9MdXQ0V1ZzQkE/view?usp=sharing UX has not been finalized, the icon and position are just placeholder. Bug: 64215256 Test: SwapSimWorkerTest PiperOrigin-RevId: 171715715 Change-Id: Idb3f486e9fc9a45d4c5e244af2d7d91b075bf0f2
2017-10-10Show "Incoming video call" instead of "Incoming call" for ViLTE notification.yueg
Test: StatusBarNotifierTest PiperOrigin-RevId: 171588023 Change-Id: I05e176ef1032da00c4b75a83e92f39e8293d598e
2017-10-09Partial revert of cl/170369554 to fix video call ringing screenroldenburg
Tracking bug to fix the refactoring: http://b/67512378 Bug: 67470678 Test: manual PiperOrigin-RevId: 171553078 Change-Id: Ib83e4240d6024347f97d246f9b526c3ccbf02057
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-10-06Show on hold in management screen for conference call.yueg
Do the following when a participant is on hold: - Add "On hold • " in front of the number - Gray out avatar and text (contact name & number) Notice: We only have the on hold state information for VoLTE conference call and IMS conference call. So the change only works for them (not for GSM/CDMA conference call). Test: ConferenceManagerPresenterTest PiperOrigin-RevId: 171345423 Change-Id: Ie5fe2fc1097f4858604283989dcb916c2ac21972
2017-10-06Tag incoming call notification with SIM label on multi-SIM devicestwyen
The label is colorized with the SIM color, if the system UI decides to respect it. screenshot: https://screenshot.googleplex.com/PzkCKdQJ7Wy Bug: 64215023 Test: StatusBarNotifierTest PiperOrigin-RevId: 171234005 Change-Id: I684753b6181bdfe601244d01ab608fcd5d5dc422
2017-10-05Fix bug that clickling buttons on spam notification has no effect.wangqi
This is a regression caused by cl/165479077. Bug: 63038002 Test: manual PiperOrigin-RevId: 171193536 Change-Id: Ib0ca2af64b5fdce2b5f3c78f171b8d5fe0388f47
2017-10-04Do not crash when LightbringerTech receives device orientation updateroldenburg
Bug: 67379105 Test: LightbringerTechTest PiperOrigin-RevId: 171069656 Change-Id: I8aa9d5a1886d98b6039eeec993b91dd2b600d415
2017-10-04Make incoming and ongoing call notification foreground and highest priority.yueg
Use startForeground()/stopForeground() for posting notification instead of NotificationManager.notify()/cancel(). It makes incoming and ongoing notification foreground and not able to snooze. It also colorize ongoing call notification for Android O, since we already setColorized(). Use setPriority(Notification.PRIORITY_MAX) for pre-O, and NotificationManager.IMPORTANCE_MAX for O. It makes incoming and ongoing notification stay on the top. Test: StatusBarNotifierTest*2 PiperOrigin-RevId: 170924163 Change-Id: Iab1415b0161a4623a1ccf52d3948f32b6f93eeb2
2017-10-03Adjust the location update frequency for emergency callsmdooley
Sometimes takes many seconds to get an accurate location during an emergency call. With this cl we use a high frequency update rate (5 seconds) until we get an accurate location, and then we decrease the update rate (30 seconds) to save power. Bug: 67317743 Test: manual PiperOrigin-RevId: 170770361 Change-Id: Ib6415145f6a62125f4b458e242ebe23409f9d406
2017-10-03Fix issue that the connection icon is placed a little left from centererfanian
When status text is empty, VoWiFi icon is placed a bit left from center because the view of connection icon is containing margin between the tatus text. Fix to remove margin from the icon when the text is empty. Public-Origin-Change-Id: Ic302104d85fa9114bebb5688f3e8028d398d1921 Signed-off-by: Eric Erfanian <erfanian@google.com> Author: Kousuke Kitahara <kousuke.kitahara@sony.com> Bug: 66075997 Test: scuba tests PiperOrigin-RevId: 170753786 Change-Id: Ifde98a8c04ba3dc2233439957a74fc4f54b444fa
2017-10-03Fix incorrect information in LightbringerTech log lineroldenburg
Test: manual PiperOrigin-RevId: 170511271 Change-Id: Ief58171c675c6ece3cea5055abb6836487f23f9c
2017-10-02Fix bug that phone number is shown for local contacts.wangqi
This is a regression caused by cl/169961072. This change will make sure phone number is only shown on top row for non-local contacts if the name is not number and the call is active. Bug: 67047386 Test: TopRowTest PiperOrigin-RevId: 170424277 Change-Id: I9b3ab9432a938b2fb1c6632f2d9404bee413588f
2017-10-02Updating emergency location code to use non-deprecated location apismdooley
Also tuning the location request accuracy and minimum update interval. i noticed during testing that we often get locations with uncertainties greater than our threshold (100 meters), which we ignore. That combined with the long update interval can result in not showing a location for a long time. Bug: 67046739 Test: manual PiperOrigin-RevId: 170407138 Change-Id: I1a84088f9fa09b474b07e375b92af25852dd6f46
2017-10-02Fix audio route selector.yueg
1. Use onCancel() instead of onDismiss(). onCancel() is not called when changing orientation, so it won't crash on getParentUnsafe(). onCancel() is also not called when pressing home button, but it will be handled by AudioRouteSelectorActivity.onPause(). b/67013452 will happen after the fix. 2. Use FLAG_ACTIVITY_NEW_TASK and FLAG_ACTIVITY_MULTIPLE_TASK when starting AudioRouteSelectorActivity. This prevents showing Dialer with AudioRouteSelectorActivity. The downside is that the activity is no longer excluded from recent screen. The two fixes can affect each other, so they are in one CL. Video: https://drive.google.com/open?id=0Bz1rQbdSCWSKYVJkd3R1SkI4c3c Test: manual PiperOrigin-RevId: 170404203 Change-Id: Ifa8ebcd566670115d3865b0d67c311c296fbbd51
2017-10-02Fix crash on hanging up simulator video call.wangqi
The problem is that InCallActivityCommon#onStop will try to commit any fragment which will crash. This change also fix a bug that simulatorRemoteVideo is not stopped after hanging up. Bug: 67045513 Test: manual PiperOrigin-RevId: 170380589 Change-Id: I25e0f43141eaa573189f4d9c0109fd2689c10374
2017-09-29Fix crash on incoming video call when video upgrade call is pending.wangqi
This is a upstream fix from AOSP: https://android-review.googlesource.com/#/c/platform/packages/apps/Dialer/+/475598/ Bug: 63608380 Test: none PiperOrigin-RevId: 170365033 Change-Id: Id58cf4c67a3b0144521622a14997a83403017bee
2017-09-28Refactor DialerStrictMode into an interface.wangqi
-bypassed violations are no longer logged in AospDialer The default implementation will use system strict mode and crash on bugfood build same as before. Bug: 66003745 Test: manual PiperOrigin-RevId: 170214128 Change-Id: Iab630f19499e90b15eb0b7f0707b4a70c7d81fbe
2017-09-27Bypassed some strict mode violations.zachh
These are old code and considered to be grandfathered in. Cleaned up some warnings in GoogleLocationSettingHelper. Bug: 66498656 Test: none PiperOrigin-RevId: 170090310 Change-Id: I2c43564af751eb5f431a395d75afa5ce126b5d18
2017-09-26Increase location title lengthmdooley
Need to increase character limit for location title text as the title string is now longer than the original character limit. This should have been part of cl/169270157 Bug: 66330058,66330115,66411110 Test: none PiperOrigin-RevId: 169967227 Change-Id: Ib49da4086c190d60da832d4ef64689e44b114150
2017-09-26Fix bug that phone number is not shown for non-contacts. (CNAP, business etc.)wangqi
Phone number should always be shown for non-contacts. Screenshots: https://screenshot.googleplex.com/guKEWdQKDpG https://screenshot.googleplex.com/iMcPte5Vhyc Bug: 64685156 Test: TopRowTest PiperOrigin-RevId: 169961072 Change-Id: Iaf8fc5b1e7f3d386d20deb01f4325efb5e645363
2017-09-26Upgrade and refactor latency test over Dialer. Now it has Incall UI latency ↵weijiaxu
besides app launch latency. Alert functionality is not included in this cl. Add a new idlingResource for incall ui and a new method called waitForInCallUiShown in DialerCallEspresso. Add UiListener interface in CallList and insert uilisteners on onCallAdded() and onInCallUiShown(). Also, a g3doc page has been created in http://cl/168901452 to show the dashboards. Test: Run on a local device PiperOrigin-RevId: 169934618 Change-Id: I0ea10aca051c62cd8252ee5a3c9dfbce81316a33
2017-09-26Update text of call back number in emergency calls.wangqi
Screeshot: Before: https://screenshot.googleplex.com/bnByOaCTV4O After: https://screenshot.googleplex.com/v0vhkuuvT28 Bug: 38347145 Test: manual PiperOrigin-RevId: 169933363 Change-Id: Ia3728be488ff329531c171b03a3045f1839d1d5e
2017-09-25Fix crash on ending call.yueg
We moved onUiShowing() call from InCallActivityCommon.onPause to onStop in cl/169615685, which causes the crash since InCallPresenter is cleared up before calling onUiShowing() and mContext is null at that time. This CL fix the crash by also moving the clearup(InCallPresenter.unsetActivity()) from onPause to onStop. It also makes sense because InCallPresenter.onActivityStarted() is called in onStart instead of onPause. Test: manual PiperOrigin-RevId: 169756942 Change-Id: I222009be1b672f8a6dcb8bfdcea2d633c5810575
2017-09-22Log non-contact lightbringer actionstwyen
video call upgrade and calling from call log is logged Bug: 66222115 Test: DialerCallTest, GoogleCallLogAdapterTest PiperOrigin-RevId: 169703001 Change-Id: Ib4dc3507dec09f49d41cec09d32cc9800477ee8b
2017-09-22Don't show bubble when InCallActivity is visible in multi screen mode.yueg
By moving InCallPresenter.onUiShowing() from InCallActivityCommon.onResume/onPause to onStart/onStop. Test: manual PiperOrigin-RevId: 169615685 Change-Id: I146a5d87028040b0f5e587b8163f29d55b9e7ff7
2017-09-22Update ViLTE strings to reflect "carrier" video callingroldenburg
Outgoing video call: https://drive.google.com/open?id=0B7uuA4cyYX0xQjhUTGhrUWRKUlE Incoming video call: https://drive.google.com/open?id=0B7uuA4cyYX0xZFMyREVDWVNqaE0 Outgoing upgrade: https://drive.google.com/open?id=0B7uuA4cyYX0xdll3elRsUWhDT3M Incoming upgrade: https://drive.google.com/open?id=0B7uuA4cyYX0xZFMyREVDWVNqaE0 Incoming upgrade (Wi-Fi): https://drive.google.com/open?id=0B7uuA4cyYX0xWkJ6dU16Rmd1ckk Bug: 65131278 Test: manual, screenshots PiperOrigin-RevId: 169612967 Change-Id: I5163be6966ed7d68d19cff51e0d1637bd20b2c7e
2017-09-22Better handling country iso when getting geo location of phone number.wangqi
1. Use existing country iso info instead of guessing current country iso from sim and locale for blocked number. 2. Use country iso of current sim instead of default sim for incall location info. This fixes bug in multi sim device when default sim is out of service and making call with the other sim. Bug: 65399976 Test: manual PiperOrigin-RevId: 169554641 Change-Id: I416d7e2d6bc3c872bfec3eda4005a5a1684f0e40
2017-09-22Updated ongoing call notification to reflect video call state.calderwoodra
screenshots: ongoing: http://screen/FkAM9hOU5Rq paused: http://screen/mrp6UJCoWAu Bug: 63274792,63271690 Test: StatusBarNotifierTest PiperOrigin-RevId: 169469414 Change-Id: I442e21d93b7e11dea191311acd28846ea257c156
2017-09-22Refactor CallList to call onUpdateCall and notifyGenericListeners directly.wangqi
Bug: 62426694 Test: none PiperOrigin-RevId: 169447674 Change-Id: I3014b289c26d24ac571421bc54fcacc303278b41
2017-09-22Update package assets and strings.Eric Erfanian
Test: TH Change-Id: I48e807f3eafbc82401b2674a2610b20bf118c275
2017-09-20Add more logging when video surface texture is destroyed.wangqi
Bug: 63608380 Test: none PiperOrigin-RevId: 169425768 Change-Id: I297b945c9601bb070f3ef08d7ca34a76629b42c7
2017-09-19Refactor second call logginguabdullah
Just easier readability since getFirstCall() is null until it's added to the call map. Test: N/A PiperOrigin-RevId: 169287247 Change-Id: Ifda5ead27d987e17f259da761a0109d930efa6c3
2017-09-19Perform remote reachability query if caller is not in contactstwyen
Lightbringer.supportsUpgrade() is changed to return absent optional when it does not have data for the number. Seeing this LightbringerTech will use Lightbringer.updateReachability() to retrieve it from the remote package, which will store it in the reachability cache. Bug: 63601277 Test: RemoteReachabillityQueryHandlerTest, LightbringerTechTest PiperOrigin-RevId: 169283953 Change-Id: I3f26d9158fc6cfed196fd533da2aad598c8e6a7a
2017-09-19Tweaking emergency location textmdooley
Bug: 37242283 Test: none PiperOrigin-RevId: 169270157 Change-Id: Ic07df7a1611ebf1b997f1a908fa341f9bf542cbd
2017-09-19Add "Turn speaker on"/"Turn speaker off" action button in notification.yueg
Add action button when create in call notification and when audio state changes to ROUTE_SPEAKER or ROUTE_WIRED_OR_EARPIECE. Ignore when audio state is ROUTE_BLUETOOTH. Screenshot: Speaker on: https://screenshot.googleplex.com/hnsQL0YcFJj Speaker off: https://screenshot.googleplex.com/oFrbvbs9gVG Test: StatusBarNotifierTest PiperOrigin-RevId: 169169372 Change-Id: I2f96f20170dd174b35dfd3f7578fe5b9450391ab
2017-09-18Log if a call is IMS reachable.yueg
And fix a related test in ImsVideoTechTest. LOG_STORAGE_INCREASE(GB/week): 0.7 5M active block user/day * 10 events/active = 350M event/wk 350M event/wk * (2 [bool])/event = 0.7GB/wk Test: LoggerUtilsTest PiperOrigin-RevId: 169153878 Change-Id: Ia8038a5b0961f1a5572541f21df7a2680d85bbbb