Nolan Lawson
f0af8178af
feat: implement "." keyboard shortcut ( #1105 )
...
fixes #1052
2019-03-18 09:09:24 -07:00
Nolan Lawson
5aac6a213a
test: improve emoji test ( #1056 )
...
trying to make this test less flakey
2019-02-28 08:56:38 -08:00
Nolan Lawson
63003c3763
fix: fix aria-posinset should be 1-based ( #1055 )
...
* fix: fix aria-posinset should be 1-based
fixes #1053
* second attempt to fix tests
* try to fix test
* fixup
* lint fix
* fix more tests
* simplify test math
2019-02-28 08:56:25 -08:00
Nolan Lawson
d711b37165
test: add tests for image/video modals ( #1045 )
...
should ensure #1042 does not happen again
2019-02-23 21:10:15 -08:00
Nolan Lawson
fabf9399f2
fix: use static server for node server.js
( #1041 )
...
* fix: use static server for `node server.js`
Aligns the Node server with the Zeit server. Fixes #1019
* fix test
2019-02-23 16:09:48 -08:00
Nolan Lawson
31a6ec6857
chore: make test less flaky ( #1038 )
2019-02-23 12:32:10 -08:00
Nolan Lawson
c9ca605cfe
fix: fix keyboard shortcuts for pinned toots ( #1033 )
...
* fix: fix keyboard shortcuts for pinned toots
fixes #908
* fix test
2019-02-23 09:47:36 -08:00
Nolan Lawson
11e918dd50
fix: fix keyboard shortcuts on thread ( #1031 )
...
* fix: fix keyboard shortcuts on thread
fixes #1029
* fix test
2019-02-22 20:35:13 -08:00
Nolan Lawson
42e466f3c2
fix: j/k shortcuts correctly set active element ( #1028 )
...
fixes #1018
2019-02-21 23:50:27 -08:00
Nolan Lawson
a63e85bf30
feat: report an account or toots ( #1016 )
...
fixes #736
2019-02-18 19:55:44 -08:00
Nolan Lawson
7a152fbdac
feat: allow muting notifications when muting ( #1013 )
...
fixes #738
2019-02-18 15:43:41 -08:00
Nolan Lawson
58d1f62b2b
feat: implement web share target ( #980 )
...
fixes #974
2019-02-13 18:38:44 -08:00
Nolan Lawson
74ab056f18
fix: fix notification m/p keyboard shortcuts ( #907 )
...
fixes #905
2019-01-19 23:52:39 -08:00
Nolan Lawson
45d70e8e6b
feat: add more keyboard shortcuts ( #904 )
...
* feat: add more keyboard shortcuts
largely fixes #895
* oops wrong test name
2019-01-19 16:40:31 -08:00
Nolan Lawson
b014778761
fix: fix keyboard shortcuts in notifications ( #903 )
...
fixes #894
2019-01-19 16:04:06 -08:00
Nolan Lawson
4a6f7b74a4
feat: 1-6 hotkeys switch columns ( #888 )
2019-01-13 14:02:08 -08:00
Stephane Zermatten
c2bd2f306a
feat: Add support for keyboard shortcuts ( #870 )
...
* Add support for keyboard shortcuts.
This change introduces a Shortcut component for defining global
keyboard shortcuts from whichever component makes more sense.
This change also adds an initial set of navigation shortcuts:
- Backspace to leave a modal dialog or to go back
- g t to go to the federated timeline
- g f to go to the favorite page
- g h to go to the home page
- g n to go to the notification page
- g c to go to the community page
- s to go to the search page
These shortcuts are loaded asynchronously from _layout.html
In modal dialogs, shortcuts are also modal, to avoid strange or
overly complex behavior. This is implemented by grouping
shortcuts into scopes, and activating a separate 'modal' scope
when entering a modal dialog, so a separate set of shortcuts can
be enabled in modal dialog. Modal dialogs can be exited by
pressing 'Backspace'.
* Navigate up/down lists using keyboard shortcuts.
This change introduces keyboard shortcuts for navigating in lists and
virtual lists. j or arrow up selects the next element, k or arrow down,
the previous element. Selecting an element scrolls the list up and down,
as necessary.
This change also allows directing keyboard shortcuts to the active
element and defines the following shortcuts, for the active status:
- f to favorite or unfavorite it
- b to boost or unboost it
- r to reply to it
- o to open its thread
- x to toggle the display of a CW
- y to toggle the display of sensitive medias
This works by defining a keyboard shortcut scope for each list element.
A new component, ScrollListShortcuts, keeps track of the active element,
based on list or virtual list elements and redirects shortcuts to the
active element's scope. ScrollListShortcuts keeps the active element in
the current realm of the store, so the active element is restored when
going back to the list.
* Typing h or ? displays the list of available keyboard shortcuts.
This change introduces a new modal dialog that documents the list of
available shortcuts.
2019-01-13 10:03:29 -08:00
Nolan Lawson
e5ef4b9bb1
fix: add better browser notification badges ( #857 )
...
* fix: add better browser notification badges
* fix test
* fix tests for real
* actually fix tests
2018-12-30 14:51:03 -08:00
Nolan Lawson
27da387a01
fix: preserve newlines correctly in delete-and-redraft ( #845 )
...
fixes #830
2018-12-19 00:57:56 -08:00
Nolan Lawson
098a20db49
feat: add full emoji picker using emoji-mart ( #836 )
...
* feat: add full emoji picker using emoji-mart
Fixes #4
* use a sailboat as the default emoji in the emoji picker
* fix tests
* fix lint
2018-12-18 00:43:51 -08:00
Nolan Lawson
bf9ba22c35
fix: fix logging in and out with a refresh ( #824 )
...
* fix: fix logging in and out with a refresh
fixes #805
* simplify code
* make test less flaky
* fix dumb mistake
2018-12-16 12:39:16 -08:00
Nolan Lawson
c90ad17686
fix: logging out results in visible homescreen ( #807 )
...
* fix: logging out results in visible homescreen
fixes #805
* fixup
2018-12-14 00:25:12 -08:00
Nolan Lawson
1940260631
fix: fix delete and redraft on replies ( #789 )
...
fixes #786
2018-12-12 23:45:52 -08:00
Nolan Lawson
631603b0b7
fix: fix flaky test by clicking relative date ( #790 )
...
* fix: fix flaky test by clicking relative date
* fix test and add new one
2018-12-12 23:45:42 -08:00
Nolan Lawson
42978c3c84
fix: fix duplicate statuses in threads ( #783 )
...
fixes #511
2018-12-11 22:06:50 -08:00
Nolan Lawson
4bd181d3cc
fix: update Sapper to latest ( #775 )
...
* fix: update to latest sapper
fixes #416
* fix error and debug pages
* requestIdleCallback makes column switching feel way nicer than double rAF
* add export feature
* add better csp info
* workaround for sapper sub-page issue
* clarify in readme about exporting
* fix now config
* switch from rIC to triple raf
* style-loader is no longer used
* update theming guide
2018-12-11 07:31:48 -08:00
Nolan Lawson
4d3a2ded2a
chore(tests): skip flaky "thread preserves focus" test ( #777 )
2018-12-11 07:29:31 -08:00
Nolan Lawson
60751b3339
feat(statuses): implement "Delete and redraft" ( #719 )
...
Fixes #469
2018-12-03 23:23:29 -08:00
Nolan Lawson
ce61b821c5
feat(ui): add option to always show sensitive media ( #709 )
...
fixes #699 . I also went ahead and divided the settings into two groups: Preferences and Accessibility
2018-12-01 14:09:08 -08:00
Nolan Lawson
a760687c6d
chore(tests): make focus test less flaky ( #708 )
2018-12-01 12:56:55 -08:00
Nolan Lawson
153e4f4fcd
feat(a11y): add option for short article aria labels ( #705 )
...
Actually fixes #694 by providing an option to make the labels like they used to be.
2018-12-01 11:53:20 -08:00
Nolan Lawson
0515133ece
fix(a11y): fix NVDA crash on long aria-label ( #702 )
...
* fix(a11y): fix NVDA crash on long aria-label
fixes #694
* use the word truncated instead of ellipsis
* fix test
* really fix tests
2018-12-01 00:10:30 -08:00
Nolan Lawson
cc81a7bec6
fix(a11y): improved aria-label for status and notifications ( #690 )
...
* fix(a11y): improved aria-label for status and notifications
fixes #689
* only calculate formatted date once
* fixup tests
* fixup tests more
* fixup
* fixup tests again
2018-11-25 01:20:58 -08:00
Nolan Lawson
48a1bd47b3
refactor(themes): use CSS specificity order for themes ( #684 )
...
The point of this PR is to make it easier to implement scrollbars (#683 ).
With this PR, the themes move from a body tag-based system (e.g. `body.theme-scarlet`) to a system where they simply declare global CSS and we use CSS specificity order to give us the right theme.
2018-11-24 00:41:36 -08:00
Nolan Lawson
bae367da7b
test: make tests less flaky ( #678 )
2018-11-21 22:08:37 -08:00
Nolan Lawson
b7f5d04b4c
fix(scrolling): use body as scrolling container ( #656 )
...
* fix(scrolling): use body as scrolling container
Fixes #526
* fixup tests and focus
2018-11-17 18:06:49 -08:00
Nolan Lawson
62ac7330fc
feat(title): add dynamic document title ( #645 )
...
* feat(title): add dynamic document title
fixes #490 and #643
* fix code style
2018-11-12 18:28:43 -08:00
Nolan Lawson
0964442815
chore(travis): update to mastodon v2.6.1 ( #630 )
...
* chore(travis): update to mastodon v2.6.1
* check if mastodon v2.6.1 has a race condition
* apparently in 2.6.1 direct messages no longer appear in home timeline
* Revert "check if mastodon v2.6.1 has a race condition"
This reverts commit dde8ef8be58eda0563170e6b73165fdcbea54f6b.
* try to fix tests
* fix more tests
2018-11-12 12:59:47 -08:00
Nolan Lawson
e11738a711
fix tests broken in chrome 70 ( #602 )
2018-11-04 13:59:14 -08:00
greenkeeper[bot]
8dbc1b0503
Update standard to the latest version 🚀 ( #519 )
...
* chore(package): update standard to version 12.0.0
* package lock update
* fix eslint
2018-08-29 21:42:57 -07:00
Nolan Lawson
2449a27767
fix pinned/unpinned state of recently pinned statuses ( #521 )
...
* fix pinned/unpinned state of recently pinned statuses
* fixup
* fix test
2018-08-29 18:10:09 -07:00
Nolan Lawson
01b1d083a9
update fav boost accounts for stale views ( #510 )
2018-08-28 06:45:15 -07:00
Nolan Lawson
b60d636ee2
media uploads no longer add URLs to status text ( #500 )
...
fixes #8
2018-08-26 18:54:59 -07:00
Nolan Lawson
543536409b
add application (client) name to statuses ( #497 )
...
* add application (client) name to statuses
fixes another thing in #6
* add domain blocking (#496 )
* add domain blocking
fixes another thing from #6
* show "domain blocking" on profile page
* fix stuff
2018-08-26 15:38:45 -07:00
Nolan Lawson
aea952daf0
use better emoji removal algorithm ( #452 )
...
another follow-up to #450 to fix #449
2018-08-19 20:25:28 -07:00
Nolan Lawson
af1d4b63d3
better support for de-emojified user display names ( #451 )
...
improvements to #450 to fix #449 , especially for aria labels
2018-08-19 19:31:54 -07:00
Nolan Lawson
37e12e8d73
add option to remove emoji from user display names ( #450 )
...
* add option to remove emoji from user display names
fixes #449
* slight memory perf improvement
2018-08-19 18:03:26 -07:00
Nolan Lawson
350667e5df
allow user display names to contain custom emoji ( #448 )
...
* allow user display names to contain custom emoji
fixes #445
* fix tests
* fix focus issue
2018-08-19 15:23:40 -07:00
Nolan Lawson
e489702dc6
tests: remove more testcafe .find() calls ( #376 )
2018-06-08 21:54:21 -07:00
Nolan Lawson
08ad25f677
tests: improve flakiness in basic timeline spec ( #378 )
2018-06-08 21:53:45 -07:00
greenkeeper[bot]
708340502d
Update testcafe to the latest version 🚀 ( #370 )
...
* chore(package): update testcafe to version 0.20.3
* package-lock update
* make theme test pass
2018-06-07 15:26:21 -07:00
Nolan Lawson
efdb0bc534
Remove testcafe roles and run in parallel x4 ( #334 )
...
* more attempts to fix test flakiness
* remove testcafe roles entirely
* really remove testcafe roles
* run testcafe in parallel x2
* run testcafe in parallel x4
* fix online/offline forcing in tests
* fix pin test
2018-05-26 13:51:41 -07:00
Nolan Lawson
fe12b72293
attempt to fix flaky tests ( #318 )
...
* attempt to fix flaky tests
* another attempt to fix flakiness
* more attempts to fix flakiness
2018-05-24 20:01:34 -07:00
Nolan Lawson
8089202977
add ability to pin and unpin statuses ( #235 )
...
* add ability to pin and unpin statuses
* add another test
2018-04-29 12:28:44 -07:00
Nolan Lawson
ffb00fcc5c
approve/reject follow requests, unblock, unmute ( #230 )
...
* approve/reject follow requests, unblock, unmute
* make tests less flaky
2018-04-28 14:19:39 -07:00
Nolan Lawson
8a46f3b3d1
add test and aria-label
2018-04-26 22:37:39 -07:00
Nolan Lawson
6bd4b05a98
fix more bugs in autocomplete ( #208 )
...
* fix more bugs in autocomplete
fully fixes #170
* fixup
* fix tests
2018-04-21 14:57:02 -07:00
Nolan Lawson
209b36c73b
fix flaky login tests ( #209 )
2018-04-21 13:06:46 -07:00
Nolan Lawson
e4d2934c67
fix themes ( #199 )
...
Fixes #194
2018-04-21 00:33:42 -07:00
Nolan Lawson
581a0fcd00
fix multiple compose autosuggest dropdowns ( #188 )
...
* fix multiple compose autosuggest dropdowns
Fixes #170
* fix failing test
* remove console.log
2018-04-20 06:26:36 -07:00
Nolan Lawson
979b4afc89
fix mute test ( #174 )
2018-04-19 09:34:49 -07:00
Nolan Lawson
e431c29efa
update and pin all deps ( #164 )
2018-04-18 20:43:13 -07:00
Nolan Lawson
00e71293d6
fix autosuggestion mixed with emoji ( #154 )
...
fixes #140
2018-04-17 18:38:36 -07:00
Nolan Lawson
980fec15ec
fix favorites/boosts reversed aria labels ( #153 )
...
Fixes #146
2018-04-17 18:38:27 -07:00
Nolan Lawson
e8a527989a
explicitly focus elements in tests ( #147 )
2018-04-17 09:44:28 -07:00
Maxime Le Conte des Floris
eef54e992b
focus container on page load ( #116 )
...
* focus container on page load
* only focus container on first page load
* add test for container focus on page load
* fix typo
2018-04-17 09:42:10 -07:00
Nolan Lawson
7ff45dfb3f
mute and unmute accounts ( #127 )
2018-04-14 22:18:48 -07:00
Nolan Lawson
cb20965678
Add test for mentioning an account ( #126 )
2018-04-14 20:56:13 -07:00
Nolan Lawson
732d1fded4
Block and unblock an account ( #125 )
...
One of the many features listed in #6
2018-04-14 18:47:55 -07:00
Nolan Lawson
6230c2703e
content warnings can have emoji ( #122 )
...
fixes #105
2018-04-14 15:50:06 -07:00
Nolan Lawson
ff8e92df6c
preload content in CW ( #110 )
...
* preload content in CW
Fixes #63
* fix test
2018-04-14 10:47:53 -07:00
Nolan Lawson
707e89e899
faster hydrateContent() algorithm, add test ( #109 )
2018-04-14 10:08:43 -07:00
Nolan Lawson
a82c44c21f
Replying returns focus to reply button ( #98 )
...
Fixes #42
2018-04-12 21:18:14 -07:00
Nolan Lawson
84148912ee
Fix spoilers being posted after removal ( #90 )
...
Fixes #83
2018-04-11 22:55:11 -07:00
Nolan Lawson
44dafb591e
travis: fix flaky test
2018-04-10 22:38:10 -07:00
Nolan Lawson
ebc11ad00e
travis: attempt to fix flaky test
2018-04-10 21:46:30 -07:00
Nolan Lawson
f2b2eb1cec
travis: try to fix flaky test
2018-04-10 21:19:29 -07:00
Nolan Lawson
9d706a3748
Add img title as well as alt ( #66 )
...
Fixes #57
2018-04-10 20:02:42 -07:00
Nolan Lawson
7ae3212c55
Fix alts for image uploads ( #54 )
...
* Fix alts for image uploads
Fixes #41
* fix alts mixed with no-alts
2018-04-09 18:30:15 -07:00
Nolan Lawson
eb8cd5f83d
simplify and refactor dialogs using event bus
2018-04-08 16:56:20 -07:00
Nolan Lawson
ee8cda5d66
fix modifying replies to statuses
2018-04-08 13:42:31 -07:00
Nolan Lawson
e34a1054a2
fix tests
2018-03-31 22:08:24 -07:00
Nolan Lawson
ff27c68760
fix lint
2018-03-31 17:42:59 -07:00
Nolan Lawson
f9993cac35
fix post privacy for replies
2018-03-30 10:04:35 -07:00
Nolan Lawson
42a467ffc8
make test less flakey
2018-03-30 08:19:18 -07:00
Nolan Lawson
5a0c4897b0
make replies inline
2018-03-30 01:06:17 -07:00
Nolan Lawson
6f350b68d3
fix content warning should delete when you hide it
2018-03-28 18:37:53 -07:00
Nolan Lawson
ddd32a2223
improve tests
2018-03-27 08:38:40 -07:00
Nolan Lawson
58b700788c
add floating compose button
2018-03-27 00:02:55 -07:00
Nolan Lawson
7ce9a39119
add emoji autosuggest
2018-03-25 12:24:38 -07:00
Nolan Lawson
62ef9d7bb0
tweak test timeout
2018-03-22 17:55:57 -07:00
Nolan Lawson
d40befacdb
compose button is not disabled by default
2018-03-22 17:55:35 -07:00
Nolan Lawson
0c9992c0e1
change scheduling to focus on requestIdleCallback
2018-03-20 20:28:53 -07:00
Nolan Lawson
98b704f465
optimistic updates for fav/reblog
2018-03-20 17:41:39 -07:00
Nolan Lawson
111d6201f3
add a sleep to the test
2018-03-19 20:10:20 -07:00
Nolan Lawson
00fd911579
truly fix streaming gap issue, remove sleeps from tests
2018-03-19 18:00:49 -07:00
Nolan Lawson
eaa19f79e4
fix streaming gap issue
2018-03-19 10:09:05 -07:00
Nolan Lawson
ed0db17ca0
add auto-focus to reply input text
2018-03-16 19:04:48 -07:00
Nolan Lawson
9a0071a934
clicking avatars goes directly to profile
2018-03-16 18:48:24 -07:00
Nolan Lawson
bfc9692667
refactor tests
2018-03-16 10:06:02 -07:00