yashsingh1/xdaforums huggingface dataset:
[Android Apps and Games] caprihome:
a pity
[Android Apps and Games] O_DoC:
I don't known if the same for y'all ヅ

But on Sunday, a down-vote store session feel 'refreshing'

Haha

Have a great day

And be well Marcel
[Android Apps and Games] M66B:
@caprihome you can contact me (report issue in the app) for a test version with a wear tile!
[Android Apps and Games] caprihome:
What? So fast? You are the best(y) will contact you
[Android Apps and Games] caprihome:
Contacted
[Android Apps and Games] M66B:
Version 1.1695 is available on GitHub now and in the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases

Widgets properties have been made configurable on supported Android versions (it works on Android 12 beta, but maybe other Android versions / home screen launchers support this too). Long press on an existing widget and there should be an edit pencil icon.

Please check if existing widgets look the same as before.

For GitHub users only: you can switch to write above and write below a reply in the message composer by tapping on the "align" icon just above the replied-to message. Note that this is a global setting.
[Android Apps and Games] La_Globule:
Marcel,

Both functionalities work perfectly and the widget looks good after editing.

Thanks a lot.
[Android Apps and Games] fraschi51:
Couldn't it then make sense if - following the WYSIWYG principle - next to the toast hint, the input field and the quoted text also swap places?
[Android Apps and Games] M66B:
It wouldn't be hard to do this, but if the replied-to message text is long, the addresses and subject at the top and the text you are typing will be far apart, which wouldn't be very convenient ...
[Android Apps and Games] fraschi51:
The option 'Added option to long press answer button to reply-to-all' also fits under the behavior settings, but I had first looked for it in the 'Send' tab.
[Android Apps and Games] M66B:
Yes, I have been in doubt myself too, but since the answer button is not in the message composer the best choice seemed the behavior settings to me.
[Android Apps and Games] M66B:
When files are shared to the app, for example from a file manager or photo gallery app, what should happen:

Create a new message and attach the files (this is the current behavior)

Attach the files to a currently being edited message (this is what my test version does now)

A dialog should be shown to select what should happen

An option should determine what should happen

?
[Android Apps and Games] nadir husain:
The current option is fine for me. This is how most apps would have it.
[Android Apps and Games] M66B:
I had the need myself to add files to an existing message, which is why I changed this in my test version (which is for now experimental).

Maybe an option is the right way, also because there will potentially be a follow up dialog to ask what should be done with shared images (resize, etc).
[Android Apps and Games] nadir husain:
Hope new users who are used to the current method and are migrating from another app understand it easily. . otherwise they will complain and you will get upset.
[Android Apps and Games] fraschi51:
I think that if there is a mail being processed, it is quite likely that a picture should be attached to it - if there is not, of course to a new mail.
[Android Apps and Games] sbellon:
My humble suggestion would be:

- if there is no message currently being edited, create a new message and attach

- if there is a message currently being edited, ask the user via dialog
[Android Apps and Games] heinhuiz:
I think all of the above 🙂

If a message is currently being edited, a dialog should appear asking if the files should be attached to that message or that a new one should be created. That dialog preferably would include a checkmark to make that the default behaviour - but then that setting will need an option to override it again.

If no message is edited at that moment, the current behaviour should stay: open a new message and attach the files to that.
[Android Apps and Games] M66B:
What I will do is follow guideline VX-N3 point 3:

Core app quality | App quality | Android Developers

App quality directly influences the long-term success of your app—in terms of installs, user rating and reviews, engagement, and user retention.

developer.android.com

Practically this means that the app will add files to a draft being edited if this happens within three minutes of switching to another app.

A dialog sounds attractive, but there is potentially a follow up dialog to ask what should be done with images (resize, etc).

Edit: this guideline will be followed in the next version too for launching the app.
[Android Apps and Games] M66B:
Version 1.1696 1.1697 1.1698 is available on GitHub now and in the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases
[Android Apps and Games] fraschi51:
Although I can imagine why this is, so I just wanted to make sure: Am I seeing this correctly, that the option 'Automatically mark messages as read when moving' does not work when messages are moved by classification?
[Android Apps and Games] M66B:
Messages are not marked read automatically when the classifier moves them, so that new message notification will still work (if enabled for the target folder).
[Android Apps and Games] AlainL:
I have just a little question :

How to display full headers (really all headers like "MIME-Version", "Content-Type", "Received", "X-Received", ....) or message source code ?

I didn't see an option and thread search was not successful
[Android Apps and Games] M66B:
You can do that via the horizontal three-dots menu just above the message text near the left side. It will even be pretty printed ;-) If you use this frequently, you can configure a button for it via the same popup menu.
[Android Apps and Games] AlainL:
When I click "<>" button or "Afficher l'en-tête" in menu I only have an emtpy zone displayed.

Am I doing something wrong ?
[Android Apps and Games] M66B:
Isn't there a spinner running? Can you please check if there are pending operation via the navigation menu?
[Android Apps and Games] AlainL:
OK.

I can see them now but there is still something strange :

Sometimes (rarely), I can see them after a few seconds, sometimes (most of times) nothing is displayed.

When nothing is displayed, I go back to message list, refresh list (drag down), go back to message and headers are displayed. Once they have been displayed, I can see them instantly next time message is displayed.

It's like if Fairmail reads headers from server, not from local and need resync before displaying headers.

Edit : If I want to see headers for another message, I have to click "<>" button, go back to message list, refresh, go back to message, view full headers.
[Android Apps and Games] M66B:
That's correct: to save on data usage, headers are by default not fetched and stored. So, this will be done on demand by default (there should be a spinner visible).

You can change this in the connection settings of the app.
[Android Apps and Games] AlainL:
Ok, I understand. Thank you

I think I have a configuration/server problem.

I just tried with few others older messages and headers are displayed in less than 3 seconds.

I made a few more tests.

I killed fairmail and restarted a few times. I just noticed in folder list that I have sometimes a crossed cloud. After a refresh, I have a checked cloud. So I think it's why sometimes headers can't be displayed without refresh (connexion is reactived).

Anyway, thanks a lot for quick support ;)

I didn't knew headers where loaded on demand.
[Android Apps and Games] M66B:
If you send me the debug info by long pressing 'Support' in the navigation menu, I can check the log files. Please include a short problem description, so I know what it is about.
[Android Apps and Games] steelersmb:
Hi, I'm testing out FairEmail and one suggestion I have is to implement two swipe options, a long and short option like most of the other email apps out there.

Thanks!
[Android Apps and Games] M66B:
This is not a standard Android gesture and also not supported by the standard Android libraries. The reason is that it is often going wrong. Instead, you can set one of the swipe gestures to ask, which will result in less mistakes.

I am sure Google properly researched this.
[Android Apps and Games] AlainL:
Thanks but it's OK like that.

I don't have to check full headers very often and I know what to do if they are not displayed. It's probably a problem due to some battery saver stuff/config.
[Android Apps and Games] mkrafft:
Hey there, and as always: thank you so much @M66B for the best email app ever.

I've encountered an issue with SQLiteConnectionPool I wanted to bring to your attention. I am running 1.1699 from Github.

The app was getting really slow and sluggish, and I noticed that it had actually locally stored most of my "garbage" folder, i.e. the folder where I move mail I delete (I never actually delete). So I went into folders and chose "delete local messages" for this folder, and this rendered the app pretty much unusable. The task , as it seems to block all other access to the SQLite database. This is what logcat reports subsequently, while the app just shows a spinner and is completely unresponsive:

08-26 09:54:19.557 19108 19236 W SQLiteConnectionPool: The connection pool for database '/data/user/0/eu.faircode.email/databases/fairemail' has been unable to grant a connection to thread 1789 (FairEmail_bg_task_6) with flags 0x2 for 600.00806 seconds.
08-26 09:54:19.557 19108 19236 W SQLiteConnectionPool: Connections: 1 active, 0 idle, 5 available.
08-26 09:54:19.557 19108 19236 W SQLiteConnectionPool:
08-26 09:54:19.557 19108 19236 W SQLiteConnectionPool: Requests in progress:
08-26 09:54:19.557 19108 19236 W SQLiteConnectionPool: executeForChangedRowCount started 678609ms ago - running, sql="DELETE FROM message WHERE folder = ? AND NOT uid IS NULL"

I've left this running now for a very long time, but it does not seem like the app is making any progress. We're talking a couple hundred thousand messages, but SQLite should not take that long to delete those records, or is this to be expected?
[Android Apps and Games] M66B:
A couple of hundred thousand of messages will be a bit of a problem because deleting from a database means that the indices need to be updated too. Even though sqlite, which is a pretty amazing piece of software, is very efficient, the storage space of your device might not be.

The only thing you can do is have patience.
[Android Apps and Games] canaccc:
Forgive what's probably a silly question; I'm a new user and just haven't been able to find what I'm doing wrong. I selected the red/green theme, selected dark theme, and toggled that I want black backgrounds. There's lots of nice AMOLED black in the app, but when I open a message, the background is grey, not black. I've looked through all of the options over and over and can't see what I've done wrong that's overriding the black background toggle. Can anyone point me in the right direction?

Aside from that, fantastic app. I can't believe something this layered and capable is the work of one man.
[Android Apps and Games] mkrafft:
It's been running now for 8 hours. I reckon I am better off deleting all data and importing the settings, and redownloading the couple of thousand messages I want on the device.

I suppose there is no way to make the deletion work without exclusive database access, and doing something like deleting only a couple messages in a batch, and scheduling the next batch in a way to allow other jobs to run in between would be too complicated, right?
[Android Apps and Games] M66B:
If you want a pure black background, you'll need to disable cards to enable a tabular view in the display settings. Cards will need another background color to distinguish them from the screen background, which is dark gray in dark themes.
[Android Apps and Games] M66B:
The problem with batches, which wouldn't be hard to implement, is that during the short waits the CPU needs to run causing a high battery usage. Nevertheless, I will see what's possible.
[Android Apps and Games] M66B:
@ouzowtf Do you remember the TCP/IP keep alive problem which caused problems on One plus and maybe other devices. I might have found a solution for this. So, if you are still using the same device, can you please contact me for a test version (via 'Report issue' in the navigation menu).
[Android Apps and Games] nadir husain:
Marcel- what reminder/ to do app do u use?;) You remember everything!
[Android Apps and Games] M66B:
Just plain memory ;-)
[Android Apps and Games] ouzowtf:
I remember it a bit, yes. The device itself is there, but not in use since the end of the last year. I would need a bit of time, but I do what I can.
[Android Apps and Games] M66B:
Version 1.1700 is available on GitHub now.

Changelog/download:

https://github.com/M66B/FairEmail/releases

This version was released to test TCP/IP keep-alive.

How to: in the miscellaneous temporarily enable debug mode and in the connection settings enable TCP/IP keep-alive (the setting will be retained on disabling debug mode again).

@ouzowtf I would appreciate it if you performed this test
[Android Apps and Games] mkrafft:
For completeness: it finished, after about 10 hours. And then everything quickly went back to normal. So while the user experience wasn't great (no progress indicator, no visual feedback as to what was actually going on), the app did its job in solid fashion. And I reckon that the number of times/users this will actually affect is probably about once in a century…
[Android Apps and Games] ouzowtf:
It's enabled now on that device. What should I do next? Rest for a while? If yes, how long?

How to send the log?
[Android Apps and Games] M66B:
If I remember me correctly, the connection to the email server was terminated soon with TCP/IP keep alive enabled. So, if the connection remains, check the account status in the navigation menu, for lets say 15 minutes, I think it is okay now.
[Android Apps and Games] ouzowtf:
There are some operations since 10 minutes not finished. But I don't remember if it was before or after changing the settings.
[Android Apps and Games] M66B:
Can you please send me the debug info for a check?
[Android Apps and Games] M66B:
@ouzowtf

Thanks for sending the debug info.

Unfortunately, the problem is still not fixed and Android still closes the TCP/IP socket for some weird reason :-(
[Android Apps and Games] robjsn:
Could someone explain how these options are related:

"Receive/Always receive messages for these accounts"

and

"Specific account/Edit properties/Check periodically instead of continuous synchronization" ?

I'm asking because I not quite understand options.

I have 6 accounts (2x gmail, 2x yahoo, 2x outlook) and I want only gmail accounts to have push notifications enabled, and the rest pull for every hour.

If i uncheck "Always receive messages for these accounts" for account xyz

And I uncheck "Check periodically instead of continuous synchronization" for account xyz

push notifications are not working.

If i check "Always receive messages for these accounts" for account xyz

And I check "Check periodically instead of continuous synchronization" for account xyz

push notifications are working.

So what is doing ""Check periodically instead of continuous synchronization" and what means "1 x 15 minutes"

even if in "Receive/When" I set "Every hour"?

Should I also check/uncheck "Receive/Automatically optimize"?
[Android Apps and Games] M66B:
In short: in the receive settings select every hour and make exceptions a little lower for the two accounts only.

You can enable auto optimize, but for Gmail accounts it won't make a difference.
[Android Apps and Games] canaccc:
Thank you!!
[Android Apps and Games] mageek627:
Hello @M66B

I am thinking of contributing to the code to add support for "Custom header field" and would like your feedback on that.

My original need was to have a custom reply-to (same as https://xdaforums.com/t/app-5-0-fai...vacy-oriented-email-app.3824168/post-77692950) but then I realised it would be more logical to allow any custom header.

This would make it more developer-friendly (when testing email related stuff), since when one writes an email, one is writing both header and body.

What do you think ?
[Android Apps and Games] M66B:
I think this is not a good idea because nobody ever asked for something like this.

You can configure a reply-to address in the advanced identity settings and since the number of addresses will be limited, you can always copy an identity to have different reply-to addresses.

Please understand that adding special features like this for just a few people will make the app harder to support and maintain.

Contributing code is fine and appreciated, but so far I haven't seen anybody maintaining what was contributed, which means the maintenance burden will practically be on my plate.
[Android Apps and Games] O_DoC:
Hi Marcel,

Following the 'last' message from robjsn about the setting for receive/push settings.

First things noticed : I can't see the check box "Check periodically instead of continuous synchronization" in edit account advanced menu.

Do I did not look the right place ?

In this same advanced menu I have a check box "synchronize manually" and the "keep-alive interval" set at 15.

Is this check box related or is something else ?

Main purpose :

I was on a break for a few days and want to 'disconnect' a little.

So gone to setting/receive and set interval to 'every day' (max available value)

+ unchecked accounts in "always received messages for these accounts"

+ setting/main/accounts/edit/advanced and check "synchronize manually" for each.

By doing that I have no notification and could only received new mail when pulling down in folder to launch refresh.

Which is ok : )

But I still see sometime a FE silent notification which state that it's checking new message.

1. Is this the kind of right way ?

2. Is the silent synch ongoing notif is normal ? Even if no email was retrieved.

Quite a long post but don't how to put it differently.

Thanks for sharing knowledge

(v1.1699)

[Edit] I'm on limited connexion right now but maybe there's a really good FAQ on that subject where you'd already going through this and explained the detailed relation between all those 'receive' settings and combination.
[Android Apps and Games] M66B:
It is normal that the background service is started if you do something, like marking a message read by opening it.

You might want to disable the watchdog in the miscellaneous settings (check if the app is still running). Not that this will do something, but if you want the app completely silent you can turn it off.
[Android Apps and Games] M66B:
The next version will have an option for a compose button in the message list widget:
[Android Apps and Games] mkasimd:
Lately, I had to send my phone twice to the service, so used the export/import option of FairEmail a few times. Doing so, one thing caught my eye: The app exports everything (except messages and images), but while importing, you let me choose what to import.

As FairEmail is a privacy-first client, data minimization is the proper approach IMO. So, the user should be able to choose what to export before exporting. The choice while importing can stay, but the export is the most important part here in terms of taking control of one's own data.

However, I get that many users would complain if you suddenly explicitly ask for what data to include in the backup, so the change should be "hidden yet visible". My suggestion is as shown in the picture below with multiple-choice options appearing after opening the "More Options" field. If not changed anything, the default behavior should remain as is right now.

Positive side-effect: That way, it would be even possible to share app-settings and templates with each other without sharing more sensitive data such as the account information and credentials.
[Android Apps and Games] M66B:
The export file is meant as a complete backup and I like to keep it that way. I get already enough questions like "I forgot my export password, can you help me?" ...

Note that you can export templates via the three dots menu of the templates list.
[Android Apps and Games] hello_world.c:
Follow-up question: Can I decrypt the export file on a PC and convert it to something "editable", edit and re-encrypt it? I'd like to review and edit at one glance, and am a text file kind of guy.

IOW, what it the file format?
[Android Apps and Games] M66B:
Please see here about how the settings file is encrypted:

https://github.com/M66B/FairEmail/blob/master/FAQ.md#user-content-faq36

There is no obvious way to decrypt the settings file. You could try with openssl, but I am not sure if this is possible.
[Android Apps and Games] M66B:
Version 1.1702 is available on GitHub now and in the Play store test program after Google's approval.

Changelog/download:

https://github.com/M66B/FairEmail/releases
[Android Apps and Games] maybeme2:
In my experience the export file did not include the templates the last time I tried it. The import restored everything except the templates.

So, after reading your reply I looked for the three dot menu of the templates list. But, there is no 3 dot menu when I open my template list. Where is it?

Thanks.
[Android Apps and Games] M66B:
I am pretty sure that templates will be exported, but I am wrong that templates can be exported separately. This applies to rules only, but I will add an entry to my to do list for this.
[Android Apps and Games] topcaser:
"but I will add an entry to my to do list for this."

Haha, what I learned is that you haven't any todo list, at least it's as short as quick you implement stuff. I would bet that we see this tomorrow in a beta.
[Android Apps and Games] mkasimd:
That reminds me of what one of my colleagues shared. Customer calls and says that he can't activat his SIM, so my colleague asks for the SIM-ID just to notice that the SIM is from another operator. The customer "But can't I just activate this SIM from another provider? Do I really need to use your SIMs?"

No matter what you do, people will still ask silly questions. That doesn't mean the export feature would be confusing. It just means that even though you made a pretty straightforward export function surrounded with quite visible information and warnings for the user, people still tend to not read and later on blame you for their own fault. We Germans have a saying "wenn der Bauer nicht schwimmen kann liegt's an der Badehose" (if the farmer isn't able to swim, it's his trunks' fault; but not his inability of course).

Still, I won't push my suggestion. If you deem that would produce "faulty trunks" for people to blame on, that can't be helped. None of us can help that or such people other than pointing out their wrong perception of things.
[Android Apps and Games] O_DoC:
Hi,

Ok thanks for replying.

Even if it's not an issue for me, this was noticed after a few hours/days without opening FE at all.

I'll do that for next full-disconnection time 👍🏽🙃
[Android Apps and Games] case-sensitive:
I'm looking into switching from K9 to fairemail for my work device. I have a specific needs and the IT folks don't like people "experimenting" with apps, so I'd like to check with this forum first before I install the app.

(1) For one of my accounts, I need to reply messages using a different email address than the incoming one. Does fairemail support this feature? Is this something I have to manually set each time I reply to a message from that particular account, or can I set it once just and for all?

I have several accounts, and only one of them has this requirement.

(2) I read the FAQ about pinch-zoom. Just to be sure: I *can* pinch-zoom the text of the incoming message? What about gifs/photos in the message?

(3) I need to save copies of incoming and outgoing messages, but not all of them --- say the most recent 100. Does fairemail support this feature?

Thanks!