Commit Graph

230 Commits

Author SHA1 Message Date
885711afb9 Fix off-by-one error in aria-posinset (#8388)
Fix #8191
2018-08-23 18:28:59 +02:00
66dbb59aa1 Add aria-label to column regions (#8390)
Fix #4485
2018-08-23 17:26:21 +02:00
8fe1f8d4ce Make dropdown animations respect their placement (#8292)
* Make dropdown animations respect their placement

Also fix the corner radius on the privacy dropdown button when using top placement

* Fix code style issue
2018-08-19 17:11:12 +02:00
025fbb8285 Show compose form on delete & redraft when in mobile layout (#8277)
Fix #8274
2018-08-19 03:17:01 +02:00
298ee84488 Fix #8264 - Do not override ctrl/cmd+click. (#8265)
This includes clicks on hashtags, mentions, display names and media in the
timeline; and usernames in reply-indicator, detailed status, and the boost
modal.
2018-08-18 12:50:32 +02:00
4df9cabb22 Display replies count in web UI (#8181) 2018-08-15 19:29:52 +02:00
06c83527f5 Do not scroll up when modal is opened (#8095) 2018-07-29 16:52:06 +02:00
bb71538bb5 Redesign public profiles and toots (#8068) 2018-07-28 19:25:33 +02:00
ac82c9380f Display full username in tooltip on search and autosuggest #7478 (#7920) 2018-07-01 04:16:13 +02:00
cdb101340a Keyword/phrase filtering (#7905)
* Add keyword filtering

    GET|POST       /api/v1/filters
    GET|PUT|DELETE /api/v1/filters/:id

- Irreversible filters can drop toots from home or notifications
- Other filters can hide toots through the client app
- Filters use a phrase valid in particular contexts, expiration

* Make sure expired filters don't get applied client-side

* Add missing API methods

* Remove "regex filter" from column settings

* Add tests

* Add test for FeedManager

* Add CustomFilter test

* Add UI for managing filters

* Add streaming API event to allow syncing filters

* Fix tests
2018-06-29 15:34:36 +02:00
45b5e60909 Fix Chrome issue with sizes="0px" (#7886)
"Do not dumb here. Not dumb area here."
2018-06-25 00:12:15 +02:00
bd0791d800 Add redraft function (#7735)
* Add redraft function

Fix #7010

* Add explicit confirmation

* Add explicit confirmation message
2018-06-05 00:17:38 +02:00
1bbe81030c Display numbers in account header using shortNumberFormat for consistency (#7723) 2018-06-04 05:15:50 +02:00
691107263c Put the CW field between the toot we are replying to and the toot field (#7508)
* Remove Collapsable and use CSS instead

* Put the CW field between the toot we are replying to and the toot field

* Use same spacing between all fields in the composing column
2018-05-31 15:16:31 +02:00
1a7a74ff76 Improve getting started column (#7676)
* Adjust footer of getting started column

- Improved style
- Moved hotkeys, about this instance and logout to footer
- Removed FAQ, User Guide, Apps links
- Use hamburger icon for the column

* Add edit profile action button to profile and more to dropdown

* Add "Trending now" to getting started column

* Add preferences/security links on mobile layout
2018-05-30 18:41:47 +02:00
90b64c0069 Always display tab navigation on local/federated timeline even when empty (#7663)
Fix #7659
2018-05-29 02:01:04 +02:00
22e067bf5c Use real container width in MediaGallery srcSet (#7571)
Fix #7568
2018-05-21 16:04:01 +02:00
d9b2f84c92 Open video modal on public UI (#7469) 2018-05-13 13:48:14 +02:00
e0b1e17bd0 Show media modal on public timeline (#7413) 2018-05-08 13:33:09 +02:00
e06fbc4fcf Fixes/rollback scroll changes (#7387)
* Revert "Do not re-position scroll when loading more (inserting items from below) (#7344)"

This reverts commit 8c601b54cc.

* Revert "Prevent timeline from moving when cursor is hovering over it (fixes #7278) (#7327)"

This reverts commit 58852695c8.
2018-05-06 22:26:39 +02:00
ef7d64c801 Dropdowns accessibility (#7318)
* Mark currently selected privacy setting in privacy dropdown

* Prevent Enter keypresses from triggering dropdown display toggle twice

* Give focus to first/selected item of dropdown menus

* Implement keyboard navigation in privacy dropdown

* Implement keyboard navigation in generic dropdown menus
2018-05-04 22:13:26 +02:00
8c601b54cc Do not re-position scroll when loading more (inserting items from below) (#7344) 2018-05-03 22:32:05 +02:00
58852695c8 Prevent timeline from moving when cursor is hovering over it (fixes #7278) (#7327) 2018-05-03 12:09:11 +02:00
660cb058e1 Improve relative timestamps in web UI (#7233)
Use short instead of numeric month, display year when different year

E.g.: "Apr 4" instead of "4/4", "Apr 4, 2017" if different year
2018-04-23 00:43:53 +02:00
84214b864c Ignore keyevents during text composition (#7205)
KeyboardEvent.key may be physical key name (Escape, Tab, etc.)
even in text composition and it causes hotkeys or suggestion selection.
So we need to check e.which or e.isComposing.

Checking e.which also allows us to avoid Esc key on compositionend in Safari.
2018-04-20 18:36:52 +02:00
23106844a1 Fix the hot key (j, k) does not function correctly when there is a pinned toot in account timeline. (#7202)
* Fix the hot key (j, k) does not function correctly when there is a pinned toot in account timeline.

* Fix typo

* Add custom attribute prefix
2018-04-20 18:14:21 +02:00
ee2e0f694a Fix #6157: boosting own private toots (#7200)
* Fix boosting own private toots.

* Run yarn manage:translations and update Japanese translations.
2018-04-20 14:58:33 +02:00
4e35ce8269 Fix Esc hotkey behavior (#7199)
This fixes following cases which causes hotkey action accidentally:

* hitting Esc key to cancel text composition (mostly in CJK)

  Although events on cancelling composition are still heavily
  browser / input method dependent, but this implementation would
  covers current UI Events spec and some exceptions.

* hitting Esc key to close autocomplete suggestions

This PR changes to use keydown event instead of keyup event as well as other hotkeys.
2018-04-20 14:04:16 +02:00
fad7b9f5f2 Adds keyboard hotkey for revealing/hiding statuses (#7173)
Resolves #5550
2018-04-18 03:33:59 +02:00
e5dd385431 Allow boosting own private toots (#6157)
* Adjust policy to allow boosting own private toots

* Add ability to reblog private toots from dropdown menu
2018-04-17 23:35:45 +02:00
7e0aed398f Fix scrolling behavior (#7151)
* Update React.JS

* Use React's new lifecycles for scrollable lists

* Clean up dead code

* Make CodeClimate happy
2018-04-16 21:04:24 +02:00
45c9f16f71 Improve load gap styling in web UI (#7100) 2018-04-10 17:12:10 +02:00
904a2479dd Feature: Direct message from Statuses (#7089)
* Fix: Switching between composing direct message and mention from menus

Previously clicking "direct message" followed by "mention" resulted in the composed status staying as "direct", along with weird spacing of items in the text area. This attempts to fix that.

* Fix: Add missing proptype check for onMention in Status component

* Add the ability to send a direct message to a user from the menu on Statuses

* Add space between "Embed" and "Mention" on expanded statuses menu
2018-04-09 17:09:11 +02:00
fb3dc00dda Ignore AbortError when cancelled sharing (#6978)
`navigator.share()` rejects Promise if user cancelled sharing, and it may
print it as an error on JavaScript console.

This patch ignores it and prints other errors on the console.
2018-03-31 13:16:38 +02:00
a6c129ddbd Add some UI for user-defined domain blocks (#6628)
* Keep list of blocked domains

Might be overkill, but I'm trying to follow the same logic as for blocked users

* Add basic domain block UI

* Add the domain blocks UI to Getting Started

* Fix undefined URL in `fetchDomainBlocks`

* Update all known users' domain_blocking relationship instead of just one's
2018-03-30 12:38:00 +02:00
18965cb0e6 feat(ShowMore): Add classname to show more/show less button (#6904) 2018-03-26 13:59:44 +02:00
9a1a55ce52 Allow clients to fetch statuses made while they were offline (#6876) 2018-03-24 15:25:15 +01:00
ff7941e652 Show media modal on public pages (#6801) 2018-03-24 12:52:26 +01:00
8bf3e750ab Fix #6757: Adjust RTL styles for landing page (#6768) 2018-03-13 08:14:08 +01:00
56eb5c3f34 Fix focal point cropping in MediaGallery, fix focal point modal (#6740)
* Use object-position with object-fit instead of JS top/left

* Fix focal point modal
2018-03-11 15:12:33 +01:00
b6003afcdb Add show more/less toggle for entire threads in web UI (#6733)
Fix #1258
2018-03-11 09:52:59 +01:00
11697d6894 Fix thumbnail not filling entire space sometimes (#6709) 2018-03-09 11:33:05 +01:00
b79ab15859 When enabled, always display media in gallery. Also: click to reveal (#6692)
Fix #6677
2018-03-08 08:57:21 +01:00
77406d3a09 Display AttachmentList in notifications (#6693) 2018-03-08 08:22:04 +01:00
86a9de6753 Display AttachmentList in timelines in compact style when media missing (#6680) 2018-03-08 04:54:26 +01:00
b170627ceb Fix cover behaviour of thumbnails that are wider than taller (#6678) 2018-03-07 12:02:05 +01:00
cfa9b6e13a Remove text requirement when media attached from statuses (#6672) 2018-03-07 08:28:52 +01:00
913a38111f Remove pointer events on the entire UI when a dropdown menu is open (#6648)
* Remove pointer events on the entire UI when a dropdown menu is open

This prevents operations to change the location of the menu such as
scrolling.

* Fix mistake from merge
2018-03-07 02:26:43 +01:00
b0664a5e6c Replace onScrollToBottom with onLoadMore (#6615)
onScrollToBottom was a function to run instead of onScrollToTop and
onScroll when scrolling to the bottom. The behavior to prevent
onScrollToTop was inconvenient because the viewport can be at the bottom
and at the top at the same time if the viewport is larger than the
container.

onScrollToBottom was also called when the button to load more is clicked
on contray to the name suggests, which led notifications and
status_list_container components to mark the scrolled location is not at
the top mistakenly.

onLoadMore is a replacement for onScrollToBottom. It will be called
independently from onScrollToTop and onScroll.
2018-03-05 19:31:40 +01:00
f6a8d835d3 Place dropdown menu top if it is closer to the bottom of the viewport (#6641) 2018-03-05 19:28:56 +01:00