cketti
d97da517fa
Rewrote code accessing mAdapter.messages from outside MessageListAdapter
2012-09-05 01:31:09 +02:00
cketti
fb6d004692
Don't use MessageListHandler when calling from the UI thread
2012-09-05 01:02:05 +02:00
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
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
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
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
ashley willis
9e1fa63139
fixed MimeHeader.hasToBeEncoded() to include TAB.
...
bug encounted when replying to a message such as:
From: "bar, foo" <foobar@example.com>
the field was originally folded on the tab, but the CRLF was already stripped before this error.
2012-04-30 13:58:02 -05:00
cketti
5d080b656d
Fixed a NullPointerException for the context menu in the Unified Inbox
2012-04-30 16:12:14 +02:00
ashley willis
ed4c74983e
fixed security issue -- account databases previously world-readable and accessible to any app if UUID is known.
2012-04-26 08:03:06 -05:00