Commit graph

283 commits

Author SHA1 Message Date
Nick Schonning
53376db94c Ensure tabIndex is number instead of string (#24409) 2023-04-04 16:33:44 +02:00
Eugen Rochko
d22e712648 Change search pop-out in web UI (#24305) 2023-04-01 09:59:10 +02:00
Yamagishi Kazutoshi
e272fc91e4 Remove legacy decorators syntax (#18357) 2023-03-24 03:17:53 +01:00
Claire
82c464d4d0 Add lang tag to native language names in language picker (#23749) 2023-02-21 09:23:39 +01:00
Claire
b5b0bc17e8 Change compose form checkbox to native input with appearance: none (#22949) 2023-02-20 11:32:27 +01:00
Renaud Chaput
ae3812d182 Rename JSX files with proper .jsx extension (#23733) 2023-02-20 03:20:59 +01:00
Nick Schonning
2663b421be Enable ESLint import recommended rules (#23315) 2023-02-13 15:12:31 +01:00
Nick Schonning
1c2ca9557f Enable ESLint no-useless-escape (#23311) 2023-02-13 15:12:14 +01:00
Claire
3c1e48d304 Fix attached media uploads not being cleared when replying to a post (#23504) 2023-02-10 22:03:35 +01:00
Christian Schmidt
9b74ffa7e0 Spell check input fields (#23395) 2023-02-04 16:34:21 +01:00
Nick Schonning
9a5233f107 Upgrade ESlint to v8 (#23305) 2023-01-30 01:45:35 +01:00
Christian Schmidt
6f08e79465 Add lang attribute to image description textarea and poll option field (#23293) 2023-01-29 19:00:19 +01:00
Claire
6feec4fd18 Add lang attribute to compose textarea and CW field (#23240)
Fixes #19858
2023-01-24 18:49:21 +01:00
Connor Shea
be280f10c5 Add listing of followed hashtags (#21773)
* Add followed_tags route.

This at least gets us to the point where the page can actually be
rendered, although it doesn't display any hashtags (yet?).

Attempting to implement #20763.

* Fix minor issues.

* I've got the followed tags data partially working

But the Hashtag component errors for some reason. Something about the
value of the history attribute being invalid.

* Fix a mistake in the code

* Minor change.

* Get the followed hashtags list fully working.

Still need to add the Follow/Unfollow buttons, though.

* Resolve JS linter issues.

* Add pagination logic to followed tags list view.

However, it currently loads further pages immediately on page load, so
that's not ideal. Need to figure that one out.

* Appease the linter.

* Apply suggestions from code review

Co-authored-by: Claire <claire.github-309c@sitedethib.com>

* Fixes and resolve some other feedback.

* Use set/update instead of setIn/updateIn.

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-01-18 16:44:33 +01:00
Claire
42aa864c84 Add support for editing media description and focus point of already-posted statuses (#20878)
* Add backend support for editing media attachments of existing posts

* Allow editing media attachments of already-posted toots

* Add tests
2023-01-18 16:33:55 +01:00
Claire
ff5f21d505 Remove hardcoded width from dropdown overlays (#23062)
* Remove hardcoded width from dropdown overlays

* Fix emoji picker position
2023-01-12 16:43:02 +01:00
Peter Simonsson
9d20c31f9c Fix dropdown menu positions when scrolling (#22916)
* Update react-overlays to latest version

* Fix breaking changes in dropdown menus

* Use react-overlays built-in arrow positioning feature
* Re-implemented `.dropdown-menu__arrow` to have a defined width and height to improve positioning
* Moved wrapping div (`.dropdown-menu` from `DropdownMenu` to `Dropdown`)
* Wrap button in a span to solve issue with ref
* Temporarily remove animations

* Fix breaking changes in emoji picker

* Wrap EmojiPickerMenu in a div where react-overlays’ ref is added

* Fix breaking changes in language dropdown

* Fix breaking changes in privacy dropdown

* Fix breaking changes in search form

* Add animations back using `@keyframes`

* Fix arrow color in light theme

* Fix linting issue

* Remove unused `mounted` state

* Remove `placement` state from components and redux

And remove the placement state from props of the menu components.

* Remove abolution position to fix flip issue

* Remove z-index to fix modals and overlay positions

* Fix lint issues

* Set placement in privacy and language components

Copy the placement state into the `PrivacyDropdown` and `LanguageDropdown` components, to apply correct styling to the buttons depending on which placement the Overlay has.

* Move `placement` state to correct component
2023-01-11 21:58:46 +01:00
Holden Foreman
4515ec2696 Add aria-hidden to content warning field when dimmed so that it is not confusing to screen reader users (#22568) 2023-01-05 13:39:58 +01:00
Nick Schonning
507f2b4c1e Enable eslint:recommended ruleset (#22433)
* Enable ESLint recommended ruleset

* Disable failing ESLint recommended rules

* Remove rules shadowed by eslint:recommended
2022-12-19 00:51:37 +09:00
Rens Groothuijsen
37e12ff0ae Display search popout at fixed screen position (#16463)
* Display search popout at fixed screen position

* Attach search popout to search box
2022-12-15 17:38:50 +01:00
Arnout Engelen
18e78d2f5a Don't autofocus the compose form (#16517)
When opening a page such as /web/timelines/home in a desktop browser, the
cursor was automatically placed in the textarea of the compose form.

When using the keyboard for navigation (using a browser plugin like vimium or
vim vixen, or just to hit 'space' to scroll down a page), you have remember to
leave the field before using that.

Since you only visit the page to write a new post some of the time, this PR
attempts to have nothing focused initially (and require the user to click or
e.g. use 'tab' to focus the textarea).

Tested:
* /web/timeslines/home no longer autofocuses the compose box
* pressing the 'n' hotkey still focuses the compose box
* clicking 'reply' for a post still focuses the compose box
* replying to a CW'ed post still focuses the compose box
* introducing the CW field still focuses the CW field
* introducing the CW field for a reply still focuses the CW field
* removing the CW field still focuses the compose box
* /web/statuses/new still autofocuses the compose box

fixes #15862
2022-12-15 17:37:05 +01:00
Pleclown
8993b7d630 Adding 12 hours option for polls (#21131)
* Adding 12 hours option for polls

Adding 12 hours option for polls

* Adding 12 hours option for polls

Missing > on a line
2022-12-15 16:20:34 +01:00
Alex Stine
ce1103a154 Fix hidden label causing accessibility issue for search inputs (#21275)
* Try unhiding search label.

* Use aria-label. Remove label as empty labels are useless.

* Remove addition of package-lock.json.
2022-12-15 16:20:21 +01:00
trwnh
1b9ad6fb4b Change in-app links to keep you in-app (#20540)
* Change in-app links to keep you in-app

* refactor Permalink into Link

* rewrite link hrefs in status content

* please linter

* please linter again
2022-11-13 21:10:20 +01:00
Claire
d55054b166 Add the ability to edit media attachment metadata for any unattached media (#20402) 2022-11-11 21:22:17 +01:00
Claire
28ae058593 Remove “No description added” media warning in edit mode (#20393)
Editing media metadata is not currently possible in edit mode, the button would
open the modal but saving the changes would error out.
2022-11-11 09:20:24 +01:00
Claire
ffef3ac03b Fix opening the language picker scrolling the single-column view to the top (#19983)
Fixes #19915
2022-11-08 03:52:52 +01:00
Sunny Ripert
343099eafa Fix JavaScript console error on upload editing status (#19769) 2022-11-05 13:43:47 +01:00
Claire
43629707c9 Fix compose form submission reloading web interface (#19762)
* Fix compose form submission reloading web interface

Fix regression introduced by #19742

* Fix various compose form buttons being handled like submit buttons

* Fix coding style issue

* Fix missing onClick prop check
2022-11-05 13:43:37 +01:00
Sunny Ripert
5404fa8bc0 A11y: Explicit <form> element around compose area (#19742) 2022-11-04 17:08:08 +01:00
Eugen Rochko
89ef2cf044 Fix upload progress not communicating processing phase in web UI (#19530) 2022-10-29 20:05:53 +02:00
Eugen Rochko
973d496b86 Fix logged out search and changed logged-in search placeholder (#19514) 2022-10-29 13:32:49 +02:00
Eugen Rochko
7cbab3e7fd Change layout of posts in web UI (#19423) 2022-10-25 19:02:21 +02:00
Eugen Rochko
2e0f4c286f Fix redirecting to /publish when compose form is visible in web UI (#19427) 2022-10-23 23:37:58 +02:00
Eugen Rochko
0fdfbe555e Change public accounts pages to mount the web UI (#19319)
* Change public accounts pages to mount the web UI

* Fix handling of remote usernames in routes

- When logged in, serve web app
- When logged out, redirect to permalink
- Fix `app-body` class not being set sometimes due to name conflict

* Fix missing `multiColumn` prop

* Fix failing test

* Use `discoverable` attribute to control indexing directives

* Fix `<ColumnLoading />` not using `multiColumn`

* Add `noindex` to accounts in REST API

* Change noindex directive to not be rendered by default before a route is mounted

* Add loading indicator for detailed status in web UI

* Fix missing indicator appearing while account is loading in web UI
2022-10-20 14:35:29 +02:00
Claire
177683d8eb Fix button to dismiss suggestions not showing up in search results (#19325)
Fix a typo. The scope of this fix is pretty minor as that view only ever
shows up in one corner case, now.
2022-10-09 12:28:59 +02:00
Eugen Rochko
2d634b669b Fix logged-out web UI on smaller screens (#19263) 2022-10-04 20:13:23 +02:00
Claire
522fbf9d13 Add ability to filter individual posts (#18945)
* Add database table for status-specific filters

* Add REST endpoints, entities and attributes

* Show status filters in /filters interface

* Perform server-side filtering for individual posts filters

* Fix filtering on context mismatch

* Refactor `toServerSideType` by moving it to its own module

* Move loupe and delete icons to their own module

* Add ability to filter individual posts from WebUI

* Replace keyword list by warnings (expired, context mismatch)

* Refactor server-side filtering code

* Add tests
2022-08-25 04:27:47 +02:00
Eugen Rochko
8ec66981da Change label of publish button to be "Publish" again (#18583) 2022-06-01 05:03:12 +02:00
Eugen Rochko
e4a9aa1ab4 Add language dropdown to compose in web UI (#18420) 2022-05-16 11:18:35 +02:00
Claire
1d7e3d18a0 Change “Only people I mention” to “Mentioned people only” (#18291) 2022-05-03 12:30:40 +02:00
Eugen Rochko
07737bb6d1 Change "Direct" status visibility to "Only people I mention" in web UI (#18146)
- Change name of conversations column in web UI
- Change hotkey for opening conversations column from `g d` to `g c` in web UI
- Remove shortcuts for creating direct-visibility statuses from web UI
2022-04-29 00:24:31 +02:00
Eugen Rochko
354415e7ce Add hint about missing media attachment description in web UI (#17845) 2022-03-22 09:48:12 +01:00
Claire
cbf951569e Fix reply button on media modal not giving focus to compose form (#17626)
* Avoid compose form and modal management fighting for focus

* Fix reply button on media modal footer not giving focus to compose form
2022-02-25 00:51:01 +01:00
Claire
5b5b9deebd Fix opening the emoji picker scrolling the single-column view to the top (#17579)
Fixes #17577
2022-02-16 21:44:47 +01:00
Claire
d10eb06cb4 Fix controls for unchangeable properties on status edit not being disabled (#17531)
Fixes #17520
2022-02-12 19:00:33 +01:00
Eugen Rochko
cb76142d9e Add editing for published statuses (#17320)
* Add editing for published statuses

* Fix change of multiple-choice boolean in poll not resetting votes

* Remove the ability to update existing media attachments for now
2022-02-10 00:15:30 +01:00
Claire
335049cc33 Fix text being incorrectly pre-selected in composer textarea on /share (#17339)
Fixes #17295
2022-01-20 20:56:21 +01:00
Eugen Rochko
cad446611c Add graphs and retention metrics to admin dashboard (#16829) 2021-10-14 20:44:59 +02:00
Mashiro
9dd04c3f19 Fix drawer tab menu routes in advanced web ui (#16793) 2021-09-30 05:19:08 +02:00