Adapt to different device widths (#401)
authorLaurenz <ritters_werth@outlook.com>
Sun, 24 Apr 2022 10:23:10 +0000 (11:23 +0100)
committerGitHub <noreply@github.com>
Sun, 24 Apr 2022 10:23:10 +0000 (15:53 +0530)
commitdc8e6e53c7fcaba7c1be6ed9417ddec19cd700cc
tree56fe7ba1deeb83b30dcc3d5bc4a5b27849ed4081
parent989ab5a432e818240e03d8be0c34c08c407862ab
Adapt to different device widths (#401)

* Now adapting to small screen sizes, needs improvements

* Fix that site only gets into mobile mode when resized

* - Added navigation event triggered if user requests to return to navigation on compact screens
- People drawer wont be shown on compact screens
  - Still accessible using settings
  - would be duplicated UI
- mobileSize is now compactSize

* Put threshold for collapsing the base UI in a shared file

* Switch to a more simple solution using CSS media queries over JS
- Move back button to the left a bit so it doesnt get in touch with room icon

* switch from component-individual-thresholds to device-type thresholds
- <750px: Mobile
- <900px: Tablet
- >900px: Desktop

* Make Settings drawer component collapse on mobile

* Fix EmojiBoard not showing up and messing up UI when screen is smaller than 360px

* Improve code quality; allow passing classNames to IconButton
- remove unnessesary div wrappers
- use dir.side where appropriate
- rename threshold and its mixins to more descriptive names
- Rename "OPEN_NAVIGATION" to "NAVIGATION_OPENED"

* - follow BEM methology
- remove ROOM_SELECTED listener
- rename NAVIGATION_OPENED to OPEN_NAVIGATION where appropriate
- this does NOT changes that ref should be used for changing visability

* Use ref to change visability to avoid re-rendering

* Use ref to change visability to avoid re-rendering

* Fix that room component is not hidden by default.
This resulted in a broken view when application is viewed in mobile size without having selected a room since loading.

* fix: leaving a room should bring one back to navigation

Co-authored-by: Ajay Bura <32841439+ajbura@users.noreply.github.com>
19 files changed:
src/app/atoms/button/IconButton.jsx
src/app/atoms/header/Header.scss
src/app/molecules/popup-window/PopupWindow.scss
src/app/molecules/room-options/RoomOptions.jsx
src/app/organisms/emoji-board/EmojiBoard.scss
src/app/organisms/invite-list/InviteList.jsx
src/app/organisms/room/Room.jsx
src/app/organisms/room/Room.scss
src/app/organisms/room/RoomSettings.jsx
src/app/organisms/room/RoomViewCmdBar.jsx
src/app/organisms/room/RoomViewHeader.jsx
src/app/organisms/room/RoomViewHeader.scss
src/app/organisms/settings/Settings.scss
src/app/partials/screen.scss [new file with mode: 0644]
src/app/templates/client/Client.jsx
src/app/templates/client/Client.scss
src/client/action/navigation.js
src/client/state/cons.js
src/client/state/navigation.js