Age | Commit message (Collapse) | Author |
|
Make sure that all invocations of TelecomManager methods that
could possibly require a permission are protected by a permission
check.
Some of these are overcautious - for example, the UI should never
show the option to return to a call (READ_PHONE_STATE) if we didn't
detect an active call (READ_PHONE_STATE) in the first place, so
it is not strictly necessary to protect against the former. But not
crashing is the most preferable of all options.
Bug: 20266292
Change-Id: Id91dd16e34320a5e607f91dbce9a4296025eeaaf
|
|
ub-contactsdialer-a-dev
|
|
Returns invalid status instead of throwing exception.
Bug: 24177581
Change-Id: I6b731ab023a0cd0f50db2e3468bfccdebce6e488
|
|
ub-contactsdialer-a-dev
|
|
- Switch to wired headset when plugged in even if playing on speaker
- Remember if wired headset overrode speaker so it can be turned back on
when the headset is unplugged.
- Ensure proximity sensor is turned on iff the earpiece is the audio
source.
Bug: 23816959
Change-Id: I952c24ee51139f21a17344acd7698c9ed8f52860
|
|
Currently uses a simple dialog for adding numbers.
Search function to be added in separate CL.
Bug: 23350280
Change-Id: Ib25b9e0d72e95853af88c446b2143341f6d077cb
|
|
Make sure we're still visible before showing dialogs.
Bug:24138858
Change-Id: I3a2cc7dba6144e055ae074177ba5c89258f69b1b
|
|
|
|
Speed dial (PhoneNumberPickerInteraction, SpeedDialFragment)
Regular search (RegularSearchFragment)
Remote Directory (RegularSearchFragment)
Call Log (CallLogAdapter)
Smart Dial Search (SmartDialSearchFragment)
Dialpad (DialpadFragment)
Bug: 23164804
Change-Id: I7cc881ac655fca6d4f365b5de36a4087c4f17700
|
|
|
|
Reschedule an update when the next minute on the system clock changes.
Bug: 2384475
Change-Id: Iead4ba7b0bf234f9e4c209a4e9c5b4f30efe4aa7
|
|
If we have a null contact lookup, replace the local reference with
an EMPTY contact info instance.
This fixes a test failure, and possible lookup scenario.
Bug: 23640774
Change-Id: Ic83f1e73bfbb3b4e3920051f906a3d83524fc8cd
|
|
Use the builder pattern to create a Call intent to replace the
numerous variants of getCallIntent. This will facilitate the
addition of future extras to the created call intent.
Bug: 23164804
Change-Id: Ibab8473274de8e423f621ae6fbb9685eeb2a7cab
|
|
In some countries, it appears that the country code received is
not always accurate to what we would expect (carrier kerfluffery?),
so don't do a lookup with the normalized phone number.
This is consistent with the logic we have been using for InCallUi.
Bug: 23822088
Change-Id: I2c7ede596cbb8a2e5c4a3a35d04ca78e62767bcc
|
|
|
|
ub-contactsdialer-a-dev
|
|
ub-contactsdialer-a-dev
|
|
Bug: 23350278
Change-Id: I2304055f4e2b5ffbb50370fd8cf9517f50210d75
|
|
+ Make ViewHolder generic to generic to promo cards with customized
text or graphic layouts, as long as they implement two actions,
now designated the primary and secondary action views. This resuses
code which is logically similar between promo cards, and hopefully
doesn't bite us back in the future if there is a divergence in promo
card structure.
+ Make the GroupingListAdapter slightly "safer".
Bug: 23422274
Change-Id: I60bced4dbc61fec2e225a1cae9726ac40ed679a5
|
|
- Remove expand/collapse and item type logic in GroupingListAdapter.
Losing some potential functionality, but it does not adversely
affect how we currently group, and makes grouping easier to
understanding.
+ Rewrite GroupingListAdapter to provide O(1) lookup for group size
and getItem. This requires maintaining a SparseIntArray of metadata
for each list item. Cut metadata storage from long to int, to help
adjust for the larger memory overhead.
+ Simplify the logic for building and maintaing the metadata in the
GroupingListAdapter, offloading much of it to the SparseIntArray.
+ Explictily add all groups, including groups with single items,
in the CallLogBroupBuilder.
+ Tidied up logic in CallLogGroupBuilder to make it more intuitive
what cases it's handling and what's happening.
+ Updated tests to work and pass with new tests.
Bug: 23422274
Change-Id: Ia7a00c4b580813cade87fdc054ffdd702f59c12c
|
|
Query for number of unread voicemails when dialer starts and update this
number when the user reads the voicemails.
Pass the tab icons into the ViewPagerTabs class: changed so that the raw
image is passed instead of the modified drawable because the ripple is
applied in through the ViewPagerTabs layout instead of through the
drawable containing the icons.
Bug: 21086059
Change-Id: Ie426b042d72926ea3feb7baa4717108776152754
|
|
Bug: 23557301
Change-Id: I4faf58a9df9a3391c35e5cb4db7cc727b6842585
|
|
|
|
Bug: 22741728
Change-Id: I890f447bf580df44344fa7cb0cdfc35583f22e06
|
|
Snackbar will appear for 3 seconds during which the user can undo the
last deletion. The way it works is the snackbar appears for 3 seconds
and a delayed callback is set for 3 seconds after which the voicemail is
permanently deleted from the database. If a second (or third or fourth)
voicemail is deleted subsequently, the previous voicemails that were
waiting for the undo timeout are deleted immediately.
Bug: 22460745
Change-Id: I84b70994275975e4e3020321884d382cc87098dc
|
|
|
|
+ All user-facing indications should now say "Call History".
+ I renamed many references in code to "Call Log", which is how
we internally refer to many of the components related to call
history. It seemed excessive to rename the fragment, list items,
adapters, and other references to that throughout our codebase.
Bug: 23017190
Change-Id: I99719122ce592962ff99705dcf4b16e17eee3ab7
|
|
In order to add an "Undo" snackbar for voicemail, dialer activities need
to inherit from the AppCompat library. Add the relevant libraries to the
make files and change the styles to be compatible.
Bug: 22460745
Change-Id: Ia3cc4002cbd943da818fec67f888d085d53a3b25
|
|
+ Rename some logic around identifying the scenario (tab vs activity)
for the call log.
+ Add padding at the bottom of the call log.
+ Make call log in tab show all history, not just recent history.
+ Rename promo card logic in CallLogAdapter, since it is VM specific.
- Remove extra view holder, and associated logic.
Bug: 23017190
Change-Id: I1f36f414647705a779ee14e8b43e88bf711bba56
|
|
Bug: 22879229
Change-Id: Ib205ef23e91dbb7e275930c49acfc89cf59803aa
|
|
note" action." into mnc-dr-dev
* commit '2846388ea2b0e8dc8cc4d21a9a43b9e13f9f6001':
Add "Call with a note" action.
|
|
- Adding call with a note action to the call log. Capability lookup is
cached.
- Moved getLookupKeyFromUri to ContactsCommon.
- Added some extra required values in CallLogListItemViewHolder so that
the call subject dialog is able to build the correct contact photo.
Bug: 22685114
Change-Id: I6665c55137eef7db3ff7ac12d70d823937e8c28b
|
|
"Don\'t update call log in CallerInfoQueryThread without permission" into mnc-dev
* commit '87a4f832928f3a795490b8a048aba481bcb5e4b2':
Don't update call log in CallerInfoQueryThread without permission
|
|
into mnc-dev
|
|
Bug: 22801077
Change-Id: I16c9c574597564c9f84bbcc00211e097538529de
|
|
contact info cache query thread in onResume
* commit '0083bf28badde4c26e455d9a776c0070d4a71acf':
Start contact info cache query thread in onResume
|
|
Bug: 22783484
Change-Id: If7881ad6a18eafe0b2ea8411b8472ba444320991
|
|
onPreDrawListener logic
* commit '547661c110e349f2978761ac29d32f4d7b4e7df0':
Remove onPreDrawListener logic
|
|
A bug in the PreDrawListener code was causing it to not be removed
from the ViewTreeObserver. This means that everytime a view was
rebound, another onPreDraw listener callback would be added but
never removed.
Compounding the problem is that in each callback, a costly
permission check via IPC is done, causing each frame to slow down
increasingly as more views are bound.
In practice, these PreDrawListeners are no longer needed as they were
only used to prime the Contact info query thread, which happens via
other code paths anyway.
Bug: 22759147
Change-Id: Ica2a31c0849c2eb34ac6f77d49cf23cbe32c6941
|
|
"Reset voicemail playback when call log is paused." into mnc-dev
* commit '1773edbb534e4849eafd76b5c5e97b889a5f5130':
Reset voicemail playback when call log is paused.
|
|
|
|
expand next voicemail after deleting
* commit '237e0cc3015fb6eb43a0f5caeaff2a817e606ada':
Don't auto expand next voicemail after deleting
|
|
Added item to context menu that allows copying the voicemail transcript.
Removed the select-on-double-tap from previous commit.
Bug: 22451484
Change-Id: I518680afda74c4c15c5fb16b02a55cae64ed131d
|
|
Pipe onVoicemailDeleted notification through to CallLogAdapter.
Reset expanded position when that happens.
Bug: 22534894
Change-Id: Iec69082bd8b3259f500b523da6d0710bece69fa4
|
|
If the user navigates away from the call log, reset the currently
playing voicemail playback. Which includes resetting the start point,
pausing playback, and refreshing the play icon.
Bug: 22530093
Change-Id: I78eda2d86cf0f5b24136a7a9ba299214f155672b
|
|
|
|
Update the following fragments to handle denied permissions
-Contacts Search (Contacts and Location)
-Dialpad Search (Phone)
Tweak and remove some of the onTouch listener logic as they are
no longer valid with the new UI. Instead of intercepting the touches
when the query is empty and returning to the main dialer activity,
allow the fragments to remain on screen if the permission request
UI is showing.
Modify signature of onEmptyViewActionButtonClicked to remove unused
permissions parameter.
Bug: 22174668
Change-Id: I96d00f2ab45df936dca602ac025f723638ac02c4
|
|
Bug: 22531073
Change-Id: I09f0b6d94de89ac9236308cec07b12fb8131bc19
|
|
First pass at adding functionality to Dialer to prompt for
permissions. Also updates the UI for various fragments when
there are no contacts/calls available to unify the UI with the
new UI for the permissions denied state.
* Refactor existing empty view functionality and encapsulate
into a new custom view class
* Add action buttons to existing empty views in various fragments
-> Speed Dial (Add to favorites) - scrolls to all contacts fragment
-> Recents (Make a call) - shows dialpad
-> All contacts (Add a contact) - Launches add contact dialog
* Add functionality to various fragments to detect if permissions
are denied, and request the permission when the action button
is pressed.
-> Speed Dial (request for contacts permission)
-> Call Log (request for phone permission)
-> All contacts (request for contacts permission)
* Remove now unneeded EmptyContactsListAdapter
Remaining issues (to be addressed in a follow up CL to avoid bloating
this CL):
UI alignment tweaks for empty view to match mocks
If the read contacts permission is requested from the
speed dial screen, the all contacts fragment doesn't update with
the list of contacts until restarted.
Bug: 22174668
Change-Id: I70721914bb9b32910d746de288ccac049749e42e
|
|
|
|
For maximum safety, always check the current permission status
on the fly.
Bug: 22455059
Change-Id: I05da7ec1ad2e885e3e5e78e14585c876ac19178e
|
|
Protect querying of ContentResolvers with the relevant
permission checks.
Check the correct permission in onHandleIntent of
CallLogNotificationsService.
Bug: 22436465
Change-Id: I7fed82545b10921c1a935f903a466d8894d7b7f1
|
|
|
|
Bug: 22278550
Change-Id: I756703c9441801c623b9dbcbe0d96803de2a3063
|
|
Use the DialtactsActivity instead of CallLogActivity when
accepting ACTION_VIEW intents for the "calls" mime type.
Also remove an unused method in CallLogFragment.
Bug: 22266705
Change-Id: I1bf089901b1a5f9534c9f7a8484c12e535a87749
|
|
|
|
First pass at making Dialer display the call log, favorites,
all contacts, and contact search after permissions are granted
withut having to restart the app.
Update cached permission status in onResume for Dialer activities
Update SpeedDialFragment to correctly initialize loader in
onResume if it was null previously because of revoked permission.
Bug: 22205650
Change-Id: I68982e69395bc9c7da84ff3221cd12b8f79005f9
|
|
Bug: 22127956
Change-Id: Ia1a62e799bf7b535da2390bc0e8fa62201b8a684
|
|
When a call log entry is long pressed, show a context menu that
provides the following actions:
1) Copy to clipboard
2) Edit number before call
Bug: 21453814
Change-Id: I796cffbec39847fd9c61891063217b15cb298479
|
|
|
|
Bug: 22169419
Change-Id: I512153e31a13df5f36bcb8dc00d53d55ba70117c
|
|
This improves call log scrolling performance.
+ Split "Wrapper" into a utility and a cache.
+ Use cache for repeated calls related to call logs.
+ In the process of fixing plumbing and typer, moved some phone call
detail classes into the more appropriate call log package.
+ Update tests.
Bug: 20524705
Change-Id: Ib8ee21e417c19f98f6474a5793416e8f99103b55
|
|
|
|
|
|
|
|
+ Get transcript when obtaining information for notification.
+ If there is only one voicemail, show the transcription in the
expanded/long text of the notification.
Bug: 21762588
Change-Id: I35958f863d6622147032561121073960a30a6f0e
|
|
This increases discoverability of the expand actions, and also
makes it quicker to interact with the most recent items.
Bug: 21960523
Change-Id: I6aefdd5b96a86177b26ecc59879d1a787115221a
|
|
|
|
+ For the voicemail notification, jump to voicemail tab.
+ Jump through some hoops to handle this properly when waiting for the voicemail
status to be retrieved.
Bug: 21120186
Change-Id: I5a82f3ecafadb45246e6637e8275a09f78cc188a
|
|
The promo card explains what visual voicemail is, along with a link to
settings to disable it and an ok button to dismiss it.
Also move common resources from GoogleDialer to the respective resource
files.
Bug: 21086059
Change-Id: Iecfe778b815fb572667d0cecdb958205ec1b48a0
|
|
|
|
+ Control MediaPlayer instance more tightly. Wait until
prepareContent to initialize instance. Release MediaPlayer when it
is no longer needed.
+ Instead of using isFinishing, check explicitly for orientation
change to know whether to release MediaPlayer.
+ Change Presenter to singleton, to address audio change wonkiness.
+ Only create a Presenter if the call log fragment shows voicemail.
+ ... fixing a variety of cases.
- Temporarily disable proximity sensor until blocking issue is fixed.
Bug: 21856243
Change-Id: Ic06e98bb5278467c3cce726a06b6cf3d855861a2
|
|
Bold the text for unread voicemail messages.
Bug: 21086059
Change-Id: Ieb07c7fa22a91669faeb425dabb60b1176ec1091
|
|
We will use it to set windows flags to help make playback behaviors
reasonable.
Bug: 21856243
Change-Id: I7c1ecb9e225a507ea8956ccc31d667361a4b6824
|
|
+ Add voicemail primary action button, which expands the call log
and plays immediately when clicked.
+ Pass expand/collapse listener into the view holder. This is
necessary because it needs to be triggered when the "play" primary
action is clicked so that the CallLogAdapter correctly registers
what has been added and binded.
+ Update primary action button state when showing or hiding actions,
so the visibility of the voicemail play button is managed properly.
+ Ensure voicemail playback state is consistent between multiple
call log items when the user initiates a collapse or expand. Add
reset function to help manage this.
+ With the reset, protect against the possibility of functions in
the presenter being called when no voicemail playback view is set.
Bug: 21654755
Change-Id: I7bcf67d27fa08fe77d1334dc084b52effe8d3ccc
|
|
|
|
Not sure precisely why this changed, but hopefully this logic is
more robust. Show the geocoded location if there is no name to use
and a location is available.
Removed GEOCODE_AS_LABEL, which wasn't really used anymore.
Bug: 21814339
Change-Id: I1343282ef415647853d7995d900a3f50186ad156
|
|
|
|
+ This is the call button on the standard call log list item, but
will be play on voicemail call log list items.
+ Add call "list" action for voicemail call log list items.
Change-Id: I4b115b96738b77c8a19c1071d5290e65f93395ac
|
|
Bug: 21814327
Change-Id: I6f59781ba5f8e5e396d919fefed6bfd76ec9e206
|
|
- Delete old report button/handling code.
+ Convert menu click listeners into single onMenuItemClick method.
+ Add and populate objectId on PhoneCallDetails, to be able to
tell from the CallDetailActivity whether to enable reporting.
Change-Id: Ie4b9a3c1835792cbba04dc826f71fd2e53071400
|
|
|
|
It's been a pain to add/change fields on PhoneCallDetails because
a multitude of parameters required for the constructors to create
an instance. I ran into this while considering how to add an
objectId to its parameters, and have previously too...
Make fields non-final so that they are more easily set. This has
the side-effect of making the casing of some initialization code
more straightforward.
+ Change it's constructor to a subset of required fields.
+ Simplify/reorganize CallLogAdapter and CallLogAsyncTaskUtil code.
+ Simplify tests.
Bug: 21733599
Change-Id: I236dfb0b8e6513f4b44dbdae17ce2eb9c9ae4778
|
|
|
|
Changing the call log details duration display to show only the seconds
if the elapsed duration is less than a minute.
Bug: 19383401
Change-Id: I8d39ca2c6c680e58602022250d4272d83024696d
|
|
|
|
|
|
Run "changeCursor" on the main thread. I'm not precisely sure why
this fixes things, but it appeared before that the data I had on my
local device was being used instead of the test data.
Bug: 21471763
Change-Id: I6bece02e7c6828d54f76b5221ad10cf8f0052aa9
|
|
+ Pull out voicemail playback tests into their own test class.
+ Fix CallDetailActivity unit tests.
+ Some minor tweaks to functional code to facilitate.
Bug: 21471763
Change-Id: I0f1747ab7ad6eba7dd2a7f6f8cfd060b409771bc
|
|
Bug: 21471763
Change-Id: Ie28dc2715a173179ed753a7e38bd252c01e78f46
|
|
|
|
When this was refactored before, some of the logic was bad.
Some of the expected values were changed as well. I figured
"add to contacts" is a really bad default text, because we
don't actually support that action in call details. Also,
the strings returned by the library for describing relative
time spans changed.
Bug: 21471763
Change-Id: I0c78c89c9c2e44de198f1f9299711fc31fe81cb1
|
|
- Delete voicemail playback in the CallDetailActivity.
+ Add voicemail playback to the call log list items.
+ Move the VoicemailPlaybackPresenter to the CallLogFragment.
+ Fix some retaining state for both call log (expanded items), and
preserve rotation/state functionality for voicemail playback. This
included some changes to the Presenter logic.
+ Fix some tests.
Bug: 21471763
Bug: 21170557
Change-Id: I30aae3a52c5bbf74a5075a9666343c337b1fc0df
|
|
|
|
In response to more API review.
Bug: 21571895
Change-Id: Ia1fa69da07a3427997919ba61c77fcbad7e79f2a
|
|
+ Reset the AsyncTaskExecutor's instance between calls in tests.
I don't know why this is necessary, but it fixes a class of problems
which were happening.
+ Don't try to release a media player if it has not been prepared.
+ Handle possible race conditions since MediaPlayer's async prepare
may be buffering or finished when a test assert is executed.
+ Add asset file no longer provided by variablespeed library.
- Cleanup some stream copy code.
Change-Id: I0ae5fde00514c6dcdb1e9c063435a13eed6e8528
|
|
|
|
Bug: 21448455
Change-Id: Icb9f37643d12dde2d46743d2ce3aa2fade7a68a1
|
|
+ Substitutes the existing playback widget in CallDetailActivity,
although the plan is to move this to the call log shortly.
+ Convert the widget from a fragment into a layout. This allows us
to more easily create multiple instances of the voicemail widget in
the same view, as we intend to do in the call log.
+ Shift UI-related logic from Presenter to the Layout.
+ Fix janky seeking, so that it now works correctly consistently
rather than sporadically, and doesn't need to buffer again.
- Remove the VariableSpeed player formerly used in the Presenter. We
don't use this functionality anymore, and this allows us to directly
used the framework MediaPlayer (instead of a custom legacy proxy).
Bug: 21170557
Bug: 20693172
Change-Id: Ia34f459df10e43763b32fdb0954f83e882664231
|
|
|