Commit graph

817 commits

Author SHA1 Message Date
Nolan Lawson 94baf9e396
feat(metadata): add verified metadata checkmark (#642)
fixes #641
2018-11-12 16:20:54 -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 4fe0cf3f18
fix: fix null reference error in Safari/Edge (#618)
fixes #617
2018-11-05 08:28:38 -08:00
Nolan Lawson dfacbdaaa5
Slight changes to theme settings hint (#591) 2018-11-04 15:57:05 -08:00
Nolan Lawson c1c3c755ce
reduce limit of stored data to 5 days (#597) 2018-11-04 14:41:22 -08:00
Nolan Lawson bc3a74bbcb don't wait if idb is blocked, remove workerize-loader (#602)
There are two issues here:

- if IDB is blocked, then the promise never resolves when you log out (and call indexedDB.deleteDatabase) and the app remains in a permanently hung state
- why is IDB blocked? well, something seems to have changed in Chrome 70 such that doing these operations in a web worker causes the blocked error. The benefits of workerizing IDB is so small that I'd rather just remove it at this point.
2018-11-04 13:59:14 -08:00
Pheng Heong TAN c305a9827a Provide directions to change the theme (#585)
* Add directions to change themes

The page 'general' was the first place I looked when I
wanted to change the theme. Not managing to find it,
I went on a search throughout various issues ( #46 , for
example) on Github before locating it.

Now I hope to spare others the search

* Hint the user about themes

When I was on this page, it wasn't immediately apparent
to me that the SettingsListItem was clickable (I thought it
was a list rather than a button)
2018-10-28 15:34:34 -07:00
Nolan Lawson bf0eb99fe4
refactor instance settings (#581) 2018-10-28 15:28:22 -07:00
Sorin Davidoi e45af16bf9 Push notifications (#579)
* feat: Push notifications

* feat: Feature-detect push notifications support

* feat: Prompt user to reauthenticate when missing push scope

* fix(service-worker): Add tags to notifications

* feat: Push notification actions for mentions
2018-10-06 13:06:10 -07:00
Nolan Lawson 2387a18ddb
add a theme preview (#573) 2018-09-23 11:18:02 -07:00
Nolan Lawson 24dc3ad2ae rename darkscarlet and darkpink to Punk and Riot 2018-09-22 16:42:57 -07:00
pianycist 9dac979cb6 add dark pink, dark red, dark green themes 2018-09-22 16:42:57 -07:00
Nolan Lawson c16718982f
switch timeline batch size back to 20 (#539) 2018-09-06 09:35:30 -07:00
Nolan Lawson 431d1e1051
clean up unused idb functions (#537) 2018-09-05 21:08:38 -07:00
Nolan Lawson fd43dc6e5d
fix idb getall in edge (#535)
* fix idb getall in edge

fixes #532

* try to fix

* this should work

* fixup
2018-09-05 19:52:51 -07:00
Nolan Lawson 20dda272ba
fix auto-loading of toot content as you scroll (#529) 2018-09-01 14:11:39 -07:00
Nolan Lawson 9d27ba6c10
tweak design of notification digits (#528) 2018-09-01 13:24:02 -07:00
Nolan Lawson e92bed8e58
fix image loading (#527) 2018-08-31 16:35:26 -07:00
Nolan Lawson 9641b7ad1e
tweak timeline loading and worker dev mode (#525) 2018-08-31 09:12:48 -07:00
Nolan Lawson 2f1e4077ea
fix status thread update logic (#524) 2018-08-31 09:12:39 -07:00
Nolan Lawson 96c2858d7a
lower timeline fetch batch size from 20 to 10 (#523) 2018-08-29 22:49:14 -07:00
Nolan Lawson 6d8f4e22ef
fix worker ordering (#522) 2018-08-29 22:03:29 -07: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 d599f2f308
run idb operations in a web worker (#517) 2018-08-29 19:03:12 -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 b55c042ff4
fix display of application name in edge (#516)
fixes #512
2018-08-29 09:25:24 -07:00
Nolan Lawson 01b1d083a9
update fav boost accounts for stale views (#510) 2018-08-28 06:45:15 -07:00
Nolan Lawson 6d50c65352
add warning text about private browsing (#509) 2018-08-28 06:44:58 -07:00
Nolan Lawson 120f50919e
improve a11y of fields, status page, and more (#505)
* improve a11y of fields, status page, and more

* tweak nav name

* fix community page and tweak text

* don't show pinned statuses heading unless there are pinned statuses
2018-08-28 06:44:36 -07:00
Nolan Lawson 46fa65f25a
fix null error in profile (#506) 2018-08-27 19:32:30 -07:00
Nolan Lawson b59f544efb
fix application name (#501)
it should not show "Web" by default but should be absent if `application` is null
2018-08-26 19:46:19 -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 d49af06fbd
use async clipboard API (#499) 2018-08-26 16:40:48 -07:00
Nolan Lawson 270df188cb
Store IDB data for 1 week rather than 2 weeks (#498)
Based on issues I'm seeing on iOS Safari, I'm guessing that my IDB caching is too aggressive and is hitting origin storage limits, which causes IDB transactions in safari to fail silently and never call any transaction callbacks (`onblocked`, `onerror`, `oncomplete`).

This is pretty bad and causes Pinafore to basically just not work unless you clear site data, which we should avoid. 2 weeks was probably unnecessary anyway; in a social network, who cares about content that's 2 weeks old?
2018-08-26 15:38:54 -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 95665f6d74
add domain blocking (#496)
* add domain blocking

fixes another thing from #6

* show "domain blocking" on profile page
2018-08-26 14:16:00 -07:00
Nolan Lawson 47315c7f6d
add support for max_toot_chars > 500 (#495) 2018-08-26 12:14:16 -07:00
Nolan Lawson 17b80e5a79
simplify model for updating account relationships (#494) 2018-08-26 12:14:08 -07:00
Nolan Lawson 8959cdaeb1
fix incorrect toast notification for follow requests (#493) 2018-08-26 10:31:13 -07:00
Nolan Lawson 4a0cfb8d6e
tweak CSS in options dialog menu (#492) 2018-08-25 22:03:40 -07:00
Nolan Lawson d6af3b69a7
Add ability to show/hide boosts from accounts (#491)
Fixes some stuff in #6
2018-08-25 22:03:33 -07:00
Nolan Lawson dc091f1360
fix requested view for follow requests (#489) 2018-08-25 22:03:26 -07:00
Nolan Lawson 73c99904cf
fix CSS specificity to fix firefox (#488) 2018-08-25 22:03:18 -07:00
Nolan Lawson 4edec81a0f
fix incorrect autocomplete avatars (#487)
fixes #486
2018-08-24 21:35:02 -07:00
Nolan Lawson 1423a6b14b
slight refactor of timeline fetching (#485) 2018-08-24 11:50:40 -07:00
Nolan Lawson 91a92b0003 profile fields: add #each loop, allow custom emoji, tweak CSS 2018-08-23 22:24:55 -07:00
Spanky 698d8f5730 added account meta fields to profile 2018-08-23 22:24:55 -07:00
Nolan Lawson 32ea30f4bb
fix style of account search results (#481) 2018-08-23 19:40:03 -07:00
Nolan Lawson 1753e20f29
add label for bots (#479)
fixes #463
2018-08-23 18:41:43 -07:00
Nolan Lawson c4c128030e
allow custom emoji in user profiles (#475)
fixes #471
2018-08-23 14:47:33 -07:00
Nolan Lawson 8949b36873
Use img.decode() (#473)
* remove will-change:transform from container

* WIP: use img.decode()

* more work on img.decode
2018-08-22 21:00:53 -07:00
Nolan Lawson 65ac7e22f4
fix null error in VirtualListFooter.html (#456) 2018-08-21 07:06:53 -07:00
Nolan Lawson 6ad20e72a7
don't use rIC while scrolling (#455)
* don't use rIC while scrolling

* remove unnecessary import
2018-08-20 17:57:38 -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 f732bd44ab
fix statuses with empty content text (#446)
fixes #445
2018-08-19 11:31:02 -07:00
Nolan Lawson a6039f6247
make mentions the same size when focused (#442)
fixes #408
2018-08-18 22:56:56 -07:00
Nolan Lawson 973d0f7d11
fix media alt input color on dark theme (#437)
fixes #368
2018-08-17 22:44:53 -07:00
Nolan Lawson 1be5fd3672
fix overflow inside of modals (#432)
fixes #431
2018-08-17 22:26:08 -07:00
Nolan Lawson 37cc2c2df7
add placeholder to "add instance" input (#427) 2018-08-16 22:15:22 -07:00
Nolan Lawson b8863e684e
use page lifecycle (#424)
* use page lifecycle

* fix eslint
2018-08-16 10:23:26 -07:00
Daniel Diekmeier 78d95e0dc4 Change arrow on back button (#420)
* Change arrow on back button

* Update DynamicPageBanner.html
2018-08-16 07:29:12 -07:00
Nolan Lawson 23ccec45d0
fix notifications in a background tab (#402)
Part of the way to improving #390.

Before this fix, if you recieved a notification while Pinafore was in a background tab, nothing would happen, because most browsers (Edge, Firefox, Chrome) don't run rAF in background tabs. Furthermore, Chrome doesn't run rIC. In this PR we detect if we're in a background tab and then avoid rAF/rIC in that case.
2018-06-23 10:11:14 -07:00
Nolan Lawson 0d601f924e
fix svelte warning for empty block (#401) 2018-06-23 09:51:47 -07:00
Nolan Lawson b2568dbbda
short mentions should have full title (#396)
quick fixup to #395
2018-06-15 09:20:55 -07:00
Nolan Lawson f7ebfbf139
status mentions should use short usernames (#395) 2018-06-15 07:58:12 -07:00
Nolan Lawson b7748d849b
add mentions outside of content warnings (#393)
Fixes #389
2018-06-14 12:52:00 -07:00
Nolan Lawson fb6df029f3
add "reply all" icon (#392)
fixes #388
2018-06-14 08:42:55 -07:00
Nolan Lawson 5f4e869eeb
add more fine-grained request timeouts (#387)
* add more fine-grained request timeouts

fixes #381

* tweak timeout
2018-06-13 07:38:36 -07:00
Nolan Lawson a0d3a89180
remove useless aria-hidden (#386) 2018-06-10 19:49:39 -07:00
Nolan Lawson 11dcaf0cf3
Remove PseudoVirtualList (#385)
* start on removing pseudo virtual list

* rename, refactor

* remove unused file

* fix the tests

* actually fix tests

* okay actually fix tests
2018-06-09 22:55:58 -07:00
Nolan Lawson eeff84a587
Fix text overflow on status headers (#383)
* Fix text overflow on status headers

* fix tests

* really fix tests
2018-06-09 15:04:47 -07:00
Nolan Lawson e8d2cd9ffc
tests: quicker login, tweak test setup (#372)
* make tests faster by logging in directly

* downgrade testcafe

* Revert "downgrade testcafe"

This reverts commit 0f78f5ef63f25b6428de2faba476a353a338c695.

* try a delay

* the delay does not do anything

* disable concurrency in testcafe

* make setup script less noisy

* try transparency of 2?

* Revert "the delay does not do anything"

This reverts commit 438b3519a4e0c325e89f0c2a0eff6a7a4ae11ebd.

* try a delay of 400ms

* okay fine delay of 1s

* try concurrency of 4 again
2018-06-08 09:00:20 -07:00
Nolan Lawson df6323fba3
switch from copy icon to link icon (#343)
fixes #325
2018-05-26 17:23:27 -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 a51477b501
fix timelineType state read (#310) 2018-05-18 18:33:20 -07:00
Nolan Lawson 8035662f93
fix minor design issue (#297) 2018-05-13 18:53:37 -07:00
Nolan Lawson 2b309b242c
close first dialog when opening copy dialog (#292) 2018-05-13 11:13:35 -07:00
Nolan Lawson ad84adaf63
add ability to mute conversation (#291)
fixes another thing from #6
2018-05-12 22:49:01 -07:00
Nolan Lawson 3d8cdcd649
only allow public/unlisted statuses to be pinned (#290)
fixes #264
2018-05-12 15:45:50 -07:00
Nolan Lawson c0d0b4dd36
add option to copy link to clipboard (#289)
Fixes #288
2018-05-12 15:00:11 -07:00
Nolan Lawson fa4dd59f01
wrap code in dev block (#286) 2018-05-12 14:01:25 -07:00
Nolan Lawson 5a1e10dee0
refactor some stuff (#274) 2018-05-06 17:35:22 -07:00
Nolan Lawson 07fb5e867c
isolate autosuggestion state (#273)
fixes #261
2018-05-06 16:25:17 -07:00
Nolan Lawson a88fb70542
remove unnecessary sveltejs/svelte#1354 workarounds (#269) 2018-05-04 20:09:20 -07:00
Nolan Lawson 9e9a897ede
fix nav bar for pinned lists (#263) 2018-05-03 21:24:10 -07:00
Nolan Lawson b1a3be06ff
fix null in virtual list item (#260) 2018-05-03 20:41:55 -07:00
Nolan Lawson b7c90a4206
add animation for navigation bar indicator (#257) 2018-05-02 21:32:43 -07:00
Nolan Lawson ffa5dcb3ec
remove unnecessary item wrapping (#254)
* remove unnecessary item wrapping

* fix lint
2018-05-01 21:05:15 -07:00
Nolan Lawson 42be854521
upgrade to svelte 2.0 (#251)
* upgrade to svelte 2.0

* update svelte-loader to 2.9.0
2018-05-01 17:05:36 -07:00
Nolan Lawson 429df7fbc5
fix more svelte undefined warnings (#250) 2018-04-30 19:06:08 -07:00
Nolan Lawson 814716cc8d
remove deprecated observe() from stores, take 2 (#249) 2018-04-30 17:20:20 -07:00
Nolan Lawson dbba271f39
fix some svelte data warnings (#247) 2018-04-30 09:57:49 -07:00
Nolan Lawson f9792ae3d8
remove deprecated .observe() from components (#246) 2018-04-30 08:29:04 -07:00
Nolan Lawson c309e5842d
slightly improve Svelte 2.0 compatibility (#244)
* slightly improve Svelte 2.0 compatibility

* fixup

* fix lint
2018-04-29 22:13:41 -07:00
Nolan Lawson 8229d1c9e6
use svelte shorthand wherever possible (#242) 2018-04-29 18:42:03 -07:00
Nolan Lawson c4182c9ddc
remove unnecessary helpers (#241) 2018-04-29 18:41:56 -07:00
Nolan Lawson a368294b43
fix for malformed notiications (#238)
fixes #217
2018-04-29 18:41:47 -07:00