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
cketti
ba691612dd
Add support for "Unified Inbox" and "All messages" to unread widget
2012-12-08 18:15:34 +01:00
cketti
cc3580c675
Remember across activity restarts whether remote search was performed
2012-12-08 17:29:05 +01:00
cketti
e5d8e1965e
Restore call to remoteSearchFinished() when stopping MessageListFragment
2012-12-08 17:28:46 +01:00
cketti
19a1549d52
Remove unused code
2012-12-08 17:11:17 +01:00
cketti
36a17eae91
Retain selected messages when restarting MessageListFragment
2012-12-08 17:06:15 +01:00
cketti
99ae73ebb9
Remove the setting to hide the refile buttons
...
With the introduction of the action bar there is no longer a separate
button bar for refile actions. So it's no longer necessary to hide the
buttons to save screen space.
2012-12-08 11:51:10 +01:00
cketti
8d652b2f61
Fix some compiler warnings
2012-12-07 15:50:55 +01:00
cketti
7b49f67c51
Remove unused methods
2012-12-07 15:47:15 +01:00
cketti
bc4fb530d0
Remove all code using the old unread/flagged count database columns
2012-12-07 15:45:36 +01:00
cketti
04ec2abd2c
Use local unread/flagged count in folder list and message list
2012-12-07 15:04:53 +01:00
cketti
41d608f3be
Refresh action bar title in FolderList when unread count was calculated
2012-12-07 14:25:30 +01:00
cketti
cf390861d6
Use constant "UUID" for search accounts
...
This way we can match the account stats to the search accounts when the
Accounts activity is restarted.
2012-12-07 14:06:03 +01:00
cketti
4ccb1c952a
Set action bar title for Accounts activity in onCreate()
2012-12-07 13:43:42 +01:00
cketti
144884080d
Retain unread count in Accounts activity during configuration changes
2012-12-07 13:35:49 +01:00
cketti
8100e00523
Remove leading space in action bar title of Accounts activity
2012-12-07 13:08:01 +01:00
cketti
d3e840a9ee
Only list messages in searchable folders under "All messages"
2012-12-07 12:55:32 +01:00
cketti
251428e963
Restore behavior of unread/flagged filtered message list
...
The unread/flagged count/view for accounts now excludes special folders
and only includes displayable folders as specified by the display class.
2012-12-07 12:03:04 +01:00
cketti
73757af680
Only count local messages for unread/flagged count
...
Currently only the Accounts activity uses the new count.
While working on this I realized that the unread/flagged search for
accounts currently looks for unread/flagged messages in all folders, not
all displayable folders without special folders (Trash, Spam, Outbox,
Sent, Drafts) like we used to.
Also, the "All messages" search currently doesn't limit the search to
searchable folders like it is supposed to.
2012-12-07 05:34:44 +01:00
Andrew Chen
9a380c69ad
Strip RE/FW from the MessageList subject line for thread subjects.
...
"Be like Outlook."
2012-12-06 17:41:39 -08:00
Andrew Chen
c81f68af33
Remove the progress spinner when not in use so that the "Load more..." text is centered.
2012-12-06 17:25:56 -08:00
cketti
b4bd80baa2
Fix "up" logic in MessageList
...
Fixes issue 4727
2012-12-06 06:26:39 +01:00
cketti
26b462a90e
Refresh the list when returning to the message list activity
2012-12-06 06:26:39 +01:00
cketti
b04f1b4319
Add an "empty view" to the message list
...
This will display a spinning progress indicator while the message list
is loaded from the database.
2012-12-06 06:26:39 +01:00
cketti
d5bb462917
Don't create Message objects when changing flags of selected messages
...
This changes the interface to MessagingController and the way flags are
updated in the database. Now messages aren't changed one by one but in
batches of 500. This should give better performance, but breaks the
unread and flagged count. I'm not very sad about this, because now we
can move towards only displaying the number of unread/flagged messages
in the local database.
2012-12-06 06:26:38 +01:00
cketti
c0b5255e24
Make most important flags separate database columns
...
This is the first step to speed up searches and flag updates.
2012-12-04 05:13:58 +01:00
cketti
d30cda26fb
Fix database version cache logic
2012-12-04 04:55:52 +01:00
cketti
fcc9e37f66
Add file missing in last commit
2012-12-01 08:29:25 +01:00
cketti
b2098c8d1c
Add activity that is displayed during database upgrades
...
See UpgradeDatabases.java for a detailed description of the upgrade
process.
2012-12-01 08:02:55 +01:00
luyang
bbdec62e37
Fix for StrictMode error.
...
When the device lost connectivity, a StrictMode error could be thrown since
the stream was never closed.
2012-11-28 19:55:42 +01:00
cketti
f67d543510
Remove unused imports
2012-11-27 17:22:58 +01:00
cketti
2db8034c31
Use one database transaction when doing bulk flag changes
...
Previously we used one transaction per message. For 500 messages the
database updates alone took over 30s on my Nexus 7.
2012-11-27 16:46:59 +01:00
cketti
3b022cd72f
Remove excessive debug logging
2012-11-27 16:33:53 +01:00
cketti
38e8fc182c
Don't use LocalSearch object in launcher shortcut intents
2012-11-27 00:50:32 +01:00
cketti
cd3cc88fd4
Fix "Notification opens unread messages"
2012-11-27 00:15:21 +01:00
cketti
689f12a7f8
Don't use FLAG_ACTIVITY_SINGLE_TOP to start MessageList
...
We currently don't implement onNewIntent() so using
FLAG_ACTIVITY_SINGLE_TOP won't work.
2012-11-27 00:01:51 +01:00
Jesse Vincent
c870c5acbc
make the checkmark a little wider.
2012-11-24 17:44:07 -05:00
Jesse Vincent
134b1f1b78
Hide the threaded view wrapper to get slightly better spacing
2012-11-24 14:42:57 -05:00
cketti
b96e7bb058
Fix NPE related to changed initialization order in Android 4.2
2012-11-22 22:50:46 +01:00
cketti
f0118ecb85
Change authority of the new content provider to unbreak build scripts
2012-11-22 22:50:46 +01:00
Jesse Vincent
e2d347f0a3
Strip Re/Fwd/Aw etc from titles of thread view
2012-11-22 15:24:43 -05:00
Jesse Vincent
eacc5e2ffe
Add titles to thread display
2012-11-22 15:19:27 -05:00
cketti
9452b9e4c6
Make sure MessageView menu is configured correctly
2012-11-21 02:45:37 +01:00
cketti
189452618a
Reset the message view theme when the app theme changes
2012-11-21 02:18:52 +01:00
cketti
349b1e997e
Use type of compose action as action bar title
...
I.e. one of "Compose", "Reply", "Reply all", "Forward"
2012-11-21 01:42:19 +01:00
cketti
08615f205f
Merge branch 'content_provider'
2012-11-18 16:50:31 +01:00
cketti
bb01102403
Use Uri.getQueryParameterNames() workaround on pre-API 11 devices
2012-11-16 18:28:40 +01:00
cketti
411abbea64
Fix display of folder settings and account settings menu entries
2012-11-15 21:45:36 +01:00
cketti
999dd33169
Prevent NPEs in methods called by the handler after activity detached
2012-11-15 21:42:10 +01:00
cketti
4eefcb3a31
Fix crash when remote search fails after search screen has been left
...
Also, change error message to be less technical.
2012-11-15 21:28:05 +01:00
cketti
5accadab00
Enable loading more search results from the server
2012-11-15 21:26:46 +01:00
cketti
b108e7a539
Don't fetch already downloaded messages found by a server-side search
2012-11-15 21:05:45 +01:00
cketti
38fe4d1990
Fix "up" navigation when leaving a message list with search results
2012-11-14 15:01:18 +01:00
cketti
9cbbd06352
Restore settings to configure remote search
2012-11-14 02:08:08 +01:00
cketti
ff156ac7c9
Fix remote search
2012-11-14 00:19:10 +01:00
András Veres-Szentkirályi
a86354be7d
Treat mailto-URI parameters case-insensitive
...
RFC 6068 defines these parameters case-insensitive, yet we only
supported lower-case values because the method Uri.getQueryParameters()
treats parameter names case-sensitive.
This patch introduces a wrapper class that implements case-insensitive
parameter name matching.
Note: commit message edited by cketti
2012-11-13 13:33:22 +01:00
cketti
9814833008
Merge branch 'master' into content_provider
2012-11-08 20:32:12 +01:00
cketti
246ed6990c
Avoid endless loop via Handler
2012-11-08 18:20:52 +01:00
Jesse Vincent
9be4efe58f
Get the Folder list to use the new common icons
2012-11-06 16:18:00 -05:00
Jesse Vincent
446cda8618
Clean up the icons in account list
2012-11-06 16:02:08 -05:00
cketti
d209c0cce3
Merge branch 'master' into content_provider
...
Conflicts:
src/com/fsck/k9/activity/MessageList.java
src/com/fsck/k9/fragment/MessageListFragment.java
2012-11-05 04:52:45 +01:00
cketti
52bfea65d1
Make the message selection code use the unique (Cursor) ID
2012-11-05 02:11:02 +01:00
cketti
f02d265f60
Removed unused column from projection
2012-11-05 01:06:10 +01:00
Koji Arai
c0cb734288
Should change Bcc address when Identity changed.
2012-11-05 00:02:57 +09:00
cketti
d530b20e2b
Copy/move all messages in a thread when copying/moving placeholder
2012-11-03 08:30:32 +01:00
cketti
dfbfaf48dd
Clean up method copyOrMove()
2012-11-03 06:27:27 +01:00
cketti
2cfd25fa23
Javadoc cleanup
2012-11-03 06:20:11 +01:00
cketti
c231b732ac
Avoid converting lists to arrays when possible
2012-11-03 05:56:12 +01:00
cketti
46feb8b9d0
Group messages by account when moving to spam/archive folder
2012-11-03 05:24:41 +01:00
cketti
02aeccdedc
Make flag operations work on all messages in a thread
2012-11-03 05:01:25 +01:00
cketti
7a266dcbdf
Retain selected messages when message list is reloaded
2012-11-03 04:26:41 +01:00
cketti
36b572fa5f
Fix deleteThreadsSynchronous()
2012-11-03 04:25:40 +01:00
cketti
fb5e8eea84
Fix computeBatchDirection()
2012-11-03 03:21:30 +01:00
cketti
e339dd1f10
Delete all messages in a thread when 'delete' is used on the placeholder
2012-11-03 01:52:45 +01:00
cketti
966794f169
Don't create (throw-away) Message objects when starting action mode
2012-11-02 09:30:23 +01:00
cketti
c686284a77
Remove unused method
2012-11-02 05:18:45 +01:00
cketti
db3ea36978
Include number of messages in a thread in number of selected messages
...
Selecting a placeholder message will select all messages in its thread.
2012-11-02 05:18:24 +01:00
cketti
2e1d25118a
Fix JOIN-condition when searching for messages
2012-11-01 20:33:13 +01:00
cketti
60bf3e7e29
Rename class members
2012-10-31 01:49:11 +01:00
cketti
08b361ed36
Fix search for Unified Inbox
...
We don't want to list the Inbox contents of all accounts but the
contents of folders whose "Unify" setting is true.
2012-10-31 01:45:44 +01:00
cketti
a54666e020
Fix edge case in MergeCursor
2012-10-31 01:06:26 +01:00
cketti
b0ef68dfed
Make search also search the message contents
2012-10-30 19:24:19 +01:00
Joe Steele
f70d835404
Provide menu option to search messages.
...
Recent phones frequently do not have a hardware search key, so
there is no way to initiate a search without a menu option.
Related to issues 3386, 3428, 4523, and 4643.
2012-10-30 12:42:51 -04:00
cketti
0baffd05c8
Hide remote search UI elements
...
Remote search is currently not working
2012-10-30 16:54:21 +01:00
cketti
968d948dd0
Restore show next/previous message functionality in MessageView
...
This is just a temporary fix. In the future we want to get rid of
passing the serialized message list from MessageList to MessageView.
2012-10-30 16:27:09 +01:00
cketti
303c1ee85d
Extract generation of SQL queries for searches to SqlQueryBuilder
2012-10-29 02:27:34 +01:00
cketti
5778d135fb
Add global setting to enable/disable threaded view
2012-10-28 20:10:52 +01:00
cketti
889e2502be
Replace call to method only available with API 9 and higher
2012-10-27 05:09:58 +02:00
cketti
65b3a57340
Clone LocalSearch object before modifying it for unread/starred search
2012-10-27 04:48:37 +02:00
cketti
faa666394c
Do sorting in MergeCursor when merging the query results
...
Disabled "sort by sender" for now because the database can't sort by
contact names from the contacts database. We probably have to
special-case that and do in-memory sorting.
2012-10-27 02:15:30 +02:00
cketti
d74ca8c8ce
Move MessageInfoHolder comparator to MessageProvider
...
The MessageInfoHolder comparators aren't used in MessageListFragment
anymore.
2012-10-26 02:44:40 +02:00
cketti
08fba5468f
Switch MergeCursor from using a List to an array
2012-10-25 23:14:28 +02:00
cketti
49a5a3b7ff
Fix message sorting for message lists of a single account
...
To support sorting of message lists spanning multiple accounts (e.g.
Unified Inbox) we need a MergeCursor that also does sorting.
2012-10-25 21:51:14 +02:00
cketti
a4585657d1
Fix global search
2012-10-24 06:57:14 +02:00
cketti
d703286833
Make LocalStore.searchForMessages() skip empty messages
2012-10-24 06:01:26 +02:00
cketti
613ef6ced2
"Select all" now won't start selection mode when there are no messages
2012-10-24 05:35:45 +02:00
cketti
508e9e8aa6
Don't display threaded message list for filtered views
2012-10-24 05:28:38 +02:00
cketti
c7a2080b34
Only show message list footer when displaying a single folder
2012-10-24 04:34:41 +02:00
cketti
ec76dca57f
Remove unused stuff
2012-10-24 01:37:33 +02:00
cketti
1fcce6fb8a
Add database indices for thread columns in 'messages' table
2012-10-24 01:03:59 +02:00
cketti
3bef05b55d
Removed LocalStore hack introduced in 16d2326
2012-10-24 00:32:29 +02:00
cketti
cba9d8fc88
Fix pull to refresh for normal list vs. "remote search"-able
2012-10-24 00:09:33 +02:00
cketti
1b98ce57e1
Notify observers (e.g. CursorAdapter) when the messages table changed
2012-10-24 00:08:44 +02:00
cketti
95b39c71d2
Add threading support to content provider
2012-10-23 03:01:50 +02:00
cketti
05a2571570
Fix display of named searches (e.g. "Unified Inbox")
2012-10-22 18:10:47 +02:00
cketti
6af48bd262
Restore TCP port value in incoming/outgoing server settings screens
...
Special thanks to zjw for the detailed analysis of this bug:
https://github.com/k9mail/k-9/pull/193
2012-10-21 20:04:53 +02:00
cketti
93ef3a7b0f
Fix message list when no search condition is given (All messages)
2012-10-21 19:18:57 +02:00
cketti
f093b84142
Make (de)serialization work when LocalSearch has no search conditions
2012-10-21 19:17:01 +02:00
cketti
1d655f5bc2
Added ability to display special folders combining multiple accounts
2012-10-18 05:15:40 +02:00
cketti
20ed1ebe61
Code style cleanup
2012-10-17 20:52:03 +02:00
cketti
fff94956f4
Fixed LocalSearch.addAllowedFolder()
...
We need to use the node returned by add() as new root node.
2012-10-16 22:51:01 +02:00
cketti
502771dd0e
Revert changing the default value for debug logging
2012-10-16 22:48:31 +02:00
cketti
f1e433e6df
Whitespace cleanup
2012-10-16 22:42:51 +02:00
cketti
83d5102f3d
Merge branch 'new_search_framework' into content_provider
...
Conflicts:
src/com/fsck/k9/fragment/MessageListFragment.java
2012-10-16 20:57:47 +02:00
cketti
cc74a2ad2e
Switched to ContentProvider and CursorLoader to display the message list
2012-10-16 15:46:40 +02:00
Sander Bogaert
49197b4f1c
First attempt at making the fragmented messagelist and remote search play nice with the new search framework. Works partially.
2012-10-13 15:07:28 -04:00
Sander Bogaert
bf82d0af7c
Changed all the calls to MessageList to work using the new LocalSearch class. These are all tested and working changes.
2012-10-13 15:06:57 -04:00
Sander Bogaert
f01f2f15cd
Add static methods to create unifiedInbox and allMessages accounts.
2012-10-13 14:19:50 -04:00
Sander Bogaert
a3d227649f
Change visibility of SearchModifier class and members.
2012-10-13 14:12:52 -04:00
Sander Bogaert
f550aaefb5
Add new SearchAccount class and move it together with SearchModifier to the search package ( refactor ).
2012-10-13 14:03:40 -04:00
Sander Bogaert
235e1f913b
Avoid needless nullpointers.
2012-10-13 10:40:13 -04:00
Sander Bogaert
bdfc9d6852
Added two convenience methods to avoid dealing with exceptions all the time.
2012-10-13 10:08:39 -04:00
Sander Bogaert
9883148b2f
Fixed wrong construction of leaf sets and unrightfully ignored exceptions.
2012-10-13 10:03:19 -04:00
Sander Bogaert
442805fe62
Made thread_root a searchable field of the message table. This can be used to display threads.
2012-10-13 09:28:19 -04:00
Sander Bogaert
d27f909600
Add new search logic to the MessagingController and LocalStore classes.
2012-10-13 08:53:00 -04:00
Sander Bogaert
5c6552cbf3
Adding the 3 core classes for the search framework. ConditionsTreeNode, LocalSearch and SearchSpecification.
2012-10-13 05:57:25 -04:00
Sander Bogaert
611bae3fb4
Created search package to hold the framework and moved over the SearchSpecification class ( refactor ).
2012-10-12 12:30:26 +02:00
cketti
c2bb451712
Don't display thread count in thread view
2012-10-10 04:32:48 +02:00
cketti
3413cbebf5
Worked around NPEs when the activity has been detached
2012-10-10 04:30:19 +02:00
Jesse Vincent
4e6453e7bb
remove vestiges of a deleted setting
2012-10-09 21:31:19 -04:00
cketti
16d2326033
Nasty hack to retain threads in MessageListFragment when polling
2012-10-10 03:02:36 +02:00
Jesse Vincent
e9ae328164
Bring back the checkboxes option for messagelist
2012-10-09 18:22:00 -04:00
cketti
63b6b497a0
Early version of message threading
...
Missing:
- UI support for threading when polling
- code to upgrade existing installations
- UI elements to switch from/to threaded display mode
- threading of messages with same subject
2012-10-08 22:51:29 +02:00
cketti
e66dd3d521
Fixed unit tests
2012-10-08 14:43:34 +02:00
cketti
d3f9633378
Merge branch 'fragments'
2012-10-08 14:33:33 +02:00
Jesse Vincent
f62ac401a0
make the stroke border on our color chips a bit wider to make them easier to see
2012-10-06 17:31:24 -04:00
cketti
93b13362b4
Converted message list to a fragment
2012-10-06 03:41:32 +02:00
cketti
12e9dce1d8
Renamed MessageList to MessageListFragment
2012-10-05 18:14:07 +02:00
cketti
8a226972a5
Extracted functionality common to most activities to K9ActivityCommon
2012-10-05 18:14:07 +02:00
cketti
bbcc4988ba
Converted message view to a fragment
...
The fragment should be fully functional. The only thing missing is the
animation when showing the next/previous message.
2012-10-05 18:14:07 +02:00
cketti
c6bea2e6ab
Copied ...activity.MessageView to fragment.MessageViewFragment
...
This commit breaks all sorts of things but should retain the Git
history of MessageView.
2012-10-05 18:14:06 +02:00
Andrew Chen
41756802a1
Move hasConnectivity() method into a helper method.
...
It's now used in multiple places, so unify the logic into one place.
2012-10-05 09:07:16 -07:00