Commit Graph

2779 Commits

Author SHA1 Message Date
Marc Blank
55db7c098f Merge "Rework of security policy storage" 2011-05-03 11:20:46 -07:00
Marc Blank
aeee10e57e Rework of security policy storage
* Replace crazy (and soon to be "full") bit fields stored in an account's
  securityFlags with a row in a newly created Policy table (thus, fully
  expandable)
* Update code from database version 17 to 18; adds Policy table, a
  policyKey row in Account, and a revised trigger that deletes Policy
  information for deleted Accounts
* Update old PolicySet unit tests to work against the new Policy class
* Add test for the conversion of securityFlags to Policy
* Tested in a variety of scenarios; appears to be functionally equivalent

Change-Id: I1505ee75230d6a0d3c2b62a46326f39c2c7f9eb5
2011-05-03 11:11:47 -07:00
Ben Komalo
0bb7f1c37c Fixes to MessageCompose saving.
- "save draft" no longer closes the message
- ensure consistent state if there are successive saves
- misc changes to the way a message is loaded if there is a pending save

Bug: 3072398
Change-Id: I9cd01319772293e4d410020ab27603821a95ec9f
2011-05-03 10:35:11 -07:00
Todd Kennedy
6cd012b92d Merge "Remove dead code" 2011-04-29 09:38:24 -07:00
Todd Kennedy
bd2ab000b5 Remove dead code
Want to get this in before I start making other changes for notifications

Change-Id: I6da6ad798d125938eac1247d16a036f05c698e43
2011-04-29 09:27:35 -07:00
Ben Komalo
ec84dad879 Merge "Genericize UiUtilities.getView" 2011-04-28 17:21:24 -07:00
Ben Komalo
256652050c Genericize UiUtilities.getView
Change-Id: I7142d4a57170e3074dc896149bf95ed6d2677bdd
2011-04-28 16:54:26 -07:00
Ben Komalo
688f5355e3 Merge "Expose cc/attachment actions on UI directly" 2011-04-28 16:42:33 -07:00
Ben Komalo
6d75ae39f0 Expose cc/attachment actions on UI directly
This is a simple change to move +cc/bcc and +attachment action buttons
from the options menu to the visible UI (like honeycomb).

No attempt was made at styling the actual fields yet.

Change-Id: Ia1de8dbcf5e9ec9f7d3be3787cab657a2df72d70
2011-04-28 16:38:05 -07:00
Makoto Onuki
fe15959c20 Merge "Fix refresh animation" 2011-04-28 13:10:14 -07:00
Makoto Onuki
166b90a2f2 Fix refresh animation
Bug 4355229

Change-Id: Idfbc46f03f9cd753811179df760633db52c6f09c
2011-04-28 13:07:49 -07:00
Todd Kennedy
958b15e8f3 basic code cleanup of the notification controller
* javadoc methods
* rename some methods
* remove duplicate code; now new message and other account notifications
  are created with the same code

Change-Id: Iecf70494b6407a9a73380de103390a59d006191b
2011-04-28 11:58:49 -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
Makoto Onuki
13c7595bb9 Merge "Removed "global loader ids"" 2011-04-28 10:26:18 -07:00
Makoto Onuki
0f7f2be0b1 Remove unused class ProgressListener
Looks like it's very old code (no history in git) and not used anywhere.

Change-Id: I39d450d8d1fe56ad6722668c8841edaa074c9b4d
2011-04-28 10:01:07 -07:00
Makoto Onuki
fdca4a6a57 Removed "global loader ids"
I don't know what I was thinking when I added them to ActivityHelper,
but DialogFragments have their own loader managers (because they're
really fragments), so loader IDs in it won't conflict with anything.

This class used to use (mistakenly) host activity's laoder manager,
which was probably the reason for my confusion.

Change-Id: I7cd4d08b77ce8ea74fbf13b3273692da791ed23e
2011-04-28 09:55:07 -07:00
Makoto Onuki
e5b7f27fdd Fix combined view crash
Bug 4351392

Change-Id: I839d66a13df949f469afa7f10138026f6b463ad6
2011-04-27 15:52:26 -07:00
Makoto Onuki
6ea2c7c4a7 fix the build
It's a redo of changes made to MessageListXLFragmentManager on If4048d45.

It's a gerrit bug -- if you rename a file which has been changed in another CL,
gerrit allows you to submit it without rebasing it.

Change-Id: I1a9741befd1a4c2e74ce7afffca976b98e82a357
2011-04-27 13:30:45 -07:00
Makoto Onuki
8b6e443cdd Merge "Merged activity: move UI from activity to UIController" 2011-04-27 13:20:12 -07:00
Makoto Onuki
aee368d205 Merged activity: move UI from activity to UIController
- Renamed XLFragmentManager to UIControllerTwoPane
- Moved UI code from the activity to UIControllerTwoPane
- Bunch of clean-ups (Mostly renames to make things self-descriptive)
- Removed unused class MessageListFragment.State
- Fix bug 4341563

Change-Id: Ia2230bd5ec501fbc5c92b07b2ba874153b577a39
2011-04-27 13:17:27 -07:00
Makoto Onuki
567442bcf8 Merge "Fix "move to" dialog." 2011-04-27 12:44:23 -07:00
Makoto Onuki
4e033e0ac7 Fix "move to" dialog.
- Now we always use a fragment as a callback, rather than assuming the parent
  activity implements it.
- Use a generics trick to make sure the callback fragments really implements
  Callback.
  (Might be abuse of a language feature, but it's at least safer than runtime
  check...)

Bug 4314669
Bug 4345496

Change-Id: If4048d456b298784097e202cffab170177ac7b2d
2011-04-27 12:43:45 -07:00
Todd Kennedy
e87ff6c3cb Opportunistic cleanup
not making any real code changes:
* removed deprecated, unused methods
* remove 'throws' clauses when that exception is never thrown
* renamed method Controller#moveMessage()-->moveMessages()

Change-Id: Ifd006f760f0c19283e94a11a45c71295c8da35f7
2011-04-27 12:01:04 -07:00
Todd Kennedy
f66058581c Merge "Vary move-to dialog contents by account type" 2011-04-27 11:42:03 -07:00
Todd Kennedy
98c0f45e60 Vary move-to dialog contents by account type
For EAS accounts, we use the displayName column to populate the dialog. For all
other accounts, we use the serverId column. This means we will continue to not
have a fully-qualified pathname in the move-to dialog for EAS accounts.

Change-Id: I6dda89e037b0910180bee93a5bc091d65d2614b0
2011-04-27 11:35:30 -07:00
Marc Blank
4bca417846 Merge "Expose unsupported policies in the UI (account setup)" 2011-04-27 10:59:31 -07:00
Todd Kennedy
019341af98 Set mailbox flags for message contents
For IMAP, it's possible for a mailbox to exist on the server, but, to be
unselectable. Previously, these folders were never added to the folder list.
However, with nested folder support, we need to have these folders in the
UX so the user can get to its sub-folders (which may be selectable).

Change-Id: I11135fafbb14b40660983804fb86bd223e180d5e
2011-04-27 09:10:30 -07:00
Marc Blank
265530723b Expose unsupported policies in the UI (account setup)
Change-Id: I75b650af92c87bd990009e54072ac4b58ed0895b
2011-04-26 18:12:45 -07:00
Makoto Onuki
79b97da58c Merge "Fix phone UI." 2011-04-26 13:15:03 -07:00
Makoto Onuki
3de5fd026d Fix phone UI.
Bug 4339904

Change-Id: I343e4a9a77ee7baeff7c9dc1222dad2701efb0df
2011-04-26 13:13:40 -07:00
Todd Kennedy
27cf8b5ffe Display full pathname in move-to dialog
With the recent changes to hierarchical folders, the move-to dialog is
quite unusable if you have multiple child folders with the same name.
While waiting for UX to decide on the exact display, make a few quick
changes to display the fully-qualified pathname instead of just the
child folder name.

Change-Id: Id5c1cc98364fbf7a82a05ac30e944507c7d16320
2011-04-26 11:45:47 -07:00
Todd Kennedy
1f1a056c6d Merge "Add hierarchical folders to IMAP" 2011-04-26 08:12:10 -07:00
Makoto Onuki
0bea177b95 Merge "Create new mailbox fragment for nested folder navigation" 2011-04-25 16:38:50 -07:00
Makoto Onuki
e62770d979 Create new mailbox fragment for nested folder navigation
Create a new instance of the mailbox list fragment when navigating through
nested folders. (drill-in / going back to the root mailboxes.)

Also the fragment manager now has two public methdos for navigation that
are called by the activity.  They will be the common interface for
the tablet UI manager (i.e. MessageListXLFragmentManager) and the
phone UI manager.
- openAccount(accountId)
  Open the default view for the account.  Used when switching accounts.
- open(long accountId, long mailboxId, long messageId)
  Opne a particular view.  Used when, for example, opening a message from the
  widget.

Known issue:
- This breaks drag&drop through nested folder navigation.
  This is because a new mailbox list fragment created during D&D doesn't
  get the "drag started" event.

Change-Id: I69c14b71b4f681f8ab57f3ddd2cff9744a832076
2011-04-25 16:35:57 -07:00
Todd Kennedy
22208771b7 Add hierarchical folders to IMAP
We now create folder hierarcies for IMAP. This also includes a nifty SQL
statement that will get your existing database into shape.

Change-Id: If07a0632e9b250cf0c33c3e16bfba5816beab94c
2011-04-25 15:11:38 -07:00
Ben Komalo
1611d0baed Make ImapStore tests use mocks where possible
Change-Id: I2a1d5e7d3cc3b105a24a5fc29772bcd4a0308ad3
2011-04-25 16:50:37 -04:00
Ben Komalo
8dc402b28a Merge "Fix some unit tests" 2011-04-25 13:41:15 -07:00
Ben Komalo
d9cf94632f Fix some unit tests
- some proguard flags were stale
- some deprecated methods were legitimately stripped - kill the tests
for them

Bug: 4330508
Change-Id: I6d5c46c99d002895377f32b203844e9a6dcf0074
2011-04-25 13:38:51 -04:00
Marc Blank
cbb2abc80e Fix problem w/ ExchangeSender instantiation
Bug: 4334119
Change-Id: Ic900d08a3826754d2807ca84cbb9b8f2f4e28fc3
2011-04-22 18:13:47 -07:00
Ben Komalo
a6e6b9969a Don't rely on Activity to set the context for ops
The Fragment can get detached from the activity prior to performing an
operation, so for now, use the context reference that the fragment has
instead.

In the long run, we should avoid referencing the application context,
but a restructuring of ActivityHelper may help instead.

Bug: 4332451
Change-Id: Ieabff8ec0cc363f7d2eebd3ed47c230df9959886
2011-04-22 17:11:36 -04:00
Ben Komalo
23b441a5c8 Merge "Loosen up type requirements for contexts" 2011-04-22 14:11:06 -07:00
Ben Komalo
7735d548e8 Loosen up type requirements for contexts
A context is sufficient for most operations ActivityHelper does

Change-Id: I2706b2b579210257d0ee6ace6277aa53e84dc52e
2011-04-22 17:00:43 -04:00
Marc Blank
d2fd1252d5 Add status code(s) for disabled sync (needed for EAS 14.0)
Change-Id: Ie65141c4d83412274dbbc39dffed7c3be394bb84
2011-04-22 12:50:37 -07:00
Ben Komalo
51ea22b0d3 Merge "Fix apk attachments so they can be installed" 2011-04-21 14:45:18 -07:00
Makoto Onuki
9fec3d778f Merge "Make sure to exit CAB when MessageListView ." 2011-04-21 13:55:07 -07:00
Todd Kennedy
7155c49f35 Use Account objects instead of URI for exchange
No need to use URIs when we have the Account object.

bug: 4322402
Change-Id: I06e8a5b43063446fa41f7e81eb3638b2570abe5c
2011-04-21 13:10:32 -07:00
Makoto Onuki
fe001abe79 Make sure to exit CAB when MessageListView .
Change-Id: Ie6c5ec26ceff700ee00c6fbb3af4cbe23c498db4
2011-04-21 12:17:41 -07:00
Ben Komalo
e36648697f Fix apk attachments so they can be installed
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
2011-04-21 12:07:32 -07:00
Todd Kennedy
200c6bd9fa Simplify mailbox synchronization logic
The logic is simplified by creating database rows for new mailboxes down
in Imapstore. This means that the difference between local and remote folder
lists are mailboxes that need to be deleted.

Note -- this is still not the final CL. We probably update the database too
frequently and the column values aren't updated to support nested folders.

Change-Id: Ifbe4e0cf74ba81e5b6156b452ab72c56c35235ab
2011-04-21 11:54:30 -07:00
Makoto Onuki
33cfddf1fa Merge "Merged activity step1: Use FragmentTransaction (tablet)" 2011-04-20 15:41:08 -07:00