Make messaging app text entry field multi-line, scrollable, and wrapping
Closed, ResolvedPublic

Description

KDE Connect is working on releasing an integrated SMS messaging app. Help build to this new and exciting feature!

The text entry field is currently stuck at being only a single, non-wrapping line. This makes it very inconvenient to send longer messages. It would be nice if it could:

  • Wrap text if a line is longer than can fit on the screen
  • Grow taller as more lines are written
  • Stop growing taller after "a certain" height

Wrapping text could be as easy as changing the TextField to a TextArea (https://doc-snapshots.qt.io/qt5-5.9/qml-qtquick-controls2-textarea.html) and setting wrapMode. At that point, the TextArea will have an unbounded height. That is when the task gets interesting!

There might be a better solution than TextArea. Don't let my limited imagination control your work!

The file of interest is smsapp/qml/ConversationDisplay.qml

sredman created this task.Nov 9 2018, 4:58 PM
sredman triaged this task as Low priority.
Inoki added a subscriber: Inoki.Mar 5 2019, 1:58 PM

Hi everyone, I'm new here.
With a big interest of kdeconnect sms application and kdeconnect itself, I'd like to take some efforts in this task. And in the future the others :)

I've already some experiences with Qt and might still need some helps,
May I take this one, please ?

sredman closed this task as Resolved.Mar 5 2019, 4:41 PM
sredman claimed this task.

Hi everyone, I'm new here.

Welcome!

With a big interest of kdeconnect sms application and kdeconnect itself, I'd like to take some efforts in this task. And in the future the others :)

I've already some experiences with Qt and might still need some helps,
May I take this one, please ?

This task has actually already been completed 😬
Sorry, I am really bad at remembering to close tasks.

If you want to work on the SMS app, have a look at the meta-task I have here: T8337 . A nice place to start might be T10208, to make URLs click-able.

If you haven't already, be sure to look at our Wiki page, especially the section about how to build and the section about setting up the repositories . Most importantly, note that we are now using GitLab for our merge requests. In the future, issue/feature requests should live there as well, but I am still using Phabricator for the issues I already had stored here.

If you want to have more real-time conversations, feel free to join our Telegram or IRC.

Also, if you get stuck while getting set up and your question isn't answered by the wiki, please let us know so we can solve your problem and improve the wiki