Commit Graph

2255 Commits

Author SHA1 Message Date
Sander Bogaert 6c27d3e7ef Fix the upper refresh button in MessageList 2012-09-08 21:40:56 -07:00
Sander Bogaert 1b9abb2b9b Set a title for the folderlist activity. 2012-09-08 21:39:44 -07:00
Sander Bogaert 67ab08383f Created new string resource for folderacitvity title. 2012-09-08 21:39:43 -07:00
Sander Bogaert 18748499af Generalize ActionBarNavigationSpinner creation. 2012-09-08 21:39:42 -07:00
Sander Bogaert 4de06915ea Make title changeable. Have email adress and foldername in there. 2012-09-08 21:36:47 -07:00
Sander Bogaert c19367eb18 Fix swap back bug. 2012-09-08 21:34:34 -07:00
Sander Bogaert 03cec1ef56 Separated the navigationspinner and the messagelist class. 2012-09-08 21:34:33 -07:00
Sander Bogaert c2af640891 Messagelist special cases bug fix. 2012-09-08 21:32:54 -07:00
Sander Bogaert 2ec97235ec Split bar on Messagelist activity and some code styling. 2012-09-08 21:32:54 -07:00
Sander Bogaert 4293914855 Initial actionbar integration. On top of every activity, no real integration yet. 2012-09-08 21:14:55 -07:00
cketti 3253466f14 More magic to work around BinaryTempFileBodyInputStream 2012-09-09 01:15:26 +02:00
cketti 734e0d1920 Merge branch 'MessageListAdapter_cleanup' 2012-09-09 00:55:18 +02:00
Andrew Chen 2ef8cda13c Remove the try-finally stream close. Add comment as to why this pattern doesn't work here. 2012-09-07 23:49:24 -07:00
Andrew Chen c44b19cda6 Close input stream after reading to fix strict mode warning. 2012-09-07 20:34:40 -07:00
Andrew Chen 2b0b929aa2 Add references and in-reply-to for forwarded messages. 2012-09-07 11:03:46 -07:00
Andrew Chen 3f4bc28363 Add null check before attempting to do math on the date. 2012-09-06 16:38:45 -07:00
cketti f42943f30c Optimized searching for a message in the message list 2012-09-06 22:33:22 +02:00
cketti 5678786c97 Properly closing InputStreams to avoid StrictMode warnings 2012-09-05 05:57:52 +02:00
cketti 9c335127e2 Code cleanup 2012-09-05 03:50:02 +02:00
cketti 16ab1b67bc Made sure the message list is only modified from the UI thread 2012-09-05 03:02:22 +02:00
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
cketti 2c8ae0644b Fixed code style 2012-04-25 16:46:05 +00:00
Andrew Chen 8577d1558e Merge branch 'text-quote-to-html-div'
* text-quote-to-html-div:
  Use property to determine if we should write test debug information or not.
  Remove top margin on converted quote text, consistent with html quoted text.
  Colorize quoted text that has been converted to html. Like Thunderbird, but optimized for mobile (no right margin quote bar, thinner left margin quote bar).
  Add 1ex of margin at the bottom of converted blockquotes.
  Convert quote characters in plain text messages to blockquotes in the html version.  "Be like Thunderbird."
2012-04-24 10:24:14 -07:00
Andrew Chen c829fe9cd2 Remove top margin on converted quote text, consistent with html quoted text. 2012-04-23 15:13:45 -07:00
Andrew Chen 9f1e2717a6 Colorize quoted text that has been converted to html.
Like Thunderbird, but optimized for mobile (no right margin quote bar, thinner left margin quote bar).
2012-04-23 15:10:34 -07:00
Andrew Chen 0bb1f4ff56 Add 1ex of margin at the bottom of converted blockquotes. 2012-04-23 14:00:03 -07:00
cketti 2485d21f1d Show the display name instead of the "internal" name in folder settings 2012-04-22 00:02:46 +00:00
Andrew Chen 32ce196b5a Convert quote characters in plain text messages to blockquotes in the html version. "Be like Thunderbird." 2012-04-17 10:22:43 -07:00
Andrew Chen 32ae7bad9c Migrate to Account.has(Special)Folder() methods. 2012-04-17 08:23:22 -07:00
Bernhard Redl 39f5587f30 Fixed Issue 4222. Use of the wrong method to get device-SDK version resulting in errors on ApiLevel 7 (2.1) devices. 2012-04-17 00:09:00 +02:00
ashley willis 93de6cdafe fixed issue with sort not being remembered at all on unified inbox / all messages (still does not save sort to settings). 2012-04-12 21:12:22 -05:00
ashley willis f0c22510e2 fixed FC when changing sort from unified inbox and all messages.
the new sort saves per account, and there is no active account for these folders.
so also, there is no saving of the sort for the unified inbox nor all messages.
2012-04-11 00:08:49 -05:00
Ashley Willis bfecdc9443 Merge pull request #134 from yarikoptic/upstream
BF: mAccount must not be accessed before verfied to be non-null
2012-04-10 21:25:11 -07:00
cketti 3f29b95846 Use the Android framework to manage the find folder dialog 2012-04-11 04:50:23 +02:00
cketti ff4d6a66c8 Fixed bug introduced with 6f525f0e31
Intent extra was renamed but the code in MessageCompose still used the
(hardcoded) old name.
2012-04-11 04:47:10 +02:00
Yaroslav Halchenko 4288789e39 BF: mAccount must not be accessed before verfied to be non-null
otherwise obviously leads to crashes.
IMHO this was a logical location to move, and it resolved my issue when
account was not yet accessible due to not yet accepted key upon importing
old settings from a stored file
2012-04-10 22:26:49 -04:00
cketti 9d854a0f6f Fix a display bug by extending the system themes 2012-04-11 03:26:45 +02:00
cketti 52b5c567ef Don't use EmailAddressAdapter as singleton 2012-04-11 03:26:45 +02:00
ashley willis 81c9fdcb13 Merge branch 'master' into pull-128 2012-04-08 21:59:20 -05:00
ashley willis 539ab93bcb refactored sorting 2012-04-08 21:29:08 -05:00
cketti 8bd5090816 Removed unused import + constants 2012-04-09 02:02:12 +02:00
cketti 6f525f0e31 Converted hardcoded strings to constants 2012-04-09 02:02:12 +02:00
cketti 56d4cca4dd Make ContactItem immutable 2012-04-09 01:57:45 +02:00
cketti a09f26a227 Renamed getEmailFromContactPicker() to better reflect what it does 2012-04-09 01:57:44 +02:00
cketti 08e54cf44b Updated JavaDoc for getEmailFromContactPicker() 2012-04-09 01:57:44 +02:00
cketti 3b5492f5fc Optimized getEmailFromContactPicker() 2012-04-09 01:57:44 +02:00
Andrew Chen 7e26b62227 Remove horizontal rules in message previews. 2012-04-08 16:52:55 -07:00
Andrew Chen 1c4a3c355c Add comment about increment settings version. 2012-04-08 15:27:39 -07:00
cketti d6a1f2e95c Renamed enum SORT_TYPE to SortType 2012-04-08 23:17:06 +02:00
cketti 24c172add0 Fixed version number for added settings 2012-04-08 23:13:55 +02:00
Jesse Vincent 85da3d8667 workaround to detect the charset from HTML mail without charset parameter on the header.
Conflicts:

	src/com/fsck/k9/mail/internet/MimeUtility.java
2012-04-08 12:38:45 -04:00
Koji Arai 6861c813ea Change layout of the email address list.
set title to the contact name.
change text size is medium from default(Large).
2012-04-08 12:32:10 -04:00
Jesse Vincent 3a9589714b added the ContactItem class for picked item from ContactPicker.
Conflicts:

	src/com/fsck/k9/helper/ContactsSdk3_4.java
	src/com/fsck/k9/helper/ContactsSdk5.java
2012-04-08 12:32:04 -04:00
Jesse Vincent 4723ea0ae5 Possible to select email addresses from the ContactPicker
Conflicts:

	src/com/fsck/k9/activity/MessageCompose.java
	src/com/fsck/k9/helper/ContactsSdk3_4.java
2012-04-08 12:29:08 -04:00
Jesse Vincent dd0ba7640c Switch the sort order code around so it saves when reversing sort with a keyboard 2012-04-07 17:11:32 -04:00
Jesse Vincent 66528a0ca8 Merge pull request #128 from srinathwarrier/k-9
---

A new option to set default sort setting is added to account settings.

* commit '7a9ba4e0ad483cb275281e8b33d9e6d35d870151':
  Create implicit sort remembering setting2(minor indentation error)
  Create implicit sort remembering setting
  Create default sort setting by preference
2012-04-07 16:53:53 -04:00
Andrew Chen 50b2056454 Always hide the batch archive button in a search view, consistent with the batch ops menu. 2012-04-06 16:46:04 -07:00
Andrew Chen 3559618ca9 astyle 2012-04-06 16:42:54 -07:00
Andrew Chen 42d6462946 Hide the batch archive button preference if none of our accounts have an archive folder.
Hide the batch archive button in the MessageList if none of the visible account(s) have an archive folder.
2012-04-06 15:52:56 -07:00
Andrew Chen e94db81ecb Add Account.hasArchiveFolder() method. 2012-04-06 14:45:44 -07:00
Andrew Chen 12d1301056 Fix Settings version number for batch button preferences. 2012-04-06 14:41:33 -07:00
Andrew Chen 3e03120a73 Merge branch 'master' of https://github.com/mnb20/k-9 into pull111
* 'master' of https://github.com/mnb20/k-9:
  High DPI version of archive button icon
  Fixed whitespace
  Remove TODO
  Replaced archive icon. Still a bit crap, but better than my previous attempt.
  Added batch buttons for Archive and Move. Made batch buttons configurable.
2012-04-06 13:47:55 -07:00
cketti e88fbf43d0 Removed unused ToggleScrollView 2012-04-04 10:04:57 +02:00
cketti 5041a2c832 SingleMessageView cleanup 2012-04-04 10:04:57 +02:00
Bernhard Redl eba886b85d Render html code to make white on DarkTheme (fixes 4196) 2012-04-04 01:46:22 +02:00
cketti 0caac114a6 Added some error checks when processing IMAP FETCH responses 2012-04-03 07:55:52 +02:00
cketti 4612ceb3c8 Enabled dark theme for MessageCompose and MessageView 2012-04-03 07:55:51 +02:00
cketti 5819d27394 Added long-press popup menu to WebView in SingleMessageView
Actions:
- Open link for viewing
- Share link
- Copy link to clipboard
- View image
- Download/save image
- Copy image URL to clipboard
- Call number
- Save phone number to Contacts
- Copy phone number to clipboard
- Send mail
- Save to Contacts
- Copy email address to clipboard

This is based on work done by kernelhunter92 and ShellZero.

Fixed issue 1248
2012-04-01 22:46:36 +02:00
cketti 1596ddfaab Moved sanitizeFilename() to com.fsck.k9.helper.Utility 2012-04-01 21:14:43 +02:00
cketti 1d25d2ff40 Added helper class to use the most recent ClipboardManager 2012-04-01 21:08:31 +02:00
cketti 2331696153 Always use the light theme in MessageCompose
This fixes a display bug in the "Send as" dialog in MessageCompose.
2012-03-29 06:39:31 +02:00
cketti d584492a6d Changed internal representation of the selected theme in the database 2012-03-29 06:33:01 +02:00
cketti 1266c3c73e Don't allow invalid values for header/footer insertion point 2012-03-27 20:41:43 +02:00
cketti 4e21f049d3 Validate "original message" field of identity header when loading drafts 2012-03-26 21:36:26 +02:00
cketti a1caebdcf1 Fixed potential NullPointerException 2012-03-26 19:41:21 +02:00
cketti 661ed08061 Removed unnecessary layout containers 2012-03-24 22:51:33 +01:00
cketti b9e0ec1ab4 Added AccountHolder 2012-03-24 20:43:17 +01:00
Jesse Vincent ea90e24785 move the chips, change the sizes 2012-03-24 19:57:32 +01:00
Jesse Vincent 580f1639c3 UI improvements to the "select identity" button 2012-03-24 19:57:31 +01:00
cketti 365f8e71e0 Fixed array length calculation 2012-03-23 04:20:29 +01:00
cketti 8180fd9ad2 Added a button to switch the identity in MessageCompose
Originally I wanted to use a Spinner, but it doesn't support multiple
view types (see [1]). Those are necessary because we use different
layouts for accounts (section headers) and identities (selectable list
items).
Removed the ChooseAccount activity because it's now unused.
2012-03-22 22:17:10 +01:00
cketti 1d28eb003d Added a setting to disable marking messages as read on viewing 2012-03-19 04:44:41 +01:00
cketti 5245191900 Notify the listener provided as argument to doRefreshRemote()
With this change pressing "Refresh folders" in ChooseFolder actually
refreshes the folder list.
2012-03-18 22:43:47 +01:00
cketti 8c66a2f835 Replaced hardcoded strings with references to string resources 2012-03-18 22:13:27 +01:00
cketti 16afff4dfc Notify the adapter from runOnUiThread() instead of using Handler 2012-03-18 22:09:52 +01:00
cketti 4f2412eacd Changed code formatting. No functional changes 2012-03-18 22:06:44 +01:00
cketti b7c1f8ab2f Prefixed instance variables with "m" to comply with K-9 code style 2012-03-18 21:51:01 +01:00
cketti 09bc07596e Got rid of unnecessary instance variable 2012-03-18 21:48:22 +01:00
cketti 6bdaac4353 Fixed whitespace (tabs vs. spaces) 2012-03-18 21:46:32 +01:00
unusualdiscrepancy 58c01c05b7 Fix for Issue 4164: Force close when moving an email to another folder 2012-03-18 21:45:33 +01:00
cketti 482ae352c1 Reverted most of the recent message header changes
Clicking the additional headers area still allows to hide that view
again.
2012-03-18 04:51:29 +01:00
cketti 69ee6a4818 Avoid NullPointerException in Accounts.onCreateDialog()
Also cleaned up code formatting of onCreateDialog() and
onPrepareDialog().
2012-03-17 21:28:54 +01:00
cketti ef01dc906b Use AlertDialog's ListView on import instead of creating our own
This fixes a display problem when using the dark theme.
2012-03-17 21:28:53 +01:00
Koji Arai 10c37942a6 Added two domains handle docomo emoji 2012-03-17 23:24:12 +09:00
Koji Arai f9fb74241a avoid NPE. address may be null when the parser is failed. 2012-03-17 23:23:27 +09:00
cketti f9a35aeaee Replace CRLF with LF when loading drafts
This is necessary because we save the offset and length of the user-
supplied text in the identity header. These values are then later used
to split the draft in user text and quoted message.
When calculating these values we operate on a string with LF line
endings. Ideally we want to do the reverse operation on the same
string, but when saving the message to the server LF is converted to
CRLF to create RFC-conforming messages.

This is only a hack and will probably be the cause of more trouble in
the future. A better solution would be to make the identity header more
robust or get rid of it entirely.
2012-03-17 04:15:30 +01:00
cketti 3fa8081e88 Fixed MimeUtility.extractTextual() when loading messages from the server 2012-03-17 03:19:09 +01:00
cketti dbf38dae65 Fixed the change of the previous commit 2012-03-17 00:30:40 +01:00
cketti a48adafbbc Don't use null for 'text' and 'html' in ViewableContainer 2012-03-16 22:56:09 +01:00
cketti f181e923ca Don't modify draft messages when storing them in the database 2012-03-15 21:21:00 +01:00
Srinath Warrier 7a9ba4e0ad Create implicit sort remembering setting2(minor indentation error) 2012-03-12 22:55:31 +05:30
cketti aeb0220e56 Fixed MimeUtility.getHeaderParameter() to not crash on unexpected input 2012-03-12 17:45:34 +01:00
Srinath Warrier 3ebd3c1fc2 Create implicit sort remembering setting 2012-03-12 22:04:10 +05:30
ashley willis f9a30d1822 added sort by arrival option. 2012-03-11 17:48:56 -05:00
cketti 0cb4207ef7 IMAP: don't create the destination folder when copying messages 2012-03-09 21:51:48 +01:00
cketti 7163d39091 Change ImapException to always be a permanent error
This way IMAP commands that get anything but an "OK" response are never
tried again (pending actions).
2012-03-09 21:50:26 +01:00
cketti ee34344d30 Upgrade to SDK 15 2012-03-07 21:52:47 +01:00
cketti 4721d92e79 Avoid some instances of autoboxing
This will hopefully allow us to compile with "Android Java IDE".
2012-03-07 21:40:41 +01:00
cketti a089fadd9a Merge branch 'messageheader' 2012-03-06 05:26:11 +01:00
cketti faf9dc6e02 Restored show/more less indicator in the message header 2012-03-06 04:38:08 +01:00
ashley willis 78615f878d added From: addresses on reply all when Reply-To: is set. don't repeat address in To: field if it's already included in replyToAddresses. 2012-03-05 15:17:31 -06:00
Srinath Warrier ff6e1f6c85 Create default sort setting by preference 2012-03-04 16:20:37 +05:30
m0viefreak 8d12244a9c Message header changes
* remove expand/collapse arrows, instead use the background area of the header to toggle
* allow expanding of To: and Cc: texts when too long and cut off by clicking on them
2012-03-02 06:15:55 +01:00
m0viefreak f1baa8f461 invalidate message content WebView when the message header changes
This fixes redraw issues where text appears doubled or is cut off
2012-03-02 05:16:58 +01:00
cketti 5591865f17 Merge branch 'uidplus' 2012-02-29 14:09:41 +01:00
cketti f6ebe4d4e0 Deduplicated code to create SearchAccounts for special accounts 2012-02-29 03:03:20 +01:00
cketti e72afc1641 Set content type of attachment even when no file name was found 2012-02-27 23:20:30 +01:00
cketti ba979808fe Use AttachmentView instance as onClick and onLongClick listener 2012-02-27 21:45:47 +01:00
cketti 206c559236 Don't handle exceptions in AttachmentView.populateFromPart()
We now catch exceptions in SingleMessageView.renderAttachments(). This
way we can avoid adding AttachmentViews that couldn't be properly
populated.
2012-02-27 21:45:47 +01:00
cketti 25dff5ae6a Don't choke on invalid size parameters for attachment parts 2012-02-27 21:45:46 +01:00
cketti 2cb31a2fac Added button to show unnamed and inline attachments 2012-02-27 21:45:46 +01:00
cketti de2c6cdae3 Prevent users from changing special folder assignments for POP3 accounts 2012-02-25 05:05:21 +01:00
cketti 8e7950164b Hide "Expunge" menu item for all folders in a POP3 account
Also hide "Check mail" for all folders except the Inbox (POP3).
2012-02-25 04:28:08 +01:00
cketti 1af5476b96 Hide refile batch actions in the message list for POP3 accounts 2012-02-25 04:19:27 +01:00
cketti 3632978b49 Don't animate the previous/next buttons in message view 2012-02-25 01:08:55 +01:00
cketti 7c97527d73 Allow message header to scroll when displaying the attachment list 2012-02-25 00:43:09 +01:00
cketti c1d663b084 Save/restore instance state for MessageHeader 2012-02-24 04:07:29 +01:00
cketti 4e12dc154e Save/restore instance state for SingleMessageView 2012-02-24 03:43:42 +01:00
cketti 2c09d75afa Switch to "message view" when displayMessageBody() is called 2012-02-23 00:10:47 +01:00
cketti 18c96f94d6 Retain "show pictures" state on orientation change 2012-02-22 23:26:59 +01:00
cketti 4984a6b9e5 Keep current view state after having downloaded the complete message
If the attachment view was visible, keep it that way.
2012-02-22 23:07:48 +01:00
cketti 2b54599c2b Small code cleanup 2012-02-22 22:56:05 +01:00
cketti 0ef9c516be Moved click listener from MessageView to SingleMessageView 2012-02-22 22:44:31 +01:00
cketti 80cb0cce35 Changed the layout to include a color chip again 2012-02-21 23:38:43 +01:00
cketti d44849d239 Restored previous/next animations 2012-02-21 16:54:35 +01:00
cketti ec6645bf6a Avoid creating new objects for handling click events 2012-02-21 16:21:47 +01:00
cketti 9f42ff61d3 Removed settings for scrolling buttons 2012-02-21 15:16:36 +01:00
cketti 309eeb72ac Got rid of the ScrollView in MessageView
The ScrollView around the WebView caused all sorts of problems. This
change removes the ScrollView and uses the undocumented method
WebView.setEmbeddedTitleBar() to set the MessageHeader view as "title
bar" of the WebView. This allows MessageHeader to scroll away making
more room for the WebView.
All of the "magic title bar" code was originally implemented by Jesse
for Kaiten.

Because WebView doesn't support a scrolling footer we can no longer
support scrolling buttons or attachments at the end of the message. Now
users can switch from message view to attachment view via a button just
below the message headers.

I also copied some code for which I was too lazy to create a separate
commit. It allows to display attachments we didn't use to show by
clicking on a "More..." button in the attachment view. Those
attachments are mostly images referenced by the HTML part (e.g.
background images).

Fixes issue 3291
2012-02-21 05:07:01 +01:00
cketti fbc187a3e2 IMAP: Send the Message-ID as quoted string in getUidFromMessageId() 2012-02-19 19:51:06 +01:00
cketti 8e32320f5d Merge branch 'viewables' 2012-02-18 19:29:34 +01:00
cketti 4adfc51339 Use HtmlConverter.convertEmoji2Img() in LocalFolder.updateMessage() 2012-02-18 00:44:24 +01:00
cketti b9803ece19 Fixed divider before text part with filename 2012-02-18 00:05:56 +01:00
cketti 8ce78408c2 Fixed HTML generation in MimeUtility.extractTextAndAttachments() 2012-02-17 19:42:35 +01:00
cketti 5083b8f1e8 Use newly imported AOSP code instead of ImapStore.parseSequenceSet() 2012-02-17 15:01:30 +01:00
cketti deb01bcd16 Imported ImapUtility.java from AOSP Email
Modified it to fit our needs.
2012-02-17 14:59:50 +01:00
cketti c1ed0c78a9 Introduced new pending command to retain upgradability 2012-02-17 01:59:04 +01:00
ashley willis 4db048343f account setup changes:
added gmx.com.
set delete policy to DELETE_POLICY_ON_DELETE for IMAP on automatic setup like manual setup does.
set default names for Archive and Spam on manual config like automatic setup does.
2012-02-16 18:35:25 -06:00
cketti f7299a69d4 Keep track of UIDs when moving messages to the trash folder 2012-02-17 00:43:35 +01:00
cketti c3885bc475 Cleaned up LocalFolder.appendMessages() a bit 2012-02-16 23:52:44 +01:00
cketti 023c60513e Fixed UID mapping return value of LocalStore.moveMessages() 2012-02-16 23:37:44 +01:00
cketti 4ed77c7a29 Avoid NullPointerException 2012-02-16 22:36:57 +01:00