Commit graph

211 commits

Author SHA1 Message Date
Thibaut Girka
f2b7ab4523 Hide items rendered out-of-frame (once they have been rendered at least once) 2019-02-10 22:54:25 +01:00
Thibaut Girka
a9078c18eb Fix CW unfolding not triggering re-layout in public hashtag page 2019-02-06 15:32:48 +01:00
Thibaut Girka
fba0f7dae7 [Glitch] Replace unlock-alt icon with unlock
Port 4fb1d8129d to glitch-soc
2019-02-01 16:15:44 +01:00
Thibaut Girka
8219940214 [Glitch] Redesign public hashtag page to use a masonry layout
Port 380b246728 to glitch flavour
2019-01-20 11:38:09 +01:00
Thibaut Girka
426673f17a [Glitch] Make hashtag search results link to the hashtag URL
Port 65c546f9b0 to glitch-soc
2019-01-16 14:25:58 +01:00
Thibaut Girka
fc64d1d03e [Glitch] Stop gifv timeline preview explicitly when open the media gallery
Port 2a113f0185 to glitch-soc
2019-01-10 21:00:33 +01:00
Thibaut Girka
e495dc0134 [Glitch] refactored account.js
Port 695de5d134 to glitch-soc
2019-01-10 21:00:33 +01:00
Thibaut Girka
ba82ff7c12 [Glitch] Only consider mouse move in scrolling on item insertion
Port 4e067b1bd0 to glitch-soc
2019-01-10 12:09:12 +01:00
Thibaut Girka
069657286f [Glitch] Identify manual scrolling to cancel scroll to top reset on mouse idle
Port 59ecfbd28c to glitch-soc
2019-01-10 12:09:12 +01:00
Thibaut Girka
d768d0b851 [Glitch] Cancel list scroll reset after mouse move on wheel scroll
Port 54bc905a57 to glitch-soc
2019-01-10 12:09:12 +01:00
Thibaut Girka
f4191a8a00 [Glitch] Temporarily hold timeline if mouse moved recently
Port 6e72dda7ef to glitch-soc
2019-01-10 12:09:12 +01:00
Thibaut Girka
e5a25656e8 [Glitch] Fix unnecessary loadMore calls when the end of a timeline has been reached
Port 240d41b3ca to glitch flavour
2018-12-23 11:40:52 +01:00
Thibaut Girka
d9a6c27f3b Fix composer not getting focus after reply confirmation dialog
The modal-handling code gives back focus to the element focused when the
modal opened. However, in the case of reply confirmation, it would do so
*after* the composer code itself requested focus.
2018-12-21 20:00:49 +01:00
Thibaut Girka
7d437f7fc9 [Glitch] Back to the getting-started when pins the timeline
Port f579f1b10e to glitch-soc
2018-12-20 14:51:28 +01:00
Thibaut Girka
677f430f23 [Glitch] Always display tab navigation on local/federated timeline even when empty
Port bc464619f3 to glitch-soc
2018-12-18 21:39:35 +01:00
Thibaut Girka
9fd8019854 [Glitch] Fix “load more” button when no data has been fetched 2018-12-13 15:00:36 +01:00
Thibaut Girka
50f8e59820 [Glitch] Do not display empty message when the list is known to have more elements 2018-12-13 15:00:36 +01:00
Thibaut Girka
a68d1d0ee2 Minor cleanup in ScrollableList component 2018-12-13 15:00:36 +01:00
Thibaut Girka
c37a81a5d7 Do not hardcode preferences link, pleroma doesn't have it 2018-11-28 22:36:01 +01:00
Thibaut Girka
cb2822b68a Add error boundary component to catch Web UI crashes 2018-11-28 22:36:01 +01:00
Thibaut Girka
e80f770118 Render placeholder instead of image when MediaGallery container width isn't known 2018-11-25 11:29:56 +01:00
Thibaut Girka
e7c0ad6ac4 Move URLs to backend in their own file 2018-11-19 15:56:38 +01:00
Thibaut Girka
ca163ec35d In detailed status view, take displayMedia setting into account when changing media
Fixes #819
2018-11-15 16:38:50 +01:00
Thibaut Girka
b22501154e [Glitch] Prepend account header even when status list is empty
Partially port bc464619f3
2018-11-13 15:54:04 +01:00
Thibaut Girka
f40a7b2616 [Glitch] Use local instead of global loading indicator for timelines, account timelines
Port 9a32abcbac to glitch-soc
2018-11-13 15:54:04 +01:00
Thibaut Girka
8bef422043 Add a local setting for inline preview cards 2018-10-30 17:51:06 +01:00
Thibaut Girka
4fe81a99c6 Add a “link” status icon for toots with a preview card 2018-10-30 17:51:06 +01:00
Thibaut Girka
18870c45f1 [Glitch] Include preview cards in status entity in REST API
Port cf2ab9c394 to glitch-soc
2018-10-30 17:51:06 +01:00
Thibaut Girka
1a63a8f74e [Glitch] Surround mid-text display names with bdi tags
Port 19aaf0e99f to glitch-soc
2018-10-22 18:57:20 +02:00
Thibaut Girka
9614abc713 Update mediaGallery component's width when opening CWs 2018-10-21 16:09:07 +02:00
Thibaut Girka
b4bab7eb35 Do not scroll timelines when *closing* media modals
Media modals push an history state so that pressing back on mobile closes them.
We made sure to not scroll when opening them, but not when *closing* them,
which caused some issues in rare cases.
2018-10-07 12:08:32 +02:00
Thibaut Girka
1476e653ec Make hidden media clickable in account media gallery 2018-10-02 22:00:57 +02:00
Thibaut Girka
536d95ae7c [Glitch] Add support for new display_media setting
Port bb8afc4608 to glitch-soc

[API] [vanilla required] [glitch-soc optional] initial_state show_sensitive_media boolean changed to show_media string with options "default", "hide_all", "show_all"
2018-10-01 16:48:55 +02:00
Spencer Alves
981a41ca2c Add option to hide action bar in collapsed toots 2018-09-30 08:31:50 +02:00
David Yip
d698c06aa8 Merge pull request #681 from ThibG/glitch-soc/fixes/accessibility
Port various accessibility improvements from upstream
2018-09-29 19:01:19 -05:00
Thibaut Girka
6af379cf53 Prevent clicks on video from initiating selections 2018-09-21 12:56:13 +02:00
Thibaut Girka
85befb90b2 Improve keyboard VS mouse navigation of dropdown menus 2018-09-13 20:32:08 +02:00
Thibaut Girka
44192cb9d2 Only focus first item of dropdown if it was opened via keyboard 2018-09-13 20:32:08 +02:00
Thibaut Girka
d465da45b4 Pause video playback if toot is collapsed or CWs folded (fixes #146) 2018-09-05 11:58:56 +02:00
Thibaut Girka
8099901c9a Disable focus points for letterboxed media 2018-09-04 13:31:55 +02:00
Thibaut Girka
4567e42341 Media gallery styling closer to upstream's 2018-09-04 13:31:55 +02:00
Thibaut Girka
d83eb4f9c7 [Glitch] Do not override ctrl/cmd+click in media gallery 2018-09-04 13:31:55 +02:00
Thibaut Girka
34ecec8c85 Add admin links to status and account menus (fixes #673)
If the current logged-in user is an admin, add quick links to the admin
interface in account and toot dropdown menu. Suggestion by @ashkitten
2018-09-03 18:19:11 +02:00
Thibaut Girka
7ed6f60a74 Fixes columns scrolling to top when opening media modal
Fixes #700
2018-09-03 14:24:10 +02:00
Thibaut Girka
46166b8676 [Glitch] Give focused status a sensible aria-label for screen readers
Port f922c683ce to glitch-soc
2018-08-31 19:49:51 +02:00
Thibaut Girka
d4315a279d [Glitch] Fix off-by-one error in aria-posinset
Port 8793403289 to glitch-soc
2018-08-31 19:49:29 +02:00
Thibaut Girka
4aa1be379e [Glitch] Add aria-label to column regions
Port f530792615 to glitch-soc
2018-08-31 19:49:29 +02:00
Thibaut Girka
ff18ba0d2b Add option to not automatically unfold content warnings matching a regexp
Fixes #678
2018-08-31 18:35:03 +02:00
Thibaut Girka
02c32ad7af Add a setting to automatically unfold all content warnings 2018-08-31 18:35:03 +02:00
Thibaut Girka
a3afd0791d [Glitch] Show compose form on delete & redraft when in mobile layout
Port 97a2958ba1 to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka
11dc01f83e [Glitch] Add CSS class to replies
Port ae562f4d2b to glitch-soc
2018-08-28 19:52:47 +02:00
Thibaut Girka
1295515bd4 [Glitch] Add missing video descriptions
Port 5b773a2c9c to glitch-soc
2018-08-27 20:21:23 +02:00
Thibaut Girka
c4a536917c [Glitch] Update state when opened dropdown is unmounted
Port dcd3544d153dd2a3961bd0d2214ed01a902a66da to glitch-soc
2018-08-23 22:58:14 +02:00
Thibaut Girka
8db23dd477 Add glitch-soc local setting to display reply counters
Defaults to false.
2018-08-22 20:29:55 +02:00
Thibaut Girka
e48709fb0e [Glitch] Display replies count in web UI
Port 6a62016a49 to glitch-soc
2018-08-22 20:29:55 +02:00
Thibaut Girka
30d88cee78 Add hashtag trendline support to glitch-soc flavour
Port Mastodon's hashtag stats thing to glitch-soc.
This doesn't change how hashtags are ordered, and doesn't add a trending
hashtags section, but it does change how hashtag searches are rendered,
displaying a trend line alongside each hashtag.
2018-08-22 19:27:06 +02:00
Thibaut Girka
ac67589755 Don't prevent opening links in tabs with keyboard modifiers
Ctrl+click usually allows opening a link in a new tab. This
was prevented for hashtag or user links in toots.
2018-08-11 15:29:08 +02:00
Thibaut Girka
28cdf3da09 [Glitch] Show media modal on public timeline
Port c1427f90f6 to glitch-soc
2018-08-01 00:18:42 +02:00
Thibaut Girka
ca256cca22 Port profile redesign to glitch-soc
Port 13df3889f0 to glitch-soc
2018-08-01 00:18:42 +02:00
Thibaut Girka
4e8532cc1a Allow modals to be closed by pressing “back” 2018-07-30 14:32:02 +02:00
Thibaut Girka
0ef509c27a Get rid of Collapsable, use CSS instead
Change inspired by a6ddd1aba2
2018-07-28 23:25:42 +02:00
Thibaut Girka
4850a2348c Add client-side custom filter support to glitch-soc
Port d878e3e945 to glitch-soc,
but without dropping support for regexp filters yet.
2018-07-10 14:06:04 +02:00
Thibaut Girka
a68e7db2fb [Glitch] Fix Chrome issue with sizes="0px" 2018-07-10 10:53:36 +02:00
Thibaut Girka
d8c35a6b85 [Glitch] Add redraft function
Port 16173535d9 to glitch-soc
2018-06-16 15:09:28 +02:00
David Yip
4b7ceed3f0 Merge pull request #509 from ThibG/glitch-soc/fixes/router-history-navigation
Use history.state to decide whether we should goBack() or go to / (fixes #247)
2018-06-06 23:56:48 -05:00
David Yip
1a0491b3cf Merge pull request #519 from ThibG/glitch-soc/fixes/status-node-null
Prevent a rare crash when a status' root node is undefined
2018-06-02 16:19:06 -05:00
David Yip
c10df6cf00 Merge pull request #501 from ThibG/glitch-soc/features/red-bookmarks
Make active bookmarks red (fixes #493)
2018-06-01 00:36:48 -05:00
Spencer Alves
559ce5c098 Adjust spacing between status icons 2018-05-31 21:55:44 -07:00
Spencer Alves
c86cd2041d Merge branch 'glitch' into thread-icon 2018-05-31 21:33:16 -07:00
Thibaut Girka
93e6984be8 Make active bookmarks red (fixes #493) 2018-05-31 14:39:48 +02:00
Thibaut Girka
37dc96b71b Use history.state to decide whether we should goBack() or go to / (fixes #247)
So far, glitch-soc used history.length to decide whether to call `goBack()` or
go to / in order to not leave the webUI. This made clicking the “Back” button
go to the “Getting started” column instead of going back in the browser's
history when such an action would leave the web UI, but also when:
- The WebUI is refreshed (F5)
- A tab is restored
- The history length reaches its maximum (e.g., 50 in Firefox)

This commit fixes these shortcomings by checking `window.history.state`.
Indeed, we only want to go back in the browser's history when the current
location has been reached from within the WebUI, which only happens via
`pushState` as far as I know. Since browser store the serialized state in
the browser history, this also survives page reload and session restoration.
2018-05-31 14:39:02 +02:00
Thibaut Girka
0174ca8679 Prevent a rare crash when a status' root node is undefined 2018-05-31 14:38:29 +02:00
Thibaut Girka
febaae28f4 [Glitch] Improve load gap styling in web UI
Port 93a1afb66c to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka
7a953db0b6 [Glitch] Allow clients to fetch statuses made while they were offline
Port 34cb1a5461 to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka
5ad747727f [Glitch] Replace onScrollToBottom with onLoadMore
Port 01d10b0bd8 to glitch-soc
2018-05-27 20:40:58 +02:00
Thibaut Girka
3315877afe Fix width only being set for standalone media 2018-05-21 18:25:41 +02:00
Thibaut Girka
df3fa2cb78 [Glitch] Use real container width in MediaGallery srcSet
Port 765a8dad9a to glitch-soc
2018-05-21 17:55:07 +02:00
Thibaut Girka
72c5d3dd80 Prevent click on video from opening detailed toot 2018-05-18 17:49:51 +02:00
Thibaut Girka
b6133837ad Widen clickable area of toots 2018-05-18 17:33:58 +02:00
Thibaut Girka
4c835854d6 [Glitch] Open video modal on public UI
Port efc482361b to glitch-soc
2018-05-17 18:37:00 +02:00
Thibaut Girka
c77a4d8c51 [Glitch] Feature: Direct message from Statuses
Port 7a06bd7085 to glitch-soc
2018-05-16 19:45:30 +02:00
Thibaut Girka
336d5fecdb Fix root modal's keyup handling (Fixes #478) 2018-05-11 22:42:32 +02:00
Spencer Alves
31d760f56d Add an extra icon to indicate that a status is part of a conversation 2018-05-07 22:10:34 -07:00
Thibaut Girka
3333cce41e Hide media in report modal regardless of whether they are marked sensitive
The rationale behind this is that if the user wants to report violent media,
they might not want to see it repeatedly. The “sensitive” property is still
kept, displaying different messages for hidden media depending on whether
they are marked as sensitive.
2018-05-07 15:00:55 +02:00
Thibaut Girka
04a8aef9d2 Revert "[Glitch] Prevent timeline from moving when cursor is hovering over it"
This reverts commit 1c75c7901f.
2018-05-06 21:50:33 +02:00
Thibaut Girka
82421dc2e2 Revert "[Glitch] Do not re-position scroll when loading more (inserting items from below)"
This reverts commit ca62d8bcc6.
2018-05-06 21:50:26 +02:00
beatrix
f5f840cdb3 Merge pull request #462 from ThibG/glitch-soc/features/dropdowns-accessibility
Improve accessibility of toot dropdown menu
2018-05-06 12:12:20 -04:00
Thibaut Girka
ca62d8bcc6 [Glitch] Do not re-position scroll when loading more (inserting items from below)
Port 554653a423 to glitch-soc
2018-05-05 17:18:55 +02:00
Thibaut Girka
1c75c7901f [Glitch] Prevent timeline from moving when cursor is hovering over it
Port 9188537f5f to glitch-soc
2018-05-05 17:18:25 +02:00
Thibaut Girka
eea6b78afc Improve accessibility of toot dropdown menu
* Prevent Enter keypresses from triggering dropdown display toggle twice
* Give focus to first/selected item of dropdown menus
* Implement keyboard navigation in generic dropdown menus

Partial port from ef7d64c801 to glitch-soc
2018-05-05 17:11:48 +02:00
Thibaut Girka
41fe73f35c [Glitch] Improve relative timestamps in web UI
Port 07e5dcb65f to glitch-soc flavour
2018-05-02 13:45:40 +02:00
Thibaut Girka
2ed804d4ca Use new getDerivedStateFromProps instead of deprecated componentWillReceiveProps
As we are already using the new getSnapshotBeforeUpdate lifecycle method,
we apparently cannot use the deprecated ones at all in this component.
2018-04-27 01:24:55 +02:00
Thibaut Girka
8be1573a6e Tentative fix for #446 2018-04-27 00:59:36 +02:00
beatrix
cd9c602a0e Merge pull request #401 from ThibG/glitch-soc/features/unfold-thread
Port the “unfold thread” feature from Mastodon's UI to glitch-soc flavour
2018-04-26 11:34:14 -04:00
Thibaut Girka
bc3be9ac5b [Glitch] Fix the hot key (j, k) does not function correctly when there is a pinned toot in account timeline.
Port 23106844a1 to glitch-soc
2018-04-22 23:11:16 +02:00
Thibaut Girka
4e4a5fc1ad Add show more/less toggle for entire threads in web UI
Inspired from b9b01bf14a but using component
properties instead of redux store for hidden/revealed state.
2018-04-22 19:19:01 +02:00
Thibaut Girka
5ab80ffadd Refactor the infamous three-valued boolean into two booleans, trying to simplify the logic 2018-04-22 19:18:15 +02:00
Thibaut Girka
a51aa91caf [Glitch] Fix button hiding when header title is too long
Port 95da1b3351 to glitch-soc
2018-04-22 19:17:10 +02:00
Thibaut Girka
8c190e6235 [Glitch] Fix column headers accessibility
Port c6d5ea8695 to glitch-soc.

SCSS fix inspired by 4cf5144099.
2018-04-22 19:17:10 +02:00
beatrix
64f74da493 Merge pull request #432 from ThibG/glitch-soc/features/reblog-private
Glitchsoc-specific changes to allow boosting own private toots
2018-04-22 12:32:58 -04:00