* Two of the upgrades (v21->v22 and v25->v26) need to be fixed so
that they don't reference columns that might not exist.
* Oops
Bug: 4439595
Change-Id: I4a8c556be22bb85fb78807416cd1d6b81c6ef118
- updated checkboxes (new ones for sw600dp and phone)
ones for phone)
- updated stars (new ones for sw600dp and phone)
- added existing cc/bcc icon to menu item
- updated reply/replyall/forward actions to dark themed items (renames
involved)
- update message list backgrounds (new ones for hdpi,xhdpi, renamed
everything so that there is no message_ or conversation_
suffixes, also added missing states for some of the selectors)
Change-Id: I1b4f49f206b846566870f5b430e3c6386e621a0c
* While investigating the referenced bug, it was discovered that
canceling the "security required" notification (with "X", rather
than the "cancel" option in the dialog) causes the notification
to be unavailable until a reboot
* This puts the account needing a security update in the position
of being unsyncable, and might explain the referenced bug (we
have no confirmation of that step; on the other hand, the tester
can't now reproduce the problem, so an unusual action like this
is to be expected)
* The fix consists of making this particular notification "ongoing",
which prevents the user from dismissing it; arguably, this should
always have been the case anyway...
* Consider this fix for backport into LTE and MR2 branches
Bug: 5072343
Change-Id: Ia7419236cf9389380d1e079b1a9a6f425015c487
- adds a loading state to search so the user isn't left with a blank
screen for several seconds
- adds a timeout so that a warning message is shown for results that
take over 10 seconds
- use default loading/no message views in ListFragment so we don't have
to manager our own stuff
Bug: 5014107
Bug: 5037618
Change-Id: I8b03fa0967055989156c7777901affc777c4fae7
This shares the e-mail address of the currently shown account
over P2P NFC links. Note that the currently set account must
be updated actively, because the callback to create the message
comes from one of the NFC threads, which don't have permissions
to retrieve the account and the correspondig e-mail address.
Change-Id: I12e48a3787d469179e7ca074429106ed24e3a212
We seemed to not properly fallback to querying the database if the cache
did not contain a mailbox of a specific type. We may want to consider
caching mailboxes related to PIM data, but for now this is a quick fix.
Also fixes unit tests.
Bug: 5019661
Change-Id: Idcac0a6f15aa7f174890ae586f478fbb8f6e05b7
This will avoid cases where the user is permanently stuck, if we fail to
error out when a failed sync occurs or for any reason.
Bug: 5032763
Change-Id: Ib82a62add767d13dc844a90e5ea4147d3ada59dd
This info used to be shown in the top right of the status bar in GB but
that is no longer there. So before this change there was no way to tell
who you were sending as.
Bug: 5069124
Change-Id: I10d687a5fd221e65ecfc71b61cccf306492e27b8
Seems like POP envelopes could get into the database and tickle the
NotificationController even before we got the full subject/sender. Just
ignore those things until the basic info is loaded.
Bug: 5061271
Change-Id: Iadfbff8a1615d2644880f5cae3727768f4f9549a
- use title as ticker text
- also properly play notification sounds on new messages. Before, if you
left a notification unread, and a new message comes in, no sound would
be played. Since fixing that, it introduces another issue where on
initial sync, tons of new messages come in (and the sync could take > 1
min). We throttle them with a 15 second interval. The notification is
always updated to reflect the most up to date information, but sounds
will never be played closer than 15 seconds together.
Bug: 5020191
Bug: 5067059
Change-Id: I5ca474fd3b210ee856035bd78bd72931da80fe40
We were hiding the cc/bcc menu option, but on tablets that is a visible
button on the UI and not in the menu. whoops.
Bug: 5067057
Change-Id: I10ecaf115b589b9200529f6ea7703428456b8f0f
This prevents accessing a potentially closed cursor when doing batch
operations that will inevitable cause the the list to be reloaded (and
cursor to be invalidated) as the first of the messages are
touched
Bug: 5051730
Change-Id: I90328ee02eafe6ad238d8c57e88a3d96259f6547
When editing quick responses, displays an appropriate
message letting users know that there are no quick responses.
Additionally, the MessageCompose activity will only show "insert quick
responses" when at least one exists.
Bug: 4948180
Change-Id: I1191bd54d6e64f990b6d6830f0837579d7a6918c
Shortcut name is now the name of folder when it's a non-inbox
folder; otherwise it's the account name. Previously was
always account name.
Bug: 4903490
Change-Id: I15b4024d28db6a48464e423db887bdca99132423
If the account is in the process of being deleted, large parts of its
data may be being removed in parallel with notification processing. We
never handled this very well.
Bug: 5058333
Change-Id: Ic588b68438a9c5829e7e3fd5c8d52e21a037b9f4
- the container is the one that should be visible/gone - individual
fields should just be visible
- also do drive by javadoc fixes
Bug: 5052310
Change-Id: I45c4b6b7f94b2b62ac94eeff0ab97bf34c9e117a
We were hiding the search icon from the actionbar but didn't take into
account the use of a hardware button.
Bug: 5051691
Change-Id: I2e0bfd1d0bb4faa3238e567c02189894db5f6c44
This fixes a crash on account deletion, leaving around bad accounts that
were in limbo
Also remove a test for an unsupported operation
Bug: 5051951
Change-Id: Ieebc7f769075614ae1a656cf123d8ce0313e611d
On second thought, it's probably best to stick with the same account if
I can't find a particular folder. This at least is less jarring if the
user has multiple accounts.
Change-Id: Ifd5d631b220e260399681008ac17203f5451c8ff
- ensure that the commitAllowingStateLoss is actually not dangerous - we
only had one case I could see where we were actually doing a transaction
from a loader callback and I fixed that just now to not do any
transactions.
Change-Id: I21e11138f70eb2ce953a5ba54119ca46555f465d
* This CL fixes the referenced bug, but it does NOT explain how
mAccount; best guess is that the process was killed and then
restarted when the result from DPM was available.
* Assuming this is the case, we remove the background task loading
mAccount, avoiding a possible race.
* Also, it's not clear why clearNotifications didn't use the
account id argument; what if there's more than one account that
uses security? Filing a bug about this.
Bug: 5048912
Change-Id: I734834337ab6e409d77624e7c7370350de76becb
* Move AccountReconciler to the Email app (from EmailCommon)
* Ensure that Controller.deleteAccountSync() performs ALL actions
needed to clean up after an account deletion (delete attachment
files, reset policies, refresh the UI, etc.)
* Add reconcileAccounts() API to AccountService
* Remove accountDeleted() and restoreAccountsIfNeede() from the
AccountService API
* Remove unused callback
Bug: 4883073
Bug: 4767084
Change-Id: I43ffaf009db1a6f306bb0f2a74fb4dd3b2c4b966
* Not sure how this could have happened, except possibly for some
race condition
* Let's make sure it's impossible
Bug: 5032454
Change-Id: Ibd4de22dc5298fbaaf224cf4286f63bdc50aa7b9
- include settings in menu in message view
- remove "show all mailboxes" from message view
- rename "Account Settings" to "Settings"
Bug: 5039294
Change-Id: Ic2dcbe8fe6e2bd10cc5d790a74c49a7159b59cab
* This prevents the possibility of RejectedExecutionException when
selecting large numbers of items
Change-Id: I8f9ba287d69021fdb99b4a8a30cc79755f669b97
- since listContext can be null, this code was not safe.
we also filter out the search mailbox too, so it's no longer needed.
- don't ask to highlight a mailbox if doing a search
- remove a call in MailboxListFragment that was unconditionally telling
callbacks that something was selected when we started loading - this was
technically lying and if the item isn't in the list that was selected,
nothing should be called (as in the case of search). This was just an
optimization anyways and that callback is invoked later when the mailbox
list load completes.
Bug: 5037629
Change-Id: Id31c6795af9e64fa8682b67de9ab90540ee660df
Note: all unicode sending unit tests are broken due to chip issues. I've
filed a separate bug on that.
Bug: 5012204
Change-Id: I17392f65e5bd8349780b79d9cbe10492d8e7a7d9
* We waited to clear the incomplete flag until security was agreed
to, but this can lead to accounts left incomplete; we now clear
the flag as soon as the AccountManager account is created (by
convention, this is when the EmailProvider account is complete)
* Also, allow onDone() to be called more than once with a saved
account, leaving cleanly, rather than throwing a runtime
exception
Bug: 5016792
Change-Id: Ib5fc44ac045a1dd9bd5d63f922c037ed637d5341
TalkBack functions properly with MessageList items, as well as
"reply," "reply-all," and "forward" buttons while viewing messages.
It is now also possible to switch accounts using only a dpad
or trackball. Finally, EditText fields in account setup also work
with TalkBack now.
Checkmarks don't work with Talkback, but this I have confirmed and
reported it as frameworks bug.
Change-Id: I7f72682a517eef4fa122241c675026fe7997ac64
- This creates a "more" icon in portrait and shows all three actions
(reply/replyall/forward) in landscape.
- also makes the star visible by default (hiding it in EML view)
Change-Id: Iefff7c0717cfda4dc91218b0d490775294c96103
While creating or editing a quick response, disables the save
button when the edit text is empty. Also, now shows the keyboard
on the phone as soon as the dialog box pops up to edit/create
a quick response.
Bug: 5011277
Change-Id: I9926d07cae0e527a7c08a4cc556a9569a91d2f33
The default recent list should be pre-populated and fall off the list as
normal. The previous implementation showed a default list if there were
no touched mailboxes, but then the default list disappeared as soon as
there was one touched.
Bug: 5020673
Change-Id: Ifad607a9d36feff837ab42d039ce9209f223f345
Adding and removing a star triggers the appropriate accessibility
In incoming/outgoing settings, added EditText contentDescriptions.
Change-Id: Ibab461f1425b3ebf3579ebc1d0b36d1a9a5efdb2
On phones, opening "incoming settings" no longer immediately displays
the warning message associated with editing the username field. It now
only displays when the username is focused by the user.
Bug: 4282856
Change-Id: Ic0a74fa91a0f9cff66565372872e182a0eaec779
Since tablet already has to/cc/bcc labels, don't show the hint
text -- only do so when labels don't exist.
Bug: 5019806
Change-Id: I039de06e2576688e654fb0504a027cd9b9b67def
There were two issues:
- the default account ID from the provider wasn't consistent: it was
using a snapshot from the cached data but that simply returns a Map, and
the values aren't guaranteed to be sorted (and indeed I saw that the
order was different on consecutive calls!)
- hitting app up from Compose always just kicked you out to the inbox
for the default account, but it probably should have used the account of
the compose screen, since it can be specified in the Intent
Bug: 5012008
Change-Id: Ic9a753b261e047790453bc1a9417bc0c6d2f87f9
* We were deleting secured accounts when device admin is disabled,
but we were not deleting associated data, which means that
contacts, calendar, and attachment data were left on device
Bug: 5021062
Change-Id: Iabeec2dcd6ef4f52dc52e43d62803e61f7881c0d
* This fixes the case in which messages are being loaded upon
initial sync, but do NOT appear in the message list (at least
until leaving and re-entering the app/mailbox)
* The problem was that MessagesAdapter was checking the state
of the HOLDS_MAIL flag, which might not have been set at the
time the Inbox was created; it turns out that the check is
not necessary, so we remove it here
Bug: 5008696
Change-Id: I009ddf7d82d938758b99c855dfd0271596c5248a
- empty subjects should still be prepended with "Re:" and "Fwd:" when
replied/forwarded
- the compose body was being vertically centered
Bug: 5008785
Change-Id: I28e4fac8457c4fd18c764daa35d9deea1646474b
The CL I just checked in to reduce the invalidateOptionsMenu calls
removes the search icon because it expects the message list to be ready.
Instead of just invalidating the menu a bunch more, just make it so that
the icon is always shown, but we can't actually search if the message
list isn't ready. The time between the icon being shown and the list
being ready should be miniscule.
Change-Id: I5dfe9363cc904833253cf1fceeeb2af2ec389217
There were two places where account flags were being set on setup: one
was in manual setup when the user selected the account type
(pop/imap/eas), and another was when it was automatically determined
from XML. The two paths were inconsistent and one was setting bits like
SUPPORTS_SEARCH but the other wasn't.
This fixes being able to search in IMAP
Bug: 5011932
Change-Id: I50eada7485aaef4e2a85d25fa7eb9ac7ab03093a
We were unconditionally setting auth credentials even if the checkbox to
require credentials was unchecked. This prevented setup for certain
outgoing servers
Bug: 4291105
Change-Id: I27f94f02b85b097d2c6dbb896254367e8a15415b
This changes it so that the message list is shown if there are multiple
unseen messages.
Bug: 5011855
Change-Id: I14cbcfaa32cc5e2b4cb718449c62b8f39b290d4d
- Use PreferenceActivity, in the old style, meaning without PreferenceFragment.
- If setting Inbox, change the account settings instead of mailbox settings.
- Use the DialogWhenLarge theme, meaning it's a full-screen avitity on the
phone and a dialog on the tablet.
- Also fixed the bug that we the menu items that are made invisible by
UIControllerBase may be made re-visible by the 1-pane controller.
TODO The menu item shouldn't be shown for non-syncable mailboxes.
Change-Id: I02b2faf6f593e1e2eb370217c27801aa58ca7e6c
* Handle replied in new messages and updates
* Code added for upsyncing replied state, but the CL for
setting this state isn't yet submitted
Change-Id: I6f3ff56475d70f686f96ed6a84fae3468f42b1c8
The app is spending a lot of time in startup inflating XML. I suspect a
lot of it is due to the refreshActionBar() calls.
On a normal startup with NO refresh, the action bar was rebuilt 6 times.
If a refresh happens, the refresh callbacks get called in rapid
succession (20+ successive calls is not uncommon), which seemed really
wasteful.
Change-Id: I05feb56ba7fafb109d820328f591526945ca0a5f
In the common case, we don't need the "waiting for sync..." message, so
avoid inflation in those cases and just inflate on demand.
Also do a quick drive-by fix for the error message being pushed in way
too much on phones
Change-Id: Ie7a8472194659a52069d1ee21e0a0cb9b6fc91ba
Adhere to RFC2821 Sec. 4.1.3 Address Literals should be enclosed by brackets and
prefixed with 'IPv6:' if the sender is an IPv6 host
Original author: Jon Starling
Bug: 4207470
Change-Id: Id327930001188186713e38d1ce8ecc1dad8cfbc0
This is a manual cherry-pick of c379ebe372
This reverts commit 7fd14be804
The introduction of proper SD cards breaks the invariant that "external"
storage can be encrypted. Unfortunately, this means that accounts with
that policy bit set will have to be removed for now.
Accounts with the security policy set will be forced to go through
security provisioning on the next sync, using the regular mechanisms of
showing a notification with "Security update required", and then having
it fail. :(
Bug: 4466311
Change-Id: I68119b14f8d198779c2073296e228bc6772136ee
It was accidentally happening because search doesn't show the mailbox
list, but explicit > implicit.
Change-Id: Ifb8354dbb366f4c8328bef31d4e251166ae6876a
- also bail search mode if we can't find an account. it probably doesn't
matter _that_ much since the UIController will also bail, but just in
case...
Change-Id: I0b601186362e048de83b53617e529bbada1e8db5
When a message has been replied to or forwarded by the user in
Exchange or IMAP, it now displays the appropriate symbol in the
message list view. (Right now it's just a test image based on the
reply/forward/replyall images until the assets come in.)
Bug: 4313491
Change-Id: I525e55179d62b6ab08df37cb9bfe9fdd9fefb908
We should eventually replace all with EmailAsyncTask, but it's the safest thing
we can do now to avoid regression.
Change-Id: I78bfc4fb2be1dcfadeb7f90092ec7adb35c1d393
Also added test.
(For some reason the message count doesn't get set properly on tests...
I'll investigate it when I get around to it...)
Change-Id: I83f3b6f2079da06b2d4973419d2296e6492de1d3
If the initial mailbox has child mailboxes, we should show the drilled-in
view by default, EXCEPT if the initial mailbox is inbox, in which case
we want to show the root view.
(And we drill-in if the user taps Inbox.)
Bug 4901592
Change-Id: Idc1462030cf8d971dd4dcbba647ac3a64cab6819
The check settings fragment could potentially take a while to finish,
and may finish after the activity has shut down. Ensure that the
callbacks don't go through if that happens (usually means the user
backed out before it finished)
Bug: 4689161
Change-Id: Ie8e052f03a8f8f2884c0fe1e334a91c02444f96c
Pressing the email widget's logo will open up the account's inbox.
Also, composing a new email open the compose window for that
account instead of an arbitrary account as before.
Bug: 3366819
Change-Id: I03c0d6973f5428b2044e755f41fcc6f4da225afa
We suspect the underlying bug is b/4981556 but it is a framework issue
which needs time to fix. Some fragment state is not restored properly
when going through orientation change, so navigation shortly after that
will always crash.
Change-Id: Id6b8714c2aeac5f6bf09e82aea5459bb19d0054d
Even with CL the account spinner on the starred mailbox looks still a bit
weird because the spinner turns into the combined mode even if you select
the starred mailbox from a normail account's mailbox list, but at least
you'll be able to get out of the starred mailbox.
Change-Id: I26a256be39f070acece67f4a308a8525a6be1d3b
- shows the title of the message in the action bar (visuals not final -
need to extend the width and hide the account name)
- ensures that tapping up/back from a message view from a search result
list doesn't exit search
- ensures that tapping "app up" from a collapsible tablet view doesn't
exist the search unless the left pane is uncollapsed
Change-Id: I2b21a430d12148cf72237060c05312c7a23e2b3b
There are needed for the back navigation when a message
is opened from a deep link, but now that we always have a list context
they're not necessary.
Change-Id: Iba2d0b2f31f4539f6e872970b514574347e248c5
- Moved MessageOrderManager code from 2-pabe to the base class.
- Most of the code is shared between 1-pane and 2-pane.
- Also fixed the bug where we re-created MessageOrderManager every time
the user taps newer/older, which was the reson the newer/older button
temporarily got disabled when you tapped them.
Before this CL we stopped MOM in uninstallMessageViewFragment, but now that
we don't reuse fragments this means we stops MOM when we remove the current
message view, and re-created a new one when a new message view is created.
Now we stop MOM when the right pane gets hidden (2pane) or when showing
the mailbox/message list (1pane).
- Also removed a now unused callback onMessageShown() from MessageViewFragment.
We used to update MOM on this event, but now we do this in
installMessageViweFramgment().
Bug 4575586
Change-Id: Idc4aba184f318e0c086afc29dcbe42364e2b51b3
It was caused by the fact that we show the combined starred mailbox
on each account's mailbox list.
Beacuse of this, when you open the starred mailbox on non-combined view,
we pass a normal account ID + the combined starred mailbox ID to the
AccountsLoader, which then thinks that because the account ID is not
ACCOUNT_ID_COMBINED_VIEW the mailbox ID must be of a regular mailbox,
issues a query to get mailbox info, and crashes because the mailbox
is virtual.
- Also fixed the issue that we don't show message count on the account
spinner for combined mailboxes.
bug 4971181
Change-Id: Iaa13b362505b8babc7f7ea8a03ddf5494736dc2d
This way we don't have to explicitly filter it in all the different
places we do selections on mailboxes.
Note that I didn't create an upgrade path for this. The only people with
search mailboxes are probably developers right now, and worst case for
people who experimented, they will just get the search mailbox visible
Change-Id: I9a0bf6df9985418d467a7348ed99a36521641b89
- update hint based on the mailbox being searched
- ensure that we use the original searched mailbox as the mailbox to
search for subsequent search (i.e. a search while we're viewing search
results) and not the search mailbox
Change-Id: Ic8663272173ce386dcd13fdf0369e918fb895be8
* ImapFolder is currently very unsafe for use by multiple threads,
causing, among other things, the referenced bug
* Since ImapFolder is very lightweight, there's no particularly good
reason to be caching them anyway
* Rename isOpenForTest to isOpen
Bug: 4972084
Change-Id: I2bf17b9cfc8549a222e991f3e59abfd00a4d3afd
* Remove unused argument from newInstance/constructor
* Create ServiceStore class, the superclass of ExchangeStore (and,
eventually, all Stores, until they can go away completely)
Change-Id: Ic5237236c5349ecf006538c58b63c1efe8e4ea61
Renamed onPostExecute to onSuccess and made sure it won't called
if a task is cancelled in time.
Also removed isCancelled(). To implement it right we should make sure
that onPostExecute() isn't finished when setting mCancelled, but it's a bit
of a pain to implement right, and we don't really have to use it.
Change-Id: I3a0baf504506ffc4952a5553f7098a8415842fa3
- Back from the starred mailbox now works.
- Combined view now has the "show all folders" in the spinner.
- Null-out the list context when opening the mailbox list.
- Properly restore the list context when popping from the back stack.
- Disable the account spinner dropdown on the mailbox list.
- Hide the little triangle thing at the right bottom corner of the spinner
when it's not selectable.
Bug 4836064
Bug 4689313
Change-Id: I41d1b6c7024953407b260f5b4b63fbc366e538ca
This loader will abstract away the waiting for the controller to cleanup
the existing contents of the search mailbox
After some additional, to-be-done plumbing, I'd like
Controller.searchMessages to return some results info (like # of results
at the least) so that the SearchCursor returned can relay that
information to the client (which can then do a lot more interesting
things at that point).
Change-Id: Ifcba0ddf7170c56dac9f3b44128988a5aa4ca887
To fix "IllegalStateException: Can not perform this action after
onSaveInstanceState".
Bug 4522010
Change-Id: I640fab0d51b02467f2f91d0d33091e1daac356fd
- Don't use the action bar spinner.
Instead use a custom view to show the current account.
(It's not a spinner; now we show the dropdown list by ourselves,
which gives us more detailed control.)
- Also show the current mailbox name/unread count with the account name.
- Removed the mailbox info loader in ABC.
Instead, now the AccountSelectorAdapter loader loads the current
account/mailbox name, and the unread count as extras.
- Now ABC.Callback.onMailboxSelected passed an account ID as well
as a mailbox ID.
- There's new code paths that can cause the "fragment transaction in
onLoadFinished" exception. We need to fix this properly, but
for now we just use commitAllowingStateLoss().
Bug 4948352
Change-Id: I73bb8b7530f8328ca1c86382ac0a54086ad061d7
* Rename ExchangeUtils to EmailServiceUtils
* Create calls for Exchange to use (eventually remove these)
* Get rid of lots of nonsense in ExchangeStore
Change-Id: Ic538cfe1de57eca24088ee1f590264283d12f511
This is the UI part for remembering to show images based on senders.
It does not persist anything yet.
Change-Id: Iec40d9d1ace3661dabca2eed31ea6d0893be71e0
frameworks/base
Extended KeyChain.chooserPrivateKeyAlias to allow caller to supply
preferred choice to be selected in chooser. This allows Email
settings to highlight the current choice when allowing user to
change settings.
keystore/java/android/security/KeyChain.java
api/current.txt
Implemented KeyChain functionality to pass host and port
information to KeyChainActivity for display.
keystore/java/android/security/KeyChain.java
KeyChain now sends a PendingIntent as part of the Intent it sends
to the KeyChainActivity which can be used to identify the caller
in reliable way.
keystore/java/android/security/KeyChain.java
Moved .pfx/.p12/.cer/.crt constants to Credentials for reuse.
Added Credentials.install variant with no value for use from KeyChainActivity
keystore/java/android/security/Credentials.java
packages/apps/CertInstaller
Source of extension constants now in Credentials
src/com/android/certinstaller/CertFile.java
packages/apps/Browser
Have browser supply host and port information to KeyChain.choosePrivateKeyAlias
Tracking KeyChain.choosePrivateKeyAlias API change
src/com/android/browser/Tab.java
packages/apps/Email
Tracking KeyChain.choosePrivateKeyAlias API change
src/com/android/email/view/CertificateSelector.java
packages/apps/KeyChain
KeyChain now depends on bouncycastle X509Name for formatting
X500Principals, since the 4 X500Principal formatting options could
not format emailAddress attributes in a human readable way and its
the most important attribute to display for client certificates in
most cases.
Android.mk
Changing the UI to a dialog, make the activity style transparent.
AndroidManifest.xml
res/values/styles.xml
Layout for chooser dialog
res/layout/cert_chooser.xml
Layout for list items in chooser
res/layout/cert_item.xml
New resources for dialog including comments for translators.
res/values/strings.xml
New dialog based KeyChainActivity. Now also shows requesting app
and requesting server. Now can preselect a specified alias. New
link directly to CertInstaller.
src/com/android/keychain/KeyChainActivity.java
Fix KeyChainTestActivity to work with TestKeyStore changes that
were causing network activity on the UI to look up the name of
localhost. Also track KeyChain.choosePrivateKeyAlias API change.
tests/src/com/android/keychain/tests/KeyChainTestActivity.java
Change-Id: I131f7708cede39669491a23ead3860907460d31f
* Use same code for handling search mailbox for IMAP and EAS
* Allow "Load More" for EAS search mailbox
Change-Id: Id4a009c79a95302d627ff25f85e9c65bc461826f
* Add protocolSearchInfo column to Message table; this can be used
to store information related to search results. For IMAP, we
store the serverId of the mailbox that the message lives in on
the server
* Add upgrade code for this column
* Change MessagingController to use the proper serverId for remote
operations, depending on whether the Message is a search result
or not
* Fix some smaller issues with earlier code
Change-Id: I0c7f1d89a4659b95701d02646c0e8426680e2f6a
- "UNSEEN new messages" is the title for multiple new messages
- the small number in the right shows the unread count
Change-Id: I48f761b727ea8abc9277d737a08789fa63d10871
Before this CL, we had this crazy plumbing from MailboxListFragment
to ActionBarController to update the current mailbox name/message count.
This wouldn't work on 1-pane, so now ABC just gets the current mailbox id
from UIC and loads the name/count with its own loader.
Also...
- Fixed bug 4904450 and bug 4460470: Now we consistently use FolderProperties
to get proler display names and message counts.
- Renamed some confusing names in AccountSelectorAdapter
Change-Id: Ic7bea6da6d2859006fb8f9263024c7d5e62b1e7f
- All mailboxes will be shown when selecting a shortcut for a normal
account.
- Combined unread won't show up in shortcuts for combined accounts
- only inbox is allowed for IMAP/POP widgets
- all mailboxes allowed for EAS widgets
Bug: 4725896
Change-Id: I5c77c2f5443e330ed451179761b1d9c8c0dd7619