• Home
  • History
  • Annotate
  • only in /packages/apps/Email/src/com/android/email/data/
History log of /packages/apps/Email/src/com/android/email/data/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7fdde9bb4a24e931618a7a64227e2194c89034da 07-Feb-2013 Scott Kennedy <skennedy@google.com> Cache column name/indexes so we can use getColumnIndex()

MatrixCursor doesn't do this, so we need to add our own cache.

Depends on Ia5ffd31f54a2a335f495df5e0d1a0886ee08c14b

Change-Id: Ica78e3cec747bf86fcef16508156e359216c64fe
losingMatrixCursor.java
f419287f22ae44f25e1ba1f757ec33c7941bbfa8 28-Jun-2012 Marc Blank <mblank@google.com> DO NOT MERGE: Move emailcommon2 sources to emailcommon

Change-Id: I06df7e467cd2e0117df8b8db3ddc6ff9da13f1c7
hrottlingCursorLoader.java
3cfb3d50774eaaca9759b671ef6c963e5023c155 13-Jul-2011 Ben Komalo <benkomalo@google.com> Remove dead code

Change-Id: I66bec3975b3f028081071b9bbd26206ec369da26
oAutoRequeryCursorLoader.java
41878c2813d9948af5d333e2bf4d063c538d3c19 03-Jun-2011 Makoto Onuki <omakoto@google.com> Use the CursorWithExtras pattern for the message list.

This will make the message list a lot snappier.

We were using two different loaders for the message list; one is to load
the meta information and the other to load the actual message list.

Unify them using the CursorWithExtras pattern.

Change-Id: I02957bbca1b1fb74ca6eca14ad2535dfdbf03a5a
ailboxAccountLoader.java
844bf745044b4564f42a68f8b7d40105c4def294 01-Jun-2011 Makoto Onuki <omakoto@google.com> MailboxListFragment: In-place nested mailbox navigation

Now we reuse the same instance of the fragment for nested mailbox
navigation. (Don't use fragment transaction)

"CursorWithExtras" now only has the child count, so I removed the
bundle version and added a concrete class to MailboxFragmentAdapter.

With this CL the nested mailbox navigation on 1-pane should work, but
not back navigation. (Back press event isn't connected to the
fragment yet.)

Change-Id: I2c23651d9c8edb5fe062c68bbb9b462c8949ded4
ursorWithExtras.java
ca6eca0466f9dc58317dd4334da2b951e23f06d7 25-May-2011 Todd Kennedy <toddke@google.com> Don't navigate to a shortcut mailbox

All shortcuts now have a mailbox associated with them. When launching
the app via shortcut, we want to show the messages within that mailbox, but,
we do not want to navigate into the mailbox; unless the mailbox has children.
Since we don't want to put too much informatin into the shortcut, we must
perform these checks at runtime. So, if ever we try to load a mailbox that
doesn't contain children, we load it's parent instead.

Change-Id: Idb5dbc7cd740b270a0068811abe685f963ca2c0b
ursorWithExtras.java
54c91f00d7f967690a80b992062e75c40182d088 17-May-2011 Makoto Onuki <omakoto@google.com> Use IllegalArgumentException, not InvalidParameterException

Because IllegalArgumentException is the standard one.

Change-Id: Ib4d0bfa88a3d4218148a7cb248d9baa2124a72ba
ailboxAccountLoader.java
53ea83ebf91f820692e8fa8e781f5cc982dd94db 14-May-2011 Ben Komalo <benkomalo@google.com> Move Mailbox to top level class.

No other changes made.

Change-Id: I3d8f3c521dc0d902be313b25252b4b6a4a96e7ee
ailboxAccountLoader.java
31d9acbf0623872f9d4a2b3210b5970854b654c7 12-Feb-2011 Marc Blank <mblank@google.com> Email split, part huit: Refactor constants, clean emailcommon

* There are three pieces to this CL (sorry):
1) Move and/or rename some constants into emailcommon
2) Move Utility to emailcommon, moving the few UI
related utilities back into Email (FolderProperties
and UiUtilities)
3) Remove all references to resources from emailcommon
* The three pieces relate in that, between them, they allow
the emailcommon static library to compile cleanly

Bug: 3442973

Change-Id: Ic5e3abaa2a1b36999e0b6653c6c2134ea1bd544f
hrottlingCursorLoader.java
a7bc0319a75184ad706bb35c049af107ac3688e6 10-Feb-2011 Marc Blank <mblank@google.com> Email split, part six: EmailContent

* Moved EmailContent to emailcommon

Change-Id: Ib3db1bfcfe74554c0e5afd3cfce6d72f26e9aeb9
ailboxAccountLoader.java
d0ee1e404db67a238d7017fb77757a0ffb2a4a1b 26-Jan-2011 Makoto Onuki <omakoto@google.com> Fix bug where mailbox list won't update in combined view

The problem was that CombinedMailboxesLoader used the cursor returned by
super.loadInBackground() (which contains accounts), to build a matrix
cursor (which contains special mailboxes and accounts and will be returned),
and *it closed the first cursor* after building the matrix cursor.

However, because this first cursor is the one that CursorLoader sets an
observer, it shouldn't be closed until the returned matix cursor closes.
In other words the two cursors should have the same lifecycle.

Fixed it by using ClosingMatrixCursor that used by AccountsLoader, which
is doing a similar thing, but properly.

Bug 3387730

Change-Id: I554ade001dc25afa869eefb4dcf9887495e6753e
losingMatrixCursor.java
31e25767918193217c884db72aaa98e50a4957d3 17-Jan-2011 Dianne Hackborn <hackbod@google.com> Follow API changes.

Change-Id: I1ca0fe365b953fa98a462912309a1c9647277ba7
hrottlingCursorLoader.java
e447bea49b9a50ef76c35f6dc0f794a3fd147e79 04-Jan-2011 Makoto Onuki <omakoto@google.com> Attempt to fix StaleDataException

I'm not yet 100% sure what's going on, but the old code, not stopping
the scheduled forceLoad() in onReset() is apparently wrong.
onReset() is a new callback introduced in the recent loader change, so
this can explain why it started after the change.

Also, call super.onContentChanged() instead of directly calling forceLoad(),
as Loader.onContentChanged() now does more than just calling forceLoad.

Bug 3308465

Change-Id: Ica46bf994b571a26dd532734307a5c7ec6df0268
hrottlingCursorLoader.java
8b9f2a7284337bfb23d5e2f8de9f1c70cb9532a1 21-Dec-2010 Dianne Hackborn <hackbod@google.com> Update to use new Loader callbacks.

Change-Id: Ib478c2f2314bbae4a380539e22892d85dd9a34b5
ailboxAccountLoader.java
hrottlingCursorLoader.java
0698f4027f099a017ad7815f16572ba422d3413d 20-Dec-2010 Dianne Hackborn <hackbod@google.com> Update to new Loader APIs.

Change-Id: Ic228f7b785f0d902a0188cfe995006b73b8a3c8b
ailboxAccountLoader.java
28d6e09575cc5b9091c5d29990792db3465cccf0 17-Dec-2010 Makoto Onuki <omakoto@google.com> Follow-up to the loader API change

This should fix the "attempt to re-open an already-closed object" exception
from SQLite.

(destroy()s don't have @Override becuase the base method is now depricated
and will be removed someday.)

Bug 3288666

Change-Id: I4780f6c8d89c7204b266608462c0833ad5af4e5f
ailboxAccountLoader.java
80769cefb3f34dfeccb38fb5b67b3ced172b830e 16-Dec-2010 Dianne Hackborn <hackbod@google.com> Prepare for some changes to LoaderManager/Loader.

Sorry it is a bit ugly, it is to allow this change to be
checked in prior to the first stage of the framework change
without breaking the build.

Change-Id: I1828579019ac0325d19c070a4c62cd79549e7d51
ailboxAccountLoader.java
e2201949bab24427aff4f5d85e36e96f6a2a8af6 24-Nov-2010 Makoto Onuki <omakoto@google.com> Don't show color chips when there's only one account

Bug 3225322

Change-Id: Idb299f54dc6f746e7d451a7a04fb971a432a869a
ailboxAccountLoader.java
085f7eb1219f270faa8317a5c6069a562213cb83 02-Oct-2010 Makoto Onuki <omakoto@google.com> Extract the throttling part from ThrottlingCursorLoader

Extracted into the Throttle class as I'll need this logic elsewhere.

Bonus: Now it has tests.

Change-Id: Ie9a5933f8e5015dda6985ba76814f1f945266178
hrottlingCursorLoader.java
4209ea36b0602d4f1dca0e9057e6a6b58d7d907d 22-Sep-2010 Makoto Onuki <omakoto@google.com> Make ThrottlingCursorLoader smarter

Now the class initially uses smaller timeout, and expand it when detecting
multiple changes in a short period.

This CL makes the UI look more responsive especially on the message list +
message view mode. e.g. Starring on the message view will quickly be
reflected to the message list.

Bug 3024799
Bug 3027832

Change-Id: Ie2d44c3769d43e3fd0f54ee526556eb3bad5e288
hrottlingCursorLoader.java
e357f5879187124c7af5c2ece5d7d3e4f60f07d2 27-Aug-2010 Makoto Onuki <omakoto@google.com> Fully implement "refresh" action bar button

* Now it'll refresh mailbox list (left pane) as well.
(With the minimal interval of 30 seconds)

* Always refresh inbox.
(also with the minimal interval of 10 seconds)

* Also make sure the "auto-refresh" won't refresh
non-refreshable mailboxes. (drafts, etc)

Bug 2929889
Bug 2930018

Change-Id: I09452d40aad6008a721cfbc3f491617224d7048f
ailboxAccountLoader.java
5247ab8cae802272b1e29e81d3b31a1c4e710da5 24-Aug-2010 Makoto Onuki <omakoto@google.com> Make isEasAccount always work.

isEasAccount now uses getProtocol(), so it works even if the hostauth
hasn't been restored yet.

Bug 2929896

Change-Id: Iee902c18ef59680d8a7d4622230489ec7946f38c
ailboxAccountLoader.java
187d0334849cfd922f0df05e57d77224f2f70378 12-Aug-2010 Makoto Onuki <omakoto@google.com> Reworking MessageListFragment.

- Now MessageListFragment uses loaders to load data.

- Now that we use Loader's auto-requery with throttling,
removed the throttling timer from MessagesAdapter.

- Simplified footer mode. (now only "no footer" or "load more")

- Removed saving/restoring list state code.
These method don't really look like working, or at least
not always working. Now that UI's lifecycle is changing,
we'd better redo it from scratch.

- Removed MessageListUnitTests.
It only has tests for onSaveInstanceState/restore of the fragment,
which I virtually disabled.

And minor clean-ups
- Moved the code to save/restore selected state from the fragment
to Adapter.

Bug 2911766
Bug 2897500

Change-Id: I16c7aefecc5409c57fc5fc8c59b5c80d9b7fc164
ailboxAccountLoader.java
oAutoRequeryCursorLoader.java
630e31ef788d4aa0dc259bc3412f7e98bca201e8 02-Aug-2010 Makoto Onuki <omakoto@google.com> Introducing ThrottlingCursorLoader.

This is a {@link CursorLoader} variant that takes {@code timeoutSecond}
in the constructor.

When it detects changes in the underlying data, it'll wait until the timeout
before doing a requery.

We use this to throttle # of queries. We don't want to issue a query every
time something changes in the DB while we're syncing.

Change-Id: I098366bce923c3242c42964bc166493610ee0f6f
hrottlingCursorLoader.java