Git Product home page Git Product logo

thunderbird-android's Introduction

K-9 Mail

Latest release Latest beta release

K-9 Mail is an open-source email client for Android.

Download

K-9 Mail can be downloaded from a couple of sources:

You might also be interested in becoming a tester to get an early look at new versions.

Release Notes

Check out the Release Notes to find out what changed in each version of K-9 Mail.

Need Help?

If the app is not behaving like it should, you might find these resources helpful:

Translations

Interested in helping to translate K-9 Mail? Contribute here:

Contributing

Thank you for contributing! If you're unfamiliar with the code, start by reading the developer documentation

Please fork this repository and contribute back using pull requests.

Any contributions, large or small, major features, bug fixes, unit/integration tests are welcomed and appreciated but will be thoroughly reviewed and discussed. Please make sure you read the Code Style Guidelines.

Architecture Decision Records (ADR)

We use Architecture Decision Records to document the architectural decisions made in the development of K-9 Mail. You can find them in the docs/architecture/adr directory.

For more information about our ADRs, please see the ADRs README.

We encourage team members and contributors to read through our ADRs to understand the architectural decisions that have shaped this project so far. Feel free to propose new ADRs or suggest modifications to existing ones as needed.

Communication

Aside from discussing changes in pull requests and issues we use the following communication services:

Security

The code in this repository was undergoing an extensive security audit in collaboration with the Open Source Technology Improvement Fund (OSTIF) and 7ASecurity in the first half of 2023. For more details, see our blog post.

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

thunderbird-android's People

Contributors

andrewachen avatar artbristol avatar baolongnt avatar bradleyy avatar bytehamster avatar cketti avatar danapple avatar dnet avatar dzan avatar fiouz avatar gaul avatar ismarc avatar janekx avatar jberkel avatar jca02266 avatar m0vie avatar maniac103 avatar marcuswolschon avatar morckx avatar obra avatar philipwhiuk avatar rabcyr avatar rk4an avatar thialfihar avatar valodim avatar weblate avatar wiktor-k avatar williamvds avatar wmontwe avatar zjw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

thunderbird-android's Issues

Account listed multiple times

I have three email accounts, which were before listed like this:

AccountA
AccountB
AccountC

After long-pressing the last account and choosing "Move up", I got two copies of the account that I tried to move, like this:

AccountA
AccountC
AccountB
AccountC

This state persisted after restarting the app (I think, the app was not listed in task manager), but problem went away after restarting phone, and AccountC is now in the middle as expected. Problem is not reproducible, I can now move them around as I please. When I had the problem I moved the account shortly after creating it.

K-9 Mail version: 5.004
Android version: 4.4.2
Phone: LG G2

Support swiping between messages in message view

Current "gesture navigation" in K9 is just fiction. On the other hand implementation in quite a few open source apps (including AOSP E-mail app) looks as good as in Gmail, so maybe we too can have this feature properly done in near future?

Remove default mail signature

An issue for the same topic was already opened on google code. It boils down to: the default signature is unprofessional, annoying and judging from the top google hits it is also the first thing that people try to get rid when starting to use k9.

message/rfc822 as intent type not received

When I send an intent from my app like this:

Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
    "mailto", "[email protected]", null));
emailIntent.setType("message/rfc822");
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Subject");
emailIntent.putExtra(Intent.EXTRA_TEXT, "Hello k9 dog");
Intent startClientIntent = Intent.createChooser(emailIntent, "Sending Mail...");
startClientIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
try {
    getApplicationContext().startActivity(startClientIntent);
} catch (ActivityNotFoundException ignored) {
}

K9 Mail wont receive that intent unless I remove the type

//emailIntent.setType("message/rfc822");

email content only displayed half way

Since update to Android 5.02 on the Sony Experia Z2, the lower part of the email is blank. Not always, but mostly.
Will try to attach a Screenshot

Distinguish local folders

There are some local folders created for each account, K9mail-errors and outbox at least. I just troubleshot an issue where I was looking at 3 outboxes and it would have been useful to distinguish local from remote folders.

Could local folders names be displayed in italics/emphasis?

With remote Drafts folder, drafts vanish

To reproduce:

  • Choose a remote IMAP folder as the default Drafts folder.
  • Put device in airplane mode.
  • Compose a message and save it as a draft.
  • Exit K-9.
  • Exit airplane mode.
  • Open K-9 and navigate to Drafts folder.
  • The saved draft cannot be found.

k-9 changes MIME type of S/MIME signed mails

Hi there,

k-9 seems to changes the MIME type of S/MIME signed mails in com.fsck.k9.mailstore.LocalFolder.java from:
multipart/signed -> whole mail
text/plain -> text part
application/pkcs7-signature -> signature part

into this:
multipart/mixed -> whole mail
multipart/alternative -> text part
application/pkcs7-signature -> signature part

I don't think this behaviour is intended.

Set specific synchronization interval on mobile data plan

It would be nice, if one could set the intervals to check for new emails based on whether Wifi or Mobile Data is currently used, so that one would be able to have it set to every five minutes on Wifi, but only every thirty minutes or not at all when using mobile data in order to save some money.

This seems to be related to PR #54.

Add android wear support

Gmail has the possibility to answer with predefined answers or voice. Something similar would be awesome.

Search inside message headers

Hi, would it be possible to implement searching inside message headers along with the body for locally downloaded messages?

text_flowed is not supported

I'm not sure if this is the right place to post this issue, but text_flowed or format=flowed doesn't seem to be respected by k9-mail. This makes the formatting of text quite awkward when reading e-mail sent by clients that support this feature (Thunderbird, mutt).

This is probably the same as issue 6327 on Google Code, but since that platform is closing, it's good to have it here.

Basically, the headers in K9 show:

Content-Type: text/plain; charset=utf-8

while the headers of the sent message in a different e-mail client will show:

Content-Type: text/plain; charset=utf-8; format=flowed

I am using version 5.004 from F-Droid.

Resource leak -- file not closed -- found by Facebook's static analyzer

Hello,
This resource leak report, included with comments below, were found by running

Facebook's Infer static analyzer on K-9.

Regards,
Dulma Rodriguez
Facebook Static Analysis Tools Team

File: k9mail/src/androidTest/java/com/fsck/k9/helper/HtmlConverterTest.java

Report: Resource Leak: resource acquired by call to FileWriter(...) at line 143 is not released after line 147.

Remarks: The problem seems to be that out.write(...) can throw an exception, in which case out.close() won't get called. A simple fix is to put the call to close in a finally clause.

Contact groups can't be recipient

https://code.google.com/p/k9mail/issues/detail?id=1996

this has been an issue that I am starting here based off the abandoned google code issue. From 2010, still updated on that site this year.

In K9 mail, can not select contact groups to send a group email to. Only individual contacts. If a group is selected to send a new email in the contact manager, then k9 selected as email client group data is populated.

but if we try to forward a message, there is no way to select a group. see link above for details.

Additions to available 'Visible message actions'

I'd love to have Mark read available as a toolbar button. It would be a good addition to Settings > Global settings > Display > Visible message actions. I think it should go between navigation and delete.

Similarly, I'd like to suppress the navigation buttons. It'd be nice if they were also exposed via the 'Visible message actions' list as a checkbox I could deactivate.

LocalMessage: getContentType needs to make sure headers are loaded

Otherwise, headers may not be loaded resulting in messages to be interpreted in the wrong codepage when displaying:

MessageExtractor.getTextFromPart() tries to get the charset in the following way:

String charset = getHeaderParameter(part.getContentType(), "charset");

This fails in case part is LocalMessage and headers have not been loaded.

MimeMessage needs to implement SizeAware

Recently a SizeAware interface was introduced. However when a message is forwarded 'as attachment', said attachment will be handled as a MimeMessage. But MimeMessage does not implement SizeAware so it fails to store the message in the database.

Account setting "Delete from Server" lost after SSLError

Hi,

ever and anon I get an SSLCertificate error with my provider gmx.net.
When this happens the account settings changes and mails will be no longer
deleted from the mail server after they are deleted localy. I have to change the settings by hand back.

regards
dieter

Support newer Exchange servers

With WebDAV support gone in newer Exchange versions, EWS support should be added so newer Exchange servers can be used as well.

Everything has vanished

I'm a long time user of k-9... Never any problems on several phones through the years. My Samsung s3 was getting a bit slow earlier, (wasn't using k-9 by the way) so I rebooted. Very shortly I needed to reference an email from last week, so I went to k-9.

The first thing I noticed was my icons on the screen (I have shortcuts to each account as I have multiples) were missing and just a white mail folder was in their place... Even the name is gone and replaced with "k-9 mail"

I tapped on each one and everything is gone. My color theme, all my folders, emails, accounts, EVERYTHING!!!

The only thing that shows up is a bar at the top that says "show unread count for..." And two selections, one says "unified inbox" and "all messages". Clicking on either of these brings up a "busy" screen but nothing happens at all. If I click the back arrow at the top, it takes me to the welcome screen as if I've just installed k-9. Also back on the home screen, the text under the white Mail icon changes from "k-9 mail" to "all messages"

I also opened up k-9 from the actual icon in the apps folder and it takes me directly to the welcome screen.

All my other apps seem to be working just fine...

Any help would be greatly appreciated.

Thank you, Jimmy

If I go into application manager, it shows the following...
Total: 6.28mb
Application: 6.14mb
USB Storage app: 0.00mb
Data: 140kb
Sd card: 0.00mb. (I have no ad card in the phone)

The sprint s3 info...
Model: SPH-L710
Android version: 4.1.2
Baseband version: L710VPBMD4
Kernel version:
3.0.31-1130792
se.infra@SEP-132 #2
SMP PREEMPT Mon Apr 15 19:05:47 KST 2013

Build number: JZO54K.L710VPBMD4
Hardware version: L710.14

Support for ProtonMail

ProtonMail

Good evening @k9mail developers! While I am still waiting for Dark Mail (website) to come out, I have switched to ProtonMail for now, which offers a double encryption using RSA-2048 and AES-256 as described in their security features. Even though they're developing their service with heart-blood and have a GitHub account @ProtonMail, their source code is not available (yet). Nevertheless, I would love to be able to use ProtonMail through the k-9 interface on my mobile device. Means, k-9 would need to support that double encryption. Can you add this feature, please?

[bug] Attachments showing up on the wrong email

I have 2 emails which both have an attachment called external_0.jpg.

When viewing these messages, k9 usually shows the wrong image for at least one of them.

I suspect that FileHelper.createUniqueFile is subject to a race condition when downloading messages and needs a mutex - I'm running on the quad-core Galaxy Note 2.

Message displays only single line

When reading through messages in inbox via IMAP, I typically tap archive to move to next item. Frequently, K9 shows the next message nearly blank with only one line of text visible. Swiping up/down scrolls the message through this one line area. Tapping previous, then next causes the message to be displayed normally. Currently on Android 5.0.2 on Nexus 7 and K9 5.004. Please let me know what additional info would be helpful.

Do not apply send attempt limit to manual operations

I replied to an email in an area without data service. Several hours later, I returned to data coverage and began receiving emails again. The outbound message did not budge, despite repeated manual 'Send messages' operations.

I've had debug enabled so pulled the log and this is what's produced by Outbox > menu > 'Send messages':

04-13 19:59:04.828 I/k9      ( 2239): Running Foreground command 'getFolderUnread:Work:K9MAIL_INTERNAL_OUTBOX', seq = 3027
04-13 19:59:04.871 I/k9      ( 2239): Foreground Command 'getFolderUnread:Work:K9MAIL_INTERNAL_OUTBOX' completed
04-13 19:59:18.751 I/k9      ( 2239): Running Background command 'sendPendingMessages', seq = 3028
04-13 19:59:18.845 I/k9      ( 2239): Scanning folder 'K9MAIL_INTERNAL_OUTBOX' (4) for messages to send
04-13 19:59:18.846 I/k9      ( 2239): Send count for message K9LOCAL:f2c7725a-c0bd-404b-ad2e-942c35f41395 is 38
04-13 19:59:18.846 E/k9      ( 2239): Send count for message K9LOCAL:f2c7725a-c0bd-404b-ad2e-942c35f41395 can't be delivered after 5 attempts.  Giving up until the user restarts the device
04-13 19:59:18.855 I/k9      ( 2239): Background Command 'sendPendingMessages' completed
04-13 19:59:19.517 V/k9      ( 2239): conn1102180760<<<#null# [OK, Still here]
04-13 19:59:19.517 V/k9      ( 2239): Got async response: #null# [OK, Still here]
04-13 19:59:19.518 V/k9      ( 2239): conn1106100024<<<#null# [OK, Still here]
04-13 19:59:19.518 V/k9      ( 2239): Got async response: #null# [OK, Still here]

After a restart, a manual 'Send messages' command succeeded.

Having to restart the device seems unreasonable. Why have a hard limit at all? Shouldn't network availability be taken into consideration?

I think manual 'Send messages' operations should reset or ignore the attempt counter.

Option for marking messages as read before deleting

I often delete messages. Each and every time I don't want to see them, don't want to have to be reminded of them anymore. Be it spam, mailing list posts I don't care about etc.

Often enough I delete a message without even looking at it. A Polish subject? Great, I don't speak Polish, just delete it. Wine marketing? I don't drink wine; delete it. Etc.

So my options are, especially from the notification area, to mark it as read or to delete it. If I just delete it it stays unread and my trash folder suddenly has one unread message in it. But I don't want to read that message. Ever! I also don't want the hassle of having to go to my trash folder and marking all messages read there regularly. I'm busy enough as it is, and such repeating tasks is what a computer should take care of for me.

So please, please provide an option that lets K-9 mark a message as read before it is moved to the trash folder. Pretty much all desktop email clients have such an option.

Thanks for considering it.

no settings menu on my version

My k9 views as a black background with neon colored text. It is very hard to read. Your help pages suggest that I can change my settings to show white background and different fonts but my version of k9 does not have any settings me u orvtab b that I can find .

"Exit" option in menu

In my opinion an "Exit" option in menu is good feature for all Android apps, in order to stop the service inmediatedly and free memory when email is not being used.

I like to see that K9 sometimes disappear from services in use after few minutes, and probabily 16MB of K9 is not much memory in devices with 1Gb or 512 but it in devices with 256MB anything in memory has impact in performance.

Add support for inline image attachment

Currently k9mail keeps inline images intact when forwarding or replying to a mail with inline images.
It would be great if users has the option to add images inline as well.

Set correct encryption state in message crypto annotation

Right now we unconditionally set wasEncrypted to false in MessageCryptoHelper.handleCryptoOperationSuccess().

The information whether a message was encrypted or not needs to come from the crypto provider to account for "null-encryption" and other weirdness.

Wrong file attachments from recorded audio on whatsup

Hi,
If I record an audio file on whatsup with the microphone and after sent in whatsup I select the audio message and share in K9-mail the email is Sended with danaged file. The file audio Sended by Android 5.0 on Samsung galaxy S5 with whatsup share function then K9-mail arrive danaged. For send correctly and share I must use Gmail app with Gmail account.

Please fix this on k-9 mail so I can send by email audio recorded message via WhatsUp to email

Automatically re-download messages stored in old DB format

Users don't need to know that e.g. PGP/MIME signed messages stored in the old DB format can't be verified. We re-download messages behind their back.

In cases where the original message doesn't exist on the server anymore, we add a special header and do our best to convert it to a proper MIME message.

Folder listed multiple times

While figuring out #613 I noticed three folders named "Outbox". One was the remote folder but two entries led to the same local folder. After trying 'recreate' on the account's data, I ended up with triplicate entries for the spam folder.

I ended up deleting and re-creating the account; it's working fine now. Still wanted to report the behavior though.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.