1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-11-30 21:22:26 -05:00
Commit Graph

2481 Commits

Author SHA1 Message Date
cketti
bd9b6aea2d Moved methods modifying the message list to MessageListAdapter 2012-09-05 00:51:04 +02:00
cketti
75a97a82c0 Make MessageListHandler a real Handler that uses Android's message queue 2012-09-05 00:35:43 +02:00
Andrew Chen
536046809d Merge pull request #170 from roee88/master
Issue 4461: MessageProvider enhancements and fixes
2012-09-03 12:47:45 -07:00
Roee Shlomo
f6e30a0642 Removed unreachable searchStats overrides
Removed unreachable searchStats overrides.
Replaced with folderStatusChanged in MessageProvider.

Further review confirmed searchStats is only called for listeners passed
directly to MessagingController.searchLocalMessages* and never called
for any
MessagingController registered listener.
folderStatusChanged  is more appropriate for this purpose.
2012-08-31 04:35:56 +03:00
Bernhard Redl
474f32ad02 changed parseFlags to directly manimpulate member 2012-08-30 18:15:19 +02:00
Bernhard Redl
7c007d19fb added improvements suggested by achen 2012-08-30 17:47:58 +02:00
Bernhard Redl
56105bcfe3 + add support for $Forwarded IMAP flag 2012-08-29 02:26:38 +02:00
cketti
c0153a1636 Display decrypted/verified messages like text/plain messages
Nicely format the text instead of wrapping it in <pre> tags.
2012-08-27 17:38:10 +02:00
Roee Shlomo
a4b8bbdb72 Removed trailing spaces 2012-08-18 20:52:32 +03:00
Roee Shlomo
ef082f0260 Fixed indentation 2012-08-17 17:29:35 +03:00
Roee Shlomo
7419259407 Allow more fields in the external provider 2012-08-17 17:19:26 +03:00
Roee Shlomo
a4d1f78dbd Fixed ACTION_REFRESH_OBSERVER broadcast sending
searchStats seems unreachable so broadcast is now sent from
folderStatusChanged and also contains the account and folder name as
extra parameters.
2012-08-17 17:18:00 +03:00
Andrew Chen
a274a3717a Merge pull request #168 from aatdark/aatdark_mime4j072
upgraded Mime4J from 0.7-SNAPSHOT to 0.7.2.  Fixes MimeMultipart parser bug (Issue 4455).
2012-08-15 15:34:25 -07:00
cketti
66911a0624 Use grey background for read messages in the message list 2012-08-15 04:14:12 +02:00
Bernhard Redl
89f6c2f6d0 upgraded Mime4J 0.7-SNAPSHOT -> 0.7.2 (fixes MimeMultipart parser bug) 2012-08-15 01:47:57 +02:00
cketti
2e454f0af7 Removed "System zoom controls" setting
We always allow zooming but hide (provided the Android version supports
it) the on-screen zoom controls if the device supports multi-touch,
hence pinch-to-zoom.
2012-08-15 00:21:22 +02:00
cketti
3f426c824c Fixed typo 2012-08-13 20:05:19 +02:00
cketti
03f0678047 Use TitleBarDelegate otherwise clicking links won't work on Jelly Bean 2012-08-13 16:12:15 +02:00
cketti
d9f1690741 Added option to always show the CC/BCC text input fields 2012-08-10 03:38:10 +02:00
cketti
1ff3b6b88f Disable the 'Add Cc/Bcc' menu option when both fields are visible 2012-08-10 02:31:55 +02:00
Andrew Chen
6f8c60763d Use Calendar to get current year when formatting copyright. 2012-08-08 11:03:10 -07:00
Andrew Chen
4f122ca094 Merge pull request #160 from dzan/fix_messagelist_whitespace
No more white space at the right hand side of the MessageList
2012-08-06 16:53:55 -07:00
cketti
e08b5d2edf Make the setEmbeddedTitleBar fall-back work on pre-API16, too 2012-08-04 01:13:38 +02:00
cketti
de6d271d58 Remove JBTitleBarWebView because TitleBarWebView handles all versions 2012-08-04 00:16:06 +02:00
Sander Bogaert
ee283c0c77 Give star a bit more room so there is no cut-off. Don't force the scrollbar on the outside so the listitems can take the whole width. 2012-08-03 12:18:12 -04:00
Jesse Vincent
a80d7c518a Always recalculate 2012-08-02 16:58:13 -07:00
Jesse Vincent
74f04e75e3 A first spike of integrating http://code.google.com/p/android-titlebar-webview
on my nexus 7, the webview and titlebar are overlapping each other, still
2012-08-02 16:49:21 -07:00
Jesse Vincent
17a6f79365 Better solution coming up!
Revert "Added fallback for when WebView.setEmbeddedTitleBar() is not available"

This reverts commit 6073b9d3fa.
2012-08-02 16:11:10 -07:00
cketti
592ed3ef38 Upgrade from "keyguardPrivacy" to "notificationHideSubject"
Make sure existing installations aren't reset to the default value when
the new setting can't be found.
2012-08-02 03:09:26 +02:00
cketti
3e6d161c18 Show current value for the 'notification_hide_subject' ListPreference 2012-08-02 02:43:10 +02:00
cketti
8c11ec18a9 Code style/documentation cleanup (no functional changes) 2012-08-02 02:31:54 +02:00
cketti
cd37ae16e1 Fixed setting names in SettingsUpgrader for version 12 2012-08-02 02:20:33 +02:00
Bernhard Redl
4028505d69 Extended setting to hide subject in notification area (never, when locked, always)
Fixed issue 2595
2012-08-02 01:47:20 +02:00
cketti
f3e74d5321 Added support for "show in top group" to ChooseFolder 2012-08-01 23:44:40 +02:00
cketti
853b4681b2 Hide 'Background data' option on ICS+ devices 2012-07-19 05:25:23 +02:00
cketti
eb7f94a500 Hide "Show unread count" (notifications) on Honeycomb+ devices
On Android 3.0 and newer the notification icon is no longer overlaid
with the 'notification number', so we hide the setting.
2012-07-19 02:23:09 +02:00
cketti
5467a71cbf Added work-around for image loading bug in Android 4.0's WebView
Fixes issue 3997
2012-07-16 02:14:42 +02:00
cketti
b72fcd9d4b Only use the single-column layout on known good Android versions
Fixes issue 3820
2012-07-13 23:04:04 +02:00
cketti
83e57064ff Check database version after ending the transaction 2012-07-07 17:15:14 +02:00
cketti
d08169b004 Corrected indentation 2012-07-07 17:14:03 +02:00
cketti
400487b8aa Merge branch 'pullreq150' 2012-07-07 17:04:17 +02:00
cketti
e1d9a4779d Changed the rest of ImapStore to use longs for storing UIDs 2012-07-07 16:46:07 +02:00
cketti
2ad748fad7 Change ImapUtility to use 'long' for the values of sequence sets 2012-07-07 16:21:07 +02:00
cketti
a37c95b456 Move auto-unboxing out of if-clause 2012-07-07 15:41:55 +02:00
cketti
c359eb3cb7 Use auto-unboxing when iterating over a List<Long> 2012-07-07 15:36:43 +02:00
cketti
08c6c63b31 Merge branch 'pullreq153' 2012-07-07 15:06:41 +02:00
cketti
a281b3401e Extracted code to disable Lint warning when using newer API 2012-07-07 15:03:23 +02:00
cketti
1f2104cae1 Added annotations to disable Lint warnings when we're using newer APIs 2012-07-07 14:38:57 +02:00
cketti
ece107f6d8 Removed unused variable 2012-07-07 14:33:15 +02:00
cketti
f832e08de3 Removed unused debug message 2012-07-07 14:30:42 +02:00
cketti
8493847895 Removed unused class 2012-07-07 14:29:40 +02:00
cketti
2269f22153 Removed unused method that was used for debugging 2012-07-07 14:28:15 +02:00
cketti
411117b660 Removed unused imports 2012-07-07 14:26:16 +02:00
cketti
79253968ff Get rid of auto-unboxing in comparison 2012-07-07 14:19:22 +02:00
András Veres-Szentkirályi
85b2eb8315 removed unused private field mUID 2012-07-06 15:05:53 +02:00
András Veres-Szentkirályi
d0c08fb705 removed unread private field mSecure 2012-07-06 15:04:46 +02:00
András Veres-Szentkirályi
2f918c2307 Use more efficient entrySet iterator instead of keySet + get()
The loop extracted keys from `remodeUidMap` and then called
`remouteUidMap.get(...)` for every key. If both the key and the value
needs to be iterated on, `Map.entrySet()` is a more efficient solution
as it doesn't require O(n) Map lookups.
2012-07-06 15:00:25 +02:00
András Veres-Szentkirályi
9413cf5c9d Removed override merely calling super() 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
bff1602da1 combined nested if statements in LocalStore 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
961872edf0 combined nested if statements in ImapStore 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
57f364ca69 combined nested if statements in MimeHeader.hasToBeEncoded 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
f79b1eb142 combined nested if statements in DomainNameChecker.matchDns 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
5c23549a0b combined nested if statements in DomainNameChecker.matchIpAddress 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
cfd77f8e32 combined nested if statements in AccountSetupCheckSettings 2012-07-06 14:35:01 +02:00
András Veres-Szentkirályi
dd5ab2c2c6 combined nested if statements in MessageList.removeMessages() 2012-07-06 14:34:57 +02:00
András Veres-Szentkirályi
e3853824db removed empty else clause 2012-07-06 14:04:32 +02:00
András Veres-Szentkirályi
8c3b64c3d7 removed unused private fields gesture{Detector,Listener} 2012-07-06 14:04:19 +02:00
András Veres-Szentkirályi
7ae7fc9d9d removed unread private field mFontSizes 2012-07-06 14:03:48 +02:00
Joe Steele
102c6153a1 Issue 4359: IMAP message UIDs are 32 bit unsigned values and cannot be
stored in int, so we now parse them as long.
2012-07-05 18:00:49 -04:00
cketti
6073b9d3fa Added fallback for when WebView.setEmbeddedTitleBar() is not available
The (undocumented) method WebView.setEmbeddedTitleBar() was removed in
Android 4.1 which caused the message header to never be displayed.
This fallback is only a temporary fix. We really need to come up with a
solution that feels like the previous (setEmbeddedTitleBar) behavior.
2012-06-29 00:14:06 +02:00
cketti
602ce7be99 Trim the first value in getHeaderParameters()
Previously a value like 'text/html ; charset="windows-1251"' for the
Content-Type header would not be decoded correctly.

Fixes issue 4348
2012-06-18 04:46:46 +02:00
cketti
ee1288ee75 Disable special screen reader mode on ICS
The default message view is accessible enough.
Info and original patch provided by Nolan Darilek.

See issue 4153
2012-06-18 03:17:02 +02:00
cketti
fb1bd9f913 Made ColorPickerDialog a real dialog by subclassing AlertDialog
This way it's easy to save/restore the dialog's state, e.g. on orientation changes.
2012-06-09 01:39:14 +02:00
cketti
9b77aad8b7 Use the framework to manage the color picker dialog in account settings
This way the dialog will survive orientation changes.
2012-06-09 01:39:14 +02:00
cketti
67caa357fd Fixed loading messages from the database when message format is AUTO 2012-06-01 20:03:03 +02:00
cketti
116e9598da Create an HTML version of text/plain-only drafts in the database
Without this, text/plain-only messages with K-9 Mail's "identity header"
are displayed as "No text" (when moved out of the Drafts folder).
2012-06-01 16:15:07 +02:00
cketti
e88633cf78 Put the logic that decides which message format to use in one place
This change is in preparation for the future rich text editing
functionality.
2012-05-30 15:20:51 +02:00
cketti
71b3b2916e Extracted methods for easier reading 2012-05-30 15:20:51 +02:00
cketti
01c8e84396 Introduced enum for the MessageCompose actions (compose, reply, ...) 2012-05-30 15:20:51 +02:00
Romain Vimont (®om)
fb36389d20 Create database in a transaction (for performance)
On my emulator, it takes 70ms instead of 250ms.
On a very specific hardware, it takes 0,5s instead of 4,1s.

I willingly did not indent the code between my try/catch (for the patch to be readable).
2012-05-30 12:57:05 +02:00
cketti
003069e802 Work around a bug in Android 4.x (?) when the system locale is turkish
See https://code.google.com/p/k9mail/issues/detail?id=4256
See https://code.google.com/p/android/issues/detail?id=31574
2012-05-21 00:36:53 +02:00
cketti
632dde614d Added missing account setting "alwaysBcc" to import/export table 2012-05-16 23:03:40 +02:00
cketti
bd6cdecdb0 Always use the application context when instantiating singletons 2012-05-16 22:22:39 +02:00
cketti
c3808827a8 Don't use reflection to load the API-specific Contacts implementation 2012-05-16 21:09:10 +02:00
cketti
ea902ce680 Merge onToggleSortAscending() with changeSort() to avoid code duplication 2012-05-16 20:35:56 +02:00
cketti
bf7a6ba398 Added the global sort settings to the import/export table 2012-05-16 20:35:56 +02:00
cketti
c64c14c4a6 Use account sort settings when filtering messages of only one account
This will use the account settings when viewing e.g. only the unread
messages in a folder.
2012-05-16 20:35:55 +02:00
cketti
6d19d9c829 Save sort type and sort order for search views (e.g. Unified Inbox) 2012-05-16 20:35:55 +02:00
cketti
e2b109e7ea Whitespace cleanup; no functional changes. 2012-05-15 08:01:10 +02:00
cketti
68a6eddfb6 Avoid NullPointerException in the gesture detection code 2012-05-10 17:19:21 +02:00
ashley willis
7e5717ed81 use the new way on internal storage, or the original way otherwise 2012-05-09 21:09:10 -05:00
ashley willis
9e4ac9014b updated year in copyright. 2012-05-09 14:48:11 -05:00
ashley willis
b1b6d5fce4 Yahoo! IMAP seems to no longer require 'ID ("GUID" "1")' over non-3G.
see http://mobile.yahoo.com/mail for IMAP setup instructions.
2012-05-09 13:48:36 -05:00
cketti
f25422f269 Don't use the NotificationBuilder as singleton 2012-05-08 06:45:04 +02:00
ashley willis
ca6d697eed fixed commit ed4c74983e due to crashing on 2.1 devices 2012-05-07 09:24:13 -05:00
cketti
edfae1906a Make sure we always have an account name when importing settings
This avoids a NullPointerException in the dialog that allows selecting
which accounts to import.
2012-05-06 21:02:41 +02:00
cketti
dc476eb3e8 Support ACTION_SEND extras when handling ACTION_SENDTO
Too many applications get this wrong and rely on the undocumented
behavior of the AOSP Email app and Gmail.

See https://code.google.com/p/android/issues/detail?id=30190
2012-05-06 17:47:59 +02:00
cketti
e1fa90b2fd Use Notification.Builder on Honeycomb+ devices
Using the new helper class we can easily add support for some of the
new notification features later.
2012-05-04 22:03:35 +02:00
cketti
8fdece4782 Use bezel swipe gestures to move to next/prev message in MessageView 2012-05-04 16:32:39 +02:00
m0viefreak
022940d4f5 Fix gesture detection
This commit addresses 2 issues:

1) Before, a general GestureDetector was registered on the highest level in K9Activity
   This resulted in EVERY inherited activity to have a useless, unused gesture detector.
   But more than that, in MessageList, a second GestureDetector was assigned to the ListView.
   On every fling gesture, both detectors called the onSwipe() methods,
   which technically did the following:
   - The one directly assigned to the ListView would work corectly by mapping the
     (local) event coordinates to the right entry in the ListView
   - The global one worked on screen coordinates, so the onSwipe() method would
     likely select the wrong ListView entry (system menu bar offset).
   - For some reason this "worked" fine, and only the correct entry was selected,
     despite two detectors used.

2) The gesture detection for the MessageView caused problems when the message
   itself was scrollable, i.e. wide HTML mails. A fling gesture inside the WebView
   would scroll the message, but also switch the message.

This commit fixes all those by doing the following:
- Don't register the GestureDetector in K9Activity, instead make the member variable
  accessible by subclasses.
- In the subclasses that need a detector register it
- In K9Activity.dispatchTouchEvent() check for mGestureDetector being null
- For MessageList:
  * Remove the duplicate gesture detector assigned to the ListView
  * in the handleSwipe() methods: calclulate pixel offset of the ListView to make
    it work using the global screen coordinates
- For MessageView: Limit sensitive area to the message header, to prevent interference
  with the WebView scrolling
- Respect current behavior:
  * Force-enable gestures for the MessageList
  * Respect user setting in MessageView
- Make sure that after a successful swipe gesture, any pending action is cancelled, to
  prevent unwanted things to happen (such as expanding the header after changing
  the message, or a context menu popping up in the MessageList).
  See http://code.google.com/p/android/issues/detail?id=8497
2012-05-01 03:00:15 +02:00