1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-11-11 20:15:03 -05:00
Commit Graph

217 Commits

Author SHA1 Message Date
Jesse Vincent
d4246a0976 With the new webview scrollview combo we've got loadinoverviewmode seems to behave better. 2013-11-07 10:39:37 -08:00
Joe Steele
1cbdd390f3 Use non-deprecated constants 2013-11-05 16:26:29 -05:00
Joe Steele
5311a2ef01 NonLockingScrollview fixes.
Implement methods missing in API 7

Fix coordinate reference frame mismatch.  Touch events are
relative to the view display, whereas view children are relative
to the view.
2013-11-05 16:26:28 -05:00
Joe Steele
fa962e7bd7 Move AOSP files.
Patch RigidWebView for K9.
MessageWebView would need to extend RigidWebView.
2013-11-05 16:26:27 -05:00
Joe Steele
7b0082026c Revert auto-scroll changes that are no longer needed.
Revert "Only Jelly Bean seems to have the auto-scroll issue"

This reverts commit a3802a7a8e.

Revert "Hack around WebView's initial auto-scrolling past the message header"

This reverts commit 8dcc769c50.

Conflicts:

	src/com/fsck/k9/view/MessageWebView.java
2013-11-05 16:26:25 -05:00
Joe Steele
94a4585317 Switch to using NonLockingScrollView
This implements the AOSP Email solution for incorporating
a Webview inside a ScrollView, while still being able to
scroll diagonally.

This replaces the functionality of TitleBarWebView (which
is now removed).
2013-11-05 16:26:23 -05:00
Danny Baumann
890e0e22e3 Some assorted warning fixes. 2013-09-25 15:20:43 +02:00
Jesse Vincent
ee234b65f8 Return to old style chips for accounts, folders and messages.
My circle design stopped being even a little bit useful when we stopped showing
the "complex" versions of the shapes
2013-08-22 20:56:55 -04:00
cketti
20fcd6f63d Add setting to toggle colored background of fallback contact pictures 2013-08-16 18:43:00 +02:00
Joe Steele
2df436e7bc Close stream when done (StrictMode error). 2013-08-02 12:56:10 -04:00
Joe Steele
fce39f0fce HTML tag cleanup
Effective with earlier commit e2c5229e85,
messages are wrapped with <html> tags at display time, rather than
when messages are saved.

For consistency, this commit removes tags from a status message, because
they, too, will be added back at display time.

Closes pull request 286.
2013-08-01 19:38:48 -04:00
Stephan Fuhrmann
16f6d85ea2 GMail-app-style generated colorful one-letter contact pictures for pictureless contacts 2013-07-21 14:34:45 -04:00
Jesse Vincent
fa1b7dec31 broaden a 'catch' to catch other failures showing all headers.
Market reported NPE:

java.lang.NullPointerException
at com.fsck.k9.view.MessageHeader.showAdditionalHeaders(MessageHeader.java:186)
at com.fsck.k9.view.MessageHeader.onShowAdditionalHeaders(MessageHeader.java:318)
at com.fsck.k9.fragment.MessageViewFragment.onToggleAllHeadersView(MessageViewFragment.java:300)
at com.fsck.k9.activity.MessageList.onOptionsItemSelected(MessageList.java:867)
at android.support.v4.app.Watson.onMenuItemSelected(Watson.java:119)
at com.actionbarsherlock.ActionBarSherlock.callbackOptionsItemSelected(ActionBarSherlock.java:603)
at com.actionbarsherlock.internal.ActionBarSherlockNative.dispatchOptionsItemSelected(ActionBarSherlockNative.java:78)
at com.actionbarsherlock.app.SherlockFragmentActivity.onMenuItemSelected(SherlockFragmentActivity.java:205)
at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:1047)
at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:735)
at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:149)
at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:874)
at com.android.internal.view.menu.ListMenuPresenter.onItemClick(ListMenuPresenter.java:180)
at android.widget.AdapterView.performItemClick(AdapterView.java:301)
at android.widget.AbsListView.performItemClick(AbsListView.java:1276)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:3067)
at android.widget.AbsListView$1.run(AbsListView.java:3963)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4898)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
at dalvik.system.NativeStart.main(Native Method)
2013-06-30 18:52:27 -04:00
cketti
79059e30da Remove override annotation so we can use the latest SDK to compile 2013-05-23 16:45:19 +02:00
Jesse Vincent
2e74d28da9 Merge branch 'Issue_4503_auto-fit_messages_option' of https://github.com/zjw/k-9 into zjw-Issue_4503_auto-fit_messages_option
* 'Issue_4503_auto-fit_messages_option' of https://github.com/zjw/k-9:
  Revert "Don't show a disabled preference if there is nothing a user can do to enable it."
  Fix indentation
  Correct preference version number.
  Issue 4503: Auto-fit messages option
  Don't show a disabled preference if there is nothing a user can do to enable it.
2013-05-07 21:49:12 -04:00
cketti
1c722876f1 Use very light grey instead of white for message text in dark theme 2013-04-24 01:05:11 +02:00
Joe Steele
84769d2433 Fix indentation 2013-04-11 22:26:32 -04:00
Joe Steele
d9979cb1a2 Issue 4503: Auto-fit messages option
Create a preference option to automatically shrink messages
to fit the screen width (default setting is "shrink").
2013-04-04 17:11:17 -04: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
aff9bec92b Work around a bug in ListView 2013-03-18 22:56:56 +01:00
cketti
a3802a7a8e Only Jelly Bean seems to have the auto-scroll issue 2013-03-14 03:19:42 +01:00
cketti
8dcc769c50 Hack around WebView's initial auto-scrolling past the message header 2013-03-12 07:54:38 +01:00
cketti
e77c341542 Avoid NPE reported via Play Store 2013-03-05 03:31:18 +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
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
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
d6d9effbec Remove unused stuff 2013-02-21 02:00:12 +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
Danny Baumann
3807d2881d Fix warnings. 2013-02-11 09:19:29 +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
Danny Baumann
8f3e61feab Convert theme setting value to an enum. 2013-02-08 15:24:03 +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
1244cc864a Make sure onSwitchComplete() is also called when animations are disabled 2013-02-06 21:21:13 +01:00
Danny Baumann
03f9b9ef0d Respect the 'enable animations' pref when animating views. 2013-02-06 10:54:13 +01:00
cketti
3286cea148 Only remove message view fragment after animation is complete 2013-02-06 00:56:33 +01:00
cketti
ac9259a0e3 Restructure MessageHeader to avoid NPE when used by MessageTitleView 2013-02-05 23:55:21 +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
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
Danny Baumann
1dda0cfdbd Another unused import. 2013-02-05 14:32:56 +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
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
b02e338b49 Add animation when switching from message list to message view 2013-02-02 02:21:20 +01:00
cketti
6b143d845a Set MessageList title in action bar depending on display mode 2013-02-01 02:50:00 +01:00
Jesse Vincent
c870c5acbc make the checkmark a little wider. 2012-11-24 17:44:07 -05: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
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
Jesse Vincent
7b23704bd5 Add "cc Me" and "from me" color chips. Uprez the chips 10x so we get crisp views rather than awful bitmappy stuff 2012-10-03 21:56:28 -04:00
Jesse Vincent
0e3f87f77f Chip updates based on work by m0vie 2012-09-24 19:25:34 -04:00
Jesse Vincent
8df55d069d make the checkmarks a bit more prominent 2012-09-21 17:27:59 -04:00
Jesse Vincent
baf99b114b refactor chip code to be a little less ugly 2012-09-21 17:27:58 -04:00
Jesse Vincent
b9395da6be slight tweaks to chip shape 2012-09-21 00:50:00 -04:00
Jesse Vincent
9a8c050539 slight tweak to the new chip formats 2012-09-21 00:12:09 -04:00
Jesse Vincent
e55b1e0738 Move the message star into the chip. (Also, the "to me" information) 2012-09-20 23:30:52 -04:00
m0viefreak
771b5122d6 MessageView theme toggle: change the theme of the whole activity and not just the background of the WebView
Using dark theme with white WebView background looks very ugly,
especially when a "download complete message" or a "show images"
button is present.

This change applies the theme to the whole activity.

Also changed the text for the toggle menu. It's also shorter now,
and isn't cut off anymore on hdpi/480px wide devices.
2012-09-15 07:22:25 +02:00
Bernhard Redl
76d8e11703 +toggle option in message view to change message display theme (dark,light) permanently (Issue 1674) 2012-09-14 03:16:36 +02:00
cketti
2a05bc0caa Use ActionBarSherlock's MenuBuilder for the "more" menu 2012-09-12 18:26:51 -04:00
Jesse Vincent
c9897a5c84 Indicate read state in chips 2012-09-10 11:01:51 -04:00
Jesse Vincent
78cf804aca first pass of converting chips to colored circles 2012-09-10 10:40:20 -04:00
Andrew Chen
9fbb2b4836 Show the subject line in the MessageHeader if the ActionBar title was truncated. 2012-09-09 13:45:33 -07:00
Andrew Chen
4a416f7acd Hide subject line in MessageView since it's now displayed in the actionbar.
Now that the subject line is gone, the right side of the header is now the tallest part of the header.
Put date and time on the same line to keep the header compact.
2012-09-09 13:41:49 -07: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
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
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
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
a281b3401e Extracted code to disable Lint warning when using newer API 2012-07-07 15:03:23 +02: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
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
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
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
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
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
faf9dc6e02 Restored show/more less indicator in the message header 2012-03-06 04:38:08 +01:00
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
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
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