Commit Graph

78 Commits

Author SHA1 Message Date
James Teh 8792d912bc
fix: focus the textarea in the Compose dialog (#2227)
ComposeBox already specified autoFocus for the ComposeInput.
However, this didn't work because the dialog was disabled when the ComposeInput code tried to focus the textarea.
To fix this, tweak A11yDialog to look for the autofocus attribute when determining what to focus.
This is consistent with the behavior for native HTML dialogs.
Then, have ComposeInput set this attribute if it's in a dialog.
Fixes #1839.
2022-11-23 08:21:42 -08:00
Nolan Lawson 347dab4e29
fix: fix pencil button location with bottom nav (#2222) 2022-11-21 18:53:25 -08:00
Nolan Lawson f10e9dbcf3
fix(a11y): fix number of headings (#2183)
Fixes #2162
2022-11-13 07:01:12 -08:00
Nolan Lawson f2d752bfc2
fix: add country flag emoji on windows (#2117)
* fix: add country flag emoji on windows

* fix: missing file

* fix: cache font file on-demand

* fix: attempt to fix

* fix: working

* fix: ordering

* fix: ordering

* fix: ordering

* fix: fixup

* fix: fixup

* fix: add comment

* fix: fix vercel

* fix: fix vercel.json

* fix: vercel

* refactor: refactor
2022-03-27 20:59:02 -07:00
Nolan Lawson 9d5157f15c
fix: increase poll answer max length to 50 (#2086)
Fixes #2077
2021-08-06 15:20:48 -07:00
Nolan Lawson 16e66346d7
fix!: remove esm package, use native Node ES modules (#2064)
BREAKING CHANGE: Node v12.20+, v14.14+, or v16.0+ is required

* fix!: remove esm package, use native Node ES modules

* fix: fix some CJS imports
2021-07-04 20:19:04 -07:00
Nolan Lawson c3d25b88cf
feat: allow file-drop to accept multiple files (#1945) 2021-02-15 15:07:13 -08:00
Nolan Lawson a3d0c87e27
fix: fix cursor set incorrectly on WebKit browsers (#1937)
fixes #1921
2021-02-14 18:44:14 -08:00
Nolan Lawson 0022286b46
fix: first stab at i18n, extract English strings, add French (#1904)
* first attempt

* progress

* working

* working

* test timeago

* rm

* get timeago working

* reduce size

* fix whitespace

* more intl stuff

* more effort

* more work

* more progress

* more work

* more intl

* set lang=LOCALE

* flatten

* more work

* add ltr/rtl

* more work

* add comments

* yet more work

* still more work

* more work

* fix tests

* more test and string fixes

* fix test

* fix test

* fix test

* fix some more strings, add test

* fix snackbar

* fix }

* fix typo

* fix english

* measure perf

* start on french

* more work on french

* more french

* more french

* finish french

* fix some missing translations

* update readme

* fix test
2020-11-29 14:13:27 -08:00
Nolan Lawson 1371175bce
feat: use emoji-picker-element, add emoji autocompletions/tooltips (#1804)
* feat: use emoji-picker-element, add emoji autocompletions/tooltips

* fix: fix lint bug

* test: fix emoji in chrome on linux in travis

* test: try bionic in travis

* chore: try to fix travis

* chore: try to fix travis

* fix: filter unsupported emoji

* chore: try to fix travis

* chore: try to fix travis

* chore: try to fix travis

* chore: try to fix travis

* Revert "chore: try to fix travis"

This reverts commit 3cd2d94469.

* fix: fix emoji autosuggest

* test: fix test
2020-06-28 23:12:14 -07:00
Nolan Lawson bedb636182
fix: css cleanup of nav-related variables (#1786)
* fix: css cleanup of nav-related variables

* changed my mind on this margin
2020-05-20 07:07:47 -07:00
Nolan Lawson 4b4cee3662
fix: fix delete-and-redraft in Firefox Android (#1762)
fixes #1681
2020-05-03 10:45:11 -07:00
Nolan Lawson cbbf5abd7a
test: test for DOM listener memory leaks (#1654)
* test: test for DOM listener memory leaks

* fix whitespace change, unintended
2019-11-23 23:42:22 -08:00
Nolan Lawson fec0c282c9
fix: make autosuggest list appear over modal dialog (#1649)
fixes #1645
2019-11-23 13:21:21 -08:00
Nolan Lawson d03d223fd9
fix: remove aria-pressed entirely (#1647)
More progress on #1633
2019-11-23 11:25:36 -08:00
Nolan Lawson 63c9f8dc32
fix: fix autocomplete in voiceover+safari (#1632)
* fix: fix autocomplete in voiceover+safari

fixes #1629

* fix test

* fix test
2019-11-09 23:01:32 -05:00
Nolan Lawson 07facea505
fix: improve autosuggest a11y (#1630)
* fix: improve autosuggest a11y

some progress on #1629

- works in Chrome on NVDA now
- works in Chrome on VoiceOver now
- shorter aria-labels, don't repeat information like "1 of 3", because
it causes the screen reader to speak too frequently, e.g. when the
selected result hasn't changed but the number of results has. Also both
NVDA and VoiceOver already speak this information
- stop doing a fancy fade animation, just show and hide the input
instantly. I worry it confuses screen readers to have the aria-hidden
attribute in there at all
- stop using a single id to identify the active descendant - give
immutable IDs and then update the aria-activedescendant instead. I think
this is what fixed Chrome.

* fix test
2019-11-09 20:38:29 -05:00
Nolan Lawson edc014cf8c
fix: more consistent toggle button aria-label/title (#1626)
* fix: more consistent toggle button aria-label/title

fixes #1624

* fixup

* fix test
2019-11-09 17:25:26 -05:00
Nolan Lawson b8d9c29bac
perf: move async modules to individual files (#1611) 2019-10-29 18:58:49 -07:00
Nolan Lawson d580a9b7e8
fix: do not prefer lowercase for hashtags in search (#1571) 2019-10-13 10:49:39 -07:00
Nolan Lawson 8b3842f15a
feat: add hashtag autocomplete (#1567)
* feat: add hashtag autocomplete

fixes #1209

* add test and tweak aria label and styles

* do not prefer lowercase

* Change text
2019-10-12 18:06:04 -07:00
Nolan Lawson 0b5adfa2c9
fix: fix fade in animation on compose button (#1557) 2019-10-08 05:59:50 -07:00
Nolan Lawson 8c5d6fe667
fix: remove iOS sticky workaround (#1556)
I'm not sure what changed, but #667 no longer seems to be an issue, so
it looks like we can safely remove this workaround. I even tested in a
simulator in iOS 11.4 and we don't seem to be affected anymore.
2019-10-08 05:59:45 -07:00
Nolan Lawson 038dc27163
perf: lazy-load computations (#1538)
* perf: lazy-load computations (experimental)

* fix lint

* add marks

* fixup

* lazy-load mixins too

* add missing files

* fix tests
2019-09-26 05:23:36 -07:00
Nolan Lawson fbed5b8ac8
fix: improve autosuggest styles on small screens (#1529) 2019-09-24 00:50:25 -07:00
Nolan Lawson 8f3b0ac80a
fix: remove aria-live region for autosuggest (#1520) 2019-09-22 23:53:09 -07:00
Nolan Lawson 0df6552f83
fix: don't set aria-activedescendant immediately on autocomplete textarea (#1513) 2019-09-22 16:19:51 -07:00
Nolan Lawson 41270f9210
fix: more fixes for tiny screen sizes (#1509) 2019-09-21 18:16:55 -07:00
Nolan Lawson 38b16c91d1
fix: improve style on very small mobile screens (#1505) 2019-09-21 13:45:48 -07:00
Nolan Lawson 489319a3a6
fix: improve nav height on tiny screens, use variables (#1503) 2019-09-20 23:17:57 -07:00
Nolan Lawson ab9fc31405
fix: remove svelte #await (#1501) 2019-09-20 18:53:04 -07:00
Nolan Lawson 54db8752d2
fix: remove avatars from tab order / screenreaders (#1491)
* fix: remove avatars from tab order / screenreaders

* fixup
2019-09-15 18:27:52 -07:00
Nolan Lawson 4256a790fc
fix: fix cursor position jumping on autocomplete (#1490)
fixes #56
2019-09-15 16:33:49 -07:00
Nolan Lawson d5fb6c568c
fix: ignore rapid Ctrl-Enter inputs when composing (#1488)
fixes #421
2019-09-15 10:45:52 -07:00
Nolan Lawson 35058ed965
feat: mark media as sensitive without a CW (#1486)
fixes #1297
2019-09-15 10:45:46 -07:00
Nolan Lawson 6d3a0b5fee
fix: allow audio uploads on iOS Safari (#1472)
fixes #1461
2019-09-08 11:07:20 -07:00
Nolan Lawson de27d0e2bf
perf: don't fetch custom emoji on every page load (#1451)
fixes #812

follow-up to #1448 and #1450
2019-08-29 19:15:30 -07:00
Nolan Lawson 59d26f1a09
feat: add length gauge for media alt text editor (#1431)
* feat: add length gauge for media alt text editor

* fix test
2019-08-24 21:23:43 -07:00
Nolan Lawson 7f9195c2af
feat: combine alt/focal point into single "media edit" dialog (#1430)
* feat: combine alt/focal point into single "media edit" dialog

* resize text automatically
2019-08-24 19:28:12 -07:00
Nolan Lawson f80ca32478
perf: be more consistent about compose input scheduling (#1414) 2019-08-20 08:08:15 -07:00
Nolan Lawson cccbfd70da
perf: improve input responsiveness in compose input (#1413)
* perf: improve input responsiveness in compose input

* remove some unused code from autosize.js

* remove some more unused code
2019-08-19 21:37:11 -07:00
Nolan Lawson 4232da5e33 fix: fix lint 2019-08-19 20:23:58 -07:00
Nolan Lawson c5e2eeee2d
perf: fix potential memory leak in IntersectionObserver (#1383) 2019-08-11 11:09:43 -07:00
Nolan Lawson 87bab8662c
perf: use requestPostAnimationFrame to reduce layout thrashing (#1376) 2019-08-07 09:11:34 -07:00
Nolan Lawson 00945a3608
chore: update standard to v13 (#1370) 2019-08-03 13:49:37 -07:00
Nolan Lawson a6235ded8c
fix: fix autosizing of delete/redraft (#1338)
fixes #1334
2019-07-17 21:34:53 -07:00
Nolan Lawson 9fd5c8f6d2
fix: focal point should be only visible for images (#1311) 2019-07-07 13:24:49 -07:00
Nolan Lawson 85b75900c1
feat: add ability to set focal points for media (#1303)
* feat: add ability to set focal points for media

fixes #739

* fix tests

* actually fix tests

* really really fix tests

* really really really fix tests pinkie swear
2019-07-07 00:14:19 -07:00
Nolan Lawson d31f2ce010
feat: add support for audio attachments (#1293)
This is a new thing in Mastodon v2.9. I kept the "camera" icon because I like it better than the paperclip, and I think it covers the 99% use case.
2019-06-23 09:41:31 -07:00
Nolan Lawson 58a8772edc
perf: lazy-load the ComposeBox (#1262) 2019-06-01 17:01:50 -07:00