Commit graph

1596 commits

Author SHA1 Message Date
cketti
7cbea6e4b2 Prepare changelog for 5.103 2014-12-06 01:36:10 +01:00
cketti
3b2d625a09 Pull updated translations from Transifex 2014-12-06 01:21:57 +01:00
cketti
410edd7107 Change wording of setting option 2014-12-06 00:42:46 +01:00
Andrew Chen
1fa6e117e1 Add Lollipop lock screen notifications.
Add vector versions for some notification icons (yay Illustrator)
Add comments reminding people to add their settings to GlobalSettings.
<plurals> support for notification_new_messages_title
Not sure why #ffffffff is resulting in black with targetSdk 17.
2014-12-04 18:54:22 -08:00
cketti
68cee3e9a3 Update changelog for 5.102 2014-11-27 21:34:29 +01:00
cketti
98b5d63909 Merge branch 'open_attachment_improvements'
Conflicts:
	src/com/fsck/k9/helper/Utility.java
2014-11-27 21:03:15 +01:00
cketti
a725099693 Merge pull request #499 from k9mail/remove_apg_interface
Remove APG legacy interface
2014-11-12 21:08:46 +01:00
cketti
33d12e4169 Fix russian translation of 'message_view_no_viewer' 2014-10-20 19:52:42 -04:00
cketti
d2bfcab939 Update changelog for 5.101 2014-10-10 13:39:30 -04:00
cketti
87acbb7cac Update changelog for 5.100 2014-10-07 21:30:55 -04:00
cketti
8cfd73f6b7 Remove unused strings 2014-09-18 23:41:41 +02:00
cketti
352fb8fd25 Remove legacy APG interface 2014-09-18 23:20:49 +02:00
cketti
99991e6651 Remove option to select (legacy) APG as crypto provider 2014-09-18 19:15:53 +02:00
cketti
b31660c63e Remove unused strings 2014-09-12 05:54:38 +02:00
cketti
47cedef85c Update changelog for 4.905 2014-09-10 21:02:48 +02:00
Joe Steele
59a61366ca Merge branch 'remove_gallery_bug_workaround'
Conflicts:
	res/values-it/strings.xml
	res/values-iw/strings.xml
	res/values-sv/strings.xml
2014-09-09 18:59:18 -04:00
cketti
2e318096b7 Add new translations
Add new languages that were promised in commit 5a6648ceeb:
- Latvian
- Estonian
- Norwegian Bokmål
- Galician (Spain)
2014-09-09 00:59:56 +02:00
cketti
5a6648ceeb Update translations from Transifex
New languages:
- Latvian
- Estonian
- Norwegian Bokmål
- Galician (Spain)
2014-09-09 00:04:10 +02:00
cketti
9e203b75cc Remove gallery bug work-around
This bug was present in the Gallery app shipped with Android 2.0.
The time has come to say good-bye. We will never forget you! But only because you're part of our Git history.
2014-09-07 23:35:18 +02:00
cketti
5f0f4e9c21 Merge pull request #485 from haselwarter
Conflicts:
	src/com/fsck/k9/preferences/Settings.java
2014-09-04 23:55:30 +02:00
zjw
8ef45e8f9a Merge pull request #492 from k9mail/remove_unused_resources
Resources cleanup
2014-09-04 17:01:28 -04:00
cketti
ae8dcc5e8a Fix typo in attribute name 2014-09-04 20:18:05 +02:00
cketti
0c38d4f169 Remove unused resources and merge resource folders 2014-09-04 20:18:05 +02:00
cketti
759fa77c9a Merge pull request #474 from k9mail/tls-client-cert-auth
Client Certificate Authentication
2014-08-30 01:06:28 +02:00
Joe Steele
7c4a684f86 Clean up indentation
White space changes only
2014-08-29 10:47:46 -04:00
Joe Steele
9728609c4c Make the foldable container view INVISIBLE, not GONE
Now when toggling the foldable view, the screen no longer
jumps half a line up or down to recenter itself when
the view is displayed.
2014-08-29 10:47:45 -04:00
Joe Steele
8ade424270 Save/Restore the FoldableLinearLayout state 2014-08-29 10:47:43 -04:00
Joe Steele
a756fa3683 Use Theme consistent styles in FoldableLinearLayout
For support of the dark and light themes.

Also:

Redefine mFolded and call it mIsFolded.  Previously,
the view started with mFolded = false (which implies to me
the initial state is unfolded) and yet the view
started in a folded state, which seemed contradictory.

Create updateFoldedState() with code from onClick() (In
preparation for subsequent commit.)
2014-08-29 10:47:41 -04:00
Joe Steele
348fb4dceb Validate client certificate dates 2014-08-29 10:47:39 -04:00
cketti
c2db88d960 Add top margin to the "advanced options" area 2014-08-29 03:43:54 +02:00
cketti
1282e9d461 Remove ldpi resources 2014-08-29 02:41:50 +02:00
Dominik Schürmann
05d8fb5e42 Hide client cert option under advanced options dropdown 2014-08-27 11:48:49 +02:00
Dominik Schürmann
2a1733564e Add FoldableLinearLayout for advanced options 2014-08-27 11:30:53 +02:00
Joe Steele
028f6f9055 Remove AccessibleWebView
Only used on pre-ICS devices
2014-08-19 17:17:48 -04:00
Joe Steele
0fba273357 Remove the obsolete "Condensed layout" preference 2014-08-19 17:17:45 -04:00
Joe Steele
8166f03e87 Remove obsolete "Show unread count" preference
Only applies to pre-Honeycomb devices
2014-08-19 17:17:42 -04:00
Joe Steele
af77bbd1bc Eliminate obsolete background data sync option
It only applied to pre-ICS devices.

ConnectivityManager.ACTION_BACKGROUND_DATA_SETTING_CHANGED is no longer
broadcast.

ConnectivityManager.getBackgroundDataSetting() always returns true.
2014-08-19 17:14:44 -04:00
Joe Steele
c472b89d23 Additional 'Show password' changes after merging master 2014-08-19 16:48:11 -04:00
Joe Steele
1783dd1a63 Merge branch 'master' into tls-client-cert-auth
Conflicts:
	res/layout/account_setup_basics.xml
	res/values/strings.xml
	src/com/fsck/k9/activity/setup/AccountSetupBasics.java
2014-08-19 16:19:02 -04:00
pylerSM
a495627d72 Show password feature 2014-08-18 13:06:25 +02:00
Joe Steele
b557ba008c Implement SMTP AUTH EXTERNAL
Also, simplify by using Utility.base64Encode(String) in lieu of
new String(Base64.encodeBase64(String.getBytes())
2014-08-11 11:07:53 -04:00
Joe Steele
65144e3759 Handle client certificate errors
If the alias is empty or null, don't bother using KeyChainKeyManager.

If the alias is not empty, confirm that it is associated with a
certificate, otherwise throw a CertificateValidationException
which will notify the user of the problem and ask the user to
check the server settings.

Likewise, the user is notified if the client certificate was
not accepted by the server.
2014-08-11 11:07:48 -04:00
Joe Steele
21cc3d9176 Remove ClientCertificateRequiredException
With this commit, KeyChainKeyManager no longer throws the exception and
AccountSetupCheckSettings no longer catches it.

It was being thrown when the server requested a client certificate but no
client certificate alias had been configured for the server.

The code was making the incorrect assumption that the server would only
request a client certificate when such a certificate was *required*.
However, servers can be configured to accept multiple forms of
authentication, including both password authentication and client
certificate authentication.  So a server may request a certificate without
requiring it.  If a user has not configured a client certificate, then
that should not be treated as an error because the configuration may be
valid and the server may accept it.

The only indication that a certificate is *required* is when a
SSLProtocolException is thrown, caused by a SSLHandshakeException
resulting from a fatal handshake alert message received from the server.
Unfortunately, such a message is fairly generic and only "indicates that
the sender was unable to negotiate an acceptable set of security
parameters given the options available."  So there is no definitive way to
know that a client certificate is required.

Also, KeyChainKeyManager.getCertificateChain() and getPrivateKey() no
longer throw IllegalStateException().  These methods are permitted to
return null, and such a response is appropriate if the user has deleted
client certificates from the device.  Again, this may or may not cause the
server to abort the connection, depending on whether the server *requires*
a client certificate.
2014-08-11 11:07:44 -04:00
Joe Steele
fa853f7e1d Remove SslHelper.isClientCertificateSupportAvailable()
The app's minSdkVersion = 15 (Android 4.0.3, Ice Cream Sandwich MR1),
so there's no need to test the API level.

This also removes '@SuppressLint("TrulyRandom")'.  I find no
documentation for it, nor do I find any additional lint errors
with its removal.
2014-08-11 11:07:42 -04:00
Joe Steele
0224a89109 Use theme based style 2014-08-11 11:07:38 -04:00
Joe Steele
acab554ee5 Save/Restore activity state
This assures that changes made to the port setting and to the chosen
client certificate are saved and restored.
2014-08-11 11:07:34 -04:00
Joe Steele
373c7569ed Fix password prompts on account import
Don't prompt if server's AuthType == EXTERNAL

Don't prompt for SMTP servers that don't require authentication
(no user name).
2014-08-11 11:06:46 -04:00
Joe Steele
51829a2451 Reorganize the server setup layouts
This only changes the vertical display order of the widgets.

The user will likely review the settings from top to bottom, but
the way they were previously arranged, settings lower on the list
were affecting things higher on the list.

Generally show top to bottom:
Server
security type
port (affected by security type above)
require login checkbox (SMTP only, affects everything below)
user
auth. type (affected by security type above, affects everything below)
password (affected by auth. type above)
client cert (affected by auth. type above)
2014-08-11 11:05:18 -04:00
Philipp Haselwarter
7aa4c1308e Configure mail notifications by folder class
In response to Issue 1794,
- add a configuration option in the account preferences to show
  notifications only for 1st/2nd/etc class folders
- add an option in the folder preferences to set the notification class
  as 1st, 2nd or inherited from the folder's push class

The default behaviour remains unchanged.
2014-08-06 11:04:07 +02:00
Joe Steele
710e7a4430 Notify user of invalid account-setup settings combo
Specifically, warn and block them when attempting to configure Client
Certificate Authentication in combination with Connection Security = None.

If this were not made obvious to the user, they might not understand why
they are not permitted to tap "Next".

Also, move the initialization of all view listeners out of onCreate() into
initializeViewListeners() which is then called near the end of onCreate(),
helping to assure that the listeners won't be triggered during the
initialization of views inside onCreate().
2014-07-28 22:55:34 -04:00