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
2 years ago
Yamagishi Kazutoshi
a3eda85ff9
Bump react-redux-loading-bar from 4.0.8 to 5.0.4 ( #18562 )
2 years ago
Eugen Rochko
e164d6a687
Add customizable user roles ( #18641 )
...
* Add customizable user roles
* Various fixes and improvements
* Add migration for old settings and fix tootctl role management
2 years ago
Eugen Rochko
157bf44409
New Crowdin updates ( #18561 )
...
* New translations en.yml (Portuguese)
* New translations en.yml (Lithuanian)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Turkish)
* New translations en.yml (Ukrainian)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Urdu (Pakistan))
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Tamil)
* New translations en.yml (Macedonian)
* New translations en.yml (Korean)
* New translations en.yml (Georgian)
* New translations en.yml (Slovak)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Swedish)
* New translations en.yml (Hebrew)
* New translations en.yml (Italian)
* New translations en.yml (Japanese)
* New translations en.yml (Russian)
* New translations en.yml (Slovenian)
* New translations en.yml (Armenian)
* New translations en.yml (Vietnamese)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Occitan)
* New translations en.yml (Persian)
* New translations en.yml (Galician)
* New translations en.yml (Hungarian)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Irish)
* New translations en.json (Arabic)
* New translations en.json (Irish)
* New translations en.json (German)
* New translations en.yml (Spanish, Mexico)
* New translations en.json (Turkish)
* New translations en.yml (Kabyle)
* New translations en.yml (Ido)
* New translations en.yml (Taigi)
* New translations en.yml (Silesian)
* New translations en.yml (Standard Moroccan Tamazight)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Vietnamese)
* New translations en.json (Chinese Simplified)
* New translations en.yml (Sardinian)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Asturian)
* New translations en.json (Scottish Gaelic)
* New translations en.json (Welsh)
* New translations en.json (Galician)
* New translations en.json (Slovak)
* New translations en.json (Icelandic)
* New translations en.yml (Sanskrit)
* New translations en.yml (Corsican)
* New translations en.yml (Bengali)
* New translations en.yml (Esperanto)
* New translations en.yml (Marathi)
* New translations en.yml (Croatian)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations en.yml (Hindi)
* New translations en.yml (Malay)
* New translations en.yml (Telugu)
* New translations en.yml (Welsh)
* New translations en.yml (Uyghur)
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Tatar)
* New translations en.yml (Malayalam)
* New translations en.yml (Breton)
* New translations en.yml (Sinhala)
* New translations en.yml (Cornish)
* New translations en.yml (Kannada)
* New translations en.yml (Asturian)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.json (Sorani (Kurdish))
* New translations en.json (Greek)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Bulgarian)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (Basque)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Spanish, Mexico)
* New translations en.json (Marathi)
* New translations en.json (Bengali)
* New translations en.json (English, United Kingdom)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Tamil)
* New translations en.json (Croatian)
* New translations en.json (Persian)
* New translations en.json (Thai)
* New translations en.json (Malay)
* New translations en.json (Norwegian Nynorsk)
* New translations en.json (Kazakh)
* New translations en.json (Estonian)
* New translations en.json (Latvian)
* New translations en.json (Hindi)
* New translations en.json (Urdu (Pakistan))
* New translations en.json (Telugu)
* New translations en.json (Esperanto)
* New translations en.json (Indonesian)
* New translations en.json (Slovenian)
* New translations en.json (Chinese Traditional)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Hungarian)
* New translations en.json (Armenian)
* New translations en.json (Italian)
* New translations en.json (Georgian)
* New translations en.json (Lithuanian)
* New translations en.json (Macedonian)
* New translations en.json (Punjabi)
* New translations en.json (Ukrainian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.yml (English, United Kingdom)
* New translations en.json (Albanian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Uyghur)
* New translations en.json (Chinese Traditional, Hong Kong)
* New translations en.json (Corsican)
* New translations en.json (Silesian)
* New translations en.json (Taigi)
* New translations en.json (Ido)
* New translations en.json (Kabyle)
* New translations en.json (Sanskrit)
* New translations en.json (Sardinian)
* New translations en.json (Kurmanji (Kurdish))
* New translations en.json (Tatar)
* New translations en.json (Serbian (Latin))
* New translations en.json (Occitan)
* New translations en.json (Kannada)
* New translations en.json (Cornish)
* New translations en.json (Sinhala)
* New translations en.json (Breton)
* New translations en.json (Malayalam)
* New translations en.json (Standard Moroccan Tamazight)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Galician)
* New translations en.json (Chinese Traditional)
* New translations en.json (Greek)
* New translations en.json (Swedish)
* New translations en.json (Russian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Catalan)
* New translations en.json (Polish)
* New translations en.json (Latvian)
* New translations en.yml (Turkish)
* New translations en.json (Turkish)
* New translations en.json (Czech)
* New translations en.json (Slovenian)
* New translations en.json (Icelandic)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Vietnamese)
* New translations en.yml (Russian)
* New translations doorkeeper.en.yml (Russian)
* New translations en.yml (Japanese)
* New translations en.json (Japanese)
* New translations en.json (Danish)
* New translations en.json (Dutch)
* New translations en.json (Portuguese)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations simple_form.en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations devise.en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Breton)
* New translations en.json (Breton)
* New translations en.yml (Polish)
* New translations en.yml (Russian)
* New translations en.yml (Catalan)
* New translations en.yml (Korean)
* New translations en.yml (Spanish, Argentina)
* New translations en.json (Korean)
* New translations en.yml (Greek)
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Ukrainian)
* New translations en.yml (Czech)
* New translations en.json (Ukrainian)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese)
* New translations en.yml (Latvian)
* New translations en.yml (Hungarian)
* New translations en.json (Irish)
* New translations en.json (Irish)
* New translations en.json (Irish)
* New translations en.yml (Czech)
* New translations en.yml (Danish)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Galician)
* New translations en.yml (Galician)
* New translations simple_form.en.yml (Galician)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations devise.en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.yml (Slovenian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations simple_form.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Indonesian)
* New translations en.json (Indonesian)
* New translations en.json (Spanish)
* New translations en.yml (Spanish)
* New translations en.yml (Italian)
* New translations en.yml (Ido)
* New translations en.json (Ido)
* New translations en.json (French)
* New translations en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations en.yml (Russian)
* New translations en.yml (Russian)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
* Fix default message
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2 years ago
Claire
82dcdc12f1
Fix floating action button obscuring last element ( #18332 )
...
Fixes #18331
Add some padding below the last element of scrollable lists when the FAB is
shown in order for users to always be able to fully see the last element.
3 years ago
Stefano Pigozzi
02987b1191
Replace leftover `envelope` icons with `at` icons ( #18305 )
3 years ago
Eugen Rochko
c33a26ed38
Change "Conversations" back to "Direct messages" and add warning in web UI ( #18289 )
...
Partially reverts #18146
3 years ago
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
3 years ago
Eugen Rochko
95ea5b2f7d
Fix public timelines being inaccessible on one stage of responsive layout in web UI ( #17760 )
...
Fix #17756
3 years ago
mayaeh
24f375d79e
Change the "Explore" icon from fa-globe to fa-hashtag ( #17757 )
3 years ago
Eugen Rochko
f5346541fd
Add polls and media attachments to edit comparison modal in web UI ( #17727 )
3 years ago
Eugen Rochko
97eaac87fa
Remove profile directory link from main navigation panel ( #17688 )
3 years ago
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
3 years ago
Eugen Rochko
19b4c36e40
Add explore page to web UI ( #17123 )
...
* Add explore page to web UI
* Fix not removing loaded statuses from trends on mute/block action
3 years ago
Eugen Rochko
7e91581be0
Change report modal to include category selection in web UI ( #17565 )
...
* Change report modal to include category selection in web UI
* Various fixes and improvements
- Change thank you text to be different based on category
- Change starting headline to be different for account and status reports
- Change toggle components to have a checkmark when checked
- Fix report dialog being cut off on small screens
- Fix thank you screen offering mute or block if already muted or blocked
- Refactor toggle components in report dialog into one component
* Change wording on final screen
* Change checkboxes to be square when multiple options are possible
3 years ago
Eugen Rochko
948da1a958
Add edit history to web UI ( #17390 )
...
* Add edit history to web UI
* Change history reducer to store items per status
* Fix missing loading prop
3 years ago
Claire
8cfa8908eb
Fix incorrect use of old WebUI paths ( #16773 )
...
* Fix incorrect use of old WebUI paths
PR #16171 renamed some routes but missed some occurrences.
Without #16772 , this leads to unreachable routes in those cases.
* Fix floating action button being displayed on statuses and compose screen
3 years ago
Eugen Rochko
ce84967ee4
Change routing paths to use usernames in web UI ( #16171 )
3 years ago
Takeshi Umeda
810945c95b
Fix logout link not working in safari ( #16574 )
3 years ago
Claire
4166ecfedb
Add confirmation modal when closing media edit modal with unsaved changes ( #16518 )
...
* Add confirmation modal when closing media edit modal with unsaved changes
* Move focal point media state to redux so it does not get erased by confirmation dialog
* Change upload modal behavior to keep it open while saving changes
Instead of closing it immediately and losing changes if they fail to save…
* Make it work with react-intl 2.9
3 years ago
Claire
1d79ecf729
Fix minor code quality issues ( #16502 )
3 years ago
Claire
628e5823c3
Improve modal flow and back button handling ( #16499 )
...
* Refactor shouldUpdateScroll passing
So far, shouldUpdateScroll has been manually passed down from the very top of
the React component hierarchy even though it is a static function common to
all ScrollContainer instances, so replaced that with a custom class extending
ScrollContainer.
* Generalize “press back to close modal” to any modal and to public pages
* Fix boost confirmation modal closing media modal
3 years ago
David Sterry
b4d598b554
Fix #16407 ( #16432 )
3 years ago
Claire
f530f2bb2a
Fix OCR failure when erroneous lang data is in cache ( #16386 )
...
Fixes #15472
If the Tesseract worker fails at any point, re-try with cache settings that
overwrite the cache. It is difficult to catch more precise errors as those
are pretty opaque and do not occur when loading lang data but when trying to
detect text.
3 years ago
Mélanie Chauvel
96b09bb418
Fix dialog close button ( #16219 )
...
* Fix dialog close button being white on almost white
* Make dialog close button slightly bigger
4 years ago
Claire
24c66f14c9
Hide floating action button on onboarding page ( #16082 )
4 years ago
Claire
fb35c11084
Fix crash in old browsers ( #15985 )
...
Fixes #15984
4 years ago
Claire
c9a92dd35a
Fix compose form behavior in mobile view ( #15555 )
...
* Fix ComposeForm being mounted twice in mobile view
Fixes #13094
* Fix compose form focus and pre-selection behavior in mobile view
* Split _updateFocusAndSelection out of componentDidUpdate
4 years ago
Claire
c848e85068
Add dropdown for boost privacy in boost confirmation modal ( #15704 )
...
* Various dropdown code quality fixes
* Prepare support for privacy selection in boost modal
* Add dropdown for boost privacy in boost confirmation modal
4 years ago
ThibG
f1cf85d5a0
Fix OCR lang data failing to load ( #15519 )
...
Fixes #15472
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
4 years ago
Takeshi Umeda
e90b31f176
Fix expand video on public page ( #15469 )
4 years ago
ThibG
58a3eaccba
Fix column swiping animation logic ( #15301 )
...
From the start, swiping columns was highly unreliable because the logic
could change `ReactSwipeableViews`'s `animateTransitions` property
mid-swipe.
PR #11200 partially fixed this, but at the unintended cost of disabling the
swipe animation altogether.
This PR changes the logic behind `shouldAnimate` to only disable the swiping
animation at the end of a column change not initiated by `ReactSwipeableViews`.
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
4 years ago
Eugen Rochko
7e7f69dfed
Fix unnecessary re-rendering of various components when typing in web UI ( #15286 )
4 years ago
Eugen Rochko
de8c539b7b
Fix not being able to open audio modal in web UI ( #15283 )
...
Fix #15280
Also adds the new action bar and blurhash-based background
color to audio and video modals
4 years ago
Eugen Rochko
c3d62dcf8a
Fix media modal crashing when media has no blurhash ( #15229 )
4 years ago
Eugen Rochko
af1fa584e9
Change media modals look in web UI ( #15217 )
...
- Change overlay background to match color of viewed image
- Add interactive reply/boost/favourite buttons to footer of modal
- Change ugly "View context" link to button among the action bar
4 years ago
abcang
144e606ec9
Fixed ESLint error ( #15214 )
...
* eslint --fix
* fix consistent-return
* fix promise/catch-or-return
* ignore import rule
4 years ago
Eugen Rochko
bcb3a91c0c
Fix hardcoded frame rate for frame by frame video navigation in web UI ( #15198 )
4 years ago
Mashiro
7f3497bd7f
Add limitation of image's max zoom rate (max to the original size of image) ( #15094 )
...
* limit image max scale rate to fit the actual image size
* replace with MIN_SCALE
* fix behavior on touch screen
4 years ago
dependabot[bot]
88dd5d3ee1
Bump detect-passive-events from 1.0.5 to 2.0.1 ( #15003 )
...
* Bump detect-passive-events from 1.0.5 to 2.0.1
Bumps [detect-passive-events](https://github.com/rafgraph/detect-passive-events ) from 1.0.5 to 2.0.1.
- [Release notes](https://github.com/rafgraph/detect-passive-events/releases )
- [Commits](https://github.com/rafgraph/detect-passive-events/compare/v1.0.5...v2.0.1 )
Signed-off-by: dependabot[bot] <support@github.com>
* Migrate to detect-passive-events v2
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
4 years ago
Mashiro
00c6280294
add mouse scroll lock in image expand view ( #15088 )
...
* add mouse scroll lock in image expand view
* enhancement
4 years ago
Mashiro
315356cf23
Add expand/compress image button on image view box ( #15068 )
...
* add zoom image button
* enhance zoom algorithm & add translation
* code structure
* code structure
* code structure
* enhance grab performance
* rm useless state
* fix behavior on Firefox & scroll lock & horizontal scroll with mousewheel
* remove scroll lock on MouseWheelEvent
* code structure
* enhance algorithm and code structure
* rm Gemfile.lock from tree
* codeclimate
* fix a stupid mistake
4 years ago
Mélanie Chauvel
f7eae6d264
Make visibility icon clickable as part of the time of a toot ( #15053 )
...
- Makes permalink to a toot more easily clickable
- Fix clicking between icon and time in fact clicking the display name
- Fix clicking slightly under time in fact clicking the display name
4 years ago
mayaeh
f1b2eea474
Fix strings that could not be translated ( #14980 )
4 years ago
Eugen Rochko
10ff8b1205
Change how missing desktop notifications permission is displayed ( #14985 )
...
Add missing controls for new notification type
4 years ago
ThibG
ce87767572
Change how CDN_HOST is passed down to make assets build reproducible ( #14381 )
...
* Change how CDN_HOST is passed down to make assets build reproducible
* Change webpacker/webpack configuration to dynamically load publicPath based on meta header
* Fix embedded layout missing the cdn-host meta header
4 years ago
OSAMU SATO
ba9252b32d
Add duration parameter to muting. ( #13831 )
...
* Adding duration to muting.
* Remove useless checks
4 years ago
ThibG
592fa427e3
Fix browser notification permission request logic ( #13543 )
...
* Add notification permission handling code
* Request notification permission when enabling any notification setting
* Add badge to notification settings when permissions insufficient
* Disable alerts by default, requesting permission and enable them on onboarding
4 years ago
ThibG
79b2d30a19
Add option to disable swiping motions across the WebUI ( #13885 )
...
Fixes #13882
4 years ago
Eugen Rochko
fc497420e9
Add pop-out player for audio/video in web UI ( #14870 )
...
Fix #11160
4 years ago