Commit Graph

122 Commits

Author SHA1 Message Date
Marc Blank
aca9426581 Remove NotificationService; use Account columns for data storage
Bug: 5023662
Change-Id: I84df3b474dd6320327851003af985144cc16348e
2011-07-19 18:19:59 -07:00
Ben Komalo
1aa5e18902 Update compose view action icons
Don't use split action bar in phone compose view (we lose too much
vertical real estate) and just tuck a lot of the menus under the menu
item.

Bug: 5011815
Change-Id: I04b009556a5984fa4b60f54f2d094c3b7c8a5c78
2011-07-11 10:23:22 -07:00
Makoto Onuki
1ddc2ca4a7 Per-mailbox settings
- 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
2011-07-10 12:09:51 -07:00
Makoto Onuki
82fecf203b Merge "Revert "Make EmailActivity the default activity."" 2011-06-21 15:06:39 -07:00
Makoto Onuki
053517d2d1 Revert "Make EmailActivity the default activity."
This reverts commit cfd89da9c3

This would remove all existing widgets somehow.
2011-06-21 15:04:59 -07:00
Makoto Onuki
6500ba21a0 Merge "Make EmailActivity the default activity." 2011-06-21 14:37:01 -07:00
Makoto Onuki
cfd89da9c3 Make EmailActivity the default activity.
We still go through Welcome when the app is launched from account/mailbox
shortcuts or a widget, to clear all existing activity instances, but
when the app is launched from the launcher we just open EmailActivity.

This will get rid of the flicker.

Change-Id: I9bff31fb96e24c125ddc0a1e30a007e6d6ff036d
2011-06-21 14:11:05 -07:00
Marc Blank
cbc842c5c9 Fix MailService unit tests
* These broke when we split Email/Exchange
* We now use a test authenticator and a test account type, which
  is actually far cleaner than dealing with actual accounts

Change-Id: Ib7c9f884eac484c33642a8036f47466ce641c567
2011-06-21 13:03:48 -07:00
Makoto Onuki
0f27632749 Add "search mode" to the action bar
- 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
2011-06-14 15:13:32 -07:00
Ben Komalo
78959916e7 Add support for client side SSL certificates
This introduces the ability for clients (i.e. the exchange service) to
register "special connection types" that use a client certificate stored
in the system keystore. The alias is encoded into the URI scheme for
those clients, and the socket factory used for those connections will
use the approprate KeyManager.

Lots of TODO's, including bubbling a lot of this up to the higher level
and wiring the UI to actually set the alias in the HostAuth table.

Change-Id: If5e1901c5b58731fdabd3e6b6da7198134b512d2
2011-06-13 18:16:22 -07:00
Ben Komalo
0a5ed251f5 am 8e8372d7: am c05084c8: Update Email version for 3.2 release.
* commit '8e8372d733e1cc85977a458d979443937b7c8f46':
  Update Email version for 3.2 release.
2011-06-09 11:54:07 -07:00
Ben Komalo
c05084c884 Update Email version for 3.2 release.
Change-Id: I7480c15fcfbc91c34aa042fe936ff08964d7add7
2011-06-07 21:22:07 -07:00
Todd Kennedy
7f4cf3c46b Hook account/mailbox picker to widget
now when adding a widget to the desktop, you can pick the account
and mailbox.

Change-Id: Id3d2c21b349af58459304ac5a068402d67f4d0f7
2011-06-01 18:24:47 -07:00
Todd Kennedy
5675ea88d3 Add a second fragment to select the mailbox
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
2011-05-24 16:00:33 -07:00
Ben Komalo
87df8d7161 Simple change to use the new split action bar.
Change-Id: I51456822bdf1c6f75aeb0ced615e44b624b26460
2011-05-23 20:41:24 -07:00
Makoto Onuki
2ed7a86949 Support pre-HC style account shortcuts
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
2011-05-19 13:47:25 -07:00
Makoto Onuki
b9c2e0d5e6 Remove the phone activities from manifest
Apparently I forgot to include this in the huge CL...

Change-Id: I4b3e944b328e6b8a3e20427904ba654dab2041ac
2011-05-16 13:29:27 -07:00
Ben Komalo
2866284a6d Rename AccountSettingsXL -> AccountSettings
This activity already supports phone and tablet mode.
Only renames in this change - no other change.

Change-Id: Ieca17137af45e3860812091f69cd4d9b55ddf3ec
2011-05-13 09:58:15 -07:00
Todd Kennedy
71bd208ddd Create a new notification service
We can remove the preferences stuff 'cuz the service "should be" longer
living. And, even if the service is terminated (either by the user or by
the system) we'll receive a new notification when the service comes back.
This is probably desired behaviour anyway.

Change-Id: I4850a9473401536e8fb20385b780d4736ce80a8e
2011-05-11 07:54:07 -07:00
Todd Kennedy
3d81e234d0 Remove deprecated strings
Removed the deprecated strings and brought back the permission strings
that were actually used.

Change-Id: Ie63a948522f7e11e1950969be5dfb26d7bc58e0a
2011-05-05 12:14:41 -07:00
Makoto Onuki
8112732376 Move more UI stuff from activity to the UI controller
- Now all the UI stuff is owned by the UI controller
- Except temporary UI (exchange search and per-mailbox-settings)
- Except error banner
  This should be moved too eventually, but I consider it as a low-priority.
  I'll leave it as-is for the time being.
- Moved RefreshTask too.  The spec for refresh has dependency to the UI.
  (i.e. implicit refresh of the mailbox list may not be necessary for
  the phone.)

Also renamed the main activity to EmailActivity.

Change-Id: I00585856bdacf69aa4e104178a5cf7352ff6d592
2011-04-28 10:59:55 -07:00
Marc Blank
78684ccc79 Temporary search UI
Change-Id: Ia138ca93f0b28fd0915aa79c965f752f7c08ee90
2011-04-06 08:51:14 -07:00
Makoto Onuki
308ce92847 Better fix for the PendingIntent issue.
Refactor the changes introduced in Ib02842bb.

- Now Welcome and AccountSettingsXL accept intents with URLs of the following
style, and get IDs from query params, rather than extras.

Welcome:
content://ui.email.android.com/view/mailbox?ACCOUNT_ID=1&MAILBOX_ID=2&MESSAGE_ID=3

AccountSettingsXL:
content://ui.email.android.com/settings?ACCOUNT_ID=1

- Now the "new message" and "login failed" notifications use these new style
intents, so the system wouldn't merge PendingIntents for different accounts.

Also:
- Moved all notification creation logic to NotificationController.
  (Except the one in CalendarSyncEnabler; which is used only to support
  upgrading from pre-froyo and I don't think it's worth refactoring.)

- Note the "password expired/expiring" and "security needed" notifications
aren't changed; they still use extras to store account IDs.  This is okay
because these notifications are not per-account.

Bug 4065269

Change-Id: I70737438d2e7c45fd7488a5b0a7105c8568e02f7
2011-03-23 14:49:38 -07:00
Andy Stadler
bdf0272425 Update Email version# for 3.1 release
Bug: 3018936
Change-Id: Id1e9ae8c714561a966ef3c44769a74e9704d0dc6
2011-03-10 14:37:51 -08:00
Marc Blank
dc78a769fc Email split, part dix
* 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
2011-02-25 10:46:16 -08:00
Andy Stadler
6000e676e7 Quick fix to enable ExchangeService while in single APK
Bug: 3456342
Bug: 3442973
Change-Id: Idb2234794af9a36b75ba46fc1ca04ef5629eb7a2
2011-02-15 11:32:05 -08:00
Marc Blank
8a57469460 Email split, part trois: AccountService
* Create AccountService.aidl and AccountServiceProxy in emailcommon
* Implement AccountService in email
* Use AccountServiceProxy in Exchange for account reconciliation,
  notifications, etc.
* Move sync window constants into emailcommon
* Split attachment provider utilities and constants into emailcommon

Bug: 3442973
Change-Id: I89dce28b799b193243c07774dab65d830ae62775
2011-02-10 14:32:01 -08:00
Marc Blank
9ba506c4dd Email split, part deux: PolicyService
* Split PolicySet from SecurityPolicy and move to emailcommon
* Define PolicyService that sync adapter services can use to
  interact with the Email DPM administrator
* Implement PolicyServiceProxy for exchange
* Implement PolicyService in email
* Modify imports, references, etc. as required

Bug: 3442973

Change-Id: I92015e21f780a68754b318da89fbb33570f334a2
2011-02-10 13:53:37 -08:00
Todd Kennedy
3a18f5f8c8 Fix "method not found" unit test errors
Not only were needed methods added to the proguard.flags file, but, the file
was generally cleaned up so that only the methods absolutely required by the
unit tests are specified.

Change-Id: If888d69325c3138815e39218d05eec473d5d72b6
2011-02-07 17:27:43 -08:00
Andy Stadler
7d51b7a05b Remove all compatibility with pre-2.0 data
* 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
2011-02-06 00:54:39 -08:00
Justin Ho
b5b8e568e2 New Email launcher icon, deprecating old asset
Bug: 3362749

Change-Id: Idb876f38588a9c5d2b4b3c04dbf4dbca082c1618
2011-01-29 14:20:01 -08:00
Andy Stadler
c540b57263 Remove STOPSHIPs and a bit of debug logging
Bug: 3396875
Change-Id: I3e874e28c3412aadd9851000a83d69fc8c06aeb9
2011-01-26 22:53:08 -08:00
Winson Chung
cb8a5544bf Updating widget due to API changes.
Change-Id: I8623c48e912330145cfd325c962574d322ccc6f0
2011-01-18 15:31:17 -08:00
Makoto Onuki
c50b6f685b Use broadcast to detect system account update.
Instead of AccountsUpdatedListener.

Bug 3211657

Change-Id: I1e60092fc06fe80b9914ff7264c24fcbfa950745
2011-01-17 11:03:57 -08:00
Marc Blank
0fd8ae8808 Pixel perfect Email widget
* Functionally correct and pixel perfect
* All current assets in place

Bug: 3292507
Bug: 3284201
Bug: 3135118
Bug: 3255036
Bug: 3252913

Change-Id: I8fa6752748c74b3a9789a3675da12f6c0c11975f
2010-12-20 11:55:01 -08:00
Andy Stadler
d2fcefc567 Add widget preview
* Also bumped email version number to 3.0 because the version# may need
  to increment to force refresh of the preview tile.

Bug: 3277453
Change-Id: Ic556e49a4b531fcfdbf3c8f6a2537a34ee0f3c63
2010-12-15 17:49:07 -08:00
Andy Stadler
d685b469c7 Add magic intent to force account creation
* Add entry point via com.android.email.CREATE_ACCOUNT
* Enable when in monkey mode only
* Walks through setup screens as if auto-populated and as if
  connection checking always succeeds.
* Refactored some common code in AccountSetupBasicsFragment
* Removed obsolete commentary about auto-population of EAS accts
* Also fix minor typo in FLOW_MODE_ACCOUNT_MANAGER_POP_IMAP

Bug: 2735784
Change-Id: Ie7363836cd267673e963e60ae8bc32cab422576e
2010-12-04 22:53:59 -08:00
Marc Blank
1b9337ea4f Wireframe email widget
* Formatting and assets are preliminary
* Functionality correct
* Needs cleanup, etc.

Change-Id: I75051df93d233ef529a616c7a9efae403d320bd2
2010-12-01 13:37:57 -08:00
Marc Blank
3bbc690600 Add watchdog to AttachmentDownloadService
* Detect attachment downloads that have stalled and restart them
* Catch a couple of cases in which we weren't sending callbacks

Bug: 3122242

Change-Id: Id2bfd3b26182004b301cf8665f4feb6e62b98b73
2010-11-30 10:16:05 -08:00
Andy Stadler
d87f81e901 Update visual style shortcut picker and make it async
* 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
2010-11-23 22:54:49 -08:00
Andy Stadler
5c4c0ab456 Move application icon to mipmap-* directories
Change-Id: Idc5df7046d0fa64ffbfce2869dffb4fe0fd144a0
2010-11-23 12:06:44 -08:00
Makoto Onuki
b43c991e5f Switch from Theme.Holo.Light.Extended to Theme.Holo.Light
Change-Id: I91a43412a87a5444042141c9d6917e1ff200fe7a
2010-11-15 12:01:45 -08:00
Makoto Onuki
bf678771b7 UI change: MassageCompose
Basic changes for the new UI.  At this point we don't know what the new phone
UI will look like, so I didn't bother trying to preserve the old behavior on
the phone UI.  The changes will affect both the phone UI and the tablet UI.

- Send, Save Draft, and Discard are now action bar commands.
- Add CC/BCC and Add Attachment are now regular buttons.
- Activity title changed to "Compose"
- Some string changes per new wireframe

Further changes (actual layout changes for the latest wireframe) should be made
only for the xlarge layout.

Change-Id: I68c9c37dfdca6736b1e35053e7f196800fcfce2e
2010-11-04 15:22:25 -07:00
Makoto Onuki
3aca79fbec Switch to the Theme.Holo.Light.Extended theme.
Change-Id: Ib620285c6445f7b7500217cfb354ed1de280d861
2010-11-01 17:19:38 -07:00
Andrew Stadler
cd09545b87 Provide runtime switch for GL acceleration
* new checkbox in debug fragment
* saved value in prefs so it's sticky
* each Activity calls a helper to enable/disable per that flag

Change-Id: I1af1ae9f401bc746cc97da00dfb0e06407b79d46
2010-11-01 16:16:27 -07:00
Makoto Onuki
d7642bfbe9 Turn on ActionBar on the 1-pane message list
We'll have both the action bar and the title bar, but we need the action bar
to access menu commands.  This is necessary to make sure phone UI hasn't
been broken.

Change-Id: I5f6f72934d0346cbb01bdd98d31ba19ee0458aef
2010-10-27 15:04:07 -07:00
Makoto Onuki
33c86101f7 Enable OpenGL acceleration.
Looks like it no longer has obvious bugs.

Change-Id: I48876c62c4ebd5a32bcca8fb7a230c428b4b35f7
2010-10-20 12:31:07 -07:00
Andrew Stadler
5b2424bf6f Cleanup of Account setup flows
* Remove AccountSetupCheckSettings and related resources
* Remove all handling of EDIT flow in setup activities

Change-Id: I7b87d87978533b52b9c974d006920749389418d8
2010-09-13 14:39:36 -07:00
Andrew Stadler
2731aef45c Convert exchange setup to use checker fragment
* AccountCheckSettingsFragment now supports AutoDiscover
* Clean up callbacks for account check & autodiscover errors
* AccountSetupExchange now supports rotation
* Remove dead code in SetupData & AccountSetupBasics

TODO next CL: Remove all edit flows from setup activities
TODO next CL: Remove old CheckSettings activity

Change-Id: I3c9884856ca6e70226374fdb28400bfb3588387e
2010-09-13 14:04:45 -07:00
Andrew Stadler
8bcb572ccf Convert setup to actionbars, and holo theme
* All setup activities given UI makeover:
  * Remove legacy themes from manifest - exposes default holo theme
  * Remove bottom row button(s)
  * Replace with action bar button(s)
* No change to workflow or activity/fragment organization

Change-Id: I07ce11a0a2b4b767b5ac111d466e68400fe0f30b
2010-09-08 23:27:05 -07:00