---
# System prepended metadata

title: Limbo & Chatroom
tags: [UI]

---

---
tags : UI
author: Henri Vermeersch
---

# Limbo & Chatroom
- Bewegen : klikken op een plaats -> efficient doorgeven aan anderen (ipv letterlijke positie doorgeven, veel traffic), werkt ook gemakkelijk op mobile

- Instellingen met : 
    - Light/Dark
    - Change name, password, delete profile
    - Eventueel nog live-typing settings of word suggestion settings indien nodig


- Profiel : online/offline/in chatroom aanduiding + naam + keystroke-indicatie als vriend
- Klikken op profiel : Naam + Id
    - Allow keystrokes / als reeds geallowed : soort vinkje zetten met 'keystrokes allowed' erbij omdat disallowen niet toegelaten (misschien een 'are you sure?' als je op de knop drukt om te allowen)
    - Send friend request / (vinkje)'Sent friend request!' / Accept friend request / remove friend
    - Invite to private channel
    - DM (als vriend)
    - Bewegen naar die persoon (als in zelfde room)
    - Highlight de persoon (als in zelfde room) + teken berichten vóór alle anderen in de 3d wereld
    

- Public rooms = rooms
- Private rooms = groups

## Visual UI (Kobe)
Zie foto

![](https://i.imgur.com/DEKbnVB.jpg)

- Two tabs, left and right, which can be expanded and collapsed
- Bottom border : (left to right)
    - Settings button
    - Indicator of connection (connected/online or disconnected)
    - Name and id
    - Typing bar for the current chatroom with 'Main' radiobutton
    - Logout button

- Left tab = general tab
    - 4 internal tabs : Direct messages, Search, Friends and Group
    - Direct messages : shows all your DMs to friends
        - List of all your active chats (friends), which some expanded and others collapsed
        - You can click on the '+' to expand the chat, a small windows shows up where you can see the chat history and start typing
    - Search : search for a random user by name or id and show the profiles of the results
    - Friends : Show the profiles of all your friends (including keystroke recognition)
    - Group : Shows all PRIVATE rooms = groups which you can join
    - On all profiles shown, you can hover to choose some options mentioned above, depending on the situation


- Right tab = room/group space
    - 4 internal tabs : users, main, all, proximity
        - Users : shows all profiles of the users in the room or group
        - Main chat : all messages sent with the 'Main' radiobutton on
        - All chat : all messages
        - Proximity chat : all messages sent by users who where nearby at the time
        - Message zelf = profiel + tijdstip

- In 3D room zelf : rondlopen door te klikken op de grond
    - Message typen : komt boven het hoofd van de gebruiker terecht

## TODO
- [ ] elke seconde vragen nieuwe info vragen of mensen bv nog online zijn of nog vriend zijn
- [ ] Accept friend request
- [x] Open friend requests
- [x] Change password/username
- [x] Show 'no messages yet' when no messages have been sent yet
- [x] Niet met innerhtml werken (zeker niet bij messages)
- [x] Fix verhogen onderste balk wanneer input te hoog wordt
- [ ] DM chatrooms worden 2x geladen, worden pas echt gevuld (omdat er eerst geen vrienden zijn) bij GUI.onFriendsUpdate()
- [x] Share keystrokes button -> sharing keystrokes
- [x] Send friendrequest
- [x] Minimale afstand voor tabs
- [x] Help button toevoegen naar readme.me
