Age | Commit message (Collapse) | Author |
|
For Dolly our logging proved to be immensely valuable tool to identify the the framework bug. We were able to co-relate the issue with the backup and restore logging. We are adding this again for Key Value backup and restore.
Bug: 64363054
Test: DialerPersistentBackupAgentTest
PiperOrigin-RevId: 164754911
Change-Id: I15f97e1a2301703ced85df8f808cf20aae59c25e
|
|
This change will centralize getting geo location data for a phone number thus
enable us to disable it completely by compiling it out.
Bug: 64394643
Test: none
PiperOrigin-RevId: 164754103
Change-Id: Ie4b526a05f8b4445ee0507683cd238659273c953
|
|
When Dialer users search for contacts, if they have an enterprise account on
their device, they can also search for enterprise/remote contacts. This change
adds the directory queries/results to the new search fragment.
screenshot: http://screen/S9mpsvnwtCv
Bug: 37209462
Test: javatests/.../searchfragment/remote
PiperOrigin-RevId: 164681686
Change-Id: I88bc5bceb4c745d8f6f7d9651929d49100283756
|
|
This change should help with separating concerns between each module
in searchfragment/. Now cursors returned from each CursorLoader are
expected to insert their own headers if they want to. This also simplifies
the logic in SearchCursorManager and allows for easier implementation of
new cursors.
Future CLs will include abstracting ViewHolders and CursorLoaders.
Bug: 37209462
Test: existing
PiperOrigin-RevId: 164676135
Change-Id: Ib50090c3990c903cfd78f3a168032edd88f0fe56
|
|
Add content description for select all button.
Screenshot: http://screen/kmYYExHOuTp
Bug: 63917180
Test: Manual, refer to screenshot
PiperOrigin-RevId: 164672361
Change-Id: If34f754f68824664270d7a76b1cb17da2f8ef01c
|
|
If a user declined a call with SMS while the answer fragment wasn't attached,
they would get a crash. This change checks to see if the fragment has been
attached or detached before attempting to show the menu. This crash was added
by cl/154094855 which fixed another issue that had been around since v6.
Bug: 64380468
Test: none
PiperOrigin-RevId: 164670788
Change-Id: I37f9c28ab0bb24da630f7f7897ecff55ae859837
|
|
Selection can be used to make complex SQL queries more readable, and pass around incomplete selections for appending.
See cl/162013087 for usage
Test: SelectionTest
PiperOrigin-RevId: 164618236
Change-Id: Ice035211f6b02858255a9e7d18215c9282bf28e9
|
|
In the new search fragment, if you rotated the device, a crash would occur
because we were prematurly closing the cursors on our own. Since the cursors
are managed by CursorLoaders, we don't actually need to close the cursors
ourselves and can leave that to the framework.
Bug: 37209462
Test: SearchFragmentIntegrationTest
PiperOrigin-RevId: 164562508
Change-Id: Id33274ccb23d026dab352e754a5f03ab834d9d14
|
|
This CL ensures that Restore works correctly (to unblock us for ODR system image). As restore happens on the system image and the logic cannot be updated via PlayStore, this CL is time sensitive, to ensure we can get it into the ODR system drop. This CL only backups com.android.dialer.app_preferences.xml for now, but can always be changed to update more shared preference files when needed via an playstore update. Since we are using PersistentBackupAgentHelper, we don't have to worry about not being able to restore additional backed up shared preference files from the future, as PersistentBackupAgentHelper will allow us to restore all the shared preferences that were ever backed up via Key/Value.
Currently I added an end to end unit test, and tested restore via "adb shell bmgr restore com.google.android.dialer", which restored the stored data sets. A follow up CL will include additional files to backup and impression logging.
Bug: 64363054
Test: DialerPersistentBackupAgentTest
PiperOrigin-RevId: 164524465
Change-Id: I5bd65215a42744ba4149a9359e443679306b6cc0
|
|
Test: NONE
PiperOrigin-RevId: 164524149
Change-Id: I7ab941d2d96093647dda3e5321776f43da59ab2b
|
|
This class will be used for Assisted Dialing.
#turndowncontactscommon
Bug: 64205446,37208802
Test: TAP
PiperOrigin-RevId: 164510740
Change-Id: I5dec67d2182b33bf2057953aab69e3b561af5708
|
|
screenshot: http://screen/WpQJZ0Xy1gi
Bug: 37209462
Test: NewSearchFragmentTest
PiperOrigin-RevId: 164407405
Change-Id: I3c66dc289524573e687266217b57b19a8ded8c9c
|
|
video: https://drive.google.com/open?id=0B2Hce9qilHmvYTlqVGU0OTNxNjQ
Bug: 37209462
Test: SearchFragmentIntegrationTest
PiperOrigin-RevId: 164319452
Change-Id: Icc5669be87e97ba5d0e23fc99bada28ca7d2335a
|
|
Bug: 37209462
Test: RemoteDirectoriesCursorLoaderTest
PiperOrigin-RevId: 164295668
Change-Id: I5d9c54fa748d19f09b62a33ff12a7de8a71d64d3
|
|
Bug: 64314754
Test: manual
PiperOrigin-RevId: 164294241
Change-Id: Ic5d56fc0c1e52eb70ab8b8a22a3ad2cefe03cabf
|
|
We want to clean up all the Dialer Backup and Restore. This includes the existing Dolly backup code for settings/preferences (causes a crash) and the Hangouts K/V Backup (does not work).
The idea is to just have a clean simple K/V backup and restore for dialer, which will be in a follow up CL.
Bug: 64363054
Test: Manual. Builds successfully.
PiperOrigin-RevId: 164225991
Change-Id: Ic71cfaeed37a5c9f0002d8d12db757f19c0ddf1e
|
|
There were two outstanding issues in the new search criteria:
- Contacts named "Brandon" would be filtered out by query "b"
- Contacts named "Bob" would NOT be filtered out by query "o"
This isn't how our current implementation of search worked and these issues are
resolved by this change by ignoring case sensitivity and doing suffix checks on
names instead of #contains checks.
Bug: 37209462
Test: QueryFilterUtilTest, SearchContactCursorTest
PiperOrigin-RevId: 164214145
Change-Id: I367ed0d862809d28491ae53e7dd8e1a24c824ec9
|
|
Introduce the concept of a "mutually exclusive button".
Buttons that conflict with a "mutually exclusive button" that
is eligible to be placed, will never be placed.
Bug: 37275934
Test: unit tests.
PiperOrigin-RevId: 164210228
Change-Id: I64af6065c89d143a331ea226f9a6cb1004b5a155
|
|
We have much longer duration than expected especially on NE1 devices. Although we can't reproduce it, we should not reset duration if a call is already disconnected.
Bug: 63930386
Test: none
PiperOrigin-RevId: 164191850
Change-Id: I851d9cc9ce64a7df32bd388e45f6613372670d81
|
|
Updated android enterprise briefcase asset for:
Dialer, Contacts, OTAConfig, Messgenger
screenshots:
contacts search https://screenshot.googleplex.com/zwHRua8Erob
dialer calllog https://screenshot.googleplex.com/qmPUzSHXbvC
messenger screenshot https://screenshot.googleplex.com/HTK8btSQvJB
otaconfig notification https://screenshot.googleplex.com/OY8qUzns6N5
otaconfig statusbar https://screenshot.googleplex.com/GJP7dCjTMiG
Bug: 36497538
Test: Manual
PiperOrigin-RevId: 164121167
Change-Id: I095241c01c121a5a59ae932a012878047c143ebf
|
|
When the share and call button was visible, users using talkback could reach
the media icons hidden underneath.
Bug: 62649310
Test: manual
PiperOrigin-RevId: 164088069
Change-Id: Ic9cd23a78790c119d6d4d2f6e9d6e62c24e20120
|
|
If a user has IMS video calling and Lightbringer video calling enabled, when
they searched for a contact through dialer search, they would perform a
lightbring video call. This was unintended as IMS should have priority.
Bug: 64125770
Test: ContactListItemViewTest
PiperOrigin-RevId: 164058129
Change-Id: Ib2919857ffebd71d7911011274df0a6d07960d5f
|
|
Devices with other default locales would translate '1' and this would cause an
no such column exception in SQLite.
Bug: 64137857
Test: manual
PiperOrigin-RevId: 164048836
Change-Id: I4ecd070f8d38a82ca6567fb23b660d5ebe1f1f18
|
|
If a new call is placed before hiding the current bubble, bubble text will not be reset and the new bubble shows with the text. Fixing it by using different hide method for onUiShowing() and onDisconnect() (reset after disconnecting).
Test: ReturnToCallControllerTest, BubbleTest
PiperOrigin-RevId: 164048596
Change-Id: I7259df57da3aba51960bfb7bb1ea5f840c9501e0
|
|
Previously when setting the color of a network in call details, we assumed the
values were stored as String resource values when in fact they were hexidecimal
integer values. Now we directly set the color instead of doing a resource
lookup.
screenshot: http://screen/d3tQNGBkKNX
Bug: 64300111
Test: CallDetailsActivityTest
PiperOrigin-RevId: 164042030
Change-Id: I858e3665253139b8aab4e4c063bfc4c419f33cc9
|
|
Previously the keep screen on flag is only applied the the activity once when the video call is created. The flag will be lost when the activity is recreated, such as rotating the screen.
In this CL, the keep screen on state is persisted in the InCallPresenter, and will be reapplied every time the activity is created. The flag will be cleared when the call is finished or when the video call has ened
Bug: 64101648,63917358
Test: InCallPresenterTest
PiperOrigin-RevId: 164030247
Change-Id: Ie90f8dd0dfc9b542d691296c729dc3342a8bc2ad
|
|
expanded
Binding a view holder to an expanded voicemail will attempt to mark the voicemail as read and all voicemails as old. If a new voicemail is received when a voicemail is expanded, the new voicemail will cause a rebind and the notification will be canceled right away.
In this CL, voicemails will only be marked as old if the expanded voicemail was not already read.
Bug: 64211487
Test: CallLogAsyncTaskUtilTest
PiperOrigin-RevId: 163912108
Change-Id: Ibe82fe85984d84aad1a674219ca984fdd10c6d89
|
|
Test: TAP
PiperOrigin-RevId: 163911841
Change-Id: I454a649e8e31e744de99c2d9599f5bf291c729f1
|
|
A high res sync update request should be sent to trigger the photo sync.
Without this request, the contact photo will stay in low res until user action
to trigger it in other ways such as click on quick contacts or open it in
contacts app.
Bug: 62390496
Test: manual
PiperOrigin-RevId: 163905019
Change-Id: Iaf47934df02dc15f75e806505dfd425402fde07c
|
|
Visual voicemail playback uses the phone stream, which will cause all sort of audio conflict in a call. This CL forces voicemail playback to fail if a call is in progress.
Bug: 63584851
Test: manual - play voicemail while in call, "Cannot play voicemail" shown.
PiperOrigin-RevId: 163899919
Change-Id: I7350f6904b5a76f9c21a1d541f3c1f39271a5608
|
|
The VVM tab is shown when there are more then one "active" voicemail sources in the voicemail status table. A configuration status of 0 is active, and 1 is inactive. If the configuration state is null, getInt() will return 0 which maps to active, and incorrectly showing the VVM tab.
In this CL, null is checked first. The helper class is also made static.
Bug: 64122858
Test: VoicemailStatusHelperTest
PiperOrigin-RevId: 163858350
Change-Id: I3fca52aaca92492f1969092e2d9f443677cb3b8d
|
|
Failing to set the tag before invoking getContent() causes a strict mode violation.
Bug: 64080588
Test: none
PiperOrigin-RevId: 163785889
Change-Id: Id08886616f353b93df47d090abc9c0b68a09954e
|
|
Bug: 64172993
Test: manual
PiperOrigin-RevId: 163764485
Change-Id: Id66bc075e98cae0bcdb42e1ad82b403e7e0ae0d1
|
|
These numbers cannot be called back so don't show the button.
Bug: 64103891
Test: GoogleCallLogAdapter
PiperOrigin-RevId: 163758778
Change-Id: Ic5d9bd3abe38ff8a9ac84da6c453c924cb1dd6ca
|
|
Test: BubbleTest
PiperOrigin-RevId: 163758306
Change-Id: I391fe411822f01cf29075eab7cf42aeb676fd424
|
|
Move to the new ExecutorFactory classes.
Bug: 63711921
Test: unit test
PiperOrigin-RevId: 163752136
Change-Id: I33bc1e415bd3c48d593be753939d9ba42d8ba156
|
|
We added a new proguard flag recently and for some reason it is causing issues
with Fi calling on dogfood builds. I'm fixing the crash here and will work with
Zach to determine why this is causing issues.
The new flag that is causing trouble was added in http://cl/163521622
Bug: 64206675
Test: manual (mulitple builds confirming no longer crashes)
PiperOrigin-RevId: 163736443
Change-Id: Id30188699f7e9a40fbe23df18700b7104e1b551a
|
|
There was an issue with the duration shown in the InCallUI when a CMDA
generic conference was ended early. This resulted in the duration
showing as a huge number, rather than the proper value. This issue is a
regression caused by cl/157138159, which attempts to only start the
timer once.
This CL fixes the issue by ensuring that the Chronometer's base is reset
every time the timer row updates, instead of just once when start is
called. This matches the logic from prior to cl/157138159.
Repro steps:
1) Disable advanced calling on device with Verizon SIM
2) Place call from DUT to device A
3) Accept call on device A
4) Place call from DUT to device B
5) Before answering the call on device B, hang up the added call on DUT.
Results (without fix):
InCallUI switches to generic conference view (Phone number/name changes
to "Incall"). Duration becomes a huge number. See
https://drive.google.com/open?id=0B5N2YRME1XrUeDJWYnRBWGRQM00
Results (with fix):
InCallUI switches to generic conference with proper duration. See
https://drive.google.com/open?id=0B5N2YRME1XrUaDRtcjRWX3BxMTA
Bug: 64099380
Test: Manual, see steps
PiperOrigin-RevId: 163735661
Change-Id: I98bcd6517b55a21b58e4b32b00d66fdba4c45143
|
|
TelephonyManager will resend legacy voicemail notifications during connectivity changes with a "is_refresh" flag. Such notifications has already been shown before and should not alert the user. Previously the notification will be set to onlyAlertOnce, but if the user dismissed it it will be shown again.
In this CL, if the notification is dismissed, the state will be persisted and the notification will not be shown again. The state will be cleared when a new voicemail arrived and the user will be notified again. Since telephony sends is_refresh=false during boot up, the state will also be cleared with a reboot.
Bug: 62229933
Test: LegacyVoicemailNotificationReceieverTest
PiperOrigin-RevId: 163728161
Change-Id: I7ec6b5a88fed26e0a4459b8803eeba9a37b7b32b
|
|
The duo disclosure takes priority over the nearby places, and will be shown if all the conditions are met:
Disclosure enabled by flag show_duo_disclosure (default:false)
Duo module is enabled
Is in the call log tab
Disclosure is not dismissed.
The auto dismiss after 24 hours is not implemented. The help center article points to dialer_duo_disclosure which is not created yet.
Test: GoogleCallLogAdapterTest
PiperOrigin-RevId: 163714903
Change-Id: I724c6961af2912108c81d69a23d84682b721a58c
|
|
This will help us better understanding where it spends time for bringing up an incoming call ui.
The overhead is very light that could be ignored.
Bug: 62426694
Test: none
PiperOrigin-RevId: 163544107
Change-Id: I5520ed2b4b8085b8611af15e2c15c4c774446bec
|
|
There were some calls to StrictMode#enableDefaults in our codebase that were not guarded by bugfood checks. In testing, #enableDefaults causes warnings to be printed that otherwise would not.
This CL makes it so that we never call enableDefaults on non-bugfood builds, and cleans up and consolidates our usage of strict mode logic by introducing a new class called DialerStrictMode.
Test: none
PiperOrigin-RevId: 163521622
Change-Id: I841b4198a5dd6084ee104dc6907165e3379d0451
|
|
Logger.get() returns a LoggingBindingsStub object instead of a
LoggingBindingsImpl object under strict mode, and we should not log when it
happens.
WANT_LGTM=kedars
LOG_STORAGE_INCREASE(GB/week): 0
Test: manual
PiperOrigin-RevId: 163404058
Change-Id: Ibd466a811126c45eb26bc033367cc86a77066b3f
|
|
Use the drawable dimensions to control clipping.
Before:
Adjusting the screen size from default to largest
would trigger a view reflow. However, because
the bitmap asset was already cached, and the rounding
of the tile was based on the bitmap size, the new, larger
drawable would only undergo a partial circular crop.
Now:
We scale the image uniformly and center it. Also,
use the drawable dimensions to control clipping dimensions.
Bug: 63864703
Test: manual
PiperOrigin-RevId: 163376680
Change-Id: Ic678dff2b18d3308c859818f187a42afd6563e10
|
|
When we calculate transition end values, primaryText might be invisible and
causing primaryButton size smaller than expected. Fix it by always using larger
size (primaryText size).
Conference call ended twice, before:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKamYzVTVrbVpBWWM
After:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKck9WUm5IUlI2QVU
Test: ChangeOnScreenBoundsTest, BubbleIntegrationTest
PiperOrigin-RevId: 163375425
Change-Id: I251d0e96546742247ee3ce463f0aade65fe302bb
|
|
cl/163140580 filters out audio call from Duo, but will also remove fi voicemails because fi writes null phone account handle.
null NOT LIKE x returns null.
null OR x returns x.
This CL limits the filter only to the call log, and handles the null phone account handle.
Bug: 64060628
Test: manual, leave voicemails in fi. Automated tests in a future CL. Test call log database in progress(see cl162013087)
PiperOrigin-RevId: 163284363
Change-Id: I69ba6cbadbd1a02f05405ca0f5273b0a5ea0e5e9
|
|
We'll want to cherry-pick this onto v11.
Bug: 64073371
Test: manual, verified with QA across multiple scenarios (Fi, Verizon, forced flag enabled)
PiperOrigin-RevId: 163282286
Change-Id: I4b9456ec9a8ed978e93866a5c9dcab46848fee58
|
|
This is caused by handling phone number change during a call.
This change will remember if it's a voicemail/emergency number after phone
number changes and continue to show it as voicemail/emergency number.
Bug: 64009408,63716219
Test: SimulatorConnectionService and real device.
PiperOrigin-RevId: 163276696
Change-Id: Ibcde9ab9b61dc683de3d77dddca789ade3e895ba
|
|
As discovered in b/63711486 it's possible for the number to null when we
expand a call log row. Since the EnrichedCallManagerImpl checks that the
number isn't null when we check capabilities, this crashes when EC is
enabled.
This CL fixes the issue by checking for the null value and working
around it as needed. Since the DialerContact proto requires non-null
numbers, I had to protect it's call as well. There's no affect on
CallDetailsActivity and CallComposerActivity since the proto will return
the empty string if number is unset.
Bug: 63711486
Test: GoogleCallLogAdapterTest
PiperOrigin-RevId: 163225329
Change-Id: Id30ad5076523987f1cc93b803d52e85daa6c0e20
|
|
When Dialer users search for contacts, if they have an enterprise account on
their device, they can also search for enterprise/remote contacts. This change
adds the cursor loader needed to get a list of contacts from a specific remote
directory.
Bug: 37209462
Test: RemoteContactsCursorLoaderTest
PiperOrigin-RevId: 163154108
Change-Id: Ieae2cb2c03e759d7ed6cfdfa2f72a4190d8b844d
|
|
dialpad choose.
This is caused by saved instance state overriding values of showing dialpad
from intent extra when incall activity is being recreated.
Bug: 62046691
Test: manual
PiperOrigin-RevId: 163148086
Change-Id: Ice8974d7ee90ca3adcefca5946ec7489837d0bf6
|
|
Without this CL, Duo audio calls show in the Dialer call log and will either
start phone calls or Duo video calls based on Duo integration being available
or not. Carriers do not want OTT audio calling in the Dialer call log so we
should filter the audio calls out.
Bug: 63089358
Test: Manual: Placed duo audio and video calls, verified they showed without the patch, verified correct calls were filtered out with it. Will want QA verification over other test scenarios including multi-sim if we were to put this into OC-DR.
PiperOrigin-RevId: 163140580
Change-Id: I83c3659f6c356522b62d9ced2002a808ea958c95
|
|
When Dialer users search for contacts, if they have an enterprise account on
their device, they can also search for enterprise/remote contacts. This change
adds the cursor loader needed to get the list of all remote directories
associated with the accounts on the device.
Bug: 37209462
Test: DirectoryCursorLoaderTest
PiperOrigin-RevId: 163139517
Change-Id: If5e626507d5c337633a678fff5e8dac59f85658e
|
|
Repro steps:
1. setup multiple calling account (multi-sim or sip etc.)
2. make a ongoing call
3. click "Add call"
4. make another call in dialer
This is caused by recreating incall activity when adding new call that
will go through its lifecycle thus disconnecting the call with account
selection states automatically.
It's a regression caused by cl/162562378.
Bug: 64014929
Test: manual
PiperOrigin-RevId: 163138094
Change-Id: Ia979f7d63bd85cfaa6550c58e552759d66ec937c
|
|
See go/ec-temp-unavailable. This CL fixes the issues when we get
enriched call capabilities for users who are temporarily unavailable.
Bugle sends an indication that this is the case through the
ACTION_CALL_CAPABILITIES_UPDATE intent, which is saved as part of the
capabilities. When users click on a call log row, we check if the
capabilities were temporarily unavailable and if that's the case, we
request the capabilities again. This ensures that we don't cache the
temporarily unavailable capabilities forever.
manual
Bug: 62609419,37726219
Test: EnrichedCallManagerImplTest, EnrichedCallBroadcastReceiverTest,
PiperOrigin-RevId: 163126355
Change-Id: I45be6f883d9c6596d20382250c220a90fbf5e996
|
|
*** Reason for rollback ***
Checking if this broke the uses-library value for pixel devices
*** Original change description ***
Update merge strategy. The legacy strategy is deprecated.
* Don't allow cleartext traffic in the voicemail module. This was being overridden, anyway.
Bug: 62339559
Test: See below.
PiperOrigin-RevId: 163109133
Change-Id: Id04c51bf3fcb66314c7b27ad96d38b3cae0df230
|
|
Bug: 63686780
Test: ClearCallLogDialogTest
PiperOrigin-RevId: 163096437
Change-Id: Ifc416b8c0ff1baa6ddbef11c26b548af2eb3fc64
|
|
Previously the DIRTY flag is used to track which voicemails has local changes that need to be uploaded to the server. The DIRTY flag is updated by the content provider and is super janky. Whenever dialer writes to the calllog or the voicemail provider the dirty flag is cleared.
When the user modified a voicemail entry, an upload is issued and blindly marking all locally read or deleted items on the server. The content on the server was never check during an upload.
After this CL, the DIRTY flag is ignored. Upload and download is now always done together. The list of voicemails on hte sever will be downloaded first, and if any voicemail is read locally but not on the server then it will be uploaded.
As the full sync when the user opens the voicemail tab was implemented, this additional transaction cost should be neglectable.
Bug: 62867500
Test: Auto test ETA Christmas, 2030. Manual: mark voicemail as read/delete voicemail.
PiperOrigin-RevId: 163093305
Change-Id: I09e918f32b9b1ffdad80731f7c25f894be2826f3
|
|
Pause is not supported on TMO for IMS video calls so we need to disable and
re-enable the camera instead.
Bug: 62962221
Test: ImsVideoTechTest
PiperOrigin-RevId: 163088983
Change-Id: I9b8ba0db877f972f27396969d9e06d54c466d1d1
|
|
When Dialer users search for contacts, if they have an enterprise account on
their device, they can also search for enterprise/remote contacts. This change
adds the viewholder that shows these contacts to the user.
Bug: 37209462
Test: RemoteContactViewHolderTest
PiperOrigin-RevId: 162793301
Change-Id: Ifa409f49c8a0069b0753a138f4762830921cb3f7
|
|
Before:
PhoneNumberInteraction only checked if it could Read CONTACT.
This resulted in a crash when setting super primary number preferences.
After:
PhoneNumberInteration checks for R/W.
Any missing, required permissions are now granted.
Steps to reproduce:
1) Add a contact with two different numbers.
2) Mark that contact as a favorite.
3) Long press on the dialer icon, long press on the contact, and add them as an icon to your screen.
4) Tap on the icon
5) Grant contact permissions.
6) App crashes.
Bug: 63668172
Test: on device, unit tests
PiperOrigin-RevId: 162761620
Change-Id: Ic9aefbb8101bc73294eb871cc9684b0464d4bdcd
|
|
This is caused by no background color is set for the call log activity.
This is regression caused by cl/162392495.
Bug: 63899078
Test: manual
PiperOrigin-RevId: 162758117
Change-Id: I3fbeffa7e5ba2a1149c425c00384ed9dbb330549
|
|
Before the other party answers the call, the swap button won't work for second
call.
Screenshots:
https://screenshot.googleplex.com/MTjD6VHEdxd
https://screenshot.googleplex.com/cVEuoTnRAZ8
Bug: 63083257
Test: manual
PiperOrigin-RevId: 162633661
Change-Id: I79ebcece059fd256e50edb7509ac1703c3145dac
|
|
This is an effort to eventually delete FallibleAsyncTask, since people still occasionally use it by accident.
There are still some instances of FallibleAsyncTask in p13n code which will be cleaned up in a later CL.
Test: existing
PiperOrigin-RevId: 162633637
Change-Id: I79b57dc6284952145f62f556799d15a31888bdea
|
|
If user press home button to hide the incall ui with pending account select
dialog, the call will stuck on SELECT_PHONE_ACCOUNT states and no new call
would be allowed to be made.
This change will disconnect the pending call in this case to allow new calls
being made.
Bug: 63600434
Test: manual
PiperOrigin-RevId: 162562378
Change-Id: I0334f95305d7c9714bcfb691772299c34b1a278e
|
|
This CL fixes a bug with the FuzzyPhoneNumberMatcher implementation. The
logic should be that if the last 7 digits of two numbers match, we treat
them as the same. The issue was that if we found digits that didn't
match between the number, we reported them as not matching, even if they
had 7 digits in common.
This CL also makes some quality of life changes:
- Renames FuzzyNumberMatcher to FuzzyPhoneNumberMatcher to match the
class name.
- Abstracts the logic of the FuzzyPhoneNumberMatcher into another well
named method, so it's more clear how the code works.
While I didn't check too carefully, I believe this will also help out
issues with capability flakiness in:
- b/62609419 | maxwelb | RCS very unstable when on cellular.
Bug: 63564400,62609419
Test: FuzzyPhoneNumberMatcherTest
PiperOrigin-RevId: 162552340
Change-Id: Ie091d985a34a16000750f6050bde6bb0ea7da4e5
|
|
Quick contact descriptions are added in the ContactPhotoManager, so we can
remove this string duplicate and its only use.
Test: manual talkback testing
PiperOrigin-RevId: 162514532
Change-Id: Ic8345a30b6d69017e72fffa1469b96b10e69cdf8
|
|
Bug: 34512128
Test: VoicemailAudioManagerTest
PiperOrigin-RevId: 162505938
Change-Id: Ie097c0e04562ea5bf915ec61cd686b5ae5e1791c
|
|
Previously if the log is corrupted for any reason(interrupted writes, cosmic rays, bad programming skills), the log reader will get an incorrect entry length and try to read a few GB of data.
In this CL a prefix and postfix is added to each log entry. If it doesn't match or if the entry length is dubious, the logs will be purged.
All existing logs will be purged upon sending feedback as a result of the new format.
Bug: 63678731
Test: PersistentLoggerTest
PiperOrigin-RevId: 162504759
Change-Id: I85f39fbc6e9738b9fb0a251131b77d8a15fe44f6
|
|
As per the documentation, DialerExecutors.createUiTaskBuilder is meant
to be called in onCreate.
As a side effect of this change, if at some point we support sending
both an image and text at the same time, the code will not work. This is
not currently planned, so this CL stays simple, rather than adding the
complexity of plumbing the old MultimediaData through
CopyAndResizeImageWorker.
Bug: 63714992
Test: CallComposerActivityIntegrationTest, manually placed EC call
PiperOrigin-RevId: 162498272
Change-Id: I710e94284b2235684a27afbfa12ea8ddef0690de
|
|
Bug: 63696987
Test: ContactsAdapterTest
PiperOrigin-RevId: 162423318
Change-Id: Ia43bda7857576b4e838372eef79edb1fa233571f
|
|
Background in call log fragment is same as the activity. It's unnecessary and only reduces rending performances.
Verified by hand that it looks same as before.
GPU Overdraw:
Before: https://screenshot.googleplex.com/y1HNFiae1j7
After: https://screenshot.googleplex.com/mQFxyWEhkFm
Performance test:
Before:
Total frames rendered: 668
Janky frames: 35 (5.24%)
50th percentile: 7ms
90th percentile: 11ms
95th percentile: 16ms
99th percentile: 73ms
Number Missed Vsync: 18
Number High input latency: 1
Number Slow UI thread: 35
Number Slow bitmap uploads: 0
Number Slow issue draw commands: 2
After:
Total frames rendered: 736
Janky frames: 32 (4.35%)
50th percentile: 6ms
90th percentile: 11ms
95th percentile: 13ms
99th percentile: 61ms
Number Missed Vsync: 15
Number High input latency: 0
Number Slow UI thread: 31
Number Slow bitmap uploads: 0
Number Slow issue draw commands: 3
Test: manual
PiperOrigin-RevId: 162392495
Change-Id: I726cd06518d282abe68eb1ff16db82c9a3e6d291
|
|
Use the android.R.dimen values for the large icon size rather than the private resources added by AppCompat.
Fixes failures when pushing the new version of the Support Library in cl/162311018
Bug: 33042051
Test: manual inspection
PiperOrigin-RevId: 162376626
Change-Id: I1d0107543df36365325812612d3330e96051ad0a
|
|
When the SIM is removed, the VVM account will be deactivated to protect user data. When the system is shutting down, the modem shutdown process will be interpreted as SIM removal and the event will be sent. This causes VVM to return to "not activated" state every time the phone is rebooted. If the phone is booted without signal or in airplane mode, the VVM tab will be missing since activation is not attempted without signal.
In this CL, BOOT_COMPLETED and ACTION_SHUTDOWN will be used to store the "shutting down" state in a shared preference. If the SIM is removed between ACTION_SHUTDOWN and BOOT_COMPLETED, it will be ignored.
SIM removal in FBE is already ignored. SIM removal in power off state is never handled.
If the broadcasts are missed (which is improbable), removing the SIM will not remove the VVM tab, until removing it again after the next boot.
Bug: 63642638
Test: OmtpServiceTest
PiperOrigin-RevId: 162298120
Change-Id: I8e093607529de75c28a4869861f18d28406f8042
|
|
To make sure bubble is dismissed on video call connected but isn't dismissed on
non-last multiple voice call disconnected.
Receive upgrade, declined and accepted:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKMFc4aDRFdi1xYTQ
Request upgrade, declined and accepted:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKelZZSURwTjBiYnM
Multiple voice call:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKNEhNWGdzWFAtTlE
Test: manual
PiperOrigin-RevId: 162288587
Change-Id: Idfa8efa3eb96980ab17694b8fe4d31fa8eb3e18d
|
|
SimpleDateFormatter cannot display times longer than 60 minutes. If
a time is longer than 60 minutes, it will display the time % 60. This
change accounts for that and replaces the truncated time with the correct
time.
Bug: 63709810
Test: CallEntryFormatterTest
PiperOrigin-RevId: 162284780
Change-Id: Ib01b135c028b5d59637850e873e5a218f9c39ae8
|
|
Bug: 34801244
Test: unit test
PiperOrigin-RevId: 162280134
Change-Id: I8179e2fe44817559c3497039ec69cb2b75b61b55
|
|
The voicemail icon was rendering at 24 dp with 2dp of padding above it. Removed
the padding and reduced the icon to 16dp.
screenshots:
before: http://screen/Dx2zcVsX10y
after (portrait): http://screen/RUnQP8CR65t
after (land): http://screen/aKCdMTLkOnU
Bug: 62517731
Test: screenshots
PiperOrigin-RevId: 162278290
Change-Id: Iaaf65d9bac3920ff1755da85b6f85752654d86b8
|
|
Bug: 37208805
Test: compiler, on device
PiperOrigin-RevId: 162268272
Change-Id: I98d63d063b9a4dff6a1b1b7462378ef7d0139bd2
|
|
When a user would delete their last contact, the contacts fragment would show
a list with the old contact and the empty contacts background view underneath
it.
Test: ContactsFragmentTest
PiperOrigin-RevId: 162267124
Change-Id: I294f2fe06f08ba6bd31148681647ffe3d536e1bf
|
|
Since we are given the camera permission by default for video calling, we don't
need to request it from the framework. But, for privacy reasons, we still need
to tell the user that we have it.
Since we're changing the preference for call composer, v10.1 users will see this
this toast again if they've never made a video call.
The toast is shown in the following situations:
1. If a user receives a video call
2. If a user makes a video call
3. If the user opens call composer
The toast doesn't show:
1. If the user has already seen the toast anywhere before
2. If the user has revoked the system permission and grants it
with a system dialog
Bug: 36608790,63405063
Test: manual
PiperOrigin-RevId: 162258610
Change-Id: Ie93413c9c2e1f083919e7183eb920100b06fd4a4
|
|
* changes:
Fix Lightbringer call upgrading when Dialer was not in memory before the call
Handle null host for secret code
Dont start a service to cancel missed call notifications, use DialerExecutor instead
Fix NPE when user click on call log.
|
|
|
|
We need to load reachability data if we do not already have it when checking
for upgrade. Previously we only did this for reachability.
Bug: 63757003
Test: LightbringerImplTest
PiperOrigin-RevId: 162246049
Change-Id: I9b4919e938b814ea18dc5107967bb6de7a945c19
|
|
The "host" is the number in the "*#*#NUMBER#*#*" format. It was assumed that it could never be null, but silent crash reports proved it wrong. Repro steps are unknown.
Bug: 63711549
Test: PawSecretCodeListenerTest
PiperOrigin-RevId: 162232903
Change-Id: I15419178099cea7f05c1c9ed5cd595a01ae8db2b
|
|
instead
We cannot start services while in the background on O. Currently, we start a
service to cancel missed call notifications in the onStop of our Activity. This
is when we are going into the background so it is not safe (as we have seen
from the crashes).
Bug: 63633461
Test: CallLogNotificationsServiceTest
PiperOrigin-RevId: 162029424
Change-Id: Ib0f46aed848ba0898af8cbee1c114b1e41f3ae32
|
|
This is caused by null tag of videoCallButtonView when expanding action view.
Bug: 63710739
Test: none
PiperOrigin-RevId: 162011496
Change-Id: If592be8cd9b05c369e2ff8b51610d93af48834f1
|
|
This allow new carriers to test their values or help debug/QA for situations like disabling prefetch.
Bug: 63013427
Test: N/A use at your own risk.
PiperOrigin-RevId: 162003756
Change-Id: Ifb227163bc3f2a94c1c07cc60fdc3a031fd625c8
|
|
This CL makes a number of changes to include temporarily unavailable
statuses (go/ec-temp-unavailable) as part ECCapabilities.
- Adds isTemporarilyUnavailable methods, which will be set by
ECBroadcastReceiver upon getting a capabilities update.
- Adds a builder to ECCapabilities as there are now 4 booleans that are
set upon construction.
- Changes the names of getters on ECCapabilities, which was required to
get autovalue to correctly generate the builder.
- Adds an ALL_CAPABILITIES constant to match the NO_CAPABILITIES
constant.
Bug: 62609419
Test: Existing tests, ECCapabilitiesTest
PiperOrigin-RevId: 161890511
Change-Id: I967a9a14793ac12101ecfed59e5f7af1217faf3b
|
|
This is just a code style clean up.
Test: none
PiperOrigin-RevId: 161885792
Change-Id: I6827f562faeca92f304efbfdb2ff35c918915a26
|
|
Before, we were creating a custom thread pool for spam transport, which isn't necessary. Instead, we can just use an application wide thread pool.
Also fixed some instances where we were not clearing the thread stats tag after opening the socket.
Test: manually launched app with data cleared and observed no crash
PiperOrigin-RevId: 161882076
Change-Id: I39bdd31cf5fa8a974d7535e861ec0716c85986f3
|
|
We now have googledialer, aosp dialer, and voip registries for traffic tags which should always be used to avoid reusing tags.
There are comments in each file about the reserved tag ranges.
Note that this moves some traffic tags from one value to another. Traffic data is cleared across device restarts so that shouldn't be a problem.
Test: unit tests verify no conflicts
PiperOrigin-RevId: 161848949
Change-Id: I5b51e6242494a0bc211748f793a415a5fead5097
|
|
Bubble showed call ended text and didn't dismiss when requesting/receiving video call upgrade. Fix it by showing text only when call is really disconnected and always hiding.
Request upgrade, declined and then accepted:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKZURkNWVOMnNnZHc
Receive upgrade, declined and then accepted:
https://drive.google.com/a/google.com/file/d/0Bz1rQbdSCWSKWGhJbi1uR004REE
Test: manual
PiperOrigin-RevId: 161750763
Change-Id: Iefb58edfbfffc33ee5231ef4928f31202e2880f4
|
|
The Hebrew translation had an extra single quotation causing an
UnboundQuotationException. This change fixes that temporarily by looking for
that specific translation and adjusting it. This change should be reverted once
the translation is corrected.
Test: release build in hebrew results in no crash, manual test
PiperOrigin-RevId: 161730025
Change-Id: Ifb171e3e795e91a93096493ec770ae339a6ed12f
|
|
A subsequent change will move the ContactPhotoManager related code,
eventually enabling the removal of contacts/common.
Bug: 37208805
Test: TAP
PiperOrigin-RevId: 161724700
Change-Id: Ice0789951ae544f6e27bcdaab0c032b218c83613
|
|
Bug: 37846172
Test: on device
PiperOrigin-RevId: 161720359
Change-Id: I2df2036c6d9941d37511f450f58682cf07e774b0
|
|
This is temporary solution to avoid expansive operation for frequent method calls. In long term we should figure out a better way for such cases.
Bug: 62424638,62426694
Test: manual
PiperOrigin-RevId: 161717598
Change-Id: I75e6589174b81ae611893e5435a94e7f629f500f
|
|
video: https://drive.google.com/open?id=0B2Hce9qilHmvdl8xY1hmcDZ0R3M
Test: manual
PiperOrigin-RevId: 161713747
Change-Id: I8185ca897a82479ef7c552a1ce6891e31c4c5aad
|
|
screenshots:
default sizes:
before: http://screen/u29zyepX0OM
after: http://screen/tXGSUbNfWAE
large sizes:
before: http://screen/NH3OmGDRyBp
after: http://screen/W6DVopCxMUp
Bug: 63156716
Test: screenshots
PiperOrigin-RevId: 161693857
Change-Id: I8310336080ae080dc586dcf21d4966260880a627
|
|
Without this change, all video calls are referred to as just "video call". This
CL uses the Lightbringer interface to allow customizing that text.
Before: https://drive.google.com/open?id=0B7uuA4cyYX0xeVZCTGtMUUtoRVU
After: https://drive.google.com/open?id=0B7uuA4cyYX0xMnFhbTBXMDI2VW8
Bug: 63138393
Test: CallTypeHelperTest
PiperOrigin-RevId: 161692812
Change-Id: I36dc1a1fae96dddee91c5efb8892c4a6c7ef67ca
|