cd321f65f1e50409812976380ad1f0fdb3fa35cb |
|
28-Oct-2013 |
Yorke Lee <yorkelee@google.com> |
Move ContactLoader related code to ContactsCommon This CL simply moves classes from Contacts into ContactsCommon. This is needed so that Dialer can use ContactLoader related code for b/11294679. A ContactLoader will also be needed in the future to allow InCallUI to download hi-res photos while in call. Bug: 11294679 Change-Id: Ia033f3ea2406a907a4e71290c9ce810a5583dab8
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
0d5588da244d0992c3ff8f25d0875fdf95a8c644 |
|
27-Nov-2012 |
Chiao Cheng <chiaocheng@google.com> |
Move AccountTypeManager to ContactsCommon. Moving AccountTypeManager to ContactsCommon so it can be shared by Contacts and Dialer. Bug: 6993891 Change-Id: I9526ac7cda758290caecabfcaebe620238d8dd6b
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
428f008513d1591cc08fcfe2cf0c9237fb313241 |
|
14-Nov-2012 |
Chiao Cheng <chiaocheng@google.com> |
Move dependencies of AccountTypeManager into ContactsCommon. Moving dependencies in preparation to move AccountTypeManager. Bug: 6993891 Change-Id: I804cdbe64b9b8111ed286037943d593e11dc4044
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
851222a96b5d68602fb361ea3527101e893f67e3 |
|
21-Jun-2012 |
Maurice Chu <mochu@google.com> |
Added thin object layer around contact data This refactoring abstracts out the need to directly refer to Contacts database columns throughout the code. Instead, all of this information is retained in getter/setter methods within the Contact, RawContact, and DataItem classes and sub-classes. ContactLoader.Result class has been pulled to the top level as the Contact class. The Entity class has been removed and replaced with a RawContact class, with getters/setters to raw contact information. Renamed EntityDelta to RawContactDelta for better understandability as well as adding getters/setters for specific fields in the ValuesDelta nested class within EntityDelta. EntityDeltaList and EntityModifier have been renamed to RawContactDeltaList and RawContactModifier with the methods using the RawContact class directly rather than the Entity class. Data items for a raw contact are represented by a DataItem object with specialized getters/setters for subclasses of DataItem. (e.g., EmailDataItem, PhoneDataItem. etc.). DataItem is a wrapper around ContentValues. This abstracts away the ContactsContract column fields into getters/setters. The above refactoring is accompanied with changes throughout the codebase to use the new Contact, RawContact, and DataItem classes. Change-Id: I31c1dccd724e9652f9d0af78ca81feb6c5acd71d
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
e0b2f1e2d01d1ac52ba207dc7ce76971d853298e |
|
12-Jun-2012 |
Chiao Cheng <chiaocheng@google.com> |
Global import order fix. Changed import order to be in accordance with style guide: http://source.android.com/source/code-style.html#order-import-statements Static imports will be placed at the top since most existing files used that convention. It is also a style that can be handled by both eclipse and intellij. Change-Id: Ia7013c7a2d88e5fefb8f4975d121f7fcd3fcc462
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
82a4f4408b74e193b43a12dc8e16c946a93bae4a |
|
08-May-2012 |
Makoto Onuki <omakoto@google.com> |
Clarify AccountType.resPackageName/summaryResPackageName Gave them clearer names and added javadoc. And added a workaround for the fact that the view notification service for the google account type is implemented in the sync adapter, not in the authenticator. This really needs further clean up. Change-Id: I567656393fab30293c831fac802884dc84daf861
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
7edad9dd95a411cc5ed69815e5f0be8a5d1e8b19 |
|
20-Apr-2012 |
Josh Gargus <jjosh@google.com> |
Fix broken touch-interception in ContactDetailFragmentCarousel. Tear out a confusion of code that wires XML specs up to alpha- and touch-interceptor layers. Encapsulate in a new class, FrameLayoutWithOverlay. Bug: 6324499 Change-Id: Ic531327d67db8b5069abbd93e31fa10d99d4c4cd
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
84edfd9a76657a653491faac53b5976adf9fd2cb |
|
16-Mar-2012 |
Josh Gargus <jjosh@google.com> |
Miscellaneous contact-detail fixes. View-pager containing contact details and social updates are now scrolled by the appropriate amount when ContactDetailTabCarousel is swiped. Also, fix "bounce-back" where the carousel improperly selected the wrong tab (i.e. the one you just swiped away from). Finally, make it possible to start a swipe back to the "about" tab from the "updates" tab (previously, you had to initiate the swipe on the partially-revealed "about" tab). In ContactDetailFragment, only make photos tappable when either: - the photo is settable (i.e. the contact is not read-only), or - the photo should expand when tapped. Bug: 6009463 Change-Id: I291e0c42b1d77a11babc7a9cb282a19cdb305025
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
ab5387bb8728c34bafcb554830961341f1f9daea |
|
01-Nov-2011 |
Katherine Kuan <katherinekuan@google.com> |
Reset views when changing contacts on tablet - On tablet, we re-use the same fragments for different contacts because we have a 2-pane view. We need to reset the state to prevent showing the wrong tab or old scroll state information from a previous contact. - Resetting the list adapter is getting rid of the scroll state information and resetting the tab carousel / view pager gets us back to the "about" tab. - Store the contact URI in the saved instance state bundle so that on rotation, we still recognize that it could be the same contact and restore scroll position. Bug: 5529595 Change-Id: Ibd874799f926b70430e47518a4b995394fbfe547
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
6c0470e21d8506fb53915df7463634fd47288343 |
|
17-Aug-2011 |
Katherine Kuan <katherinekuan@google.com> |
Coordinate scrolling between two lists on contact card FRAGMENT CHANGES: - Add a method on each of these fragments to scroll the list by a given offset (only when the first "fake" item in the list is at the first visible position on the list). If any other item (2nd, 3rd, etc..) is the first visible position on the list, then it gets too complicated to figure out how much to offset the list, so it's better to just animate the tab carousel to be at the right spot. - Add a method that returns the top position of the first item in the list if the first item in list is visible (to verify that the offset was done properly). If the offset is not what we expect, then we know the list couldn't be scrolled. TAB CAROUSEL: - Keep track of the Y position of the carousel the last time the user was on the details page, and the last time the user was on the updates page. This is because syncing the scroll position of the 2 lists or animating the tab carousel vertically is only necessary if the tab carousel position has changed between the two pages. LAYOUT CONTROLLER: - We need to be able to animate the tab carousel to the correct Y position anyways because if the list in the fragment is not scrollable (but the other list is scrollable), we need to rely on animation to hide the big white space below the carousel. - When a list (i.e. in the ContactDetailFragment) is idle, the user has stopped interacting with the list, so use the time to sync its position with the other list (since this may involve a requestLayout() if a scroll is triggered). - Because the list may not become completely idle (i.e. the user flings the list and then starts to swipe), we still need a check when the user starts swiping the view pager to sync the two lists. If it's already at the right spot, then do nothing. If we can't scroll the other list dynamically and we need to animate the tab carousel, and we should only do this when the view pager has settled down and is idle. MISCELLANEOUSE EDGE CASES: - Fix the tab carousel jumping to the starting position (if a sync happens and the loader data is refreshed) because the layout is likely being redrawn and the tab carousel is potentially redrawn back inside the bounds of its parent. Hence store and reset the tab carousel position to its previous Y value (which could be outside the bounds of its parent). - If the list is scrollable but only by a little bit, allow the tab carousel to compensate by animating down the rest of the offset amount - Tapping on the tab should also work now - Make photo in updates tab fill the whole tab, change updates fragment background except for the tablet landscape mode Bug: 5044680 Change-Id: Icc9445606ea52779dea97b194763c74a0b2a27ee
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
f748d59e8a31f8c9d054fd11deb9b70250387dab |
|
19-Aug-2011 |
Makoto Onuki <omakoto@google.com> |
Launch viewStreamItemPhotoActivity when photo is tapped... on stream item list, if the account type supports it. If the account type doesn't support it, tap of photos launches viewStreamItemActivity as before. Bug 5185880 Change-Id: I0b43da3e966ee7737937b2dde7a97e4c440d00dc
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
51f1071a1dc91dace0de73be1c5fbba4f091f054 |
|
16-Aug-2011 |
Katherine Kuan <katherinekuan@google.com> |
Allow phone contact card to switch b/t having/not having social updates - Make phone portrait and landscape layouts have all views necessary to switch between showing/hiding social updates. Disable swipe if only the detail fragment is showing. - Make ContactDetailActivity use ContactDetailLayoutController to reduce code duplication, add another state for fragment carousel in ContactDetailLayoutController - Make fragment widths in fragment carousel configurable based on screen width instead of fixed dip value - Make setAlphaLayerValue() save the alpha value if the view isn't ready yet (otherwise it's a no-op and the caller must call it setAlphaLayerValue again when the view is attached) --> this allows us to remove the code to set fragments in the fragment carousel every time the data is reloaded - Remove enableAlphaLayer() code and just make the alpha layer view visible in the XML Bug: 5164029 Change-Id: I8f28ac27d125502a12221f084ce253611e6f78a1
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
d78ee90c0d4d93b82ad440396e87ae4f47f53e93 |
|
15-Aug-2011 |
Daniel Lehmann <lehmannd@google.com> |
Several DB changes as requested by ES - Switch from resource ids to names to prevent breakage on package upgrade Bug:5135277 - Add SYNC1...SYNC4 columns to StreamItems and StreamItemPhotos Bug:5119385 - Remove ACTION, ACTION_URI from Groups, StreamItems and StreamItemPhotos (this reduces db size and prevents click intercepting) Bug:5135808 - Add some raw-contact fields to the StreamItem and StreamItemPhotos query Bug:5134081 Doing those changes in one block to prevent too many db upgrade steps Change-Id: I4c90742580c86203a1686bb625c026438ed19b8f
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
25594d6db384d27641b402cddf23d44818e1cd10 |
|
13-Aug-2011 |
Katherine Kuan <katherinekuan@google.com> |
Performance improvements for contact card with social updates - Use background color with alpha hex color instead of alpha attribute of View - Instead of posting a runnable in onMeasure, move it to setCurrentPage / setFragments methods Bug: 5161205 Change-Id: Ib1ad3b11c359d8fdc1e9143ab9d64c39aa914b91
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
48eca3fd31689f05c75241749b987d05d1602d1e |
|
12-Aug-2011 |
Katherine Kuan <katherinekuan@google.com> |
Fix NPE in ContactDetailUpdatesFragment setData() is getting called before onViewCreated() in the fragment, so check if the adaper has been initialized or not before trying to set the stream items to it. Bug: 5153519 Change-Id: I4a65f4713f7cd9cfc1a6fad494fb65a1f1352b1f
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
942a2f2f06ae3919560ce014fccf5c09f0f6027e |
|
11-Aug-2011 |
Flavio Lerda <flerda@google.com> |
Add title on top of updates. There should be a title at the top of updates. It should be "Recent" if the tab carousel is present and "Recent updates" if not. Bug: 5082091 Change-Id: Ib97f8918738c96aee9bffc1c846dabb7d4d2ffe6
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
a21993720988a5fc0b48594d1ff0ce6f932780b7 |
|
04-Aug-2011 |
Flavio Lerda <flerda@google.com> |
Small clean-up of stream items utility class. We do not need a way to add a set of stream items to a container: we now use a ListView. Do not set the listener in the helper method: we can just do that in the adapter itself. Bug: 5119353 Change-Id: Id647ddc358f82b5fee8628b06645412e48712229
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
22cb663a251af60bc6beeb1954568c8e6a4c34e9 |
|
03-Aug-2011 |
Flavio Lerda <flerda@google.com> |
Support scrolling of Updates tab. This commit changes the Updates tab to use a ListView for its items. The ListView has an extra header item that overlaps with the carousel tab (if present), and implements the scrolling which hides part of the carousel (excluding the tab itself). The fragment now basically contains only a list view, which will store all the items, and an optional title (I need to check if that's actually needed, but for now it is there). The extra header is implemented with a layout: for those configurations where there is a carousel, the header contains a placeholder which is the same size as the carousel; for those configurations where there is no carousel, the header will be an empty FrameLayout (but in those same cases, there is a header at the top of the list in the fragment's layout). This commit does not take care of making the scrolling work across the two tabs, e.g., when switching between tabs. I will address those issues in a follow-up. Bug: 5119353 Change-Id: I0eb6dcc06d624991ab1f5f8fe1197337ba03286b
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
965da8446f4bf73217611b43059bd92f311db089 |
|
28-Jul-2011 |
Flavio Lerda <flerda@google.com> |
Add actions to update items. This commit let you click on an update item if it has an associated action and actionUri. In order to make this visible to the user, it adds a background that will be highlighted when the item is selected. It also marks the item as focusable for accessibility. In order to make the selection expand to the entire row, play around with the padding a little bit: basically, the update list itself is now as wide as the screen, and the individual items have padding as appropriate. Bug: 5095755 Change-Id: Ib1b2d179152beae125dded1b393b3dfc8b22abc9
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
2ad0dea36362beb70f5a92ac9b4c6a1db7bbb8b9 |
|
27-Jul-2011 |
Katherine Kuan <katherinekuan@google.com> |
Add alpha layer to tab carousel on contact card - Introduce CarouselTab class to handle the alpha layer and touch interceptor - Clicking anywhere on the tab will select that tab - Remove split style action bar on contact card so favorites star will be in upper right corner Bug: 5081735 Bug: 5042660 Change-Id: I54088b49c928297dbfc523752258ceaa97cce445
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
3915600d2b0ff499e0129e951dfd39bff46b2f42 |
|
19-Jul-2011 |
Dave Santoro <dsantoro@google.com> |
Stream items UI. This is still pretty rough at this point, and does not fully implement the UI. It handles loading in the stream items and photo metadata in the contact loader, and displaying those items in a scrollable view in the updates pane. Change-Id: I3e796a6141ffa385aa2acc769cf6dd11f37aa39c
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
d814e42a6ac71962a6eeb9ce37b4abc2c1205952 |
|
04-Jul-2011 |
Katherine Kuan <katherinekuan@google.com> |
Move social snippet and date to updates fragment - Now the phone landscape view shows the social update - Make updates tab show 3 lines of the social update (no status date) - Remove empty "no updates" view in updates fragment (if there are no updates, the updates tab shouldn't even appear) - Remove star in "about" tab because it's been moved to the action bar - TODO: Make this a list of updates when social integration is ready Change-Id: I60cf15edb58b8818c63e6fe9b5fec01f64fca563
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
16c4b2943e02a0b919e7da7bb5e58ced7523b8f6 |
|
04-Jul-2011 |
Katherine Kuan <katherinekuan@google.com> |
Fix crash when trying to edit a contact - Set the lookup URI manually in setData since we're no longer calling loadData on the detail and update fragments Change-Id: I5838e2bfe4a77d9d47444b4e16ce02485af17307
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
2eb969cc399d87b659a45568fa951d394c216917 |
|
28-Jun-2011 |
Katherine Kuan <katherinekuan@google.com> |
Contact card with and without social updates - This is for the phone (landscape and portrait) - Some tweaks were done to the tablet to prevent regression but it's not quite ready yet - No social updates means a single scrolling list of details - Having social updates means a tab carousel and ViewPager - Add invisible contact loader fragment - Now the loader fragment loads the contact --> passes to ContactDetailActivity --> passes to all necessary fragments / carousels (no matter the configuration) - Get rid of ContactDetailAboutFragment and move those changes into the ContactDetailFragment Change-Id: I7be55ae7205bbcb8106bf2f2e4ae8dd6ce2c6a78
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
8f0f3343e4363a5e1f11b35392c8393f263aaa41 |
|
21-Jun-2011 |
Katherine Kuan <katherinekuan@google.com> |
Phone landscape view of contact card - No tab carousel, show half of the other (about or updates) page, tap or swipe to see the other page - Add alpha layer and touch interceptor layer - Add new resources folder for w470dp to cover landscape on phone sized devices Change-Id: Ia3b1cd76ebe35420b1facd415998b14ba161b0ba
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|
79700889dad553dcde9e22a2fd23df768f68080f |
|
15-Jun-2011 |
Katherine Kuan <katherinekuan@google.com> |
Add tabs to contact card - Since the ContactHeaderView and ContactDetailFragment will still be used for contacts without updates, leave this code in. Temporarily make all contact cards have the about and update tabs. - Use ViewPager for contact details - Move name and job to action bar - Add about fragment and updates fragment - Add carousel for "about" and "updates" tab - Create utils class for converting ContactLoader results into strings for display since the ContactHeaderView will no longer be the only customer for this data Change-Id: I84ff759ee09daefcc7e7514564c180f27f0400b6
/packages/apps/Contacts/src/com/android/contacts/detail/ContactDetailUpdatesFragment.java
|