Commit Graph

2675 Commits

Author SHA1 Message Date
Isaac Janzen 21f23cc032
DEV: Convert header to glimmer (#25214)
Here is a breakdown of the changes that will be implemented in this PR.

# Widgets -> Glimmer

Obviously, the intention of the todo here is to convert the header from widgets to glimmer. This PR splits the respective widgets as so:

### widgets/site-header.js
```mermaid height=200
flowchart TB
    A[widgets/site-header.js] 
    A-->B[components/glimmer-site-header.gjs]
```

### widgets/header.js and children
```mermaid height=200
flowchart TB
    A[widgets/header.js] 
    A-->B[components/glimmer-header.gjs]
    B-->C[glimmer-header/contents.gjs]
    C-->D[./auth-buttons.gjs]
    C-->E[./icons.gjs]
    C-->F[./user-menu-wrapper.gjs]
    C-->G[./hamburger-dropdown-wrapper.gjs]
    C-->H[./user-menu-wrapper.gjs]
    C-->I[./sidebar-toggle.gjs]
    C-->J[./topic/info.gjs]
```

There are additional components rendered within the `glimmer-header/*` components, but I will leave those out for now. From this view you can see that we split apart the logic of `widgets/header.js` into 10+ components. Breaking apart these mega files has many benefits (readability, etc).

# Services

I have introduced a [header](cdb42caa04/app/assets/javascripts/discourse/app/services/header.js) service. This simplifies how we pass around data in the header, as well as fixes a bug we have with "swiping" menu panels.


# Modifiers
Added a [close-on-click-outside](cdb42caa04/app/assets/javascripts/discourse/app/modifiers/close-on-click-outside.js) modifier that is built upon the [close-on-click-outside modifier](https://github.com/discourse/discourse/blob/main/app/assets/javascripts/float-kit/addon/modifiers/close-on-click-outside.js) that @jjaffeux built for float-kit. I think we could replace float-kit's implementation with mine and have it in a centralized location as they are extremely similar.

# Tests
Rewrote the existing header tests ([1](https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/tests/integration/components/widgets/header-test.js), [2](https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/tests/integration/components/site-header-test.js)) as system tests. 

# Other
- Converted `widgets/user-status-bubble.js` to a gjs component
- Converted `widgets/sidebar-toggle.js` to a gjs component
- Converted `topicFeaturedLinkNode()` to a gjs component
- Deprecated the [docking mixin](https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/mixins/docking.js)
2024-02-23 11:08:15 -07:00
Penar Musaraj b205abadfc
Revert "UX: allow fullscreen composer on mobile (#25787)" (#25842)
This reverts commit 13eabff739.
2024-02-23 12:21:26 -05:00
Kris 1ac8922013
DEV: update classes, remove unused CSS (#25825) 2024-02-23 09:14:37 -05:00
Kris 9005a14508
UX: fix topic map link expansion hover (#25822) 2024-02-22 15:47:38 -05:00
chapoi 13eabff739
UX: allow fullscreen composer on mobile (#25787) 2024-02-22 13:01:27 +01:00
Kris 94199715cd
UX: fix sidebar section modal styles (#25803) 2024-02-21 18:22:03 -05:00
chapoi a9f8009801
UX: Modal mobile fixes (#25788)
* UX: remove discourse-touch class wrapper

* UX: keep modal close btn in right position
2024-02-21 13:49:42 +01:00
Ted Johansson 533b91dec6
FEATURE: Add a checkbox for users to confirm before flagging as illegal (#25762)
The Digital Services Act requires a checkbox for any user who's flagging a post as illegal to confirm that they are flagging in good faith. This PR adds that.
2024-02-21 10:49:19 +08:00
Jarek Radosz 5817156499
UX: Fix the video spinner css (#25770)
A followup to 62e36145c5
2024-02-20 20:44:23 +01:00
Jarek Radosz 62e36145c5
UX: Tweak play button css (#25754)
* Remove unnecessary properties
* Use rem unit
* Add a drop shadow
* Make the "box shadow" slightly more subtle
* Use --d-border-radius
* Don't scale the "box shadow" on hover
* Scale down the on-hover size
* Make the button slightly larger
* Respect prefers-reduced-motion
* Use white rather than --secondary-or-primary
* Don't animate on-hover on mobile
2024-02-20 12:13:20 +01:00
Blake Erickson 5ebe91a9a4
FIX: Set the video background to be black (#25744)
If you upload a portrait video or just a video that doesn't fit in the
normal video dimensions we want it to have a black background instead of
trying to render parts of the placeholder image as the video background.

This change removes the placeholder image for the video background when
the play button is clicked and replaces it with an all black background.
2024-02-19 12:46:45 -07:00
Ella E e4b6142d6a
UX: Tweaks on the admin sidebar (#25717) 2024-02-16 14:28:25 -07:00
Blake Erickson ffac012bbc
FIX: Add a boarder around the video placeholder play button (#25727)
The video placeholder play button is white, so on a video placeholder
that is also white it is very hard to see where the play button is, so
this change adds a dark grey transparent background to the play button
so that it stands out. This is similar to how we have done the
play/pause button on animated gifs.
2024-02-16 13:48:57 -07:00
Penar Musaraj e497f6bf9b
UX: Allow resetting password when confirming session (#25708)
This is particularly useful in scenarios where 2FA is enforced and users have forgotten their password.
2024-02-16 12:18:07 -05:00
Kris 9374baab93
UX: clean up some label and form inconsistencies, reduce excess bolding (#25701) 2024-02-15 11:27:51 -05:00
Kris 41cd01c83a
UX: fix group search result alignment and styles (#25681) 2024-02-14 17:51:44 -05:00
Blake Erickson bb261094cf
FEATURE: Auto generate and display video preview image (#25633)
This change will allow auto generated video thumbnails to be used
instead of the black video thumbnail that overlays videos.

Follow up to: 2443446e62
2024-02-14 13:43:53 -07:00
David Taylor 02177bb46d
UX: Add loading indicator to 'new or updated' PM banner (#25676)
Same as 9883e6a0c8, but for lists of PMs
2024-02-14 10:08:31 +00:00
Kris 110d544225
UX: fix post count position on avatars in topic map (#25622) 2024-02-08 17:07:38 -05:00
Martin Brennan 8eb4bf07a6
FIX: Translation missing for Illegal flag on topic (#25603)
Followup to 95a2d285d3

Fixes a missing translation and also makes it so the
flag modal does not have a scrollbar when it opens.
2024-02-08 11:53:45 +10:00
Kris 59ccb69db0
FEATURE: show unread post indicator on mobile (#25421) 2024-02-06 11:50:49 -05:00
Isaac Janzen 5c43fd5054
DEV: Remove widget search menu (#25545) 2024-02-06 08:52:24 -07:00
Martin Brennan e412b6cce2
FIX: Insert Hyperlink search badge spacing (#25563)
The spacing for category badges and tags was missing
spacing in the Insert Hyperlink modal search results,
making everything look cramped.
2024-02-06 09:19:42 +10:00
Joffrey JAFFEUX 9961163e82
FIX: prevents discourse header to go under ipad navigation (#25542)
We had two issues which were present for a long time I think:
- one that impacts both core discourse and chat. We were not setting top on the header when `footer-nav-ipad` was present, meaning that you could make it scroll under if you try to scroll up by putting your finger on the discourse header
- one that impacted only chat. It's also present in core, but in core it's not a probem because we don't have a fixed height div. The body height was higher than the screen which would cause a second scrollbar to appear and would slightly break layout, if you scroll on this scrollbar (body).
2024-02-02 15:24:18 +01:00
Jarek Radosz f72ba754f1
DEV: Rework reorder-categories modal (#25475) 2024-02-01 13:13:38 +01:00
Joffrey JAFFEUX 4c25266cf7
FIX: better supports ipad and hub footer nav (#25518)
Since https://github.com/discourse/discourse/pull/25501 this behavior was broken. This PR attempts to fix it by being more fine grain.

Also note that this PR is moving `footer-nav-ipad` and `footer-nav-visible` to the `html` element and not the `body`. It makes more sense as we are already adding most of other global state class like `keyboard-visible` to the `html` element.

Tested on:
- chrome desktop
- safari ios - iphone
- PWA ios - iphone
- PWA ios - ipad
- DiscourseHub iphone
2024-02-01 10:24:44 +01:00
Jordan Vidrine f2ac9e4c12
UX: Refactor Do Not Disturb indicator (#25508) 2024-01-31 16:56:07 -06:00
Joffrey JAFFEUX ec26dc51cd
UX: shows PWA/Hub footer navigation on chat (#25501)
This commit sets a default of 0px for `--footer-nav-height` and set it only when `body.footer-nav-visible` allowing us to safely use `--footer-nav-height` wherever it will be needed if set.
2024-01-31 14:41:12 +01:00
Jarek Radosz 58be138e75
FIX: Site-setting integer input type (#25485)
Regressed in f2e1363f67
2024-01-30 20:25:48 +01:00
Kris d29fefd73a
FIX: missing ampersand in input class selector (#25464) 2024-01-29 14:03:32 -05:00
chapoi df2f63cf74
UX: add bg style to input field type number (#25460) 2024-01-29 10:51:12 -05:00
Kris 6d57da1d6e
FIX: global selector needed to avoid clicks registering on other elements (#25445) 2024-01-26 22:24:21 +00:00
Kris 3714a6f222
FIX: remove excess margin after title (#25444) 2024-01-26 13:42:38 -05:00
Kris 6b185f8655
PERF: eliminate some slow CSS selectors (#25392) 2024-01-26 13:10:45 -05:00
Kris 4e72b06a54
UX: improve mobile table editor button location (#25426) 2024-01-26 13:08:12 -05:00
Kris 3c54d9e64c
UX: improve featured link positioning in topic titles (#25427) 2024-01-25 16:49:34 -05:00
Kris cf25fab9b0
UX: simplify education message layout on empty /new route (#25412) 2024-01-24 18:13:42 -05:00
Kris 0c63463d28
UX: fix spacing for about page headings (#25410) 2024-01-24 16:36:36 -05:00
Kris 731699a7cf
UX: adjust onebox styles for chat, title line-height (#25249) 2024-01-12 18:14:26 -05:00
Kris 7639591552
UX: cleaning up some invite page styles (#25247) 2024-01-12 17:15:01 -05:00
Kris 52511a3260
DEV: remove `:has` selector from composer (#25233) 2024-01-11 19:15:37 -05:00
Penar Musaraj 7bfb1af180
A11Y: Better contrast for lightbox overlay links (#25208) 2024-01-10 14:07:49 -05:00
Kris 007a5fd99e
UX: fix review queue category and tag alignment, whitespace (#25166) 2024-01-08 12:55:39 -05:00
Kris e8509ddf50
FIX: github onebox styles for commits (#25098) 2024-01-02 17:29:56 -05:00
Kris f999cde159
UX: update post background highlight (#25094) 2024-01-02 16:53:40 -05:00
Isaac Janzen 4886c1fddc
DEV: Update when / how we display of full name on `search-item-user` (#25090)
- Full name should only be displayed within `initial options`
- Keep results on a single line unless full name is included

# Initial Options
<img width="416" alt="Screenshot 2024-01-02 at 9 58 07 AM" src="https://github.com/discourse/discourse/assets/50783505/a9f6880a-86e0-4683-978a-c0391a90c78e">

# Other
<img width="432" alt="Screenshot 2024-01-02 at 9 58 43 AM" src="https://github.com/discourse/discourse/assets/50783505/83b508b0-c501-4fb7-89f7-8e66dc88979f">
<img width="424" alt="Screenshot 2024-01-02 at 9 58 18 AM" src="https://github.com/discourse/discourse/assets/50783505/b98223d7-f92c-4803-87bf-0470e6ce05ed">
2024-01-02 10:26:40 -07:00
Kris 02b117a852
FIX: scope PM background color to PMs (#25020) 2023-12-22 15:16:59 -05:00
Kris 096e26d972
UX: adjust pm styles to enbubble controls (#24996) 2023-12-22 14:28:02 -05:00
Kris 2887e2c055
UX: adjust bootstrap mode tooltip color (#25002) 2023-12-21 13:22:28 -05:00
Isaac Janzen 043fa28fab
FIX: Add missing user search result `name` and styling (#24974)
Co-authored-by: Mark VanLandingham <markvanlan@gmail.com>
2023-12-19 23:14:00 -06:00