NeoChat in KDEReview

Carl Schwan carl at
Sun Nov 22 22:26:16 GMT 2020

Le dimanche, novembre 22, 2020 9:16 PM, Adriaan de Groot <groot at> a écrit :

> Thanks Carl for chasing Albert's comments so quickly. Here's my review
> comments on neochat 5316e32004fcfa60d72f373e2e55b44b8fecf2c7 (master HEAD as
> of right now).
> On Sunday, 22 November 2020 12:40:16 CET Carl Schwan wrote:
> > Le samedi, novembre 21, 2020 1:26 AM, Albert Astals Cid aacid at a
> écrit :
> > > El dijous, 19 de novembre de 2020, a les 23:27:24 CET, Carl Schwan va
> escriure:
> > > > Tobias and I have been working on a Matrix client using Kirigami,
> > > > named NeoChat. NeoChat is still missing a few features to become
> I'm going to admit that I'm using KDE Frameworks 5.75, rather than 5.76. For
> Kirigami, where application use is now strongly steering development and
> bugfixing, that might be a terrible choice. I've been told at least some bugs
> are fixed in 5.76 already.
> That said:
> -1. Uses the Spectral icon in the About page and in the systray (only
> confusing if Spectral is also around, and depending on your relationship with
> Spectral, might be kind of rude).

We have some propositions for icons, so the Spectral icon will go away before the
first public release. Note that originally the plan was to incubate Spectral but
because the community couldn't agree about anonymous contributions, the project
was never incubated :( Today Black hat seems to have stopped maintaining Spectral
and this is why NeoChat now exists.

> 0. Emoji fonts continue to be an issue (a packaging issue, I'm sure -- noto
> emoji and noto-extra or equivalents seem to be needed) .

Yeah this is a packaging issue. This is a sad thing that in 2020 some distros
still didn't have figured this problem. In my openSUSE install, I use this local
font config:

> 1.  Alongside the "write your message" there are three buttons. None of them
>     have tooltips. There's a smiley (for emoji), a paperclip (for attachments) and
>     a lemon juicer. Is there ever, ever, any reason to click the lemon juicer?

The lemon juicer is a "send message" button, nevertheless, we do need tooltips.

/me is wondering why this icon was misunderstood has a lemon juicer icon.

> 2.  Clicking on the emoji button gets me an emoji picker -- with no tooltips,
>     and no way to get back to writing a text message. (I suspect this is
>     frameworks-version dependent, since the text block is also way too tall)

Works, as expected in Kirigami 5.76, changing the dependencies, is not always a
good idea ;)

> 3.  In the upper-right of the chat pane, there's a round (it was square-ish
>     yesterday) button with an up-chevron in it. No tooltip. Clicking on it does
>     nothing (I get an error message on stdout: searching for non-existent event ..
>     which makes me think this goes back in history looking for mentions). It'd be
>     nice to have it disabled when there's nothing it can do.

The button should disappear once you have scrolled to 100% to the bottom of the
room. There is definitely room for improvement in it.

> 4.  There's no way to resize or hide the list of channels. Most of the time
>     that's the least interesting thing on screen -- I just need a channel avatar
>     and number of messages, not the full description of each channel.

I could try to have a mode with only a list of avatars and not the name, but this
will need a bit of UX work to determine how to toggle this mode.

> 5.  The show-room-members pane doesn't have a tooltip, and doesn't highlight
>     like a button does (like the emoji button).

This is something defined in Kirigami but since you and Albert complained about it,
I guess this is something that could also need some improvements. There was in fact
already some improvements in Kirigami because of the need for NeoChat.

>     Usage scenarios:
> 6.  Click on the text-field for writing messages. Type "derp". Notice flashing
>     text cursor in text-field. Click on the room-list. Text-cursor disappears from
>     text-field. Type something: this doesn't appear anywhere. It doesn't search
>     or filter the room list, nor does it go to the regular text input.
>     Since there's a "search" field for rooms, I expect that typing things into
>     neochat goes to the-message-to-be-sent except if something explicitly
>     different is chosen. Quasselclient does this: click on the chats list and
>     start typing, and it re-sets focus to the message box.

I need to investigate if this is possible in QML. QML always feels quite limited
around keyboard navigation and focus.

> 7.  RMB "mark as read" on a room to clear the unread-messages-count is kind of
>     unintuitive. Especially since scrolling all the way up in the chat list, and
>     then all the way down, doesn't clear it either. It feels like a "you must
>     acknowledge these" kind of thing.

Handling of the read receipt is not optimal and we do need to improve it :( It's a
not trivial system and ultimately we should send read receipt when scrolling and
when opening a room start at the same position as the last time it was opened.

> 8.  Clicking on the rooms-list pane makes the topmost-right button -- the show-
>     room-members-pane button -- disappear. It reappears if you click on the
>     message text-field.

> 9.  If I go to the hamburger-menu, and pick accounts, there's a list of
>     accounts (just one). I tried to add one of my other accounts --
> -- which doesn't work: I get a red message immediately that
>     that thing is not a Matrix server. I know it is, because my Quaternion-based
>     chatbot is on it :S This is an improvement on yesterday, though, when I got no
>     error message (or it took so long I didn't notice anymore).

We identified the error and it is caused by opendesktop not supporting the .well-know
Matrix spec. You would need to tell your admin to update their servers ;)

> 10.  So if I decide I don't want to login after all, there's no obvious cancel
>     button. The hamburger menu doesn't take me back to chat-mode. The only way to
>     get back to chatting is to click the "back" arrow between the burger and the
>     current-page-title until I get there. This starts to get annoying around the
>     time I've gone "(hamburger) Accounts" "(button) Add Account" "(hamburger)
>     Settings" "(hamburger) About" and have to click 4 < to get out of that.

>     (Those parts of this that are already fixed with Frameworks 5.76, just shout
>     [ade]

More information about the kde-core-devel mailing list