Commit Graph

782 Commits

Author SHA1 Message Date
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 f0b3115be1
fix(scrolling): fix body scrollable when modal is open (#681)
Fixes #680
2018-11-23 21:33:03 -08:00
Nolan Lawson e3debcc5e1
fix(emoji): fix ™® characters treated as emoji (#682)
fixes #679
2018-11-23 21:32:57 -08:00
Nolan Lawson 689dae5d39
fix(dialog): when dialog is hidden, don't scroll to top (#672)
* fix(dialog): when dialog is hidden, don't scroll to top

* update package-lock.json
2018-11-21 00:33:46 -08:00
Nolan Lawson 3dae883761
fix(emoji): asterisk should not be treated as emoji (#668) 2018-11-20 22:41:41 -08:00
Nolan Lawson d9e79daa6a
fix(emoji): emoji replacer should ignore pound sign (#666)
* fix(emoji): emoji replacer should ignore pound sign

* add test

* fix regex
2018-11-20 09:42:49 -08:00
Nolan Lawson 5f5cb0d36d
fix(scroll): fix offsetHeight for scrolling whole document (#664) 2018-11-20 08:58:13 -08:00
Nolan Lawson 20ae390308
fix(design): input bg should be white on "add instance" page (#663) 2018-11-20 07:54:40 -08:00
Nolan Lawson 4124da2439
fix(emojos): fix emojos on Ubuntu and Chrome on Windows (#661)
* fix(emojos): fix emojos on Ubuntu and Chrome on Windows

* fixup

* start working on unit tests

* fixup

* add more tests and fix emoji
2018-11-20 00:01:23 -08:00
Nolan Lawson 639c6eaed7
fix(eventBus): increase event listeners to 1000 (#657) 2018-11-18 09:07:32 -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 c1820f62f7
fix(design): fix large metadata cells (#655)
fixes #654
2018-11-17 12:24:09 -08:00
Nolan Lawson 92d2dbddfc
perf(virtuallist): add contain:content to virtual list items (#650)
* perf(virtuallist): add contain:content to virtual list items

* add a few more contain:contents
2018-11-16 00:37:28 -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 c54aaf2fa4
fix(video): stop playing video when modal closed (#640)
fixes #622
2018-11-12 16:20:59 -08:00
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