Age | Commit message (Collapse) | Author |
|
This is an optimization to reduce popping in the new call log. Currently when Cp2LocalPhoneLookup determines a number to be "incomplete" (because it is an invalid number and there are too many invalid numbers in the call log to efficiently bulk update) we clear the existing data, which has been populated in PhoneLookupHistory (for example, from InCallUi). This means that we will show the number initially when displaying the call log, and then when the query completes we will "pop in" the new information.
This change makes it so that we don't clear the existing data from PhoneLookupHistory, and just add the "incomplete" bit. The result of this is that we immediately display the available information when initially displaying the call log (even though it may be out of date). When the query completes, the row will be updated with the most recent information; in most cases this is likely to be the same as the information used to initially display the row, and no update will need to be applied.
Additoinal changes to support this functionality:
-RealtimeRowProcessor is now just responsible for returning an updated row, and NewCallLogView holder will compare the result to the originally displayed row and only update the UI if there are differences.
-NewCallLogFragment now calls clears the RealtimeRowProcessor's cache and notifies data set changed during onResume. This is to account for the fact that AnnotatedCallLog no longer contains the complete set of information necessary to show the call log; there may be changes we need to show which can't be detected by the cursor loader. We now show those potential changes in onResume.
Additional notes:
-If there is real-time data that changes after onResume it won't be detected but there shouldn't be such cases; changes made to contact information from dialer are always done through contact cards which pause the fragment.
-This change has the effect that whatever information was written to PhoneLookupHistory during the previous invocation of InCallUi will always be (initially) shown. For example, if the contact name for number "123" is "Joe" when the call comes in, we'll write "Joe" to PhoneLookupHistory. If the user changes Joe's name to "Jane", the UI will pop from "Joe" to "Jane" until PhoneLookupHistory is updated (which is currently only done from InCallUi). If this turns out to be a problem it could be mitigated by writing updated results to PhoneLookupHistory from the UI.
Test: unit, manual
PiperOrigin-RevId: 182277145
Change-Id: I3d9916b7747390ff956f399fe84b26d578e5a07f
|
|
Bug: 27705124
Test: n/a
PiperOrigin-RevId: 182275405
Change-Id: Ic70b34790956f2d3652a23800ba0f5e37cfefca8
|
|
This change also adds the logic for triggering SmartDialDatabase updates in
Activity#onResume so that Dialpad search has results it can show.
Bug: 181512198
Test: n/a
PiperOrigin-RevId: 182272002
Change-Id: I3f7f7795df5038c37c1c26e23f4fc816d515e41f
|
|
|
|
It was starting to get pretty big and it's probably safe to say it deserves its
own file now to declutter the main activity.
Bug: 181512198
Test: existing
PiperOrigin-RevId: 182264121
Change-Id: Id3314839bcd2fa10f48cc1f0df0bf202ce36ea3a
|
|
* changes:
Updated toolbar and dialpad interactions in NUI.
Take voicemail alert position into account for "older" header for NUI Voicemail Tab
|
|
Toolbar, Dialpad, Bottom Nav, FAB and Search now all show
and hide properly according to the state of the application.
Follow up CLs will include:
- saving/restoring state
- sending query to search fragment to display results
Bug: 181512198
Test: MainActivityIntegrationTest
PiperOrigin-RevId: 182259200
Change-Id: I1309d8df2a5425bf051e52a459a1f78e1157fe08
|
|
Voicemail Tab
The older header must take into account and be offset when there is a voicemail alert being shown.
Bug: 71700117
Test: N/A
PiperOrigin-RevId: 182243160
Change-Id: Ib38ba82e75fedf9a2939078447e4791f5239524c
|
|
|
|
* changes:
Correctly show the contact's photo in CallDetailsActivity when launched from the new call log.
Handle hiding bubble right after showing it.
|
|
PhoneLookupInfoConsolidator is designed for the following two purposes.
(1) Different sub-messages in a PhoneLookupInfo proto can contain information for the same purpose. For example, all of cp2_local_info, cp2_remote_info, and people_api_info have the information for a contact's name. PhoneLookupInfoConsolidator defines the rules that determine which sub-message should be used to display the name in the UI. This is the same as PhoneLookupSelector.
(2) Avoid mixing info from different sub-messages when we are supposed to stick with only one sub-message. For example, if a PhoneLookupInfo proto has both cp2_local_info and cp2_remote_info but only cp2_remote_info has a photo URI, PhoneLookupInfoConsolidator should return an *empty* photo URI as cp2_local_info has higher priority and we should not use cp2_remote_info's photo URI to display the contact's photo. This is what PhoneLookupSelector is unable to do.
Bug: 71763594
Test: PhoneLookupInfoConsolidatorTest
PiperOrigin-RevId: 182236013
Change-Id: If19cdc1a9e076f3ebc8f9e2901f050b519e273f2
|
|
the new call log.
Bug: 70218437,71867391
Test: ModulesTest & Manual
PiperOrigin-RevId: 182233967
Change-Id: I6eb4bf236230eee6bbecc99b128fef5afddfd1e9
|
|
If hide bubble right after showing it, we should cancel animation, remove view and set visibility to HIDEN. Otherwise we can't retrieve correct bubble status later, thus hide/show bubble unexpectedly.
It at least fix some cases of IllegalArgumentException.
Bug: 71746139
Test: NewBubbleTest
PiperOrigin-RevId: 182222155
Change-Id: If020b83cfffd9c643fd6fe3d2879a05e5969281f
|
|
|
|
Bug: 26742642
Test: n/a
PiperOrigin-RevId: 182144609
Change-Id: I4d4364892775c18224f37981d5e3f128dee086cc
|
|
* changes:
Implement dialer command line interface
Use EmptyVideoTech instead of null RcsVideoShare VideoTech impl when unavailable
|
|
This CL adds a generic interface to perform action and retrieve data in dialer.
Test: Unit tests
PiperOrigin-RevId: 182128015
Change-Id: Ib45ce9808bd4e0e4a9c9e05c0017e19c3213bb0d
|
|
Bug: 67005309,71880949
Test: VideoTechManagerTest
PiperOrigin-RevId: 182091664
Change-Id: I0be4d4f9740e2bb678e772ec8526ccf176c334eb
|
|
|
|
Since we are now using the AlarmManager to decide when to poll
for voicemail transcriptions, we need to ensure that we don't
start transcribing a voicemail until polling for the previous
one ends.
This cl postpones a voicemail transcription task if there is an alarm
set to poll for a transcription result. After a transcription result
is received (or we give up) the db is scanned for any pending transcriptions
and the next one is started.
Bug: 70242961
Test: manual and updated unit tests
PiperOrigin-RevId: 181899975
Change-Id: I7b8fb696164980cf710aa58a79418c6954e2b4d2
|
|
|
|
* changes:
Clear the cache in RealtimeRowProcessor when there's new data.
Added some verbose logging to Cp2LocalPhoneLookup
|
|
-Reset the text appearance when recycling
-Clear the secondary call types when recycling
Test: unit
PiperOrigin-RevId: 181824011
Change-Id: I92cf2c570754e60f3559ad6b47157b3538c6e2cc
|
|
Otherwise changes to "incomplete" rows won't take effect until a new adapter is created.
Test: unit and manual
PiperOrigin-RevId: 181823087
Change-Id: I24e1b1b465c8d37cf794312b88b6cdd3ad394b5d
|
|
Test: none
PiperOrigin-RevId: 181816649
Change-Id: I4e951366e9458899181fb95230a2815ed5fcdaa8
|
|
|
|
We don't actually parition by "formattable", we parition by "valid". An invalid number like 456-7890 can be formatted to E164 ("+14567890") but what ParitionedNumbers actually does is parition by valid/invalid (and then converts the valid numbers to E164).
Also added a new sharded test suite for phonenumberproto tests which had occasionally been timing out on TAP.
Test: existing
PiperOrigin-RevId: 181800443
Change-Id: Id64fc32c893025b0115dd350dd87e3277607f21c
|
|
|
|
|
|
This change adds the existing dialpad to the new UI and the animation logic
required to show/hide it along with the toolbar. A follow up CL will come
afterwards to combine these animations with the toolbar expanding/collapsing.
known issue: bottom nav appears over the dialpad.
Bug: 181512198
Test: MainActivityTest
PiperOrigin-RevId: 181777370
Change-Id: Ief1591174ebca3a709df6d1d38c8b8ecbdc1878e
|
|
Bug: 181512198
Test: MainActivityIntegrationTest
PiperOrigin-RevId: 181771027
Change-Id: Id2b6d35cec928cbd2fed8ad75a9da007af9e826e
|
|
|
|
Voicemails that are deleted or marked as deleted should not show up in the annotated call log.
Bug: 71885122
Test: N/A
PiperOrigin-RevId: 181719056
Change-Id: I7a5f7769ecbfc5feaaee36f0f1de48155576f458
|
|
* changes:
Implement PhoneLookup for CP2 remote contacts
Merge PhoneLookupDataSource results into a proto in annotated call log.
Attempt to place call even call permission is missing
|
|
Bug: 71763594
Test: Cp2LocalPhoneLookupTest, Cp2RemotePhoneLookupTest
PiperOrigin-RevId: 181681435
Change-Id: I2e091371b6705390adf4be63c78344f78bd19d6e
|
|
This allow extra information from PhoneLookup to be more easily added. Only PhoneLookupSelector and the proto will be affected for new attributes.
Test: Unit tests.
PiperOrigin-RevId: 181675568
Change-Id: I4e0bc1c6005b58a9b684b030b55bea6223af9ce3
|
|
Telecom might still allow emergency calls to be placed if dialer is the default dialer.
Bug: 71739167
Test: Unit tests.
PiperOrigin-RevId: 181661814
Change-Id: I24063ee42d646c4b614f3fdeb5685490f064a898
|
|
|
|
|
|
Empty numbers were not being inserted into PhoneLookupHistory because the URI "content://.../PhoneLookupHistory/" is treated the same as "content://.../PhoneLookupHistory" (w/o the trailing slash). This caused the update (i.e. replace) operation to incorrectly update all rows in the table when it should have updated a single row.
The fix for this was to switch to a query parameter, so the empty number URI now looks like "content://.../PhoneLookupHistory?number="
Also improved some logging while debugging this problem.
Bug: 71866050
Test: unit and manual
PiperOrigin-RevId: 181659081
Change-Id: Idec4fb77e74920cd5485620b0a997db03aa8ff9b
|
|
-Reuse the adapter in NewCallLogFragment to maintain position in call log when returning from call details
-Convert empty values to null when invoking ContactPhotoManager to make photos appear correctly in new call log bottom sheets
-Added CallLogContactTypes to be shared between proper call log and bottom sheets
-Fixed vertical alignment in bottom sheet when there was no secondary text
-Added some verbose logging
Test: unit and manual
PiperOrigin-RevId: 181655715
Change-Id: I9c1a42ad8d529ee2327e15fcc1d32b7b83982014
|
|
|
|
Bug: 70503524
Test: Unit tests.
PiperOrigin-RevId: 181627615
Change-Id: I9e48dd3acc339509ff3805ea38cc6399858ade1d
|
|
|
|
This CL only setups the layouts, images and strings associated with the voicemail terms of service. Additional logic of when to display the ToS will be in a follow up CL.
Bug: 71699918
Test: N/A
PiperOrigin-RevId: 181548639
Change-Id: Ia99dcc5ad8a96dcac71946fe611b3ee4ad24814f
|
|
|
|
|
|
* changes:
Add events for displaying set up or invite buttons
Added Search Bar to NUI.
Fix PhoneLookupDataSource ignoring inserts if history is empty
Roll forward the broadcast in-call UI changes.
|
|
Test: Run in dialer lab.
PiperOrigin-RevId: 181525979
Change-Id: Ie1c66f0c740fcd91618810c49251eed580aeae84
|
|
Test: NONE
PiperOrigin-RevId: 181524242
Change-Id: If5d3632421722b4da7b64f78d904b58723408b7c
|
|
Bug: 70034799
Test: GoogleCallLogAdapterTest
PiperOrigin-RevId: 181515491
Change-Id: I62dc4d4d4ebb02e8e1e8dce6c6970bb7c8845952
|
|
This change only adds the views but doesn't implement any logic
or functionality. That will come in a future CL. A decision was
made here about whether to create a new search bar or reuse the
old one. I opted to make a new one to avoid breaking the old one
while it's still being used.
Bug: 64655802
Test: n/a
PiperOrigin-RevId: 181512198
Change-Id: Ib377b1d99f4eb8100204ac9a110dc5899bced392
|
|
Test: Unit tests.
PiperOrigin-RevId: 181512134
Change-Id: If64b4cd184c60a807541cfe8727aa03532a80cb4
|
|
Test: InCallPresenterTest
PiperOrigin-RevId: 181512032
Change-Id: Id120d9fe6f46ad157eab7f97614d0c18b6aef8e1
|
|
|
|
Bug: 70177426
Test: none
PiperOrigin-RevId: 181500079
Change-Id: Ia07e5fc487b9fe64ecfedb074a543fc993b303c4
|
|
|
|
Bug: 67605985
Test: NewBubbleTest
PiperOrigin-RevId: 181493569
Change-Id: I30f7204ad9c78693e2c9b054bd69307fb4768a0b
|
|
PhoneLookupInfo.cp2_info as PhoneLookupInfo.cp2_local_info."
|
|
|
|
|
|
|
|
|
|
* changes:
Bubble v2 dismiss changes.
Added RealtimeRowProcessor.
|
|
PhoneLookupInfo.cp2_local_info.
To support remote CP2 contacts, there will be a new PhoneLookup ("Cp2RemotePhoneLookup") and a new field in proto PhoneLookupInfo ("cp2_remote_info").
In proto PhoneLookupInfo, cp2_local_info and cp2_remote_info will be of the same type ("Cp2Info").
Bug: 71763594
Test: Existing tests
PiperOrigin-RevId: 181405798
Change-Id: I6c43b486229d4e9ae7b55c579d9c9997a2884c80
|
|
1. Change name and timer font to roboto medium
2. Change close button to back button
Bug: 67596257,70177426
Test: manual
PiperOrigin-RevId: 181404033
Change-Id: I19137c51a6617276dd5ae6a7ba47c12d995e2feb
|
|
DialerFutures#firstMatching now fails if one of its provided futures fails before a match is found.
This is to accomodate the case where no source returns true for isDirty, but one or more fail; we want to be notified of the failure in that case and not silently treat that case as not dirty.
Also fixed a bug in NewCallLogFragment where the failed future wasn't causing the application to crash.
Also improved some related logging in RefreshAnnotatedCallLogWorker and Cp2PhoneLookup, and fixed a bug where empty numbers were not being handled correctly.
Bug: 71504246
Test: unit
PiperOrigin-RevId: 181401710
Change-Id: I23e207ac334ff80ac95b08a8f4f775a528a8c511
|
|
Bug: 70503524
Test: Unit tests.
PiperOrigin-RevId: 181400523
Change-Id: I07f2f2cd7c1402d1acb6bfbde9db8d90c888edf6
|
|
Including:
- Smaller bottom action view
- Make gradient darker
- Text("hide" and "end call") not all caps
- Larger text size
- Padding between icon and text
- Speed up scaling and hiding animation
- Animate opacity together with scaling
- Show "Call ended" text in toast instead of bubble
Bug: 67605985
Test: NewBubbleTest
PiperOrigin-RevId: 181400165
Change-Id: I21b4dcc6324d2dc3eb41377d5264a391c116262f
|
|
This is for performing work inside of the call log's RecyclerView, when the view holder is bound. Most of the time, this should be a no-op but there are possible edge cases where the call log data cannot be updated efficiently through the standard batch mechanism.
One example of this is when there are too many invalid numbers in the call log; the CP2 information for invalid numbers cannot be efficiently batch updated so we fetch this information at display time. (Note that we do handle up to 5 invalid numbers in the batch update mechanism, but if there are more than that we fallback to this realtime processing.)
Test: unit, manual
PiperOrigin-RevId: 181400016
Change-Id: Iea6b380742e757b48d19f319fe46dc5fae837604
|
|
After searching contact info, the associated dialer call object might be removed from CallList, which causes NPE.
Test: NewReturnToCallControllerTest
PiperOrigin-RevId: 181387022
Change-Id: I09b9bf037fbd3d675ef821259ec23c1355a647df
|
|
|
|
After searching contact info, the associated dialer call object might be removed from CallList, which causes NPE.
Test: NewReturnToCallControllerTest
PiperOrigin-RevId: 181387022
Change-Id: Icabaeccc96e039c8ac53d66c23af89d3eb0823a9
|
|
|
|
Bug: 67005309
Test: VideoTechManagerTest
PiperOrigin-RevId: 181368613
Change-Id: I8a13bd04d3ac342a06febb7437a0e0dd3d25affd
|
|
|
|
|
|
|
|
Bug: 33761801
Test: none
PiperOrigin-RevId: 181347696
Change-Id: Iaf09d1b45a2e97e4d8da24b5bd7172da152d703c
|
|
InCallActivity recreates when onNewIntent() and is not visible. Althought onPause() is called, we should not call onUiShowing(false) since the activity is going to be visible. The extra call confuses bubble animation.
Bug: 67605985,71746139
Test: InCallActivityTest
PiperOrigin-RevId: 181343690
Change-Id: I4d540be0e3e38400322f9b9c3e71e50b1f85977c
|
|
Bug: 64655802
Test: existing
PiperOrigin-RevId: 181339724
Change-Id: I05c48d0a046010baf6b6593de3b934fdaf3e9f08
|
|
* changes:
Update strings for Duo "Set up" and "Invite" buttons
Hide emergency calls in the call log
Simplifying implementation of the coalescing logic in the new call log.
Updating Dialer v16 licenses.
Use ContactsContract.PhoneLookup for invalid numbers in Cp2PhoneLookup.
Add RTT call chat window.
Updated T9 search bolding to include wrapping to the next word.
Initial setup of voicemail error messages
Automated rollback of changelist 178323108
Add "delete" option in the 3-dot menu of the new call log
|
|
Bug: 70034799
Test: manual
PiperOrigin-RevId: 181241050
Change-Id: Iddf5ef331741f8ab8500eeb3d5481598ef5caca4
|
|
Bug: 38494024,66926712
Test: CallLogAdapterTest, manually checked UI
PiperOrigin-RevId: 181238101
Change-Id: I1b718e30a4bc874e098e30a3aaae39bdd69d0c9a
|
|
Bug: 70388714
Test: Existing tests
PiperOrigin-RevId: 181231987
Change-Id: I0c7386f60e92f7087f9f5ad1b1f454b43b7227e7
|
|
Bug: 71713599
Test: 'N/A'
PiperOrigin-RevId: 181231841
Change-Id: I810699487db763f9afebabff9ae55e9767afd9fa
|
|
"Invalid" numbers are identified according to PhoneNumberUtil.isValidNumber.
This is necessary to support loose matching for such numbers. However, ContactsContract.PhoneLookup only supports looking up individual numbers, which means that we cannot issue batch queries and must issue individiual queries for each invalid number.
The hope is that these numbers won't appear frequently so performance should still be acceptable.
However, as a failsafe, if there are more than 5 invalid numbers we just give up trying to bulk update the invalid numbers and signal that those numbers are INCOMPLETE so that the UI can query for their CP2 information on the fly (the UI will be updated in a future CL).
It was necessary to convert much of the class to use futures to support parallelization of the queries.
Bug: 71504246
Test: unit
PiperOrigin-RevId: 181216674
Change-Id: I3bec477d305772b4ca3e46d0bd326cfebf9fa313
|
|
This change add a mock in simulator with a type bot that's simulating remote typing. The integration into incall UI will be in following changes.
Bug: 67596257
Test: RttChatMessageTest
PiperOrigin-RevId: 181211591
Change-Id: If6cdcb010afc0c25e90d3a44fe349920d5a856c6
|
|
T9 bolding now works when the query continues past a single name and extends to
the next. For example, a query of "2226" would bold "[AAA M]om". This was
supported in the old search.
Bug: 71384038
Test: existing + new
PiperOrigin-RevId: 181211263
Change-Id: I7d7fe8be794f410e697ddbcb26c6bc10c7893e5a
|
|
This CL setups the initial adapter logic to be able to display voicemail error messages.
The errors and the code to display those errors will be shown in a follow up CL.
Bug: 71700117
Test: N/A
PiperOrigin-RevId: 181210330
Change-Id: I5b9e9e675ad7a4825692fb93ca4237d05b0407f0
|
|
Test: tap
PiperOrigin-RevId: 181196939
Change-Id: I97405c5356814fe3ad02d498cfa96c210921c477
|
|
Bug: 69639422
Test: DeleteCallLogItemModuleTest, ModulesTest, and Manual
PiperOrigin-RevId: 181191883
Change-Id: I86c19e8a402b03a58c6b236b9ca54fd81f0b6f9a
|
|
|
|
|
|
This reverts commit 2b4d08c2895265d6054bfbcfc030786427755428.
Change-Id: I96cba9df573f2c46569c4bb7b1759ecce7e1ac4b
|
|
|
|
Test: none
PiperOrigin-RevId: 181185206
Change-Id: I167d9604285f7d5af4f34c6417d0ce1263e64fa1
|
|
This reverts commit 47c8bc43469917bd29cd6b0b2375f6c86adb76f3.
Change-Id: I0c3590166977b6254b535939d7a8fa2a0a44bc55
|
|
|
|
Test: None
Change-Id: I88d2d774b6c4964f36a6d125416066cb7f5b375a
|