QuasselDroid-ng issueshttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues2022-05-17T17:21:18Zhttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/245ipv6 in connection list gets formatted as f00::ba2:4242 instead of [f00::ba2]...2022-05-17T17:21:18ZJanne Mareike Koschinskiipv6 in connection list gets formatted as f00::ba2:4242 instead of [f00::ba2]:4242https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/241Confirmation Dialog for joining channels2021-08-09T16:45:11ZJanne Mareike KoschinskiConfirmation Dialog for joining channelshttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/237Up/down arrow keys don't move cursor in multi-line message edit mode2022-01-10T05:17:24ZShane SynanUp/down arrow keys don't move cursor in multi-line message edit mode### Steps
1. Connect keyboard with either physical arrow keys or (untested) software emulation
2. Open a buffer within Quasseldroid to reveal the message input box
3. Type and send a short message (ensuring Quasseldroid has a message ...### Steps
1. Connect keyboard with either physical arrow keys or (untested) software emulation
2. Open a buffer within Quasseldroid to reveal the message input box
3. Type and send a short message (ensuring Quasseldroid has a message in the input history)
4. Expand the message input box to switch to multi-line edit mode
5. Type a long enough message that it wraps across several lines (e.g. copy-paste a few words)
6. With the input caret/cursor on the bottom, press the Up arrow key
7. Observe the results
### Expected
The input caret/cursor navigates upwards through the text, as happens with e.g. QKSMS on Android or Quassel desktop and Kate on KDE.
Only when the input caret/cursor is at the very top of the message (or anytime in single-line edit mode) should the message history be accessed.
### Actual
Quasseldroid interprets the up arrow as a request to switch to the message history, despite being in multi-line edit mode.
### Details
Quasseldroid [v1.3.3](https://git.kuschku.de/justJanne/QuasselDroid-ng/commit/b622ad63056b6054b06e09f8e1f1ef2b0c3aaf9a )
Using a USB keyboard with the USB OTG adapter that comes in the Pixel box, on Android 11, Pixel 4 XL.
*Feel free to edit the priority as desired - I'm not sure how many folks use Quasseldroid with a keyboard - ChromeOS + USB/Bluetooth keyboards on Android, possibly?*1.6.0https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/231Make swipe left and right work from any point of the view2022-01-10T05:14:20ZToni SpetsMake swipe left and right work from any point of the viewI've noticed that it's *really* hard to get the user list or the server/channel list open with swipes because it requires you to start the swipe from the very edge of the screen.
Slack and Discord both allow you to start swiping from an...I've noticed that it's *really* hard to get the user list or the server/channel list open with swipes because it requires you to start the swipe from the very edge of the screen.
Slack and Discord both allow you to start swiping from any part of the screen (to left or right) and it will slide open either the channel or user list.
This is a small UX improvement that would make Quasseldroid immensely easier to use one handed.
Thanks!2.0.0https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/223Expanded (multi-line) message input box won't collapse with swipe down except...2022-01-10T05:20:14ZShane SynanExpanded (multi-line) message input box won't collapse with swipe down except under Send button## Steps
1. Connect to core
2. Swipe up message input box
3. Swipe down message input box by dragging `Write a message…` down
4. Observe message input box state, expanded or collapsed
5. If message input box is collapsed, swipe up m...## Steps
1. Connect to core
2. Swipe up message input box
3. Swipe down message input box by dragging `Write a message…` down
4. Observe message input box state, expanded or collapsed
5. If message input box is collapsed, swipe up message input box again
6. Swipe down message input by dragging underneath the `>` Send button
## Expected
For both steps 3 and 6, the expanded message input box collapses.
## Actual
The expanded message input box does not react to drags in step 3, but step 6 will collapse the input box.2.0.0https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/217reconnect jumps to latest messages2022-01-10T05:21:34Zhyperfektreconnect jumps to latest messagesIf the connection to the core is reacquired while reading in a channel, the view reloads and jumps to the latest messages.
This is undesirable especially on mobile connections, where it might happen very frequently.
Version: 1.2.24If the connection to the core is reacquired while reading in a channel, the view reloads and jumps to the latest messages.
This is undesirable especially on mobile connections, where it might happen very frequently.
Version: 1.2.242.0.0https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/211Allow disabling/enabling multiple reconnection triggers2019-06-17T18:42:51ZJanne Mareike KoschinskiAllow disabling/enabling multiple reconnection triggersJanne Mareike KoschinskiJanne Mareike Koschinskihttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/206Allow disabling background execution2019-06-07T20:25:57ZJanne Mareike KoschinskiAllow disabling background executionJanne Mareike KoschinskiJanne Mareike Koschinskihttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/205Background execution notification/icon visibility can't be configured on pre-6.02019-06-07T20:19:54ZJanne Mareike KoschinskiBackground execution notification/icon visibility can't be configured on pre-6.0Janne Mareike KoschinskiJanne Mareike Koschinskihttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/199Implement message attachments and link unfurling2019-04-16T07:42:31ZJanne Mareike KoschinskiImplement message attachments and link unfurlinghttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/198Add per-channel notification options2019-04-16T07:41:54ZJanne Mareike KoschinskiAdd per-channel notification options- mute channel
- always notify on message in this channel- mute channel
- always notify on message in this channelhttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/197Add search in nicklist2019-04-16T07:40:29ZJanne Mareike KoschinskiAdd search in nicklisthttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/196Add workaround to avoid keyboard showing every time2019-04-16T07:39:51ZJanne Mareike KoschinskiAdd workaround to avoid keyboard showing every timehttps://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/195Add workaround for IPv6 enabled cores that only listen on IPv42019-04-16T07:39:28ZJanne Mareike KoschinskiAdd workaround for IPv6 enabled cores that only listen on IPv4https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/159Empty/invalid values should be rejected in several fields2022-01-10T05:15:00ZShane SynanEmpty/invalid values should be rejected in several fields# Test case
## Steps
1. Connect to core
2. Go to overflow menu → `Core Settings`
### `Network` (servers)
1. Add a new network
2. Set `Network Name`
3. Don't add any servers
4. Press `Save`
*This one may be more difficult to imp...# Test case
## Steps
1. Connect to core
2. Go to overflow menu → `Core Settings`
### `Network` (servers)
1. Add a new network
2. Set `Network Name`
3. Don't add any servers
4. Press `Save`
*This one may be more difficult to implement and can be set aside to a new issue if desired.*
Quassel desktop actually even catches this if you delete all servers from a network after adding it:
> ### Invalid Network Settings
> **The following problems need to be corrected before your changes can be applied:**
>
> * All networks need at least one server defined
### `Network` (name)
1. Add a new network
2. Don't set `Network Name`
3. Add a dummy server
4. Press `Save`
### Network → `Server`
1. Add a new server to an existing network
2. Don't fill in `Host`
3. Press `Save`
### `Identity`
1. Add a new identity
2. Don't fill in `Identity name`
3. Press `Save`
### `Chatlists`
1. Add a new chat list
2. Don't fill in `Name`
3. Press `Save`
*Technically, this one is accepted by the Quassel core, but the desktop GUI requires specifying a name.*
### Ignore List → `Ignore Rule` (ignore rule)
1. Add a new ignore rule
2. Don't fill in `Ignore Rule`
3. Press `Save`
*Technically, this one is accepted by the Quassel core, but the desktop GUI requires specifying an ignore rule.*
### Ignore List → `Ignore Rule` (scope)
**This one needs fixed in upstream Quassel, too. It can be ignored for now, or fixed.**
1. Add a new ignore rule
2. Fill in `Ignore Rule`
2. Set Scope to `Network Scope`
2. Don't fill in `Scope Rule`
3. Press `Save`
*Technically, this one is accepted by the Quassel core, and the desktop GUI does not require specifying an ignore rule scope, but it probably should.*
### `Aliases` → `Alias` (name)
1. Add a new alias
2. Don't fill in `Name`
3. Press `Save`
Bonus: this logs a crash report in Quasseldroid due to a non-null value set to null. See [the crash issue for the specifics](https://git.kuschku.de/justJanne/QuasselDroid-ng/issues/161 ).
### `Aliases` → `Alias` (expansion)
1. Add a new alias
2. Don't fill in `Expansion`
3. Press `Save`
Bonus: this logs a crash report in Quasseldroid due to a non-null value set to null. See [the crash issue for the specifics](https://git.kuschku.de/justJanne/QuasselDroid-ng/issues/161 ).
## Expected
Quasseldroid rejects the empty fields in the above cases.
## Actual
Quasseldroid accepts the empty fields in the above cases, highlighting with red/whatever method Android uses to indicate a field is required.
# Additional
The Android approaches appears to be using `setHint` and [`setError`](https://developer.android.com/reference/android/widget/TextView#setError(java.lang.CharSequence) ).https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/142Delete selected messages from log2022-01-10T05:15:04ZHannah von RethDelete selected messages from logWith the recent spam wave it would be interesting to be able to delete selected messages from the log.With the recent spam wave it would be interesting to be able to delete selected messages from the log.https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/127Option to mark all channels as read, per network basis2022-01-10T05:15:01ZPeGaSuSOption to mark all channels as read, per network basis* [ ] Normally every user is in several channels on a network, and some are more important than others. Would be nice to have an option to mark as channels as read, per network basis, after we take a look into the most important ones.* [ ] Normally every user is in several channels on a network, and some are more important than others. Would be nice to have an option to mark as channels as read, per network basis, after we take a look into the most important ones.https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/125Batch deletion for PM and parted channels buffers2022-01-10T05:15:01ZPeGaSuSBatch deletion for PM and parted channels buffers* [ ] On PM and parted channels buffers we have the option to delete them, but we must do it one by one.
Having an option to batch delete would be nice.
* [ ] On channels that we're still in, probably also add the option to delete i...* [ ] On PM and parted channels buffers we have the option to delete them, but we must do it one by one.
Having an option to batch delete would be nice.
* [ ] On channels that we're still in, probably also add the option to delete it, which would make the user part the channel and then delete it (would spare the work of parting first and delete after).https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/119Dismissing notification marks entire buffer as read, not just highlights2022-01-10T05:15:03ZShane SynanDismissing notification marks entire buffer as read, not just highlights### Steps
1. Connect to core
2. Receive highlight in channel
3. Receive non-highlights in that same channel
4. Swipe away notification for highlight from that channel
### Expected
The highlight status is removed from the channel, bu...### Steps
1. Connect to core
2. Receive highlight in channel
3. Receive non-highlights in that same channel
4. Swipe away notification for highlight from that channel
### Expected
The highlight status is removed from the channel, but the other messages are not marked as read.
### Actual
The entire channel is marked as read, making it harder to see what messages may be missed.
### Additional
This depends on protocol changes to the core, and may need the core-side notification system (not just core-side highlights) in order to mark notifications as dismissed without clearing a channel's activity.
Alternatively, Quasseldroid can mark everything up to the swiped-away notification as read, but this may risk confusion among users instead of the "swipe notification == marks all as read" behavior.
This could possibly involve messing with the last read markerline to re-set that to right after the highlight.. but that still risks confusion.https://git.kuschku.de/justJanne/QuasselDroid-ng/-/issues/97Add per-chat input and sent message history2022-01-10T05:15:00ZShane SynanAdd per-chat input and sent message history### Steps
1. Connect to core
2. Open a buffer, send a message
3. Type another message, do not send it
4. Switch to buffer that hasn't been used
5. Open chat history
6. Switch back to first buffer
7. Open chat history
### Expected...### Steps
1. Connect to core
2. Open a buffer, send a message
3. Type another message, do not send it
4. Switch to buffer that hasn't been used
5. Open chat history
6. Switch back to first buffer
7. Open chat history
### Expected
When switching to an unused buffer, the input box text and message history should clear.
When switching back to first used buffer, the input box text and message history from earlier steps should come back.
### Actual
Input box text and message history don't change when switching buffers, staying global.
### Additional
Given the buffer list slides on top of the input box, it implies it is higher in the hierarchy, as if it is linked. Also, per-chat input and sent message history matches some other messaging apps and Quassel desktop.
Without this, it's easier to send a message to the wrong channel if you briefly switch channels to check on a notification, then want to reply. Global history also makes it harder to interrupt a reply in one place to respond elsewhere.