thunderbird / thunderbird/thunderbird-android

linebreaks are added to text of messages retrieved from server

Open
#5,346 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
14k
Forks
2.8k
Avg merge
3d 3h
Merged PRs (30d)
57

Description

Ever since i use k-9, i notice that k-9 shortens line-length of messages, which it retrieved from the server (emphasizing that it is not about composing messages).

I guess that k-9 does this in an attempt to adjust text-content to the device's screen width. If the user zooms out/in, then k-9's adjusted line lengt is maintained and the text shrinks, leaving wasted "white area" horizontally, or the text expands beyond the screen area, respectively.

I consider this as a (design) bug, because it affects readability of text severely. Instead, k-9 could/should maintain the original line length and just wrap the text at the screen/window-edge, just as we are used to from our email clients on "desktop" environments: If the user zooms in, then the characters (should) become "larger" and wrapping (at screen/window-edge) is done "earlier" and more frequent, while if the user zooms out, then the characters (should) become smaller and the screen-edge-wrapping is done "later" and less frequent.

The problem in k-9's current approach becomes even worse when there is a "larger" image embedded into the content of the viewed message. Then, lines are typically modified* by k-9 to cover only a low number of words. Causing an extreme "gap" between the perceived text-"column"-width and the required zoom-choice in order to view a reasonable portion of the embedded image.

(*Yes, i do understand that the source code of a message is not modified by k-9 for other clients that might read the message later as well. The modification is of course only on k-9-displaying-level, therefore let's call it a "virtual" modification).

In the mentioned case of an embedded larger image, it only slightly matters whether k-9 zooms in to fit the "narrow" text-column (which it produced by adding virtual linebreaking) to the screen-width automatically vs. whether it zooms out to fit the image into the screen width automatically. Either way, I believe it is not the best choice.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is named. Start by reproducing the issue in the message viewer with a retrieved message, zoom changes, and an embedded large image; trace where displayed message text is wrapped and verify that wrapping follows the screen or window edge without altering the apparent source line length.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.