Drawpile
Drawpile copied to clipboard
Make chat not fixed to the bottom
Currently, the chat always splits the main window at the bottom. It can't be moved anywhere else.
Depending on your screen and how you have the application arranged, this is not a good place for it. However, we also can't make it a dock, because the chat needs to spring open automatically when there's an alert, which a dock can't really do in a sensible way without risking messing up your entire application layout.
It's unclear what the solution for this could be, it needs some thinking on design. Maybe some kind of on-canvas display similar to how video games usually do it, with the chat being somewhere in the corner.
There are quite a few ways this may be implemented.
- Introduce tabs for the panel on the right (Desktop view) which allows changing between the normal color-select / layers, and a chat, which would automatically be set as the active window when an admin message arrives.
- Introduce a chat overlay with customizable transparency which would remain on top after dragging it with a hotkey, and remain both non-intractable and transparent during work, until a hotkey to chat or drag the window is pressed. This solution would be similar to streamer-side chat overlays.
- Introduce a semi-transparent chat overlay (similar to viewer-side overlays during streams) where new chat messages ascends from the status bar on the very bottom and fades after reaching a certain height or existing for long enough.
- Introduce the option to render chat in the empty space around the canvas. ...
There are many possibilities; feedback from users either here or in the community Discord server would be great.
Curious, why does it need to "spring open" on alert? If it's docked, the size shouldn't be changing on alert, just highlighted and/or ping no? And if it's hidden, it shouldn't be shown automatically... Just maybe a notif icon on the UI somewhere that there's unseen chats.
But having an option for transparent overlay would be a nice extra option
@Invertex Alerts are supposed to be messages of such high importance that they must be shown to the user immediately. For example, a server admin sending a notice that the server is going down for a reboot, a moderator wanting to talk to you instead of just instantly banning you for violating rules or a session operator letting you know that they're going to clear the canvas and to save what you want to keep.
Those cases go beyond just the "unread messages" badge (which already exists in the bottom-right corner.) If you don't act on these, you lose art, your session will be terminated or you get your account banned.
Unfortunately, most alerts you get currently "preparing for session reset" ones. That's historical, because there didn't use to be any other indicator that the session is resetting. Those exist now, so we should make the message less disruptive.
However, it might be worth a thought if maybe the chat is the wrong place for some or all of those messages and if we can stick them somewhere else. A server admin sending an announcement or an operator telling you to save your stuff isn't really something that needs to go into the chat because it's not something you're supposed to respond to, just something you need to be made aware of. So we could actually put those somewhere else, maybe similar to the disconnect notification where it shows up at the top of the canvas.
That doesn't cover the case where a moderator wants to talk to you though, since you're not gonna chat through a banner message. Or maybe that message could have a "Respond" button that opens up a separate chat dialog. Which may be nice in general for moderators, since it would make it clearer that it's not an automated message, but instead actually the owner of the server wanting them to fix something.
Yeah I would agree separating announcements/alerts into a separate panel would probably be a better option. Can just have a dedicated button to show a list of announcements that have happened and highlight it if there's an unseen one.
Could have similar for moderation messages, or they could both be part of the same window, just a different instance of the regular chat window, that gets targeted for alerts and moderator chat. And by default would open as a floating window so it only blocks but doesn't displace interface. Probably not something people would care to have docked for frequent access.
Here's a potential design.
This would be the normal appearance, which means the user is not currently typing.
The windows are non-interactive (not clickable), and when you hover your mouse close to them, they disappear.
Here's how it would look when you start typing.
You'd be able to move your typing area box around freely and resize it.
The chat popups' position is locked to be either above or below the floating chat box depending on their available space, so they follow the typing area.
Here's when messages from the server owner, or the server itself arrives.
Naturally, you would then be able to right click on individual chat bubbles to get a context menu for actions regarding the sender. This should make it easier to moderate as well.
And another feature would be selecting the color of your name and message. However, it's important to ensure readability, so presets would be preferred.