1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-11-27 19:52:17 -05:00
Commit Graph

2800 Commits

Author SHA1 Message Date
cketti
c4799d20f0 Fix condition on when to show "check mail" in POP3 accounts 2013-03-31 00:24:28 +01:00
cketti
340d6e0522 Use themed context when creating EmailAddressAdapter
Previously the activity theme was used to display the auto-complete
suggestions. This lead to unreadable text when the activity theme was
different from the "composer theme".
2013-03-28 19:36:41 +01:00
m0viefreak
d85af1bfe0 reenable sorting by sender in messagelist
This was disabled in faa666394c
because it isn't possible to extract the name of the android
contact in the 'ORDER BY...' clause when querying the database.
Instead it simply sorts by the email address.

This may cause the same contact to appear multiple times in
the list, if they have multiple email addresses assigned.

But in most cases this is good enough and surely better than
not having the option to sort by sender at all.

Desktop mail clients such as Thunderbird also simply use the
sender email information when sorting the column.

This also adds a SenderComparator for usage in the MergeCursor.
2013-03-27 13:08:42 +01:00
cketti
2fc3909ec3 Fix NullPointerException 2013-03-22 19:51:58 +01:00
cketti
597e954798 Avoid NullPointerException (reported via Play Store) 2013-03-21 23:19:11 +01:00
cketti
9ea46cf03b Merge branch 'Issue_4019_pinch_zoom'
Conflicts:
	src/com/fsck/k9/view/MessageWebView.java
2013-03-19 21:09:23 +01:00
cketti
55ca846ced Avoid NullPointerException when message contains no subject 2013-03-19 03:08:18 +01:00
cketti
9118097dcb Avoid NullPointerException when decoding contact pictures 2013-03-19 02:59:05 +01:00
cketti
1c75590e7a Fix crash due to ambiguous column name in SORT clause 2013-03-19 02:32:47 +01:00
cketti
aff9bec92b Work around a bug in ListView 2013-03-18 22:56:56 +01:00
cketti
94b5758eea Use cache when marking message as read on view 2013-03-18 17:53:18 +01:00
cketti
a364d6262d Fix cache cleanup 2013-03-18 17:44:33 +01:00
Danny Baumann
538b81b6ec Make notification task back stack consistent to activity flow.
Fixes #4956.
2013-03-15 13:25:25 +01:00
Danny Baumann
195686cbd6 Fix NPE when clicking on a notification with >= 2 messages on SDK < 16.
Seemingly the intents in the task back stack got confused when the
pending intent was updated in those versions (the Accounts intent was
delivered to MessageList). Avoid that by not updating the current
intent, but dropping the old one.

Fixes issue #4955.
2013-03-15 12:48:04 +01:00
cketti
b4c599d514 Merge pull request #281 from k9mail/fix_webview_autoscroll
Hack around WebView's initial auto-scrolling past the message header
2013-03-13 19:22:05 -07:00
cketti
a3802a7a8e Only Jelly Bean seems to have the auto-scroll issue 2013-03-14 03:19:42 +01:00
Danny Baumann
3ff522c9c4 Include a full activity back stack when building notification intents. 2013-03-13 11:03:51 +01:00
Danny Baumann
d523caa61b Also clear back stack when a new intent arrives.
This should make sure there aren't any old fragment instances in that
case.
2013-03-13 11:03:51 +01:00
cketti
a619a9df93 Hide delete policy "Mark as read on server" for POP3 accounts 2013-03-13 06:34:14 +01:00
cketti
8dcc769c50 Hack around WebView's initial auto-scrolling past the message header 2013-03-12 07:54:38 +01:00
cketti
625c5f1874 Fix "Empty trash" functionality for POP3 accounts
Previously messages in the local Trash folder were marked as deleted,
then deleted from the server. During the next sync the placeholders for
deleted messages are removed from the database.
Obviously this doesn't work for POP3 accounts because the Trash folder
can't be synchronized with the server. So, for POP3, we now immediately
clear out all messages in that folder.
2013-03-10 21:45:36 +01:00
cketti
0319ee4a5d Move KOI8-U -> KOI8-R fixup to charset fall-back table 2013-03-10 09:55:25 +01:00
cketti
4b42d0e062 Code cleanup 2013-03-10 09:39:03 +01:00
eagan
c5802ed8ef Java5 style 'for' 2013-03-10 09:25:28 +01:00
eagan
a5f4ddae91 Enhancement for charset fallback.
Fallback rule is defined in CHARSET_FALLBACK_MAP.
Multi-level fallback is supported.
2013-03-10 09:25:13 +01:00
cketti
337487e2ae Merge pull request #211 from colund/master
Close stream in case of an exception
2013-03-10 00:11:53 -08:00
cketti
aea95b1493 Disable server side full text search for the moment
The server search itself does work. But the results are not displayed
to the user because only the message headers of found messages are
downloaded and the subsequent search in the local database won't return
those messages.
2013-03-10 03:00:16 +01:00
cketti
658b5dbff6 Fix and vastly simplify the query for the threaded message list
This requires another database schema change. With this change messages
at the root of a thread reference themselves in the 'threads' table,
i.e. 'root' contains the value of 'id' for these messages. It makes
selecting all messages in a thread much simpler.
2013-03-08 01:15:26 +01:00
cketti
6b3a3f7ee0 Fix message list item background color 2013-03-07 00:11:05 +01:00
Danny Baumann
ae28b1aa38 Center folders without status (e.g. outbox) in folder list again. 2013-03-06 10:30:23 +01:00
cketti
f990e6f032 Fix indentation and code style 2013-03-06 07:53:39 +01:00
Uni-
323159ef97 Fix error duplicating false accounts when adding an account 2013-03-06 07:52:32 +01:00
cketti
4202ffe57d Merge branch 'improve_import' 2013-03-06 07:49:53 +01:00
cketti
7ff0da0b52 Refactor code to start Accounts activity to import settings 2013-03-06 06:26:04 +01:00
cketti
dc8cb3ba17 Fix indentation/code style 2013-03-06 06:16:07 +01:00
Uni-
4f5ab86be3 Add settings import on Welcome 2013-03-05 16:31:45 +09:00
Uni-
91a32e9c92 Fix NPE on isAccountNameUsed 2013-03-05 16:29:03 +09:00
cketti
754c0f2b93 Don't load resources when activity is not attached 2013-03-05 04:18:54 +01:00
cketti
c07f94e877 Fix NPE when moving a message from Unified Inbox (multiple accounts) 2013-03-05 04:09:47 +01:00
cketti
fe02f0c44a Avoid NPE reported via Play Store 2013-03-05 03:54:27 +01:00
cketti
df8ea306b8 Avoid NPE 2013-03-05 03:35:09 +01:00
cketti
e77c341542 Avoid NPE reported via Play Store 2013-03-05 03:31:18 +01:00
cketti
5270ebd629 Avoid NPE 2013-03-05 03:26:09 +01:00
cketti
41244ef448 Don't finish() MessageList when forwarding or replying to a message 2013-03-04 21:19:08 +01:00
cketti
78dc5e5194 Use different background for selected messages in message list 2013-03-03 22:52:03 +01:00
Joe Steele
c790fa73c1 Don't store the font-family preference with plain text messages.
Dynamically generate the CSS style for <pre> elements
for inclusion in the HTML <head> element when messages
are displayed.

This permits a user to change their font-family preference
for plain text messages and see the results immediately.

Obviously any old locally-stored messages that had their
font-family stored with them will continue to display using
that font-family, irrespective of the user's current
preference setting.
2013-03-01 18:48:46 -05:00
cketti
04e1bf6976 Restore code to remember the last direction messages were displayed in 2013-03-01 22:38:09 +01:00
Joe Steele
548b8e07a6 Refactor code for MessageWebView.setText()
The MIME type for the supplied text was always text/html,
so there is no need to pass that as a parameter.
Furthermore, we are relying on it being text/html because
we are wrapping it with HTML code.

Likewise, change/simplify/rename AccessibleWebView.loadDataWithBaseURL().
2013-03-01 14:32:16 -05:00
Joe Steele
6a844a2553 Remove unused code in HtmlConverter.
HtmlConverter.getHtmlHeader() and getHtmlFooter() are
no longer used.  Remove them and other related code.
2013-03-01 14:30:42 -05:00
Joe Steele
e2c5229e85 Change when <html> tags are applied to messages.
Previously, <html>, <head>, & <body> tags were
attached to messages before they were stored locally.
But now that the <head> element also needs to include
a <meta> element (for proper MessageWebView display),
it seems unecesary to store all these tags with each
message.

Now the tags are no longer stored with the messages.  Instead,
MessageWebView applies the tags before displaying the message.

This also eliminates the need to upgrade an older
message database where all the old messages would have
otherwise needed to be wrapped with the new tags.
2013-03-01 12:59:59 -05:00
Joe Steele
731022339d Improve MessageWebView display.
Now that MessageWebView has 'setUseWideViewPort(true)',
the wide view port is excessively wide.  It turns out
Android is using a fixed width of 980 px, so that even
plain text messages (which are already wrapped to fit
the screen) have a large empty area beside them when
scrolled to the left.

Injecting a meta tag in the html header fixes the
problem.
2013-03-01 12:55:51 -05:00
Joe Steele
28212bc04f Issue 4019 -- Fix inability to zoom out.
Thanks to davidgca...@gmail.com for references in
his comments 80 & 81.
2013-02-27 16:11:08 -05:00
cketti
207e2a1e56 Notification icon update
Android 2.2: use old icon
Android 2.3: new icon, (try to) follow icon guidelines for 2.3
Android 3.0+: new icon, follow guidelines for 3.0+

See http://developer.android.com/guide/practices/ui_guidelines/icon_design_status_bar.html
2013-02-26 20:34:52 +01:00
cketti
556503318c Rework code for predefinied account colors 2013-02-26 18:29:12 +01:00
dzan
f7bef247f5 Fix setChipColor call. 2013-02-26 09:42:49 +01:00
dzan
6735592204 Add a series of predefined account colors and pick those if any remain before generating complete random one. 2013-02-25 14:34:53 +01:00
cketti
eed64a37f8 Remove unused batch button settings 2013-02-22 23:40:42 +01:00
cketti
906163b538 Use correct string for notification title 2013-02-21 05:42:04 +01:00
cketti
d6d9effbec Remove unused stuff 2013-02-21 02:00:12 +01:00
cketti
92c21ece6d Fix showing unread count in pre-Honeycomb notifications
Fixes issue 4904
2013-02-20 23:55:46 +01:00
cketti
fdfaf03b7a Fix dialog message when deleting multiple messages from a notification 2013-02-19 05:38:48 +01:00
cketti
3379fdb573 Merge pull request #266 from m0vie/npe-fix
message view / list: fix NPE when list is empty
2013-02-18 20:33:25 -08:00
cketti
1a034d3e59 Merge pull request #265 from jca02266/master
If there is no message, it should return to a MessageList.
2013-02-18 20:32:16 -08:00
cketti
50fcff76fd Add a caching layer to EmailProvider
Database updates can be surprisingly slow. This lead to slow updates of
the user interface which in turn made working with K-9 Mail not as fun
as it should be. This commit hopefully changes that.
2013-02-19 04:45:14 +01:00
m0viefreak
dd5d8561cd message view / list: fix NPE when list is empty
This happened for example in a starred-message-only view when
un-starting the last message. This led to isFirst() and isLast()
causing a NullPointerException when trying to update the
previous / next buttons.
2013-02-18 19:02:22 +01:00
Koji Arai
7da4c7cc1b Avoid IndexOutOfRangeException.
If there is no next message, it should return to a MessageList.
2013-02-19 02:06:36 +09:00
cketti
44da998f0c Fix NullPointerException 2013-02-18 05:05:01 +01:00
cketti
25c452420d Resize contact images to display size
Display size was changed in 20d229c91b
2013-02-13 19:43:07 +01:00
Danny Baumann
370ef4c181 Fix NPE.
As the background is gone now, we shouldn't touch it anymore.
2013-02-13 14:50:48 +01:00
Danny Baumann
49d1bdbcb0 Improve last folder update time formatting. 2013-02-13 11:20:40 +01:00
Danny Baumann
099da1913b Improve some layouts. 2013-02-13 11:20:33 +01:00
Jesse Vincent
d92a30f807 Experimental change to move most of our refile buttons into a refile submenu. Specifically to elicit feedback. I don't expect this change to stick around in its current form. But I do want to get a sense of whether it's something that makes people happy or angry 2013-02-11 15:28:53 -05:00
Danny Baumann
7afbda9e20 Regularly trigger a title and folder update while activity is resumed.
This makes sure the relative times are kept up-to-date.
2013-02-11 15:44:25 +01:00
Danny Baumann
0fac8e999d Clean up date handling.
Remove home-grown date formatting, and replace it by usage of the
DateUtils class which is present since API level 3.
2013-02-11 15:19:15 +01:00
m0viefreak
8d4a82ba0e message view: fix subject bugs
- Android does not support ellipsize in combination with maxlines
  for TextViews. This caused getEllipsisCount() in MessageTitleView
  to always fail, and the full subject was never shown in the regular
  headers area when needed.
  To work around that, check for ourselves whether the text is
  longer than 2, and ellipsize manually.

- Clicking the star button on a message caused the subject line to
  re-appear, even if it fits in the action bar title without being
  cut off. This was caused by MessageHeader.populate(), which always
  set the subject to visible.
  As a workaround: Only set subject to visible in case populate()
  actually shows a new message.

- delete res/layout/actionbar_message_view.xml, its already present
  in the actionbar_custom.xml
2013-02-11 13:47:31 +01:00
m0viefreak
865151fef8 merge date and time font size preference into one
The header changes merged those, so remove the now unneeded preferece, too.
2013-02-11 13:05:52 +01:00
Danny Baumann
ee65217ac3 Properly clear out old state when receiving a new intent.
This fixes the following scenario:
- Get a mail notification
- Click on notification -> message view appears
- Press home
- Get a new notification
- Click on notification -> last instead of new message is displayed
2013-02-11 09:19:42 +01:00
Danny Baumann
3807d2881d Fix warnings. 2013-02-11 09:19:29 +01:00
cketti
73ab6ba719 Add animated notification icon for "check mail" 2013-02-11 01:31:56 +01:00
Jesse Vincent
ed90f3be44 MessageView quick contact badges 2013-02-10 19:02:17 -05:00
Jesse Vincent
fd19704fe5 show the date and time in a single view on a single line 2013-02-10 19:02:17 -05:00
Jesse Vincent
648a6eed86 move the To and Cc labels into their own Views; stop playing span games to style them 2013-02-10 19:02:17 -05:00
Jesse Vincent
82a8ac6278 There's no good reason to exclude the Subject from the "full headers" view, especicially since we now play games with it sometimes showing up in the header and sometimes in the titlebar 2013-02-10 19:02:17 -05:00
Jesse Vincent
c4b941b9b9 Switch our font sizes to have a "default", which is the size described in the XML.
Unify the text field size setting code. We should put it in a better place
2013-02-10 19:02:17 -05:00
cketti
3a7f1249dc Fix some display issues 2013-02-08 18:04:39 +01:00
cketti
b25dfb802d Resize the contact picture bitmaps to the display size 2013-02-08 18:04:38 +01:00
cketti
d86dd3a4e7 Add setting for contact pictures to import/export code 2013-02-08 15:41:14 +01:00
cketti
c27a5a8104 Add setting to toggle contact pictures 2013-02-08 15:37:28 +01:00
cketti
04ce0a9d3f Add contact pictures to message list 2013-02-08 15:37:27 +01:00
cketti
ae5e1af54d Fix settings import/export 2013-02-08 15:24:04 +01:00
m0viefreak
c59d70b8c6 Compose: Don't just theme the editboxes, but the whole content (but not the actionbar)
This way also the From: selection, To:, Cc, and Bcc: are themed correctly.
It looks more homogeneous and is consistent with the looks of the MessageView.
2013-02-08 15:24:04 +01:00
Danny Baumann
8f3e61feab Convert theme setting value to an enum. 2013-02-08 15:24:03 +01:00
Danny Baumann
bd154c4c0f Allow changing the message composer theme (background and text color). 2013-02-08 15:24:02 +01:00
Danny Baumann
728c1bdabe Remove text selection menu item for JB and higher.
Those versions have text selection support built-in (via long pressing
the WebView).
2013-02-08 15:24:02 +01:00
Danny Baumann
2ea0961006 Move message view theme setting from message view menu to global prefs
by default.

The message view theme isn't something the user is likely to change on a
regular basis, so we don't need to clutter the message view menu with
this setting. The menu item can still be enabled for those who want it.
2013-02-08 15:24:01 +01:00
Jesse Vincent
7714bc3cfa Move "show all headers" into the menu (and out of the UI) 2013-02-07 15:27:22 -05:00
cketti
610af1dfe5 Don't blindly use the saved display mode value 2013-02-06 21:21:13 +01:00
cketti
1244cc864a Make sure onSwitchComplete() is also called when animations are disabled 2013-02-06 21:21:13 +01:00
cketti
0cd7eb12ed Don't call MessageListFragment methods until initialization is complete 2013-02-06 18:11:29 +01:00
cketti
74bbbe7ea5 Fix not marking messages as read on viewing 2013-02-06 17:38:10 +01:00
cketti
07490613b6 Merge pull request #242 from maniac103/fix-sort
Fix sorting of threaded messages.
2013-02-06 08:22:22 -08:00
Danny Baumann
03f9b9ef0d Respect the 'enable animations' pref when animating views. 2013-02-06 10:54:13 +01:00
Danny Baumann
1d849f6664 Fix message view menu items being present after displaying a message and
going back.
2013-02-06 10:43:43 +01:00
Danny Baumann
62ee3bb0d6 Remove useless assignment.
mSavedListState is guaranteed to be null at this point.
2013-02-06 10:43:35 +01:00
cketti
3286cea148 Only remove message view fragment after animation is complete 2013-02-06 00:56:33 +01:00
cketti
473aebefdb Don't show animation when directly opening message view 2013-02-06 00:41:33 +01:00
cketti
e59d23ca0e Fix NullPointerException 2013-02-06 00:39:45 +01:00
cketti
ac9259a0e3 Restructure MessageHeader to avoid NPE when used by MessageTitleView 2013-02-05 23:55:21 +01:00
cketti
08198d8767 Remove old subject from action bar when loading new message 2013-02-05 23:49:53 +01:00
m0viefreak
1dd697f091 MessageView: fix crash when clicking on URLs in WebView
The ContextThemeWrapper added in a74d57cb71
used getActivity().getApplicationContext() to get the base context.
This is wrong, because an Application context won't work for starting
activities from the WebView.

Instead, use the context that is given to us in the constructor as base
context. This is the one that would also  be used if no ContextThemeWrapper
was present at all.
2013-02-05 23:13:08 +01:00
m0viefreak
5fa7e65816 MessageView: another theme fix
- The attachments view still had the wrong background color in case
  of different global and message themes.

- The attachments view used the activity LayoutInflater, but it needs
  to use the one of the fragment.

- The background drawable for the attachments used transparency, and
  thus was completely invisible in the black theme. Fix it by adding
  another one for the black theme.
2013-02-05 23:12:52 +01:00
cketti
f5ec5cd3fb Avoid saved state being discarded when message list is modified 2013-02-05 20:00:31 +01:00
cketti
cb51da5ea8 Fix restoring instance state of fragment on back stack 2013-02-05 20:00:31 +01:00
cketti
4b920e19b0 Simplify Handler code to restore message list state 2013-02-05 20:00:30 +01:00
cketti
7f39b3c6d8 Fix a potential NullPointerException when rotating the device twice
When MessageListFragment is on the back stack and the device is rotated
the instance state will be restored but no new view will be created. If
the device is rotated again onSaveInstanceState() is called and we have
to take care not to assume that the views have been created.
2013-02-05 20:00:30 +01:00
Jesse Vincent
0b04e526b4 Because we're not reusing the message view, we don't need to force scrolling. This has the side effect of cutting down on a momentary flash of message header area on display. 2013-02-05 12:26:16 -05:00
Jesse Vincent
69da9bdd7a Only animate the firt view transition if it's from the message list to the message view 2013-02-05 12:18:56 -05:00
Jesse Vincent
3b8421a9a8 Tweak animations to use the (Slightly slower) android default animation speed.
Remove the fadeout to make things look a little less weird
Make the animations slide in from the edge. (See the aforementioned comment about jankyness)

TODO: don't remove the message view until _after_ the animation runs. Before HC, that requires rather a lot more code (writing a whole animationadapter) than it should.

TODO: get the messageview to stop jumping to hide the header area as it's displayed.
2013-02-05 12:04:03 -05:00
Danny Baumann
499e20ef76 Make next/prev buttons track their state again. 2013-02-05 16:11:56 +01:00
Danny Baumann
1dda0cfdbd Another unused import. 2013-02-05 14:32:56 +01:00
Danny Baumann
7b48df7dce Simplify message list item layout. 2013-02-05 11:16:00 +01:00
Danny Baumann
f51f675021 Simplify and improve message view header layout.
The star was displayed partially off-screen before.
2013-02-05 11:15:55 +01:00
m0viefreak
a74d57cb71 MessageView: Theme fix when global and message view theme differ
- Since the split-view change, MessageView is only a fragment, so we
  can't call setTheme() anymore so easily.
  Instead, use a ContextThemeWrapper and use that to inflate the
  layout. This way the message header and attachment view
  are styled correctly.

- The HTC WebView fix in SingleMessageView was returning the wrong
  background color, when message view theme and global theme differ,
  because it always used the global theme to retrieve it.
  Fix: Specifically put the light/dark values in the themes.xml,
  and get them using getContext().getTheme().resolveAttribute().
  getContext() will use the ContextThemeWrapper from above, so
  even if the global and message view themes differ, it aleays
  returns the correct one.
  The getThemeBackgroundColor() method added to the K9ActivityMagic
  interface in 309eeb72ac is now not
  needed anymore, and was removed.
2013-02-04 19:30:40 +01:00
m0viefreak
2c87efe5f3 Put back prev/next buttons to non-split message views for now.
Some people prefer them over swiping / volume keys.

They could probably be made optional so they can be hidden.

Also: delete the now unused message_view_fragment.xml and message_view_option.xml.
2013-02-04 19:26:04 +01:00
m0viefreak
7bcecf7060 Fix action bar items missing when opening new message.
Calling configureMenu() inside updateMenu() doesn't update the
buttons properly. Instead, call invalidateOptionsMenu(). This forces
the menu to be re-created, and onPreareOptionsMenu() to be called.
From there, configureMenu() is called automatically.
2013-02-04 19:26:04 +01:00
cketti
7a5095a6aa Fix back button behavior when rotating the device 2013-02-04 17:26:46 +01:00
Danny Baumann
275700e482 Fix a number of build warnings.
This gets rid of about 50 warnings. Deprecation warnings still remain,
though.
2013-02-04 11:18:49 +01:00
cketti
a5c00a42d0 Add missing Override annotations 2013-02-03 17:23:39 +01:00
cketti
869a769e23 Stop using deprecated PullToRefresh methods 2013-02-03 17:22:34 +01:00
cketti
d5a417d936 Fix some warnings 2013-02-03 17:08:48 +01:00
cketti
e2ce85706d Fix NullPointerException 2013-02-03 17:00:56 +01:00
Danny Baumann
5d1e42c453 Improve certificate failure notifications.
The commit that introduced those notifications also introduced a rather
... interesting design pattern: The CertificateValidationException
notified the user of its pure existance - it's no longer a 'message'
only, but defines policy. As this is more than unusual, replace this
pattern by the MessagingController treating
CertificateValidationException specially when accessing remote folders.

Also make clear which account failed when constructing the notification.
2013-02-02 13:04:41 +01:00
maniac103
d97d6b848d Merge pull request #240 from maniac103/thread-star
Show thread as starred if at least one message in it is starred.
2013-02-02 04:03:22 -08:00
cketti
cce969a6b6 Merge branch 'split_view'
Conflicts:
	res/values-de/strings.xml
	src/com/fsck/k9/fragment/MessageListFragment.java
2013-02-02 05:30:30 +01:00
cketti
57e55734c4 Make sure semaphore in MessageProvider is released in case of an error
Patch provided by teslacoil
2013-02-02 04:25:39 +01:00
cketti
3171ee969f Fix some warnings 2013-02-02 04:14:56 +01:00
cketti
58919c2912 Fix accessing the unread count using MessageProvider
Thanks to teslacoil for diagnosing the problem and coming up with a fix.
2013-02-02 04:13:26 +01:00
cketti
1f5ca9eeaa Don't use MessageViewFragment before it's initialized
The previous code worked fine on Android 4.2. But the lifecycle on older
Android versions (tested with 2.2) seems to be slightly different. This
should fix the problem.
2013-02-02 02:35:48 +01:00
cketti
b02e338b49 Add animation when switching from message list to message view 2013-02-02 02:21:20 +01:00
cketti
a7b90feb83 Fix handling of hotkeys to move to previous/next message 2013-02-01 21:35:38 +01:00
Danny Baumann
6d1f96966a Fix sorting of threaded messages. 2013-02-01 09:52:14 +01:00
Danny Baumann
74c79cc365 Aggregate some more thread columns properly.
- show thread as starred if at least one message in it is starred
- use arrival date of last message as thread arrival date
- use sum of message attachment counts in thread as thread attachment
  count
- show thread as answered/forwarded if all messages in thread were
  answered/forwarded
2013-02-01 09:51:28 +01:00
cketti
40bbc5f5ae Change default value of split-screen setting 2013-02-01 03:37:47 +01:00
cketti
6b143d845a Set MessageList title in action bar depending on display mode 2013-02-01 02:50:00 +01:00
cketti
c11e5ef76b Fix back button behavior 2013-02-01 00:47:28 +01:00
cketti
af51eee9b1 Get rid of MessageView activity 2013-01-31 04:34:23 +01:00
cketti
1ab04587a9 Restore list state when recreating MessageListFragment 2013-01-30 22:30:19 +01:00
cketti
5b8fe64917 Refactor code to restore the list state 2013-01-30 21:56:16 +01:00
cketti
e9f57dd9c6 Merge branch 'remember-message-list-state' of git://github.com/maniac103/k-9 2013-01-30 20:30:46 +01:00
cketti
c87878fb63 Merge pull request #238 from maniac103/thread-unread
Show thread as unread if at least one of the messages of the thread is unread.
2013-01-30 11:19:56 -08:00
cketti
77da312354 Fix the span range for the text in front of the message preview 2013-01-30 19:31:06 +01:00
Danny Baumann
6e23a5e8e6 Show thread as unread if at least one of the messages of the thread is
unread.

Fixes issue 4759.
2013-01-30 17:14:20 +01:00
Danny Baumann
55e5d8680e Remember last list view state when going back to a previous message list
fragment.

Fixes issue 4854.
2013-01-30 16:53:21 +01:00
cketti
7332c38bd4 Fix "return to list after delete" 2013-01-29 04:03:15 +01:00
cketti
957042a0d0 Make sure swipe gestures only work on the message list 2013-01-29 03:30:45 +01:00
cketti
a00626264f Go back to message list when using the back button in message view 2013-01-29 01:25:22 +01:00
cketti
ad2a6d7a9b Add message view menu items to MessageList 2013-01-29 01:19:53 +01:00
cketti
77b8e62d64 Add hotkeys from MessageView to MessageList 2013-01-28 16:15:03 +01:00
m0viefreak
dae3b776ff MessageList: add setting to allow 0 preview lines 2013-01-28 04:45:03 +01:00
cketti
0a14d584e9 Add 1px divider between message list and message view in split view 2013-01-25 12:19:09 +01:00
cketti
c5b1e1d0e5 Add setting to configure the splitview mode 2013-01-24 20:30:07 +01:00
cketti
573058bffc Add marker in message list for currently opened message 2013-01-24 15:36:59 +01:00
cketti
933dd95047 First very basic version of a split screen for message list + view 2013-01-24 13:04:06 +01:00
cketti
1d01bcb688 Clean up the code a bit 2013-01-22 23:47:38 +01:00
cketti
bfdee8161c Fix compiler warnings/code style 2013-01-18 14:27:04 +01:00
cketti
0844b4d394 Use HoloColorPicker to generate random account colors 2013-01-18 14:21:26 +01:00
cketti
24c10f0fd3 Explicitly set layout used in a ListActivity 2013-01-18 12:33:31 +01:00
cketti
ffda532612 Add (heavily modified) HoloColorPicker 2013-01-17 09:03:11 +01:00
Samuel Sieb
edc0c0dc5e load the correct number of extra messages from the server instead of possibly doubling the count 2013-01-16 12:24:43 -08:00
Jesse Vincent
f19b243860 Make the default folder name size in the folder list the same as the default account name size in the account list 2013-01-15 15:33:14 -05:00
Jesse Vincent
f8414ffe99 Merge remote-tracking branch 'zjw/folder_search'
* zjw/folder_search:
  Provide message search capability from the folder list.
  Eliminate unused code.
  Switch to using the action bar for folder searches.
  Use a more appropriate title when diplaying folder search results.
  Switch to using the action bar for folder searches.
  Provide new action bar "find folder" icons
  Create action buttons to search for folders.
  Readjust settings version number based on current master
  Control wrapping of folder names programmatically only
  Permit the folder list item to expand vertically.
  Create new preference option for wrapping folder names in folder list view.
  Issue 1911:  Permit folder names to wrap on multiple lines in folder list view so users can see the entire name.
2013-01-15 15:19:12 -05:00
Jesse Vincent
841e565a49 Merge remote-tracking branch 'zjw/progress_indicators'
* zjw/progress_indicators:
  Provide a progress indicator while loading remote search results.
  Remove the progress bar from the message list footer.
  Provide progress indicator for searches.

Conflicts:
	src/com/fsck/k9/activity/MessageList.java
2013-01-15 15:06:23 -05:00
Jesse Vincent
ae6c7e37ca Merge remote-tracking branch 'zjw/issue_2389_cert_error_notice2'
* zjw/issue_2389_cert_error_notice2:
  Fix Issue 2389:  Self signed certificate expiry causes silent send/receive failure.
2013-01-15 14:44:21 -05:00
Andrew Chen
bdf2283ef4 Merge pull request #225 from maniac103/fix-multiaccount-notification
Fix notification click behaviour for multiple accounts.
2013-01-14 15:14:06 -08:00
cketti
b0b0ee6678 Add check to display database upgrade screen to more activities
Through shortcuts, widgets, etc. users can start the app using another
activity than Accounts. We still want to display the database upgrade
screen in such cases.
2013-01-14 09:32:58 +01:00
cketti
ae7ddcdd5f Fix condition to check whether or not the database needs upgrading 2013-01-14 09:32:58 +01:00
Joe Steele
ad16bf94cd Provide message search capability from the folder list.
The search is performed in all folders for the account
to which the folders belong.
2013-01-13 22:35:59 -05:00
Joe Steele
f3084dbb66 Provide a progress indicator while loading remote search results. 2013-01-12 18:02:09 -05:00
cketti
009c2c6a12 Add button to show changelog to 'About' dialog 2013-01-12 23:56:25 +01:00
cketti
a98db87dd8 Add ckChangeLog to about dialog 2013-01-12 23:40:45 +01:00
cketti
543fefebaa Merge branch 'threading_schema_change' 2013-01-12 23:03:38 +01:00
cketti
705ba76509 Close thread view when last message has been moved/deleted 2013-01-12 22:52:09 +01:00
cketti
7a1e52de48 Fix copy/move when not in 'single folder mode' 2013-01-12 06:17:31 +01:00
cketti
65a5a73737 Rewrite/optimize some SQL statements 2013-01-12 04:21:53 +01:00
cketti
0a5a330820 Fix getFoldersAndUids() for threads 2013-01-12 04:02:21 +01:00
cketti
421558c148 Optimize setting flags for whole threads 2013-01-12 02:28:12 +01:00
Joe Steele
512d67a10e Merge branch 'wrap_folder_name_2' into folder_search
Conflicts:
	src/com/fsck/k9/activity/FolderList.java
2013-01-11 17:51:16 -05:00
Joe Steele
d01ef4f9cb Eliminate unused code. 2013-01-11 17:42:38 -05:00
cketti
3ec623c174 Avoid full table scan when creating the threaded message list 2013-01-11 03:59:38 +01:00
cketti
1df88ea153 Use separate table to store the thread structure 2013-01-11 03:40:35 +01:00
Joe Steele
fa857f7d09 Switch to using the action bar for folder searches.
Eliminate the old-style search dialog box.  A similar change
was previously made when searching from the folder list.  This
change is applicable when searching while choosing a
folder (e.g. a destination folder for a copy operation).
2013-01-10 17:41:15 -05:00
Joe Steele
993b025906 Use a more appropriate title when diplaying folder search results. 2013-01-10 17:41:14 -05:00
Joe Steele
d7cb89880a Switch to using the action bar for folder searches.
Eliminate the old-style search dialog box.
2013-01-10 17:41:13 -05:00
Joe Steele
218823d7b2 Remove the progress bar from the message list footer.
More often than not, it's scrolled out of view.
Other progress indicators have been implemented that
are always in view.
2013-01-10 16:50:21 -05:00
Joe Steele
689f69ca49 Provide progress indicator for searches.
Searches can be slow, so users need an indicator.  The indicator is
also used when opening a message list or when refreshing it, or when
loading more messages.

This also removes some unused code.
2013-01-10 16:50:20 -05:00
Joe Steele
29f15d715d Fix Issue 2389: Self signed certificate expiry causes silent send/receive failure.
With this fix, a CertPathValidatorException or CertificateException will
create a "Certificate error:  Check your server settings" notification
in the status bar.  When the user clicks on the notification, they are
taken to the appropriate server settings screen where they can review their
settings and can accept a different server certificate.
2013-01-10 16:49:55 -05:00
Joe Steele
9b851f20e3 Readjust settings version number based on current master 2013-01-10 16:42:28 -05:00
Joe Steele
d5a2c6b5c7 Control wrapping of folder names programmatically only
This removes the default settings (ellipsized, single line) from the layout
xml file and implements them programmatically.  This fixes the problem where:
You are viewing a folder list while wrapping is currently on, then you go into settings
and turn wrapping off, after which you are back at the folder list, but the
list is still wrapped.
2013-01-10 16:42:26 -05:00
Joe Steele
26fe9b7757 Create new preference option for wrapping folder names in folder list view.
Revert to using an ellipsized folder name as the default.
2013-01-10 16:42:23 -05:00
Joe Steele
7459f1c6b5 Issue 1911: Permit folder names to wrap on multiple lines in folder list view so users can see the entire name.
Reduce the default font size used in folder list view to a reasonable size so that long folder paths wrap to fewer lines.
2013-01-10 16:42:22 -05:00
Andrew Chen
076650f3a3 Merge pull request #224 from maniac103/extend-folder-menu
Add Refresh' and Settings to folder context menu.

Also add Account Settings to the account context menu.
2013-01-10 12:07:33 -08:00
Danny Baumann
a75947dd87 Add back account settings to account context menu. 2013-01-10 10:00:37 +01:00
Danny Baumann
3d14bd53f1 Fix notification click behaviour for multiple accounts.
Test case:
- Have two accounts A and B
- Get a mail on A
- Get a mail on B
- Click on the notification for A

Result:
You end up seeing the message from B instead of A

The reason for that is that we need to register separate PendingIntents
for each account.
2013-01-10 09:45:37 +01:00
Andrew Chen
190a291e76 Merge pull request #223 from maniac103/jb-notifications-followup
Some follow-up fixes for the JB notifications
2013-01-08 09:16:04 -08:00
Danny Baumann
4b4412b666 Add back 'refresh' and 'settings' to folder context menu.
Both items are commonly used even by the average user (and likely both
are used more commonly than 'clear local messages'), so it makes
sense to provide them in the context menu as well as the action bar.
2013-01-08 13:12:47 +01:00
Danny Baumann
ada2a9ccb5 Documentation and cleanup
- Add Javadoc to new methods and classes
- Get rid of magic number
2013-01-08 12:52:56 +01:00
Danny Baumann
4d075c91ac Some more cleanup
- When the last message of the message list is cleared, clear the whole
  notification
- Compare whole message reference, not only UID.
2013-01-08 10:06:01 +01:00
Danny Baumann
cb9cff382f Fix typo causing a NPE. 2013-01-08 09:29:34 +01:00
Danny Baumann
84a5e34537 Improve notification message list processing
- If a message contained in the inbox list is deleted or read while
  there are messages in the overflow list, restore the newest message
  from the overflow list so there are always 5 messages in the inbox
  list in that case.
- Use explicit methods instead of method overriding.
2013-01-08 09:27:28 +01:00
cketti
f548e822d6 Add ckChangeLog to display a change log after an app upgrade 2013-01-08 09:17:35 +01:00
Andrew Chen
5ac3d1d5c2 Use existing LocalMessage for the JB notifications.
LocalMessage already has a content preview in it; reuse that.
Remove unneeded MimeMessage#getPreview() method now that we don't need
to generate a preview anymore.
2013-01-07 23:20:35 -08:00
Andrew Chen
068f87380c More javadoc 2013-01-07 22:15:49 -08:00
Andrew Chen
d4eae05630 Javadoc 2013-01-07 22:11:04 -08:00
Andrew Chen
e32909c57a Remove unused import 2013-01-07 20:51:37 -08:00
Andrew Chen
1ff0bb6289 Merge pull request #222 from maniac103/jb-notifications
Merge branch 'jb-notifications' of https://github.com/maniac103/k-9

* 'jb-notifications' of https://github.com/maniac103/k-9:
  Strip off signatures from preview.
  Reset list of unseen messages when the user clears the notification.
  In the new-style notification, directly go to message if new message count is 1.
  Cancel notification when viewing message by clicking on notification.
  Directly go to message when clicking on a single-message notification.
  Fix message overflow.
  Incorporate review comments.
  Some fixes to notification behaviour.
  Add German translation for message delete notification action.
  Add delete action to notification.
  Update summarized notification if a message is deleted or read remotely.
  Fixed deprecation warnings.
  Simplify code and beautify pre-jellybean notifications by using bold sender span for those.
  Respect "Show contact names" option when determining sender for notification.
  Fix marking messages as read from notification.
  Add German translation for new strings.
  Add actions to notifications.
  First stab at new notifications.
  Remove own Notification.Builder abstraction.
  Update android support library to latest version.
2013-01-07 20:44:35 -08:00
Danny Baumann
45328189f3 Strip off signatures from preview. 2013-01-07 10:39:08 +01:00
Danny Baumann
7e1e38189d Reset list of unseen messages when the user clears the notification. 2013-01-07 09:12:07 +01:00
Andrew Chen
d7d562bd58 Fetch the simple name of the class instead of doing regex dances. 2013-01-06 12:40:03 -08:00
Danny Baumann
aaa65a457e In the new-style notification, directly go to message if new message
count is 1.

This matches what is displayed in the notification itself.
2013-01-06 12:16:54 +01:00
Danny Baumann
e17e9b9344 Cancel notification when viewing message by clicking on notification. 2013-01-06 12:13:36 +01:00
Danny Baumann
ef93f0af6c Directly go to message when clicking on a single-message notification. 2013-01-05 14:15:15 +01:00
Danny Baumann
d9cc0446b6 Fix message overflow. 2013-01-05 13:59:16 +01:00
Danny Baumann
6f7ec3e401 Incorporate review comments. 2013-01-05 13:21:17 +01:00
Danny Baumann
b334960355 Some fixes to notification behaviour.
- Make notification high priority if any previewed message is flagged
- Fix message ordering
- Go to folder list instead of folder of newest message if there are
  multiple messages in the notification
2013-01-04 16:52:47 +01:00
Danny Baumann
0bf3dddafc Add delete action to notification. 2013-01-04 10:40:48 +01:00
Danny Baumann
220a2da195 Update summarized notification if a message is deleted or read remotely. 2013-01-03 10:14:22 +01:00
Danny Baumann
3e0cbb1bb6 Fixed deprecation warnings. 2013-01-03 09:39:02 +01:00
Andrew Chen
1767c3428e If we have to surface Java exceptions to the user, make them more readable. 2013-01-02 21:38:01 -08:00
Danny Baumann
42605a7ea9 Simplify code and beautify pre-jellybean notifications by using bold
sender span for those.
2013-01-02 17:02:57 +01:00
Danny Baumann
be68a6cbe6 Respect "Show contact names" option when determining sender for
notification.

Fixes #4765.
2013-01-02 16:13:27 +01:00
Danny Baumann
c0e0ac9d34 Fix marking messages as read from notification.
MessagingController.setFlag(Account, List<Long>, Flag, boolean, boolean)
expects database IDs, while Message.getId() returns UIDs. Fix the
operation by using a variant that expects UIDs.
2013-01-02 15:43:29 +01:00
Danny Baumann
8cee3ee18d Add actions to notifications.
- If there's only a single message in the notification, add 'Reply' and
  'Read' (marks as read) buttons.
- If there's more than one message pending, add only 'Read'.
2013-01-02 14:17:20 +01:00
Danny Baumann
694a46c6c1 First stab at new notifications. 2013-01-02 14:11:07 +01:00
Danny Baumann
565fef0cea Remove own Notification.Builder abstraction.
Replace it by NotificationCompat.Builder, which is in the support
library we're using anyway.
2013-01-02 14:09:37 +01:00
Andrew Chen
b0171c69aa Enable K9.DEBUG if a debugger is attached.
Allows debugging to be enabled from the get-go on fresh installs before we can get to the preference screen.
2012-12-21 18:00:42 -08:00
Andrew Chen
c63a756500 No functional changes; whitespace only. 2012-12-21 15:36:54 -08:00
Andrew Chen
c6beeacb7d Outlook 2013 uses a new color for the quote divider. Updating to match The New Hotness™. 2012-12-21 15:31:13 -08:00
Andrew Chen
3462532f7c Don't try to save crypto settings if they weren't enabled. 2012-12-18 16:26:53 -08:00
Andrew Chen
bcc29632e9 Disable Cryptography setup menu if APG isn't installed. 2012-12-18 16:18:00 -08:00
cketti
3f84bb54f2 Fix crash when deleting all messages in a thread
Fixes issue 4772
2012-12-18 21:12:40 +01:00
cketti
99e7d5a692 Fix "disappearing threads" bug
List threads regardless whether or not the thread root was deleted.
2012-12-18 20:48:33 +01:00
David Miller
f282386ab0 Fix issue 4771 - work around > getting included in URLs when linkifying text/plain emails 2012-12-18 09:59:14 -05:00
cketti
caa26311f1 Use HTML to format welcome message / make URL clickable 2012-12-17 12:41:12 +01:00
cketti
75329c45b3 Add Javadoc 2012-12-17 12:37:27 +01:00
cketti
5f638a02e2 Add missing @Override annotation and whitespace fixes 2012-12-17 12:36:42 +01:00
cketti
bcd52a6707 Fetch in-reply-to header when downloading envelope on IMAP accounts 2012-12-13 17:03:35 +01:00
cketti
bc2f099c3c Fix pull-to-refresh
- disable pull-to-refresh while showing the "Loading..." view
- move initialization code from onResume() to initializePullToRefresh()
and call it from onCreateView()
2012-12-10 23:21:00 +01:00
cketti
44348e08a4 Create non-existent IMAP folders when copying/moving messages 2012-12-10 21:42:57 +01:00
cketti
edd2a44201 Don't display negative unread count in message list 2012-12-10 20:06:18 +01:00
cketti
7db33ce8c6 Ignore null-rows in results of SQL queries 2012-12-10 17:34:48 +01:00