This is the UI part for remembering to show images based on senders.
It does not persist anything yet.
Change-Id: Iec40d9d1ace3661dabca2eed31ea6d0893be71e0
- "UNSEEN new messages" is the title for multiple new messages
- the small number in the right shows the unread count
Change-Id: I48f761b727ea8abc9277d737a08789fa63d10871
Also fixed the text alignment in the tabs on the 2-pane message view.
We don't yet to have the full-spec for this, so it's still temporary.
Now we again wrap the webview in a scroll view, so we'll have the "message
keeps growing" issue again. I'll file a bug for this.
It's still temporary, so I didn't remove the scroll views for the
each section (e.g. the attachment tab). Also I had to make up some
colors/dimensions which were unspecified. Also I didn't always define
styles when I should. Let's clean up these things later when we
get more detailed spec.
Change-Id: Ibdb78543f5ec7300f92091d1f8b800ca5edc74b2
On phones it was being pushed out beyond the width of the phone.
Make it so that it fits the whole width in phone portrait, and is fixed
size in landscape / tablets.
Change-Id: Ifc712002c4df38ceb4bd3577f0cbb48114b41115
- Show "Your email will appear shortly" during the initial sync
- Don't close self in onStop if it's because of configuration changes.
Change-Id: Ic60f25c58712c599c735b2bede1627d4e102eb6b
This separate the layouts for the message list item so that we can
change the phone and tablet independently.
The visuals weren't really updated except for easy to win padding
reductions.
Change-Id: I92ed6e1bf275551abd77fd788b5c7ac22f639843
Added "Insert quick response" button to MessageCompose's action bar. Clicking
it opens dialog with available quick responses. Selecting one of the responses
will insert it into message body at the current cursor location. Also added
menu in account preferences to create, edit, and delete quick responses.
Change-Id: I85f3f6b36801cf112ec9d7c31135a917456173d7
When the KeyStore fails to give us back a certificate for any reason (it
was removed from the keystore perhaps), propagate the error back up.
Change-Id: I4f0ef783c1665589cc8ccb43d95da43a297a3e9a
This introduces an exception which needs to be thrown from a KeyManager
when it tries to establish a connection with a server requesting a
certificate.
Change-Id: I06dfad7789ed5d320b630e7e4380e15da42a48df
This simply allows the user to select a certificate from the KeyChain to
use for credentials.
Text and UI not finalized.
Change-Id: Ib86abc3c2e899640218122caa12308dc9646dab6
- Instead of the search dialog, show the search widget on the action bar.
- Launches a new activity for search, but still uses the temporary search code
- Search still works only on two-pane.
Change-Id: I1d36ad3416c7dff9579cf37e40e49e31c9d99219
The ability to change mailboxes using the spinner is currently only implemented
for the two-pane UI. one-pane implementation will come in a future CL.
Change-Id: If72e9d9d607508553c918f5523e748e8a481ff84
(this conflicted and the automerger situation was a disaster, so I
opted to skip immediately to help clear the backlog, now I'm
cherry-picking manually)
Using a TableLayout and large margins to shrink the input boxes causes
weird artifacts when you type past the size of the input box. Fixing the
padding is also not the right way, since stretching the input the whole
screen length is ugly. Just use a width.
Change-Id: I3009e7c66f729a96f404263d79e77d3ab4d831ae
- Now that fragment useage is simplified (e.g. no new fragment
creation for nested mailbox navigation), most of the fragment
operation code for 2-pane is reuseable for 1-pane as well,
so moeved it to the base class.
- Temporarily added "Show all folders" as a menu option on 1-pane.
- Added "opener account id/mailbox id" to the message view fragment.
They are not used by the fragment itself, but they're used
by the UI controller for the back navigation. (And now the UI
controller doesn't maintain the current IDs by itself; rather
it gets them from the currently-active fragment.)
- Use async fragment transaction on 1-pane too, now that it always
gets the current state from the active fragment.
- Changed the timing when we install fragments from onAttachFragment
to fragments' onActivityCreated. So now all installed fragments are
created.
TODO Now that all installed fragments are guaranteed to be created,
remove all special trealment for the fragment argument accessor.
(They were meant be safe to call before onCreate, but it's not
necessary any more.)
Change-Id: I0ed100c3f0b460835b164c0dc908ea483a4e46ee
The mailbox list for widget configuration should only include two mailboxes --
1. an account's full inbox (both read & unread) and 2. an account's unread
inbox (similar to #1, but, only contains unread messages)
This also applies for the combined account view.
Change-Id: I5640fd8572d385703db04ca613f5b1f35f3952da
With this CL, we have "All accounts" in the account list and "Inbox" & "Unread"
in the mailbox list. "All" + "Unread" doesn't play very well, so, we should
seriously consider whether it's worth the effort to support it right now.
Change-Id: Ia1c07c89a535a68ffe6f3ae5009b5b6591a9acdb
After choosing the account, we need to select a mailbox for the shortcut.
In order to replace the fragment, we cannot hardcode it in the XML. Instead,
we need to dynamically create it.
Also, restructure the fragment class and rely on the class to "do the right
thing"
Change-Id: I752ad5bbdf2484332ec2b73852cae74a5d2092fa
Account shortcuts used to point at MessageList directly with a
content://com.android.email.provider/account/ACCOUNT-UUID URI.
Hook these intents and open Welcome instead.
On Eclair and before, we stored an account-ID directly as an extra,
but this style is no longer supported.
Bug 4208879
Change-Id: I9fecb0723743377a6d7c7e84626e8613f2356492
Added the base class for the UI controllers and the 1-pane implementaion,
which is almost empty at this point.
The old phone activities still exist and will be used on the phone by default.
To use the new activity (1-pane EmailActivity) on the phone, use the following
comamnd.
adb shell am start -a android.intent.action.MAIN \
-d '"content://ui.email.android.com/view/mailbox"' \
-e DEBUG_PANE_MODE 1
Change-Id: Id1fe85d4517778afc967d7d5e17e1299dd1bfefd
* Update sync window options to include "Automatic" and "All"
* Make the default (for new accounts) "Automatic"
Change-Id: Icbc696f55abcfad79e66079ebb414ca50778dcaa
This introduces an in-memory cache of file paths for an attachment so
that we can install from a filepath instead of a content URI.
The cache also allows us to prevent duplicated files made if the user
hits save multiple times (the save button is disabled).
Bug: 3338997
Change-Id: I56651a55eef2f1a3f24b6d936c37736c4fc3d295
This now uses an XML layout that gets inflated and computed after a
layout pass. The drawing simply uses the coordinates stored after the
layout.
This makes it a lot easier to maintain the different views and allows us
to simply provide different XML files for different modes/views, isntead
of trying to hand tweak Java layout code.
Some TODOs - clean up the "paints" and optimize the layout/drawing
computation
Change-Id: I784919f726bd4d80aba8744a8f047fcfe79ad93a
* Just in MessageListXL for now, as with search
* This allows us to test functionality within EAS, and confirm that
it's all working w/ unbundled Exchange (API 1)
Change-Id: I4f062ae871a28d2b57a23a269d6ec65903181d26
currently only really works for exchange accounts. legacy accounts (imap
or pop) do not build a folder heirarchy.
Change-Id: Idb7c622b64a599a0776233a076359869f4ab4a4f
... assuming we're going to use the holo light on the phone as well.
Now the text on MailboxList is clearly visible.
Also updated/added some comments.
Change-Id: I280db2b82cbd1627c78a305dd31bbf1b1bb34d1d
After the account is created, don't allow editing the user name. We want to
prevent this as the user name is core to the account and changing the user
name is tantamount to creating a new account.
bug 3502279
Change-Id: I1d89710fd48aca67ba13abea5bdbdc1d87941618
* Correct allignment of mailbox label
* Sender info & presence alignment fixed
* Header height corrected
* Sender header updated; new asset for background & remove the "fold" asset
* New asset icon and allignment for "show pictures"
* Selected rows have updated background; new assets
* New asset for checked items
* Update divider to be 2px high
* Update selected background for wide message list
bug 3510984
Change-Id: I028ed5619ea7127b0392d9f5b7b00c575b00f3c6
For now it only enables it for the main process. I've added a flag
to EmailServiceProxy for EAS, but it's not used in the exchange side.
Bug 3500292
Change-Id: I5b27c69fe7cc995a430e9def54b2463076032c78
* The coup de grâce for Exchange in Email
* Remove Exchange bits from AndroidManifest
* Update Android.mk to create static jar for emailcommon
* Delete all com.android.exchange files
* Delete all exchange-only strings
* Change loadAttachment service method to take only attachment id and
background flag
* Add code to AttachmentProvider.openFile() that opens an output file
for attachment writes
* Make sure deviceId is determined in Email app (not Exchange)
Bug: 3442973
Change-Id: I775600252fd121f474d51cb26fefbfcc50e387af
The expanded account spinner is completed, but the collapsed view
needs some more work. (That'll probably be a rather large CL, so I'll
finish it in a separate CL.)
Bug 3434135
Change-Id: Ia732e6b57b8c0d3e1609c3134b26411539ab6a18
This will be used to set the max width to the account name spinner.
I gave up on writing tests for onMeasure. It wasn't easy without adding
a dummy activity and layout.
It'll be used for a fix to bug 3439694.
Change-Id: Ie7569b0661eb732e270e4521fa0d3306f1bdd12c
Whenever we remove the "load" and "view" buttons, we should add an "info"
button; where we will inform the user as to why we are preventing her from
seeing the attachment.
bug 3338997
Change-Id: Ic243f1542dec55f5b256eeb67ade50aa90e42009
* When security settings notification is clicked, inform user that
they need to change settings (before dumping them in security
settings.)
* On an authentication failure, present a dialog to the user explaining
that the username or password may be incorrect.
* When the device pin/password is expiring or expired, present a dialog
to the user explaining that it needs to be updated.
Bug: 3238657
Change-Id: I8fca446fa3c1bf87a95938553dbdc362c3df220e
* Use strings that fit properly in new notifications
* General cleanups & rewrites from Roy
* Remove showWarningNotification() and use postAccountNotification()
This is part I. Part II will add dialogs triggered by some of these
notifications, to provide more explanation to the user of what's wrong
and how to fix it.
Bug: 3238657
Change-Id: Ib51bcb4412f8a09a6f97653f0b5f8642efe2ac1e
* Remove LocalStore (pre-2.0 mail database) and its unit test
* Remove UpgradeAccounts (converted pre-2.0 accounts to Provider)
* Remove FolderMessageList (receiver for pre-1.6 desktop shortcuts)
* Remove "upgrading" paths through LegacyConversions
* Clip out dangling references to everything above
Bug: 3292310
Change-Id: I5654d55a0879b00b05b63055b94651855a8ee3ef
action_bar_current_mailbox: We'll ship with the current design.
colors.xml: Obsolete STOPSHIP.
Bug 3335095
Change-Id: Ic45ef3d0cafb55761b720e1e74c0633012f87e98
* In AccountSetupNames:
* Add "Field required" error tag to Names display
* In AccountSettings:
* Improve IME behavior in text fields - auto-capitalization
* Prevent empty username
* Reset empty nickname back to default (email address)
* Fix broken hint for signature
* Proper trimming in all fields
Bug: 3338435
Change-Id: I2720c4524303ada6dd228866756fc9c3aac173f3
Current specification calls for the following:
* Droppable targets: do nothing
* Not droppable targets: grey text (hex #999999)
* Hover over droppable: use label/folder list pressed state
* Hover over not droppable: do nothing
* Destructive targets: background (hex #f10000)
We need to copy the resource from the framework as there is no supported way to
fetch the pressed state drawable during runtime. Adam filed bug 3370043 so we
can specify a drag target state directly in the selector.
bug 3154986
Change-Id: Ifd5c24a3dc46b5a1c64a149904657dda297ed047
instead of showing all messages (e.g. messages in drafts, etc...) the "combined
inbox" view now only messages in the inbox folder. This is now identical to
the "combined inbox" view available in the full email UI.
bug 3368613
Change-Id: I0080b56cd2718a3dce82b279277c63c4f43e86dc
* Modified font colours for read/un-read emails
* Add chip colours when viewing mail from multiple accounts
* Add calendar icon if message has an invite attachment
* Update background of read/un-read emails
bug 3351761
Change-Id: Id59573d25a6988e9e869335f95778aad28b43912
Bug: 3301398 Phone->Android device in device admin setup screen
Bug: 3296594 email widget doesn't have a "tap to configure"
Bug: 2981433 should not trim leading/trailing spaces from passwords
Bug: 3360873 Attachment pre-caching should be a per-account setting
Bug: 3362752 Malformed message can prevent sync (error while decoding)
Change-Id: Ibed653987ccd5e0e1bd4e195f044c5c1cc06368f
* Standard values for overall layout & padding
* Standard button positioning
* Move all fragment padding to containers so setup/settings
can be adjusted individually.
* Remove unnecessary banners in settings fragments
Bug: 3188940
Bug: 3188951
Change-Id: I9567988b388a8cf80f9d583be865091478b2404c
Still waiting for a few missing assets, but it's done other than that.
The divider change is already merged; new layouts all use the framework style.
It's basically all layout changes, except for:
- Now the recepient address line has "Show details", which shows a dialog with
all to/cc/bcc addresses with the timestamp.
- Now invite response buttons are checkboxes.
(But the basic behavior doesn't change -- once you check a response,
the message will be gone, so you can't change the response later.)
Copied message_header_bg from gmail manuall. It'll look silly without it.
Bug 3138021
Bug 3307021
Change-Id: I6f7eb91d6104c3143a5c58b0c4c6c19929cea477
The framework defines ?android:attr/dividerHorizontal. Instead of defining our
own divider by specifying some arbitrary RGB colour, utilize the framework's
divider.
bug 3335145
Change-Id: I64dd30a5a73b0884f82f6a2b9fbbd88c6782e0db
* Dimensions, Colors, Paddings, Text styles, etc.
* Update AccountSetupBasics, AccountSetupAccountType,
AccountSetupOptions, and AccountSetupNames
* Extracted shared layouts in AccountSetupOptions & AccountSetupNames
* Leave behind STOPSHIP entries for:
- button positioning (primarily vertical)
- colors of text & dividers
* Will do incoming, outgoing, exchange in a separate CL (because they
are shared with settings)
Bug: 3335093
Bug: 3188940
Change-Id: Idf727e3b2b6a0293d6d41bf29f1c0c48d746ab7c
* cleaned out old placeholders
* moved a bunch of unused strings into placeholders
* moved three strings into active status.
Bug: 3335092
Change-Id: Ibb0690f7cc9ddd1b8f7f337964faff6471be880c
Use the new icons where appropriate. This is not a complete change as there are
still some icons missing.
Change-Id: I51d1458749343ddfc6456dc2a9853b8bc2540e26
Now it should be close enough...
Also fixed the "selected mailbox won't get hilighted" issue.
Bug 3137965
Change-Id: Ifba83783121e62363fac6428534394d2e0a4bee9
* Functionally correct and pixel perfect
* All current assets in place
Bug: 3292507
Bug: 3284201
Bug: 3135118
Bug: 3255036
Bug: 3252913
Change-Id: I8fa6752748c74b3a9789a3675da12f6c0c11975f
* For each of incoming, outgoing, exchange fragment, create a "settings
mode" which slightly alters the layout for use in AccountSettingsXL.
* Build a settings mode wrapper layout around the basic fragment
* Add new constructor to set "settings mode" and select layout
* Add wiring for cancel/next buttons in the fragment
* AccountSettingsXL configures each fragment in its settings mode
* Remove old actionbar "Next" options (no longer needed)
TODO: Pixel perfect adjustments, colors, fonts, etc.
Bug: 3188951
Change-Id: Iba26281b214333db301dd40d6c016b6c5a932c2d
* Set aggregated expiration values with DPM
* Fix min/max logic when aggregating, and fix unit test
* Add expiration tests when checking if policies are active
* Add expire-password to uses-policies set
* Handle password refresh (clear notifications and sec. holds)
* Handle password expiration (warning and/or wipe synced data)
* Unit tests for provider-level methods
* Refactor common security notification logic
* Placeholder notification strings (need final)
Bug: 3197935
Change-Id: Idf1975edd81dd7f55729156dc6b1002b7d09841f
- Set "Viewing FILENAME" as title.
- Home icon now has "back" arrow. Closes the activity when clicked.
Bug 3221312
Change-Id: I689499e10704d3c5d206df4aa12e21db9687c4c5
* Use dialog when in XL screen size
* Show different strings in launcher and in dialog/activity title
* Add cancel button to picker
* Move accounts query to AsyncTask
* Remove obsolete AccountsAdapter
Bug: 3093928
Change-Id: Ief771482c6db684c434c21cf92844c37a927d34a
Show color chips for account rows and message items on the combined view.
Moved hard-coded color values to resource.
Bug 3138001
Change-Id: Ib93fb9d6e9592ebd0c297f83c3dee2358a80508f