 HampusandGitHub
|
735ecc1cca
|
fix(api): distinguish a deleted reply target from no reply (#1884)
|
2026-08-24 12:39:11 +02:00 |
|
 HampusandGitHub
|
7b646f891e
|
fix(app): animate reaction emoji only while hovering them (#1883)
|
2026-08-24 12:37:48 +02:00 |
|
 HampusandGitHub
|
19264d7f81
|
perf(app): preload reaction menu emoji at the size they render (#1882)
|
2026-08-24 12:37:38 +02:00 |
|
 HampusandGitHub
|
76ce060d13
|
fix(app): stop the quick switcher list rebuilding while you navigate (#1881)
|
2026-08-24 12:37:27 +02:00 |
|
 HampusandGitHub
|
9b3dc19037
|
perf(app): load the keyboard mode intro modal only when it is shown (#1880)
|
2026-08-24 12:37:12 +02:00 |
|
 HampusandGitHub
|
5821a68816
|
fix(app): show the server avatar on message notifications (#1879)
|
2026-08-24 12:37:01 +02:00 |
|
 HampusandGitHub
|
e21544eac2
|
fix(app): order member mention results by search relevance (#1878)
|
2026-08-24 12:36:50 +02:00 |
|
 HampusandGitHub
|
1f0f7d1222
|
perf(app): play gif embeds from the viewport not a js decoder (#1877)
|
2026-08-24 12:36:38 +02:00 |
|
 HampusandGitHub
|
69e0086144
|
feat(app): warm full-size media while hovering an attachment (#1876)
|
2026-08-24 12:36:27 +02:00 |
|
 HampusandGitHub
|
61ce8729de
|
fix(app): stop overlaying a sharpening canvas in the media viewer (#1875)
|
2026-08-24 12:36:15 +02:00 |
|
 HampusandGitHub
|
44869b0ce4
|
fix(app): stop seeking and hidden tabs from stranding playback (#1874)
|
2026-08-24 12:35:58 +02:00 |
|
 HampusandGitHub
|
213dd53ee8
|
fix(app): size youtube embeds with the shared embed limits (#1873)
|
2026-08-24 12:35:42 +02:00 |
|
 HampusandGitHub
|
844952db51
|
feat(app): drop the compact attachments media size preference (#1872)
|
2026-08-24 12:35:28 +02:00 |
|
 HampusandGitHub
|
eda29c0e34
|
fix(app): contain embedded media inside its box instead of overflowing (#1871)
|
2026-08-24 12:35:15 +02:00 |
|
 HampusandGitHub
|
5834e32aa5
|
perf(app): window emoji picker rows by offset instead of observers (#1870)
|
2026-08-24 12:35:02 +02:00 |
|
 HampusandGitHub
|
a59f3d0d0c
|
fix(app): animate message emoji only while hovering the message (#1869)
|
2026-08-24 12:34:52 +02:00 |
|
 HampusandGitHub
|
5b8a46d087
|
fix(app): draw the mention badge cutout from the badge itself (#1868)
|
2026-08-24 12:34:37 +02:00 |
|
 HampusandGitHub
|
677e6e5d6e
|
fix(app): stop animating emoji and stickers that have no animation (#1867)
|
2026-08-24 12:34:26 +02:00 |
|
 HampusandGitHub
|
62f40116be
|
fix(app): stop discovery animating on first render (#1866)
|
2026-08-24 12:34:15 +02:00 |
|
 HampusandGitHub
|
d2d199e136
|
perf(app): fetch text attachment previews only when they scroll near (#1865)
|
2026-08-24 12:34:04 +02:00 |
|
 HampusandGitHub
|
39e2c89d5c
|
fix(app): only animate media that has an animated variant (#1864)
|
2026-08-24 12:33:53 +02:00 |
|
 HampusandGitHub
|
15f4417c68
|
fix(app): scope near-viewport loading to the surrounding scroller (#1863)
|
2026-08-24 12:33:39 +02:00 |
|
 HampusandGitHub
|
943b948de7
|
fix(app): keep hydrated state across gateway session resumes (#1862)
|
2026-08-24 12:33:27 +02:00 |
|
 HampusandGitHub
|
b7f75e25ad
|
fix(app): keep unsent messages and stop the unread jump on reconnect (#1861)
|
2026-08-24 12:33:17 +02:00 |
|
 HampusandGitHub
|
2af0405317
|
fix(app): keep the chat scroller pinned to the end while it resizes (#1860)
|
2026-08-24 12:33:06 +02:00 |
|
 HampusandGitHub
|
a2099fb0e2
|
refactor(app): name mute and unread state accessors by intent (#1859)
|
2026-08-24 12:32:55 +02:00 |
|
 HampusandGitHub
|
52781cfa2d
|
refactor(app): drop the unread jump anchor now the scroller finds it (#1858)
|
2026-08-24 12:32:44 +02:00 |
|
 HampusandGitHub
|
af7469fa1f
|
fix(app): request custom emoji at one canonical image size (#1857)
|
2026-08-24 12:32:28 +02:00 |
|
 HampusandGitHub
|
4c14ba0a5e
|
fix(app): paint avatars from a real image with a fading placeholder (#1856)
|
2026-08-24 12:32:14 +02:00 |
|
 HampusandGitHub
|
b49cf349a8
|
perf(app): load images immediately instead of queueing four at a time (#1855)
|
2026-08-24 12:32:02 +02:00 |
|
 HampusandGitHub
|
02406925d7
|
refactor(app): collapse the duplicate emoji shortcode matchers into one (#1854)
|
2026-08-24 12:31:51 +02:00 |
|
 HampusandGitHub
|
aad7e1a551
|
fix(app): freeze embed author and footer icons under motion settings (#1853)
|
2026-08-24 12:31:40 +02:00 |
|
 HampusandGitHub
|
a98a9fe6a9
|
feat(app): understand date words and DM channels in search filters (#1852)
|
2026-08-24 12:31:29 +02:00 |
|
 HampusandGitHub
|
ac6fcc8c40
|
fix(app): close the modal you opened, not whatever is on top (#1851)
|
2026-08-24 12:31:14 +02:00 |
|
 HampusandGitHub
|
b0e882645e
|
fix(app): match member search on accents, display names and ids (#1850)
|
2026-08-24 12:31:02 +02:00 |
|
 HampusandGitHub
|
8c431c7562
|
fix(app): retry hydrating message authors after a reconnect (#1849)
|
2026-08-24 12:30:50 +02:00 |
|
 HampusandGitHub
|
3e267b8104
|
fix(app): keep the member list in sync when switching channels (#1848)
|
2026-08-24 12:30:38 +02:00 |
|
 HampusandGitHub
|
7c5cab2144
|
fix(app): make the media volume slider track loudness (#1847)
|
2026-08-24 12:30:13 +02:00 |
|
 HampusandGitHub
|
5cb893245f
|
fix(app): hide the video controls again after a few idle seconds (#1846)
|
2026-08-24 12:30:01 +02:00 |
|
 HampusandGitHub
|
aa1c636cc2
|
fix(app): keep local image previews from disappearing before upload (#1845)
|
2026-08-24 12:29:49 +02:00 |
|
 HampusandGitHub
|
c285854b71
|
refactor(app): rename ComponentDispatch to ComponentBus (#1844)
|
2026-08-24 12:29:38 +02:00 |
|
 HampusandGitHub
|
01a29d629b
|
fix(app): size the chat skeleton from the remembered viewport height (#1843)
|
2026-08-24 12:29:26 +02:00 |
|
 HampusandGitHub
|
bd381ccc74
|
fix(app): request avatar and banner sizes the media proxy serves (#1842)
|
2026-08-24 12:29:16 +02:00 |
|
 HampusandGitHub
|
c3e747aaa4
|
fix(media-proxy): stop re-encoding jpeg and video frames losslessly (#1841)
|
2026-08-24 12:29:05 +02:00 |
|
 HampusandGitHub
|
480d56125d
|
fix(admin): render sticker previews at 320px instead of 160px (#1840)
|
2026-08-24 12:28:54 +02:00 |
|
 HampusandGitHub
|
7ec155eac1
|
fix(desktop): stop reading whole voice backgrounds to classify them (#1839)
|
2026-08-24 12:28:43 +02:00 |
|
 HampusandGitHub
|
c8ff177f85
|
fix(unfurl): cache empty results briefly and key entries by provider (#1838)
|
2026-08-24 12:28:32 +02:00 |
|
 HampusandGitHub
|
f276bb1cd2
|
perf(app): stop the service worker caching static assets (#1837)
|
2026-08-24 12:28:21 +02:00 |
|
 HampusandGitHub
|
208632e648
|
fix(common): stop advertising static assets as immutable (#1836)
|
2026-08-24 12:28:10 +02:00 |
|
 HampusandGitHub
|
8cfac127f5
|
fix(media-proxy): stop proxy paths carrying fragments or credentials (#1835)
|
2026-08-24 12:27:58 +02:00 |
|
 HampusandGitHub
|
ac76bee5a3
|
fix(media-proxy): clamp the webp effort override to the encoder maximum (#1834)
|
2026-08-24 12:27:46 +02:00 |
|
 HampusandGitHub
|
171dc7e5b7
|
fix(media-proxy): serve and request images on one size ladder (#1833)
|
2026-08-24 12:27:33 +02:00 |
|
 HampusandGitHub
|
051985b767
|
fix(media-proxy): stop marking cached media immutable (#1832)
|
2026-08-24 12:27:21 +02:00 |
|
 HampusandGitHub
|
1eb85410bf
|
fix(common): keep the text after a block spoiler's closing pipes (#1831)
|
2026-08-24 12:27:08 +02:00 |
|
 HampusandGitHub
|
6697db7cf8
|
build(app): minify css with lightningcss in production builds (#1830)
|
2026-08-24 12:26:55 +02:00 |
|
 HampusandGitHub
|
56f6009390
|
feat(gifs): serve every medium, tiny and nano variant klipy offers (#1829)
|
2026-08-24 12:26:44 +02:00 |
|
 HampusandGitHub
|
d339b82f8e
|
fix(api): give desktop downloads a lifetime that follows the key (#1828)
|
2026-08-24 12:26:33 +02:00 |
|
 HampusandGitHub
|
82eb87bc47
|
perf(app-proxy): preconnect the media origin and revalidate the app shell (#1827)
|
2026-08-24 12:26:21 +02:00 |
|
 HampusandGitHub
|
991be1c5a2
|
fix(api): log every error once and keep the cause chain (#1826)
|
2026-08-24 12:11:42 +02:00 |
|
 HampusandGitHub
|
0d96a4574a
|
fix(api): read the log level and environment from the process env (#1824)
|
2026-08-23 21:44:32 +02:00 |
|
 HampusandGitHub
|
61b4511ae4
|
fix(schema): group category channels text before voice when ordering (#1823)
|
2026-08-23 17:49:26 +02:00 |
|
 HampusandGitHub
|
137edc7cfb
|
fix(app): share stream audio by default and reset the opt-out per stream (#1819)
|
2026-08-22 10:14:45 +02:00 |
|
 HampusandGitHub
|
14e772a751
|
fix(api): serialise elapsed temp bans as null for the admin panel (#1817)
|
2026-08-21 20:34:43 +02:00 |
|
 HampusandGitHub
|
32afbf12d6
|
fix(api): stop treating accounts pending deletion as already deleted (#1816)
|
2026-08-21 20:31:32 +02:00 |
|
 HampusandGitHub
|
ffaf5119d8
|
fix(app): only warn about software encoding when no layer is accelerated (#1815)
|
2026-08-21 18:49:51 +02:00 |
|
 HampusandGitHub
|
10bc8c1efa
|
fix(desktop): stop the windows audio probe timing out against its own budget (#1814)
|
2026-08-21 17:29:12 +02:00 |
|
 HampusandGitHub
|
85a03a9e39
|
fix(app): apply the screen share audio toggle to the surface being shared (#1813)
|
2026-08-21 17:04:22 +02:00 |
|
 HampusandGitHub
|
e7973b8be0
|
fix(api): derive voice reconciliation candidate ttl from real sweep spacing (#1810)
|
2026-08-21 15:49:50 +02:00 |
|
 HampusandGitHub
|
b5324c9223
|
perf(gateway): stop materializing all members on the guild connect path (#1809)
|
2026-08-21 14:00:19 +02:00 |
|
 HampusandGitHub
|
edb8d80077
|
ci: source the s3 provider for downloads and static from repo variables (#1803)
|
2026-08-20 21:46:26 +02:00 |
|
 HampusandGitHub
|
ddee116339
|
feat(api): route downloads through the configured downloads provider (#1802)
|
2026-08-20 21:44:53 +02:00 |
|
 HampusandGitHub
|
bdacaea4a8
|
feat(config): add an optional separate s3 provider for downloads (#1801)
|
2026-08-20 21:34:19 +02:00 |
|
 HampusandGitHub
|
9e28e02b5d
|
ci(rust): pin the floating toolchains to the version images build with (#1800)
|
2026-08-20 21:27:12 +02:00 |
|
 HampusandGitHub
|
3527dc95a2
|
fix(rust): silence result_large_err on axum response error paths (#1799)
|
2026-08-20 21:18:18 +02:00 |
|
 HampusandGitHub
|
27c7b2722d
|
chore(admin): regenerate openapi schemas for the admin acl cap (#1798)
|
2026-08-20 21:17:04 +02:00 |
|
 HampusandGitHub
|
ba96f52ed6
|
fix(schema): allow assigning every admin ACL to a user (#1797)
|
2026-08-20 21:09:56 +02:00 |
|
 HampusandGitHub
|
2c8b3ff45c
|
fix(build): build the messages and users images with scylla support (#1796)
|
2026-08-20 20:30:16 +02:00 |
|
 HampusandGitHub
|
631bc2307a
|
fix(slowmode): stop the local cooldown from outgrowing the channel setting (#1795)
|
2026-08-20 19:56:02 +02:00 |
|
 HampusandGitHub
|
8f4f9a8601
|
refactor(media): share one external proxy url codec across every service (#1794)
|
2026-08-20 19:55:40 +02:00 |
|
 HampusandGitHub
|
1c920f966e
|
feat(media): emit external proxy urls with a readable path and extension (#1793)
|
2026-08-20 18:44:45 +02:00 |
|
 HampusandGitHub
|
2b1de38949
|
chore(i18n): regenerate catalogs after the voice engine removal (#1791)
|
2026-08-20 17:45:49 +02:00 |
|
 HampusandGitHub
|
d5daf61dbd
|
fix(voice): recalibrate stored participant and stream volumes too (#1790)
|
2026-08-20 17:45:17 +02:00 |
|
 HampusandGitHub
|
06c42ce02f
|
refactor(desktop): delete the unused rust voice module (#1789)
|
2026-08-20 17:44:55 +02:00 |
|
 HampusandGitHub
|
4f21430880
|
refactor(voice): drop the native only surface from voice_engine_v2 and narrow the desktop bridge (#1788)
|
2026-08-20 17:44:37 +02:00 |
|
 HampusandGitHub
|
9731bac40f
|
refactor(voice): remove the native voice engine from the renderer (#1787)
|
2026-08-20 17:43:38 +02:00 |
|
 HampusandGitHub
|
b144e650f2
|
fix(voice): make deafen reach watched screen share audio (#1786)
|
2026-08-20 17:43:19 +02:00 |
|
 HampusandGitHub
|
ef6536644c
|
fix(voice): stop the in call speaker slider clamping a boosted output volume (#1785)
|
2026-08-20 17:42:59 +02:00 |
|
 HampusandGitHub
|
17eab43245
|
fix(voice): retune the remote playback leveller and measure it in float (#1784)
|
2026-08-20 17:42:40 +02:00 |
|
 HampusandGitHub
|
fbd7f1e3b8
|
fix(voice): compose participant gain in linear space and split the ceilings (#1783)
|
2026-08-20 17:42:21 +02:00 |
|
 HampusandGitHub
|
25af7516a4
|
fix(voice): widen the volume boost leg and add a master soft clip limiter (#1782)
|
2026-08-20 17:42:02 +02:00 |
|
 HampusandGitHub
|
c020eded31
|
fix(voice): stop forcing automatic gain control off on every capture profile (#1781)
|
2026-08-20 17:41:44 +02:00 |
|
 HampusandGitHub
|
5331c0216a
|
fix(voice): keep a remote track pinned at zero volume across re-attach (#1780)
|
2026-08-20 17:40:53 +02:00 |
|
 HampusandGitHub
|
528777926c
|
fix(api): stop one unreachable community from breaking bookmarks (#1779)
|
2026-08-20 15:50:51 +02:00 |
|
 HampusandGitHub
|
47b5c3d4f0
|
fix(app): expose the guild id on guild list items again (#1778)
|
2026-08-20 14:39:24 +02:00 |
|
 HampusandGitHub
|
d9bfca66d6
|
fix(app): keep search results in server order instead of per channel (#1777)
|
2026-08-20 13:10:47 +02:00 |
|
 HampusandGitHub
|
ded51b65d3
|
fix(app): restore the mobile voice message recorder (#1776)
|
2026-08-20 04:33:24 +02:00 |
|
 HampusandGitHub
|
ddc8837d4f
|
fix(app): scale embed and attachment width caps with zoom (#1775)
|
2026-08-20 04:33:17 +02:00 |
|
 HampusandGitHub
|
df16957c95
|
fix(app): scale tooltip max-width with app zoom (#1774)
|
2026-08-20 04:33:10 +02:00 |
|
 HampusandGitHub
|
f38b19d4bd
|
fix(app): let the caret move past emoji and mentions in the composer (#1768)
|
2026-08-19 23:41:05 +02:00 |
|
 HampusandGitHub
|
f7cd4f2c74
|
docs(operator): explain how to reclaim space after upgrades (#1767)
|
2026-08-19 23:31:15 +02:00 |
|