summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Fix broken Dialer testsYorke Lee2014-05-294-22/+12
| | | | | | | | Remove unneeded use of resources Instantiate CallLogListItemViews correctly Add dummy number to SmartDialPrefixTests Change-Id: I417f54329f43d53e24c4ab6cc65d08d05b5dd6a1
* Fix build breakage: Revert "Fix broken Dialer tests"Ed Heyl2014-05-294-12/+22
| | | | | | This reverts commit fabd82363920a24be32d68adb5966412c626dea0. Change-Id: If65df0d4badc3381f60923a04412f4bec5c36c62
* Fix broken Dialer testsYorke Lee2014-05-284-22/+12
| | | | | | | | Remove unneeded use of resources Instantiate CallLogListItemViews correctly Add dummy number to SmartDialPrefixTests Change-Id: I3d61c3a6892f3fe84a353cc7617c011aa5124e9a
* Fix build breakYorke Lee2014-05-271-2/+2
| | | | Change-Id: I84dd2667227f40962b8d034c35c5e56f854221e3
* Add ActionBarControllerYorke Lee2014-05-231-0/+181
| | | | | | | | | | | | | | | * Collect all actionBar interactions within DialtactsActivity into a single controller to ensure that it behaves more deterministically, and fix some bugs with regards to actionBar interactions. * Make sure that action bar correctly handles activity recreation and destruction by saving its state * Add unit tests and mock classes for ActionBarController Bug: 14900155 Change-Id: I370831db425e1970b118f5d4fed3ce9297e3610d
* Fixing build error caused by missing implementation in test class.Tyler Gunn2014-05-151-0/+10
| | | | | Bug: 13962594 Change-Id: I92b3da51069f4299ef056fdfa6abdcf63c5549c1
* Animate call log expand/collapseYorke Lee2014-05-131-1/+1
|
* Removing highlighting of missed calls and voicemails in the call log.Tyler Gunn2014-05-123-28/+27
| | | | | | | Also fixing some broken unit tests. Bug: 13962594 Change-Id: I3ca2d72b3013b6324da19717dbc984f3e7e576e2
* Adding support for expandable call log entries.Tyler Gunn2014-05-054-115/+34
| | | | | Bug: 13962594 Change-Id: I19a4a65dce922619df0a709293ca291c345c8be7
* Use PhoneFavoritesTileAdapter directly in GridViewYorke Lee2014-04-211-69/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL moves the adapter that contains the speed dial contacts into its own GridView that lives in PhoneFavoritesFragment. This is the first step to splitting up PhoneFavoritesMergedAdapter into a list of shortcuts and a grid of contacts, and also get rid of the convoluted ContactTileRow logic within PhoneFavoritesTileAdapter, to facilitate a future transition to RecyclerView. * PhoneFavoritesTileAdapter now directly returns PhoneFavoriteTileViews rather than ContactTileRows. * Deleted a lot of unnecessary complicated logic within PhoneFavoritesTileAdapter that had to do with ContactTileRows. * Simplified and rewrote animation logic so that animations now perform as expected within the GridView. In the future this may not be necessary if RecyclerView is used. * Rewrote layout/measurement logic for PhoneFavoriteTileView. It now determines its height directly based on what its measured width is. * Replaced PhoneFavoritesListView in PhoneFavoriteFragment with a standard GridView * Delete stale PhoneFavoriteTileAdapter tests Notes: Call shortcut cards are now temporarily missing due to this change Bug: 13963734 Bug: 13933092 Bug: 13419223 Change-Id: I71e8970667589e4024d00e9af2c8b45c843c5db1
* Use new ContactPhotoManager APIs for letter tile avatarsYorke Lee2014-02-281-1/+1
| | | | | | | | | | | | | | | | | | | | *Modify the following uses of ContactPhotoManager.loadPhoto in the following classes to include a DefaultImageRequest, populated with the contact's display name, lookupkey, and contact type as necessary CallDetailActivity CallLogAdapter PhoneFavoriteTileView *Add utility methods to ContactInfoHelper, to parse a lookupUri for a lookup key, as well as determine whether or not a contact is a business contact, from its sourceType field. *Add a sourceType field to PhoneCallDetails which can be used to track whether or not PhoneCallDetails belongs to a business contact *Add a lookupKey field to ContactInfo Bug: 13101785 Change-Id: If339a9c038f92a0212f8f8b45b5e3cc5f6442562
* Switch favorites screen to grid layoutYorke Lee2014-02-181-5/+135
| | | | | | | | | | | | | | | | | | | | * Add logic to PhoneFavoritesTileAdapter so that it now supports an unlimited number of tiled rows. * Tiles now have a configurable height to width ratio. * Fix animations so that tiles moving up and down rows appear to animate in from the correct direction. Tiles moving to the row above should animate in from right to left. Tiles moving to the row below should animate in from left to right. * Update the number of columns in the grid to 2. * Update layout of individual tiles to match redlines from UX. * Tweak font sizes for tiles * No longer truncate names in tiles * Tiles have a 2-3 height to width ratio * Update assets and layout for favorite and more info icons * Add content description for the favorite button * Add tests for PhoneFavoritesTileAdapter Change-Id: I50b298f0941698985d281f13e6a87c5a9b613efa
* Call History Affordances SwapTyler Gunn2014-02-033-31/+243
| | | | | | | | | 1. Swapped the intents for the primary view 2. Changed the icon for the secondary action button 3. Added a vertical divider line to separate the secondary action button from the primary view 4. Cleaned up the accessibility text Change-Id: Ifd4ceff0d67b1587c4378e29be7344de50057a7d
* Merge "Remove use of hidden TelephonyManager methods"Yorke Lee2013-11-251-1/+4
|\
| * Remove use of hidden TelephonyManager methodsYorke Lee2013-11-221-1/+4
| | | | | | | | | | Bug: 6948882 Change-Id: Ibce04c24e64fdb33fba532c0f0e5dca3b11f1b6c
* | Merge "Fix Dialer tests"Yorke Lee2013-11-256-25/+43
|\ \
| * | Fix Dialer testsYorke Lee2013-11-226-25/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Empty geocode is now " " instead of "-" per UX request * DialpadFragment now throws IllegalArgumentException instead of Log.wtf so that it can be tested * Added contact id column to contactsprovider query * Modified PhoneNumberDisplayHelper to take an instance of PhoneNumberUtilsWrapper so that it can be mocked out Fix label-related tests that were failing due to a change in how we treat empty labels Bug: 9111164 Change-Id: If2244586b9d09fa2839fa0ddfc9f369f9dc66e51
* | | Fix SmartDialNameMatcher NANP testYorke Lee2013-11-221-0/+1
| |/ |/| | | | | | | | | | | | | Statically initialize prefix logic to use NANP matching for NANP tests Bug: 10346442 Change-Id: Ia268de8a9bc5ad8dae70fe6934823a3c289f0bae
* | Fix Smart dialing testsYorke Lee2013-11-221-5/+3
|/ | | | | | | | | Test contacts were being created without unique contact ids and lookup keys, causing them to be mistakenly identified as duplicates. Bug: 10346442 Change-Id: I47fd5bdae83346b6b2f620d7abe49326b1cfd23d
* Rename PhoneNumberHelper in DialerYorke Lee2013-11-192-2/+2
| | | | | | Rename PhoneNumberHelper to more appropriate PhoneNumberDisplayHelper Change-Id: I2c03f5cbb04c1e03f1fc1e0051a1cea641160dca
* Adding missed call badge.Chiao Cheng2013-09-241-1/+1
| | | | | Bug: 10861718 Change-Id: I3a889a71cff7abac578da83d09dd7af23f3f88ca
* Fix build break.Chiao Cheng2013-09-201-1/+1
| | | | | | | Updating access modifier of test class. Bug: 10822944 Change-Id: If24c4afc280b2b2dcdf38119a857f0f3b9fd8778
* Follow up on build break to fix unit tests.Chiao Cheng2013-09-143-15/+17
| | | | Change-Id: I82b7fa50601f6dad60038fd1b9c5f0aad2f374f5
* Fix build break.Chiao Cheng2013-09-131-4/+0
| | | | Change-Id: I1d1aa2bc7228a788805937b80972cb800ed0ceff
* Add no contacts view to DialerYorke Lee2013-09-111-2/+2
| | | | | Bug: 10330508 Change-Id: I5f73a63118558e734cd36e681c59f4b82050a49c
* Rewrite animation logicYorke Lee2013-08-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * Remove old animation-related code. In the past, animations would be applied to a view everytime getView was called. This is no longer the case so it fixes the issue of animations triggering everytime the list was scrolled, dialpad opened, etc. * Make PhoneFavoriteMergedAdapter (and PhoneFavoritesTileAdapter) return stable IDs, so that they can be used for animations. The ID schemes are described below: (N + 1) to -2: CallLogAdapterItems, where N is equal to the number of call log items -1: All contacts button 0 to (N -1): Rows of tiled contacts, where N is equal to the max rows of tiled contacts N to infinity: Rows of regular contacts. Their item id is calculated by N + contact_id, where contact_id is guaranteed to never be negative. * Perform animations by saving each view's offset before the data set changes, and then applying a translation animation to them based on their new offsets in the updated list view. This is the same method described by the framework team at : http://graphics-geek.blogspot.com/2013/06/devbytes-animating-listview-deletion.html In our case, we need to perform both horizontal and vertical animations because of the contact tile favorites. Bug: 10294203 Change-Id: I3ea4ff9995c539267410a264dbbea5ffa02bc6e3
* Fix SmartDialPrefixTest database creation.Christine Chen2013-08-171-141/+134
| | | | | Bug: 10346442 Change-Id: Id6326622ff91175b55717409754dd376a48c0269
* Change primary actions of the CallLog items.Christine Chen2013-08-152-5/+85
| | | | | | | | | | | - When the CallLog item is in the CallLog fragment, the primary action remains to be opening the call detail page. - When the CallLog item is in the Favorite fragment, the primary action changes to be calling the number directly. The secondary action is hidden unless it is to play a voicemail. Bug: 10308694 Change-Id: I28ca7aa783bcca35eb8b41f6e8508d08062dd253
* Integrate pinning support with drag and drop UIYorke Lee2013-08-071-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added the concept of a blank entry. This is used to keep the rest of the list in place while a contact is being dragged. Blank entries appear as invisible views for now. * Added the concept of a DEMOTED contact, which is used to indicate that a contact should never be displayed in the favorites list. * Pinned position management methods and tests Added two methods to handle assigning of contact positions based on their pinned positions, as well as reflowing of contacts when a contact is pinned at a new position. The assigning of contact positions works as defined below: 1) All contacts with pinned positions are assigned their defined pinned positions as necessary. 2) If two contacts have been given the same pinned position, they are ranked based on the order returned from the ContactsProvider ( alphabetical by display name). The second contact is then pushed to the next position, bumping all corresponding pinned contacts down by one spot as necessary. 3) If there is a contact with a pinned position that is greater than the number of starred + frequent contacts (this can happen if user clears frequents, for example), then it is simply treated as an unpinned contacts. 4) All unpinned contacts flow to fill in the gaps between pinned contacts. The reflowing of contacts works as defined below: 1) Pinning a contact at a new spot replacing an unpinned contact simply pins it at that position. 2) Pinning a contact at a new spot where there was already an existing pinned contact bumps that replaced pinned contact down by one spot alongside all subsequent pinned contacts as necessary. I.e. contact A is pinned at position 2. Before: [A][1][P][P][4][P] After: [0][1][A][P][P][P] 3) If there is no more space at the end of the list to bump the pinned contacts one spot further, then the replaced pinned contacts will shift to the left to take the space of the original moved contact. I.e. contact A is pinned at position 3. Before: [A][1][P][P][P][P] After: [0][P][P][A][P][P] * We no longer perform dynamic updates of the in-memory list. Instead, when a contact is dropped at a new location, the new positions are sent to the ContactsProvider, which updates the database and notifies the adapter that there is a new cursor with updated data. The new list of ContactEntries is then reconstructed from this new cursor. Note that animation behavior with the newly introduced pinned contacts is pretty janky looking - Instead of flowing together with the rest of the unpinned contacts, pinned contacts should remain in position and not animate on a dataset change. Likewise for empty contacts. In order to support this, the animation logic will have to be rewritten to take into account not just soley where the dragged contact was dropped, but also the old and new position of each and every single contact in the list, before and after the database refresh. Change-Id: I5c9542a7fec529f5d965eebe76acbebe1fc10357
* Code cleanup for call log related itemsYorke Lee2013-08-053-18/+14
| | | | Change-Id: I2aa0458e1fb74abaea60a02f430a4e413dfed365
* Initial commit of all new dialer activities, layouts and stylesYorke Lee2013-07-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As far as possible, this change does not modify any behavior/look of the existing dialer. All modifications to classes/layouts/style attributes that would affect functionality of the old dialer are instead done in separate new files. Added new versions of all activities, fragments, layouts, menus and resources that have been rewritten or modified. The activities do not have intent filters yet in order to not interfere with the existing dialer. Added some new values in colors/styles/dimens for the newly added layouts. Added NewCallLogActivity to separate the CallLogFragment from DialtactsActivity. All call log and voicemail entries are now presented in a separate (New)CallLogActivity. IntentProvider.getCallDetailIntent now takes a cursor instead of an adapter for more flexibility. Add OnListFragmentScrolledListener interface for DialtactsActivity to receive callback when one of its children fragment is scrolled. Added slide in and slide out animations for DialpadFragment. Add slide up and hide animations for search view All menu options now show up in a PopupMenu in NewPhoneFavoriteFragment. Added call log adapter into NewPhoneFavoriteMergedAdapter. Rewrote layout of DialpadFragment to show up as a fragment partially overlaying the screen. Removed some unused code in DialpadFragment (smart dialing, menu handling) Add fragments and adapters for SmartDial. - Update Dialer database to support highlight masking and record contact data Uri, as well as photo uri - Add a fragment and adapter for smart dialing - Add SmartDialCursorLoader to load SmartDial results. - Typing in the dialpad now returns smart dialing results instead of regular search results QuickContactTiles for all sub-adapters of PhoneFavoriteMergedAdapter now use light theme instead of the the default dark theme. Removed all redundant call log filter and contacts to display filter code Moved Dialer specific UI list-related classes to the Dialer package Change-Id: I34885813e4fa79b69e29ac870a87a56d6f08a5e7
* Remove CallLog New and Old sectioning.Christine Chen2013-07-034-76/+22
| | | | | Bug: <5751629> Change-Id: I1689fa10f285bc66fc69b6a9b9da139ce5461d83
* Add SmartDial database for the Dialer app.Christine Chen2013-06-284-470/+600
| | | | | | | | | | | | | | - Creates a database helper to create a smartdial database for the Dialer app. - Queries all rows in the Contact database and copies related columns to the smart dial database. - Create another prefix database to contain all prefixes of a contact. - During keypad input, the prefix databse is queried to find contact suggestions, and suggestions are ranked by the usage data and contact status (starred, primary contact, etc.) - Created unit test for the SmartDial database insertion and prefix computing functions. Change-Id: I4d7c3b3bcc52dd6efa4d6e69d3f1687c3abaeb69
* Use new CallLog number presentation columnJay Shrauner2013-06-136-78/+102
| | | | | | | | | Switch to using new number presentation column in the CallLog table and discontinue using special phone number strings in CallerInfo. Needed for unbundling. Bug:6948882 Change-Id: Ibf27ea55cee783c4530101e4e228198e245e6684
* Added SmartDialMap interfaceYorke Lee2013-05-231-1/+2
| | | | | | | | | All character validation, remap and index calculations in both SmartDialTrie and SmartDialNameMatcher now go through a SmartDialMap. The LatinSmartDialMap is used by default. Bug: 8769026 Change-Id: I4ff90acc380e802f035ca1fbc55c022bf3b76aa3
* Apply NANP logic to numbers with a +1 country codeYorke Lee2013-05-012-1/+34
| | | | | | Bug 8769688 Change-Id: I4aadd0f9e5495fb1b604910306dfd918d1540136
* Fix Smart dialing OOM for extremely long contactsYorke Lee2013-04-301-30/+75
| | | | | | | | | | | | | | | | | | | | | | Names with an extremely large number of name tokens were using exponentially increasing amounts of memory since we have to insert entries for all possible initial name combinations. Added a check in the trie insertion algorithm to only add initial matches for the 1st 2, and the last 2 name tokens. This change only affects search by initial matches for names exceeding 4 name tokens. Full token search for names of all lengths should still work. E.g. "frank", "enstein" would still match "Dr Frank En Stein DDS". However initial matching would be limited to the first 2 and last 2 tokens. So "dfsd" or "fsd" would work, but "fes" or "fed" would not. Also fixes a bug caused by integer overflow when calculating thresholds for bucketing frequently used contacts Bug 8737986 Change-Id: I804184368b78fe2fa407667ed83874d839c28115
* Allow name matching for contacts with numbers in their nameYorke Lee2013-04-192-1/+77
| | | | | | | | | | | | | | | | For SmartDialTrie, also include numbers as valid characters when calculating indexes when generating the byte array. For SmartDialNameMatcher, include '0'-'9' as valid latin characters, and handle them appropriately after remapping accented characters. Also fixed a subtle matching bug that would manifest itself when matching against multiple tokens with similar initials - E.g. "Dr.Dredd" Bug 8659001 Change-Id: If461d2760a723ef7fd03dda0c1a1515cd7b44cf6
* Allow smart dialing to ignore country code/area codeYorke Lee2013-04-173-35/+264
| | | | | | | | | | | | Add handling of country codes if the number starts with a '+' prefix Also add special case handling for NANP numbers in SmartDialTrie if we determine that the user is in North America. Save user's SIM country ISO into SharedPreferences. Add SmartDialNameMatcher methods to correctly match NANP numbers Fix tests to use assertTrue/assertFalse instead of assertEquals Bug 8292294 Change-Id: Ic61dac75ee3b772986d3008240bbda81322c8f31
* Merge "Fix name matching bug with non space separators" into jb-mr2-devYorke Lee2013-04-081-2/+22
|\
| * Fix name matching bug with non space separatorsYorke Lee2013-04-081-2/+22
| | | | | | | | | | Bug: 8435819 Change-Id: I69c32207d123e5da4ae5421a5fe83ffeee4e5070
* | Fix failing tests in PhoneCallDetailsHelpeTestsYorke Lee2013-04-081-5/+5
| | | | | | | | | | | | Bug 8566339 Change-Id: I20f84454f09be6f954c98042395908ca63977f6f
* | Always show WAIT/PAUSE in dialer overflow menu.Santos Cordon2013-03-191-0/+81
|/ | | | | | | | | | | | | | | | | Used to hide menu items when not applicable. Now we show them always and only perform the action in those cases where menu items were previously visible. Updated code to do zero-position checks when there is no selection...previously missing check. Changed code to use chars instead of Strings when dealing with single digits. Consolidated duplicate code with updateDialString() function. bug: 7478840 Change-Id: I2aa5d3badd40079e9aa75abf7e4051f9dba5e667
* Smart Dialling v2 with phone number supportYorke Lee2013-02-121-0/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Behavior: Use a prefix tree to cache contacts instead of an array list Perform matches against phone numbers as well DialpadFragment now ignores results from stale tasks where queries no longer match Add ability to not use default phone number for phone number disambiguation dialog Contacts are now ranked by the order which they were sorted by in the ContactsProvider (affinity) Change remapAccentedChars to always return lowercase characters to avoid overhead of uppercase character conversion Resource/Layout changes: Tweak margins so that the section containing smart dial suggestions looks cleaner Use color resource instead of hardcoding color values Add phone number to SmartDial items ContentObserver: Add a contentobserver to be notified on changes in contacts Refactored cache to allow for forced cache refreshes Use a single instance of SmartDialCache Tests: Added SmartDialTrie tests Comments: Comment cleanup Change-Id: Ica2854e2845d4d75048aa1fd982f139496d21bf3
* Enable initial matching for Smart DiallingYorke Lee2013-02-041-3/+22
| | | | | | | | | Allow the name matcher function used by smart dialling to perform initial matches of the variety 57 - (J)ohn (S)mith Refactor SmartDialNameMatcher testing method to allow checking multiple match positions. Add tests for initial matches Change-Id: Iadc5e3e8b2f408136c704015d2297e9b520e1065
* Merge "Move misplaced SmartDialNameMatcherTest"Yorke Lee2012-12-031-0/+0
|\
| * Move misplaced SmartDialNameMatcherTestYorke Lee2012-11-301-0/+0
| | | | | | | | Change-Id: I2cf4ff36eb3198af45a6b4e16a3321d68849c9b4
* | Cherrypick Arabic/Farsi pasting into dialpad fixYorke Lee2012-11-301-0/+74
|/ | | | | Bug: 6656969 Change-Id: I0bb094125eb9be2b6508e6ca658ae23da9da19d1
* Move dependencies of AccountTypeManager into ContactsCommon.Chiao Cheng2012-11-131-2/+2
| | | | | | | Moving dependencies in preparation to move AccountTypeManager. Bug: 6993891 Change-Id: I0399fee27960d46cd5b6f629d32868ff0c2ce38e
* Use a custom character map instead of name normalizerYorke Lee2012-11-091-1/+0
| | | | | | | | | | | | | Instead of normalizing names during caching, add a function that that maps accented characters to their alphabetic equivalents using switch statements. This character map is used in the on-the-fly matching algorithm. This speeds up the caching process(11k contacts) from 800-1500ms to about 600-1000ms since we no longer perform the normalizing step during caching. Bug: 6977981 Change-Id: I98dfc3cba00258bb7ff03b346eab7ca7dc1065be