Home | History | Annotate | Download | only in ui

Lines Matching defs:conversation

82 import com.android.mail.providers.Conversation;
147 private static final String SAVED_CONVERSATION = "saved-conversation";
166 "saved-conversation-list-scroll-positions";
170 /** Tag used when loading a conversation list fragment. */
171 public static final String TAG_CONVERSATION_LIST = "tag-conversation-list";
191 protected Conversation mCurrentConversation;
197 /** A map of {@link Folder} {@link Uri} to scroll position in the conversation list. */
378 * An additional complication arises if we have to view a specific conversation within this
379 * folder. This is the case when launching the app from a single conversation notification
380 * or tapping on a specific conversation in the widget. In these cases, the conversation is
386 /** The conversation cursor over the current conversation list. This loader provides
387 * a cursor over conversation entries from a folder to display a conversation
395 * When the conversation list changes, we notify {@link #mConversationListObservable}.
422 /** The pending destructive action to be carried out before swapping the conversation cursor.*/
442 * and false if it acts on the currently selected conversation
446 /** Which conversation to show, if started from widget/notification. */
447 private Conversation mConversationToShow = null;
543 * Get the conversation list fragment for this activity. If the conversation list fragment is
620 * Returns whether the conversation list fragment is visible or not.
777 // Otherwise, start preloading the conversation list for the new folder.
781 // Remember if the conversation list view is animating
786 // There is no conversation list to animate, so just set it to null
801 * Load the conversation list early for the given folder. This happens when some UI element
803 * imminent. While the UI element is animating, the controller can preload the conversation
810 // Fire off the conversation list loader for this account already with a fake
1010 // folder and conversation list loaders (to trigger onCreateLoader).
1084 * Inform the conversation cursor that there has been a visibility change.
1085 * @param visible true if the conversation list is visible, false otherwise.
1109 * Called when a conversation is visible. Child classes must call the super class implementation
1194 * <li>Shows the conversation if the notification is for a single message</li>
1372 final Collection<Conversation> target = Conversation.listOf(mCurrentConversation);
1391 updateConversation(Conversation.listOf(mCurrentConversation),
1398 updateConversation(Conversation.listOf(mCurrentConversation),
1434 Conversation.listOf(mCurrentConversation), isBatch, mFolder,
1453 assignFolder(ops, Conversation.listOf(mCurrentConversation), true,
1563 public void updateConversation(Collection<Conversation> target, ContentValues values) {
1569 public void updateConversation(Collection <Conversation> target, String columnName,
1576 public void updateConversation(Collection <Conversation> target, String columnName,
1583 public void updateConversation(Collection <Conversation> target, String columnName,
1590 public void markConversationMessagesUnread(final Conversation conv,
1592 // The only caller of this method is the conversation view, from where marking unread should
1596 // locally mark conversation unread (the provider is supposed to propagate message unread
1597 // to conversation unread)
1615 private void doMarkConversationMessagesUnread(Conversation conv, Set<Uri> unreadMessageUris,
1628 // the next conversation.
1639 // Locally update conversation's conversationInfo to revert to original version
1673 public void markConversationsRead(final Collection<Conversation> targets, final boolean read,
1689 // We want to show the next conversation if we are marking unread.
1694 private void markConversationsRead(final Collection<Conversation> targets, final boolean read,
1697 // Auto-advance if requested and the current conversation is being marked unread
1714 for (final Conversation target : targets) {
1737 // Update the local conversation objects so they immediately change state.
1747 * Auto-advance to a different conversation if the currently visible conversation in
1748 * conversation mode is affected (deleted, marked unread, etc.).
1750 * <p>Does nothing if outside of conversation mode.</p>
1755 public void showNextConversation(final Collection<Conversation> target) {
1760 * Auto-advance to a different conversation if the currently visible conversation in
1761 * conversation mode is affected (deleted, marked unread, etc.).
1763 * <p>Does nothing if outside of conversation mode.</p>
1773 * <p>If the current conversation is not in the target collection, this method will do nothing,
1781 private boolean showNextConversation(final Collection<Conversation> target,
1784 final boolean currentConversationInView = (viewMode == ViewMode.CONVERSATION
1786 && Conversation.contains(target, mCurrentConversation);
1799 final Conversation next = mTracker.getNextConversation(autoAdvance, target);
1872 // locally propagate the change to the owning conversation
1877 final Conversation conv = msg.getConversation();
1916 * Confirm (based on user's settings) and delete a conversation from the conversation list and
1923 private void confirmAndDelete(int actionId, final Collection<Conversation> target,
1938 public void delete(final int actionId, final Collection<Conversation> target,
1940 // Order of events is critical! The Conversation View Fragment must be
1941 // notified of the next conversation with showConversation(next) *before* the
1942 // conversation list
1943 // fragment has a chance to delete the conversation, animating it away.
1945 // Update the conversation fragment if the current conversation is
1958 // If the conversation is in the selected set, remove it from the set.
1961 for (final Conversation conv : target) {
1967 // The conversation list deletes and performs the action if it exists.
2097 // unregister the ViewPager's observer on the conversation cursor
2119 // When we step away from the conversation mode, we don't have a current conversation
2151 // Indicator is enabled either in conversation list or folder list mode.
2163 // allow drawer pull everywhere except conversation mode where the list is hidden
2193 // The conversation list is visible.
2240 // Open the conversation.
2241 final Conversation conversation = savedState.getParcelable(SAVED_CONVERSATION);
2242 if (conversation != null && conversation.position < 0) {
2243 // Set the position to 0 on this conversation, as we don't know where it is
2245 conversation.position = 0;
2247 showConversation(conversation);
2312 isConversationMode ? "conversation" : "conversation_list", null, 0);
2320 // Put the folder and conversation, and ask the loader to create this folder.
2368 * Returns true if we should enter conversation mode with search.
2394 private void showConversation(Conversation conversation) {
2395 showConversation(conversation, false /* inLoaderCallbacks */);
2399 * Show the conversation provided in the arguments. It is safe to pass a null conversation
2400 * object, which is a signal to back out of conversation view mode.
2402 * @param conversation the conversation to be shown, or null if we want to back out to list
2407 protected void showConversation(Conversation conversation, boolean inLoaderCallbacks) {
2408 if (conversation != null) {
2412 MailLogService.log("AbstractActivityController", "showConversation(%s)", conversation);
2413 // Set the current conversation just in case it wasn't already set.
2414 setCurrentConversation(conversation);
2462 * conversation for the current account yet.
2483 public final void onConversationSelected(Conversation conversation, boolean inLoaderCallbacks) {
2489 // conversation list when we show the next conversation.
2491 showConversation(conversation, inLoaderCallbacks);
2511 public Conversation getCurrentConversation() {
2516 * Set the current conversation. This is the conversation on which all actions are performed.
2518 * perform common actions associated with changing the current conversation.
2519 * @param conversation new conversation to view. Passing null indicates that we are backing
2520 * out to conversation list mode.
2523 public void setCurrentConversation(Conversation conversation) {
2524 // The controller should come out of detached mode if a new conversation is viewed, or if
2525 // we are going back to conversation list mode.
2526 if (mDetachedConvUri != null && (conversation == null
2527 || !mDetachedConvUri.equals(conversation.uri))) {
2532 // conversation.position if a cursor is available.
2533 mTracker.initialize(conversation);
2534 mCurrentConversation = conversation;
2755 private final Collection<Conversation> mTarget;
2765 * @param target Conversation that we want to apply the action to.
2768 public ConversationAction(int action, Collection<Conversation> target, boolean isBatch) {
2785 // Are we destroying the currently shown conversation? Show the next one.
2789 Conversation.toString(mTarget), mCurrentConversation);
2795 Conversation.toString(mTarget), mCurrentConversation);
2811 for (Conversation c : mTarget) {
2835 for (Conversation conv : mTarget) {
2845 for (Conversation conv : mTarget) {
2885 Collection<Conversation> target, boolean batch, boolean showUndo,
2888 // to (which is the same as being able to un-assign a conversation from the folder) and
2895 for (final Conversation c : target) {
3017 * If the Conversation
3030 * This class handles throttled refresh of the conversation list
3192 // Moving a conversation to the starred folder adds the star and
3202 final Collection<Conversation> conversations = mSelectedSet.values();
3226 final Collection<Conversation> conversations = mSelectedSet.values();
3227 // The conversation list deletes and performs the action if it exists.
3236 for (Conversation target : conversations) {
3256 final Collection<Conversation> conversations = mSelectedSet.values();
3257 // The conversation list deletes and performs the action if it exists.
3271 private final Collection<Conversation> mConversations;
3275 public DroppedInStarredAction(Collection<Conversation> conversations, Folder initialFolder,
3292 for (Conversation target : mConversations) {
3372 // Clear our all pending destructive actions before swapping the conversation cursor
3379 // Handle actions that were deferred until after the conversation list was loaded.
3387 // The conversation list is already listening to list changes and gets notified
3556 // Open the conversation.
3682 * Updates controller state based on search results and shows first conversation if required.
3693 final Conversation conv = new Conversation(mConversationListCursor);
3746 private DestructiveAction getDeferredAction(int action, Collection<Conversation> target,
3753 * because the user can remove the current folder from the conversation, in which case it has
3757 private final Collection<Conversation> mTarget;
3772 private FolderDestruction(final Collection<Conversation> target,
3794 // For each conversation, for each operation, add/ remove the
3799 for (Conversation target : mTarget) {
3841 public final DestructiveAction getFolderChange(Collection<Conversation> target,
3850 public final DestructiveAction getDeferredFolderChange(Collection<Conversation> target,
3858 public final DestructiveAction getDeferredRemoveFolder(Collection<Conversation> target,
4070 final Collection<Conversation> target;
4075 target = Conversation.listOf(mCurrentConversation);
4114 // Tell the conversation list not to select anything.
4126 // Tell the conversation list to go back to its usual selection behavior.
4165 * As part of the overriden function, it will animate the alpha of the conversation list
4249 * conversation list, and finish end actions. Also, make