Vitor Pamplona
7874893938
v1.06.1
2026-03-23 18:19:42 -04:00
Vitor Pamplona
51fa28f22a
no message
2026-03-23 18:16:24 -04:00
Vitor Pamplona
ec4f949782
Leaves some space to click when their is no space or new lines on the poll.
2026-03-23 18:15:36 -04:00
Vitor Pamplona
4c9f2de6f7
- Improves rendering of the completed polls
...
- Doesn't render quoted polls
2026-03-23 18:01:41 -04:00
Vitor Pamplona
e5aeb49a4b
Solves some of the crashes of concurrent modification exception
2026-03-23 17:59:14 -04:00
Vitor Pamplona
da84848df7
Merge pull request #1911 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-23 17:46:06 -04:00
Crowdin Bot
3d488165c3
New Crowdin translations by GitHub Action
2026-03-23 21:40:20 +00:00
Vitor Pamplona
f99543dc3b
Merge pull request #1913 from greenart7c3/claude/add-url-crash-tests-J8Omf
...
Claude/add url crash tests j8 omf
2026-03-23 17:38:51 -04:00
Claude
7ea5557828
test: fix UrlTest to use 今北産業 as the crash input (PR #1907 )
...
https://claude.ai/code/session_013rJ9iYndYVJgpYK2VazxL2
2026-03-23 21:02:41 +00:00
Claude
3a93c4b075
test: add UrlTest for getPart() boundary conditions fixed in PR #1907
...
Tests the StringIndexOutOfBoundsException fix in Url.getPart() by directly
constructing Url objects with UrlMarker indices that exceed the trimmed
originalUrl length — the exact scenario that occurs when readEnd() strips
a trailing character (e.g. ':') while the PORT/QUERY marker still points
to the original buffer position.
https://claude.ai/code/session_013rJ9iYndYVJgpYK2VazxL2
2026-03-23 20:57:49 +00:00
Claude
9ebc4a1e67
style: remove trailing blank line in UrlMarkerTest
...
https://claude.ai/code/session_013rJ9iYndYVJgpYK2VazxL2
2026-03-23 20:56:58 +00:00
Claude
9202b60dcf
test: add regression tests for 今北産業 URL crash (PR #1907 )
...
Verifies that the Japanese phrase "今北産業" does not cause a
StringIndexOutOfBoundsException in Url.getPart() and is not
detected as a URL.
https://claude.ai/code/session_013rJ9iYndYVJgpYK2VazxL2
2026-03-23 20:46:59 +00:00
Claude
e31e3829a6
test: add regression tests for PR #1907 URL crash fix
...
Tests cover the StringIndexOutOfBoundsException in Url.getPart() that
occurred when readEnd() trimmed trailing characters (e.g. ':') from a
detected URL but urlMarker indices remained pointing past the trimmed
string's end.
- UrlMarkerTest: three cases testing PORT/QUERY index at or beyond
string length (the boundary conditions fixed by minOf clamping and
the startIndex >= length guard)
- UrlsDetectorTest: regression for "今北産業" (no crash, 0 URLs) and
for a bare "example.com:" host
- UrlParserTest: end-to-end regression for "今北産業" and "example.com:"
https://claude.ai/code/session_013rJ9iYndYVJgpYK2VazxL2
2026-03-23 20:31:28 +00:00
Vitor Pamplona
f553489ddf
Improves the wording of the Last Seen
2026-03-23 15:51:35 -04:00
Vitor Pamplona
2b920fc47a
Merge pull request #1907 from greenart7c3/claude/fix-android-runtime-exception-auFbS
...
Fix URL parsing bounds checking in Url.kt
2026-03-23 15:51:07 -04:00
Vitor Pamplona
306d76f793
Tries to fix
...
IllegalArgumentException: 1.06.0-PLAY
| Prop | Value |
|------|-------|
| Manuf |Google |
| Model |Pixel 8a |
| Prod |akita |
| Android |16 |
| SDK Int |36 |
| Brand |google |
| Hardware |akita |
| Device | akita |
| Host | r-0123456789abcdef-0123 |
| User | android-user |
```
java.lang.IllegalArgumentException: Cannot disable reuse from root if it was caused by other groups
androidx.compose.runtime.PreconditionsKt.throwIllegalArgumentException(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:3)
androidx.compose.runtime.ComposerImpl.endReuseFromRoot(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:19)
androidx.compose.runtime.PausedCompositionImpl.resume(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:369)
androidx.compose.ui.layout.LayoutNodeSubcompositionsState$precomposePaused$2.resume(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:50)
androidx.compose.foundation.lazy.layout.PrefetchHandleProvider$HandleAndRequestImpl.performPausableComposition(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:49)
androidx.compose.foundation.lazy.layout.PrefetchHandleProvider$HandleAndRequestImpl.executeRequest(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:128)
androidx.compose.foundation.lazy.layout.PrefetchHandleProvider$HandleAndRequestImpl.execute(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:33)
androidx.compose.foundation.lazy.layout.AndroidPrefetchScheduler.runRequest(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:36)
androidx.compose.foundation.lazy.layout.AndroidPrefetchScheduler.run(r8-map-id-eb237b6d0af50dd04fa25285a72672c5149c195876ad0d708b61d757d31f3d90:113)
android.os.Handler.handleCallback(Handler.java:1070)
android.os.Handler.dispatchMessage(Handler.java:125)
android.os.Looper.dispatchMessage(Looper.java:333)
android.os.Looper.loopOnce(Looper.java:263)
android.os.Looper.loop(Looper.java:367)
android.app.ActivityThread.main(ActivityThread.java:9331)
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:566)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:837)
```
2026-03-23 13:47:00 -04:00
Vitor Pamplona
eeca86e542
Fixes comparator to avoid Comparison method violates its general contract!
2026-03-23 13:16:32 -04:00
Claude
951610d9ca
fix: prevent StringIndexOutOfBoundsException in Url.getPart()
...
When UrlDetector.readEnd() trims the last character from URLs ending
with characters like '.', ',', etc., the urlMarker indices remain
based on the original buffer length. This caused getPart() to call
substring() with an end index beyond the trimmed URL's length.
Fix by clamping the end index to originalUrl.length and guarding
against an out-of-bounds start index.
https://claude.ai/code/session_014Q2SvTE5vKgUm1w8dPVjYo
2026-03-23 17:10:56 +00:00
Vitor Pamplona
590bd21f62
UriParser might crash, wraps in a try catch
2026-03-23 13:03:43 -04:00
Vitor Pamplona
81380a32ae
Fixes POCO phone's removal of the + sign in NWC
2026-03-23 13:03:18 -04:00
Vitor Pamplona
943f1256a7
Improves zap-store settings
2026-03-23 12:41:30 -04:00
Vitor Pamplona
7af1be7363
v1.06.0
2026-03-23 11:23:44 -04:00
Vitor Pamplona
a39688dabb
remove warnings
2026-03-23 10:46:55 -04:00
Vitor Pamplona
33ec43a5c3
Removing warnings
2026-03-23 10:39:56 -04:00
Vitor Pamplona
1f5841d090
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
update translations: CZ, DE, PT, SE
New Crowdin translations by GitHub Action
2026-03-23 10:31:22 -04:00
Vitor Pamplona
9d086df37a
Updating all dependencies
2026-03-23 10:28:33 -04:00
Vitor Pamplona
ed3390f64a
Fixes weird import
2026-03-23 10:16:59 -04:00
Vitor Pamplona
e659651dd4
Merge pull request #1906 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-23 09:26:59 -04:00
Crowdin Bot
0cc06f424e
New Crowdin translations by GitHub Action
2026-03-23 13:12:22 +00:00
davotoula
11176a4679
update translations: CZ, DE, PT, SE
2026-03-23 14:08:14 +01:00
Vitor Pamplona
d964816fd3
Fixes build dependency bug: Spotless needs vlcSetup for... something...
2026-03-23 09:06:52 -04:00
Vitor Pamplona
bbb75afed9
Merge pull request #1904 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-23 08:27:58 -04:00
Crowdin Bot
2eb3ebd365
New Crowdin translations by GitHub Action
2026-03-23 12:25:24 +00:00
Vitor Pamplona
c75881d928
Merge pull request #1903 from nrobi144/fix/chess-interop
...
fix(chess): normalize SAN for cross-client Jester interop
2026-03-23 08:23:51 -04:00
nrobi144
9d8d0e249d
fix(chess): encode required fields in Jester content JSON
...
JesterContent fields version, fen, and history were omitted from
serialized JSON because kotlinx.serialization skips default values.
Jester's isStartGameEvent checks arrayEquals(json.history, []) which
fails when the field is absent (undefined !== []).
Added @EncodeDefault to version, fen, and history so they are always
included in the JSON output regardless of value.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-23 09:08:28 +02:00
nrobi144
677bc6c34a
fix(chess): add offchain.pub relay for jester interop
...
jester.nyo.dev uses offchain.pub as one of its relays. Adding it gives
us 2 shared relays (relay.damus.io + offchain.pub) instead of 1,
improving challenge visibility between Amethyst and Jester clients.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-23 08:26:09 +02:00
nrobi144
3eaf3d38a5
fix(chess): normalize SAN for cross-client interop
...
ChessEngine.makeMove() now normalizes SAN notation before passing to
chesslib, fixing games against jester.nyo.dev and other clients that
use different notation:
- Castling: 0-0 → O-O, 0-0-0 → O-O-O (zeros to letters)
- Annotations: strips !, ?, !!, ??, !?, ?! suffixes
Previously, chesslib rejected 0-0/0-0-0 causing ChessStateReconstructor
to mark games as desynced and skip remaining moves. Games appeared
permanently stuck, even after app restart.
Also fixes discoverUserGames() silently dropping games classified as
spectator — now adds them to spectatingGames instead.
23 new interop tests covering SAN variants, reconstruction, spectator
detection, and missing start event handling.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-23 07:21:17 +02:00
Vitor Pamplona
d4fd8088f1
lint 2
2026-03-22 21:04:11 -04:00
Vitor Pamplona
3e7633ea6b
lint
2026-03-22 20:02:13 -04:00
Vitor Pamplona
11ed878111
Removing unnecessary XML loading.
2026-03-22 19:43:00 -04:00
Vitor Pamplona
76df43b031
Removes logs from blossom fetcher
2026-03-22 19:07:18 -04:00
Vitor Pamplona
41b0abc8e9
Moves expiration process to IO
2026-03-22 19:06:37 -04:00
Vitor Pamplona
f70fd9ad2b
more change log improvements.
2026-03-22 15:47:00 -04:00
Vitor Pamplona
9eba27e9b2
Additional updates to the change log
2026-03-22 15:28:08 -04:00
Vitor Pamplona
37f6a7b133
Makes sure subscriptions are closed on the NostrClient utility methods
2026-03-22 15:18:48 -04:00
Vitor Pamplona
439b392aa0
Moves EmptyNostrClient to a class to avoid auto-import issues
2026-03-22 15:14:49 -04:00
Vitor Pamplona
2e1066a609
Merge pull request #1902 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-22 14:55:48 -04:00
Crowdin Bot
0905b05388
New Crowdin translations by GitHub Action
2026-03-22 18:50:38 +00:00
Vitor Pamplona
b2f7c3296f
Activate edits for Articles.
2026-03-22 14:47:27 -04:00
Vitor Pamplona
9c30e2d0f6
Adds draft editing to long form posting
2026-03-22 14:38:44 -04:00
Vitor Pamplona
570639c1df
Fixes build
2026-03-22 12:50:26 -04:00
Vitor Pamplona
65ae09e201
Adding file uploads and metadata stripping to the Longform screen
2026-03-22 12:46:25 -04:00
Vitor Pamplona
93b1392080
Merge pull request #1901 from vitorpamplona/claude/add-markdown-post-screen-Xma8x
...
Add NIP-23 Long-Form Content (Markdown Articles) Support
2026-03-22 12:38:14 -04:00
Vitor Pamplona
3e93472dce
Merge branch 'main' into claude/add-markdown-post-screen-Xma8x
2026-03-22 12:38:04 -04:00
Vitor Pamplona
26a3dcbd85
Adds upload cover url
2026-03-22 12:35:19 -04:00
Vitor Pamplona
ffa60c5fd3
Final touches on new Markdown Screen
2026-03-22 12:25:49 -04:00
Vitor Pamplona
cd3282b342
Merge pull request #1900 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-22 11:25:05 -04:00
Crowdin Bot
41539c1b7a
New Crowdin translations by GitHub Action
2026-03-22 15:21:49 +00:00
Vitor Pamplona
40c45fb3a1
Adds a RelaySync filter by since/until dates.
2026-03-22 11:18:28 -04:00
Vitor Pamplona
b6b4856fe4
Fixes a closing bug when the coroutine crashes
...
Fixes an index bug on matching subscriptions
Requires the relay to send events that match the sub in order to move forward with the paging
2026-03-22 11:18:12 -04:00
Vitor Pamplona
adb3a0e0fc
Better transitions to a Nostrclient that is autocloseable, destroying all links to everything else when closing
2026-03-22 11:16:54 -04:00
Vitor Pamplona
459f69ff2c
Moves open polls view to a state flow in thew viewmodel
2026-03-21 16:20:15 -04:00
Vitor Pamplona
90cced23d2
Fixes search by noteID returning a version of the note instead of the address
2026-03-21 15:49:19 -04:00
David Kaspar
0dec0164ad
Merge pull request #1899 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-21 18:47:46 +01:00
Crowdin Bot
5af0cc7eac
New Crowdin translations by GitHub Action
2026-03-21 17:38:51 +00:00
Vitor Pamplona
ef5508b60b
Merge pull request #1896 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-21 13:38:47 -04:00
Vitor Pamplona
fd79da0b09
Merge pull request #1898 from vitorpamplona/claude/nip42-relay-auth-P878m
...
Implement pluggable relay policies for NIP-42 authentication
2026-03-21 13:37:36 -04:00
Vitor Pamplona
15ff3040b5
Merge branch 'main' into claude/nip42-relay-auth-P878m
2026-03-21 13:37:21 -04:00
Crowdin Bot
a86b9ab2e1
New Crowdin translations by GitHub Action
2026-03-21 17:35:12 +00:00
Vitor Pamplona
862aa0cb78
Update CHANGELOG for release v1.06.0
...
Updated CHANGELOG for release v1.06.0, detailing new features, improvements, and removals including support for NIP-85 Polls, custom NIP-40 Expirations, and various UI enhancements.
2026-03-21 13:33:51 -04:00
Vitor Pamplona
cfead47d71
Improves design of the policy
2026-03-21 13:21:21 -04:00
davotoula
32c0efb291
update translations: CZ, DE, PT, SE
2026-03-21 16:04:16 +01:00
Vitor Pamplona
b2ad97bb6b
merge
2026-03-20 21:19:49 -04:00
Vitor Pamplona
df6dc17047
Final touches on the Attestation cards
2026-03-20 21:16:59 -04:00
David Kaspar
81308a2368
Merge pull request #1894 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-21 00:16:29 +01:00
Crowdin Bot
24d2928881
New Crowdin translations by GitHub Action
2026-03-20 23:08:05 +00:00
Vitor Pamplona
2ef634ca01
Fixes showing attestations in the NoteMaster
2026-03-20 19:05:07 -04:00
Vitor Pamplona
aca62ec81f
Improves layout of the open poll cards
2026-03-20 18:41:11 -04:00
Claude
b0a8cae194
refactor: extract AuthPolicy interface from requireAuth boolean
...
Replace the requireAuth: Boolean parameter in NostrServer with a
pluggable AuthPolicy interface. Each policy has trigger points for
EVENT (acceptEvent), REQ (acceptReq with filter rewriting), COUNT
(acceptCount), and live event delivery (canSendToSession).
Built-in policies: OpenPolicy (allow all) and RequireAuthPolicy
(require auth for all commands, matching the previous behavior).
https://claude.ai/code/session_017vdjbdxdYK1oJMH66koVZE
2026-03-20 22:40:18 +00:00
Vitor Pamplona
f2e60986d6
Merge pull request #1895 from vitorpamplona/claude/show-open-polls-notifications-1ZDVi
...
Add Open Polls section to notifications feed
2026-03-20 18:30:07 -04:00
Vitor Pamplona
b93ad35029
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
update translations: CZ, DE, PT, SE add: find missing translations skill
2026-03-20 18:18:24 -04:00
Vitor Pamplona
d54bc91c20
Updates changelog for next release
2026-03-20 18:12:48 -04:00
David Kaspar
b1ca425c46
Merge pull request #1893 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-20 23:11:31 +01:00
Claude
8fd08aa56d
feat: implement NIP-42 server-side relay authentication
...
Add server-side AUTH challenge/response handling per NIP-42 spec:
- RelaySession generates a unique challenge per connection and tracks
authenticated pubkeys (multiple users can auth on one session)
- NostrServer gains relayUrl and requireAuth parameters; when requireAuth
is true, EVENT/REQ/COUNT are rejected with auth-required: prefix
- AUTH handler validates kind 22242, created_at within 10 min, challenge
and relay tag matching
- AuthCmd now accepts Event (not just RelayAuthEvent) so the server can
gracefully reject wrong-kind auth attempts
- 11 new tests covering auth success, wrong challenge/relay/kind/timestamp,
multi-user auth, and requireAuth gating
https://claude.ai/code/session_017vdjbdxdYK1oJMH66koVZE
2026-03-20 22:05:53 +00:00
Crowdin Bot
6bdf65da56
New Crowdin translations by GitHub Action
2026-03-20 21:59:53 +00:00
davotoula
64316f7d73
update translations: CZ, DE, PT, SE
...
add: find missing translations skill
2026-03-20 22:55:31 +01:00
Vitor Pamplona
73536dd421
merge
2026-03-20 17:49:31 -04:00
Vitor Pamplona
817c4c7723
Removes some Attestation events from the feeds, adding on others
2026-03-20 17:45:45 -04:00
Claude
98cda3ba71
style: apply spotless formatting to OpenPollsSection
...
https://claude.ai/code/session_01LLLN5MDA5nJFYx38MVo81Q
2026-03-20 21:41:13 +00:00
Claude
b6e54db81b
refactor: use LocalCache.observeNotes flow for open polls
...
Replace LocalCache.notes.forEach iteration with observeNotes using a
Filter for PollEvent.KIND and ZapPollEvent.KIND by the current user.
This makes the open polls list reactive — it updates automatically
when new polls arrive instead of only computing once on composition.
https://claude.ai/code/session_01LLLN5MDA5nJFYx38MVo81Q
2026-03-20 21:38:48 +00:00
David Kaspar
ed624a0a36
Merge pull request #1892 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-20 22:33:58 +01:00
Crowdin Bot
57c046261e
New Crowdin translations by GitHub Action
2026-03-20 21:32:27 +00:00
Vitor Pamplona
6cb686f5cb
Merge pull request #1889 from davotoula/convert-dropdown-menus-to-M3-action-sheet-dialogs
...
Convert dropdown menus to m3 action sheet dialogs
2026-03-20 17:30:58 -04:00
Vitor Pamplona
bbac00ccb3
Merge branch 'main' into convert-dropdown-menus-to-M3-action-sheet-dialogs
2026-03-20 17:30:50 -04:00
Vitor Pamplona
0f921989b9
Merge pull request #1891 from vitorpamplona/claude/add-attestations-home-feed-lQCT8
...
Add support for rendering attestation events
2026-03-20 17:28:38 -04:00
Vitor Pamplona
a21da546ab
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-20 17:26:22 -04:00
Vitor Pamplona
9bfb170ffa
simple documentation
2026-03-20 17:15:05 -04:00
David Kaspar
ccffeb1e49
Merge pull request #1890 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-20 22:14:17 +01:00
Crowdin Bot
752f460bc0
New Crowdin translations by GitHub Action
2026-03-20 21:08:30 +00:00
Vitor Pamplona
b247310ba7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
code review fixes: 1. options.isNotEmpty().also → if guard 2. Hardcoded English strings in FeedGroup enum 3. Hardcoded accessibility label 4. Raw 14.sp literals (×6) → replaced with Font14SP theme constant 5. Raw 12.sp literal → replaced with Font12SP theme constant 6. Modifier.size(20.dp) → replaced with existing Size20Modifier theme constant
update gitignore
add grouped feed filter dialog with Material 3 styling add icons, reduce text size, center group headers in filter dialog
modernize SpinnerSelectionDialog with Material 3 styling
feature switch chess icon on android: visible in debug/benchmark client only
New Crowdin translations by GitHub Action
Intentionality: check the return value and log a warning via Log.w() when deletion fails
Update CS, DE, SV, PT
2026-03-20 17:05:29 -04:00
Vitor Pamplona
fc1e3e6b83
Adds a simple relay to quartz
2026-03-20 16:54:04 -04:00
Vitor Pamplona
d431b12f94
Migrates EventStore from Android's SQLLite to KMP
...
Fixes testing of libsodium between java and android
2026-03-20 16:00:17 -04:00
Vitor Pamplona
c5066d89c3
Fixes serialization issues when the code falls back to Kotlin Serialization
2026-03-20 15:58:17 -04:00
davotoula
26a97aa141
Code review fixes:
...
- Replaced manual .semantics with the simpler .clickable - avoids conditional Modifier allocation and a redundant semantics block
- Moved LocalClipboardManager.current inside the if
- Merged two consecutive postNostrUri?.let blocks into a single one
- Wrapped the "Copy & Gallery" M3ActionSection in a condition
- Removed duplicate string resource
2026-03-20 20:03:54 +01:00
davotoula
c9afec47cd
style: run spotlessApply after M3 dialog migration
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-20 19:24:49 +01:00
davotoula
bd10f74b2a
feat: convert bookmark item options menu to M3 dialog
...
Replace DropdownMenu with M3ActionDialog, M3ActionSection, and M3ActionRow
components. Move dialog outside ClickableBox. Preserve wantsToEditPost and
reportDialogShowing state holders unchanged.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-20 19:22:31 +01:00
davotoula
6007e22871
feat: convert note actions menu to M3 dialog
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-20 19:19:53 +01:00
davotoula
4e5d2e7d2a
feat: convert media context menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 19:17:16 +01:00
davotoula
b3a61ba288
feat: convert user profile menu to M3 dialog
...
Replace DropdownMenu with M3ActionDialog in UserProfileDropDownMenu,
structured into share, moderation, and report sections.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 19:14:50 +01:00
davotoula
6632d3f515
feat: convert media playback menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 19:12:13 +01:00
davotoula
2fc9b294ae
feat: convert follow pack actions menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 19:08:50 +01:00
davotoula
28dbb3948b
feat: convert bookmark group management menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 19:05:47 +01:00
davotoula
5bde93d58f
feat: convert people list management menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 18:33:26 +01:00
davotoula
2c6d18607a
feat: convert bookmark list actions menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 18:30:58 +01:00
davotoula
cbe13f6819
feat: convert add member menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 18:10:45 +01:00
davotoula
dce1484dcc
feat: convert add bookmark menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 17:19:27 +01:00
davotoula
aaed4bf697
feat: convert relay export menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 17:11:46 +01:00
davotoula
289c882d59
feat: convert URL preview copy menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 17:05:03 +01:00
davotoula
29f0b78fdd
feat: convert Messages mark-as-read menu to M3 dialog
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 17:02:46 +01:00
davotoula
19ff300f65
feat: add string resources for M3 action dialog titles
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 16:59:55 +01:00
davotoula
fdb5b58513
feat: add reusable M3ActionDialog, M3ActionSection, M3ActionRow components
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-20 16:59:51 +01:00
Vitor Pamplona
864581ecaa
Merge pull request #1887 from davotoula/ui-polish-feed-filter
...
UI polish: feed filter
2026-03-20 10:00:38 -04:00
davotoula
620f8dbf10
code review fixes:
...
1. options.isNotEmpty().also → if guard
2. Hardcoded English strings in FeedGroup enum
3. Hardcoded accessibility label
4. Raw 14.sp literals (×6) → replaced with Font14SP theme constant
5. Raw 12.sp literal → replaced with Font12SP theme constant
6. Modifier.size(20.dp) → replaced with existing Size20Modifier theme constant
2026-03-20 14:30:07 +01:00
davotoula
f15b7620df
update gitignore
2026-03-20 14:01:45 +01:00
davotoula
3a195c4648
add grouped feed filter dialog with Material 3 styling
...
add icons, reduce text size, center group headers in filter dialog
2026-03-20 14:01:45 +01:00
davotoula
460ccc2d02
modernize SpinnerSelectionDialog with Material 3 styling
2026-03-20 14:00:19 +01:00
Vitor Pamplona
4f80fbfae4
Merge pull request #1886 from davotoula/feature-switch-for-chess
...
feature switch out chess icon on android
2026-03-20 07:41:38 -04:00
Claude
525b54e3c6
feat: add attestation events to LocalCache, Home feed, profile feed, and NoteCompose UI
...
- Load AttestationEvent (31871), AttestationRequestEvent (31872),
AttestorRecommendationEvent (31873), and AttestorProficiencyEvent (11871)
into LocalCache via consumeBaseReplaceable
- Create beautiful card-based UI renderers for all four attestation types
with color-coded status indicators, validity badges, and kind chips
- Add attestation kinds to Home feed data source (FilterHomePostsByAuthors)
and DAL filter (HomeNewThreadFeedFilter)
- Add attestation kinds to user profile feed data source
(FilterUserProfilePosts) and DAL filter (UserProfileNewThreadFeedFilter)
- Add string resources for attestation status labels
https://claude.ai/code/session_01BEMFoHZENBwzmzS6TMPxVE
2026-03-20 10:39:32 +00:00
davotoula
05eb94915b
feature switch chess icon on android: visible in debug/benchmark client only
2026-03-20 10:14:59 +01:00
David Kaspar
1159edad15
Merge pull request #1885 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-20 10:06:54 +01:00
Crowdin Bot
450a352c98
New Crowdin translations by GitHub Action
2026-03-20 08:36:42 +00:00
davotoula
94cf31eb29
Intentionality: check the return value and log a warning via Log.w() when deletion fails
2026-03-20 09:32:11 +01:00
davotoula
123d9eea0c
Update CS, DE, SV, PT
2026-03-20 09:23:01 +01:00
Vitor Pamplona
c976f24a50
Fixes the list of users in the connected relays UI
2026-03-19 17:41:25 -04:00
Vitor Pamplona
583b9e56ba
Merge pull request #1883 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-19 17:13:00 -04:00
Crowdin Bot
e183d5efd2
New Crowdin translations by GitHub Action
2026-03-19 21:10:44 +00:00
Vitor Pamplona
f9369b0cf1
Merge pull request #1884 from vitorpamplona/claude/improve-android-push-notifications-9DzMr
...
Add direct reply and mark read actions to DM notifications
2026-03-19 17:08:50 -04:00
Vitor Pamplona
11b5ebe108
Final touches.
2026-03-19 17:07:03 -04:00
Vitor Pamplona
379cbc7e69
Merge pull request #1882 from vitorpamplona/claude/add-attestations-package-ZnoES
...
Add attestation event types and tag support for NIP-31871
2026-03-19 16:42:44 -04:00
Vitor Pamplona
a3941e3b01
Merge pull request #1837 from vitorpamplona/claude/strip-file-metadata-sVIEd
...
Add metadata stripping for images, videos, and audio files
2026-03-19 16:41:10 -04:00
Claude
afb3221446
feat: add attestations package to quartz experimental
...
Implement the Attestations NIP with four event types:
- AttestationEvent (31871, addressable) - validity claims about other events
- AttestationRequestEvent (31872, addressable) - request attestation from attestors
- AttestorRecommendationEvent (31873, addressable) - recommend attestors for kinds
- AttestorProficiencyEvent (11871, replaceable) - declare verification proficiency
Each event follows Quartz's tag-per-file pattern with TagArrayExt and
TagArrayBuilderExt for reading/building tags.
https://claude.ai/code/session_01UswHRVTNqn1ToU4P4XDh2V
2026-03-19 20:40:19 +00:00
David Kaspar
32fdb63a89
Merge pull request #1881 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-19 21:32:11 +01:00
Claude
638bad3672
feat: show open polls at top of notification screen
...
Adds an "Open Polls" section at the top of the notification feed that
displays the user's PollEvent (NIP-88) and ZapPollEvent (kind 6969)
that are still active. Polls without a closing time are assumed to
expire 1 day after creation.
https://claude.ai/code/session_01LLLN5MDA5nJFYx38MVo81Q
2026-03-19 20:24:41 +00:00
Crowdin Bot
a1694bd84d
New Crowdin translations by GitHub Action
2026-03-19 20:16:12 +00:00
David Kaspar
892d6f2b7c
Merge pull request #1880 from davotoula/update-translations
...
Update CS, DE, SV, PT
2026-03-19 21:14:26 +01:00
davotoula
d1e70879ee
Update CS, DE, SV, PT
2026-03-19 21:09:36 +01:00
davotoula
adc2e15078
Merge branch 'main-upstream' into claude/strip-file-metadata-sVIEd
2026-03-19 20:49:15 +01:00
Vitor Pamplona
4df78340b6
Merge pull request #1879 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-19 15:41:16 -04:00
davotoula
ae5f76e018
Merge branch 'main-upstream' into claude/strip-file-metadata-sVIEd
2026-03-19 20:38:57 +01:00
Crowdin Bot
f8d6ac7900
New Crowdin translations by GitHub Action
2026-03-19 19:38:07 +00:00
Vitor Pamplona
cee4291ba9
Merge pull request #1878 from vitorpamplona/claude/event-sync-screen-sYGtN
...
Claude/event sync screen
2026-03-19 15:36:38 -04:00
Vitor Pamplona
fd5e8dcca0
Merge pull request #1877 from vitorpamplona/claude/nip17-dm-migration-qxDbT
...
Deprecate NIP-04 and always use NIP-17 for DM sending
2026-03-19 15:25:38 -04:00
Vitor Pamplona
ad53bff8e3
Final touches to remove nip04 dms
2026-03-19 15:23:48 -04:00
Vitor Pamplona
f75971fc6a
Merge pull request #1876 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-19 13:31:51 -04:00
Crowdin Bot
2f60697b28
New Crowdin translations by GitHub Action
2026-03-19 16:43:50 +00:00
Vitor Pamplona
3f4e265dc0
Brings the creation of Zap Polls back.
2026-03-19 12:40:14 -04:00
Claude
695d3c7a23
feat: deprecate NIP-04 DM sending, always use NIP-17
...
NIP-04 encryption for sending DMs is now deprecated. All new messages
are sent using NIP-17 (gift-wrapped sealed messages). Reading NIP-04
messages remains supported for backward compatibility.
When a recipient lacks both a DM relay list (kind 10050) and NIP-65
inbox relays, the send button is disabled and a warning is shown
explaining that messages cannot be delivered.
Changes:
- ChatNewMessageState: Remove nip17/requiresNip17 toggles, add
recipientsMissingDmRelays state, always send via NIP-17
- ChatNewMessageViewModel: Always use NIP-17, remove NIP-04 send
paths, add recipient relay status checking
- ToggleNip17Button -> Nip17Indicator: Replace toggle with static
NIP-17 indicator (always on)
- PrivateMessageEditFieldRow: Show warning when recipients lack
DM relay lists, hide message input
- ChatFileSender: sendAll() always uses NIP-17
- Desktop ChatPane: Remove NIP-17 toggle, show relay warning
- ChatroomView: Reactively check recipient DM relay availability
https://claude.ai/code/session_01T7QhUW9cZogk4DxDXbbbJJ
2026-03-19 15:22:13 +00:00
Vitor Pamplona
185fd96802
Merge branch 'main' into claude/strip-file-metadata-sVIEd
2026-03-19 10:06:20 -04:00
Vitor Pamplona
0f4555cfaa
Merge pull request #1875 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-19 09:58:46 -04:00
Crowdin Bot
5903af2229
New Crowdin translations by GitHub Action
2026-03-19 13:56:12 +00:00
Vitor Pamplona
29db4ca0e3
Merge pull request #1825 from vitorpamplona/claude/event-sync-screen-sYGtN
...
Add Event Sync feature to redistribute events across relays
2026-03-19 09:54:26 -04:00
Vitor Pamplona
78ffb9fce4
Merge branch 'main' into claude/event-sync-screen-sYGtN
2026-03-19 09:54:20 -04:00
Vitor Pamplona
30f862cf26
Increase max parallel to 50
2026-03-19 09:50:50 -04:00
Vitor Pamplona
ab81b2a71d
Improving calendar debug
2026-03-19 09:50:31 -04:00
Vitor Pamplona
ec29a47dc4
More debugging information
2026-03-19 09:34:52 -04:00
Vitor Pamplona
98578de840
Merge pull request #1874 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-19 08:51:23 -04:00
Crowdin Bot
311bbe19cf
New Crowdin translations by GitHub Action
2026-03-19 12:45:49 +00:00
Vitor Pamplona
3f841c94ec
Merge pull request #1873 from nrobi144/feat/desktop-media
...
feat(desktop): Full media parity — images, video, audio, encrypted DMs, upload, lightbox
2026-03-19 08:44:21 -04:00
nrobi144
5b2f2ca42b
feat(chats): per-message encryption badge — lock for NIP-17, lock-open for NIP-04
...
Show a small lock icon next to the timestamp on each DM message:
- NIP-17 (ChatMessageEvent, ChatMessageEncryptedFileHeaderEvent): filled
lock in primary color — relay can't see sender/recipient
- NIP-04 (PrivateDmEvent): open lock in muted gray — legacy encryption,
metadata visible to relays
Matches Android's IncognitoBadge pattern. Both NIP-04 and NIP-17 messages
in the same 1-on-1 conversation produce identical ChatroomKeys, so they
merge into one conversation — the badge is the only way to tell them apart.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 09:23:06 +02:00
nrobi144
f3e55f9958
fix(chats): handle ChatMessageEncryptedFileHeaderEvent in GiftWrap unwrap
...
The GiftWrap inner event handler only processed ChatMessageEvent (kind 14)
and ReactionEvent. ChatMessageEncryptedFileHeaderEvent (kind 15) was
silently dropped, so encrypted file attachments never appeared in DMs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 09:11:46 +02:00
nrobi144
35b58e489b
feat(chats): right-click context menu on encrypted files — download + forward
...
Right-click on encrypted file attachments in DMs now shows a context menu:
- "Save to disk" — decrypts and saves via native file dialog
- "Forward" — placeholder callback for forwarding to another conversation
Also caches decrypted bytes (not just image bitmap) so save doesn't
re-download. Non-image files also get decrypted on load for save support.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 09:06:26 +02:00
nrobi144
d9848b868b
feat(chats): always show attach button, auto-force NIP-17 with snackbar
...
- Attach button always visible in DM input (not gated on NIP-17 mode)
- Drag-and-drop always enabled
- When files are attached in NIP-04 mode, auto-switches to NIP-17
with snackbar: "Switched to NIP-17 — file attachments require
encrypted messaging"
- NIP-17 toggle remains for manual control
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 09:02:05 +02:00
nrobi144
9187bf448f
fix(chats): pass compactMode through RootContent — single-pane keeps split
...
compactMode was hardcoded in the Messages branch of RootContent, which is
shared between deck and single-pane. Now compactMode is a RootContent
parameter: deck passes true, single-pane defaults to false.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 07:53:03 +02:00
nrobi144
0184ebad11
fix(test): disambiguate mock upload call after ByteArray overload
...
The new ByteArray upload overload on DesktopBlossomClient made the
positional any() mock call ambiguous. Specify explicit type parameters.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 07:51:22 +02:00
nrobi144
e06287acb3
feat(chats): stacked messages layout in deck columns
...
In multi-deck mode, Messages column now uses stacked navigation instead
of side-by-side split pane. Full-width contact list OR full-width chat —
clicking a conversation navigates to chat, back arrow returns to list.
Single-pane mode keeps the existing split layout (280dp list + flex chat).
Changes:
- Add compactMode param to DesktopMessagesScreen (default false)
- Extract SplitMessagesContent and CompactMessagesContent composables
- Add onBack callback to ChatPane with back arrow in header
- Remove hardcoded 280dp from ConversationListPane (caller controls width)
- Pass compactMode=true from deck RootContent
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 07:49:36 +02:00
nrobi144
598256639b
fix(chats): share single DesktopIAccount across deck — DMs now visible
...
DeckColumnContainer was creating its own DesktopIAccount (and ChatroomList)
for the Messages column, while Main.kt created a separate one for DM relay
subscriptions. Events were added to one ChatroomList but the UI read from
the other, so DMs never appeared.
Fix: thread the single iAccount from Main.kt through DeckLayout →
DeckColumnContainer → RootContent → DesktopMessagesScreen. Removed the
duplicate DesktopIAccount and DmSendTracker creation from RootContent.
Audited all other deck column types — no similar instance duplication found.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 07:31:27 +02:00
nrobi144
24d4073b9b
feat(media): encrypted file sharing in desktop DMs (NIP-17 Phase 6)
...
Add full send + receive encrypted media support in desktop DM chat:
- Paperclip attach button and drag-and-drop in ChatPane (NIP-17 mode only)
- AES-GCM encryption before upload to Blossom server
- ChatMessageEncryptedFileHeaderEvent (kind 15) wrapped in GiftWrap
- sendNip17EncryptedFile() added to IAccount interface and implementations
- DesktopUploadOrchestrator.uploadEncrypted() with proper encrypted hash
- DesktopBlossomClient ByteArray upload overload for encrypted blobs
- LRU cache in EncryptedMediaService to avoid re-downloading
- Error handling: retry on failure, disable send during upload
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-19 06:53:36 +02:00
Vitor Pamplona
3e3adaff10
Finalizes the RelaySync utility
2026-03-18 17:35:05 -04:00
Vitor Pamplona
e57023cad9
Fix: Filters onCannotConnect to the relays that sent a req
2026-03-18 17:34:50 -04:00
davotoula
7bfc35e04d
Fixes Applied
...
Code reuse
- Extracted remuxTracks() helper to deduplicate video/audio remux loop (~40 lines)
- Extracted stripAfterCompression() to deduplicate identical blocks in upload()/uploadEncrypted()
- Replaced 8 identical showStrippingFailureDialog() copy-pastes with shared SuspendableConfirmation utility
Privacy
- 4 metadata ViewModels now error on strip failure instead of silently uploading unstripped media
Efficiency
- Eliminated temp input file copy for video/audio — MediaExtractor reads URIs directly
Bug fixes
- Fixed Long.toInt() overflow for MP3 files >2GB
- Fixed MP3 temp file leak on exception and null InputStream paths
Cleanup
- Mutex field and wrapping the suspendCancellableCoroutine in mutex.withLock. Concurrent callers now queued
- Converted MetadataStripper from class to object (stateless)
- Moved StrippingFailureState from service layer to UI as generic ConfirmationCallbacks
2026-03-18 20:59:46 +01:00
davotoula
0cf256e5b2
Merge branch 'main-upstream' into claude/strip-file-metadata-sVIEd
2026-03-18 19:32:43 +01:00
davotoula
bfc04497d6
Profile picture upload fails with an error instead of silently uploading unstripped media when stripping fails
2026-03-18 19:25:57 +01:00
davotoula
eb13bab738
fix grammar
2026-03-18 18:31:34 +01:00
davotoula
97e6206244
fix persisted account preference
2026-03-18 18:31:07 +01:00
davotoula
a7ac30493c
Extension mismatch fix
...
Temp file leak fix
2026-03-18 18:25:31 +01:00
davotoula
49c8423be5
moving the stripping decision after compressIfNeeded
2026-03-18 18:20:01 +01:00
davotoula
127079ede3
- Hide privacy toggle when video compression is selected (compression
...
already handles metadata stripping)
- Pass stripMetadata=false when toggle is hidden for compressed video
- Hide compression quality for audio and other non-compressible media types
- refactor
2026-03-18 13:54:15 +01:00
nrobi144
c90bf8f610
feat(media): add Note/Picture post type selector; fix gallery crash
...
- Post type toggle (Note vs Picture/kind 20) in compose dialog, only
shown when image files are attached. Text input disabled in picture mode.
- Fix LazyVerticalGrid crash in GalleryTab: bounded height via
fillParentMaxHeight() when nested inside LazyColumn.
- Phase 1 testing plan: all pass.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 14:42:44 +02:00
nrobi144
cf17dea53f
feat(media): add Note/Picture post type selector in compose dialog
...
When images are attached, a Note/Picture toggle appears letting the user
publish as kind 20 (PictureEvent) instead of kind 1. Text input is
disabled in picture mode. Selector only shows for image file types.
Updates testing plan: Phase 1 all pass.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 14:37:48 +02:00
nrobi144
1d1d32da0e
feat(media): add server selector to compose dialog; update testing plan
...
Server selector dropdown appears when files are attached, letting the
user choose which Blossom server to upload to. Updates testing plan:
Phase 2 & 3 all pass, Phase 9 audio tested with volume bug tracked.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 14:26:47 +02:00
nrobi144
836e024bd7
feat(media): use VLC :start-volume for initial audio; document volume bug
...
Passes :start-volume media option to VLC on play. Removes polling/delay
volume hacks. Documents 9.7 volume bug in testing plan — VLC ignores
initial volume on macOS, needs further investigation.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 13:26:52 +02:00
nrobi144
f0c80f3c7c
fix(media): delay volume enforcement — VLC audio output not ready at playing event
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 12:34:36 +02:00
nrobi144
11b9fdad80
fix(media): enforce volume on playback start — VLC resets volume on new media
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 12:30:57 +02:00
nrobi144
2a6087af27
feat(media): global media player — persistent playback across navigation
...
Media playback now survives navigation. A GlobalMediaPlayer singleton owns
VLC players and exposes StateFlows. Composables are thin viewports.
NowPlayingBar has full controls (volume, mute, save, fullscreen).
GlobalFullscreenOverlay renders video fullscreen above all screens.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 12:27:13 +02:00
davotoula
20ab105e44
feat: add metadata stripping failure dialog to all upload ViewModels
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 11:12:36 +01:00
davotoula
c0632e17bd
feat: add onStrippingFailed callback to upload orchestrators
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:51:30 +01:00
davotoula
9ce1ff3e63
feat: plumb stripMetadata from UI through ViewModels to upload orchestrators
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:50:16 +01:00
davotoula
3b1b15911f
feat: rename stripLocationMetadata to stripMetadata in UI state and dialogs
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:42:59 +01:00
davotoula
c76459859d
feat: update all Screen call-sites for new stripMetadata onAdd parameter
...
Add 6th Boolean parameter to onAdd lambdas in all 6 files that call
ImageVideoDescription. The parameter is unused (_) for now in 5 sites
and named in ShortNotePostScreen for future plumbing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:38:04 +01:00
davotoula
0d514a46d7
feat: add privacy toggle to ImageVideoDescription
...
Add stripMetadata state and SettingSwitchItem toggle. Extend onAdd
callback signature with 6th Boolean parameter for stripMetadata.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:36:56 +01:00
davotoula
f7a9389a66
feat: add string resources for privacy toggle and metadata dialog
...
Rename strip_location_metadata_label/description to strip_metadata_label/description
to reflect broader scope. Add new strings for the metadata stripping failure dialog.
Update references in NewMediaView.kt and ChatFileUploadDialog.kt.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:36:03 +01:00
davotoula
24e8487db6
fix: hide codec toggle when video compression is set to uncompressed
...
When the compression quality slider is set to UNCOMPRESSED (value 3),
no encoding happens so the H264/H265 codec choice is irrelevant. Hide
the codec toggle in this case to avoid confusion.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:33:35 +01:00
davotoula
0e62904883
fix: hide compression slider for audio uploads
...
Audio has no compression support in MediaCompressor (falls through to
no-op), so showing the compression quality slider for audio files is
misleading. This removes audio from the slider visibility condition in
ImageVideoDescription and wraps the unconditionally-shown slider in
ChatFileUploadDialog with a media type check.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:33:28 +01:00
davotoula
489e731eea
feat: add MP3 ID3 tag stripping and early-exit for unsupported audio
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:29:09 +01:00
davotoula
b9d62edaad
feat: support multiple tracks in audio metadata stripping
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:28:13 +01:00
davotoula
7219c787a6
fix: update direct MetadataStripper.strip() call sites for StrippingResult
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:26:02 +01:00
davotoula
4fc5166815
feat: propagate StrippingResult through UploadOrchestrator
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:25:55 +01:00
davotoula
f9176fc3fb
feat: add StrippingResult data class to MetadataStripper
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-18 10:25:50 +01:00
nrobi144
6e1315a4fa
feat(media): improve video player pool, thumbnail extraction, and NoteCard layout
...
Harden VLC player pool with dedicated thumbnail acquisition, better error
logging, and defensive buffer checks. Simplify lightbox/video controls,
fix NoteCard media sizing across feed, thread, bookmarks, and search screens.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-18 09:24:00 +02:00
Vitor Pamplona
f25be5e7bd
removes the benchmark action... it's not that useful.
2026-03-17 16:00:46 -04:00
Vitor Pamplona
bc5b254d01
merge
2026-03-17 15:57:44 -04:00
Vitor Pamplona
62811282a1
Merge pull request #1871 from vitorpamplona/claude/reorganize-nip47-wallet-mbVxR
...
Refactor NIP47 WalletConnect into organized subpackages
2026-03-17 15:47:51 -04:00
Vitor Pamplona
3e19195e4a
Renaming and making a test case that considers limits.
...
Fixes active filter index bug
2026-03-17 15:45:52 -04:00
davotoula
72158e8fc2
Add rotation to stripped video
2026-03-17 20:27:15 +01:00
davotoula
e5e51c9c42
REMUX_BUFFER_SIZE = 8MB — extracted as a companion constant (was 1024 * 1024 inline in both video and audio). 8MB prevents silent frame loss on 4K keyframes.
...
stripAudioMetadata try/finally — now mirrors stripVideoMetadata exactly: muxer/extractor always released, incomplete output file deleted on failure.
2026-03-17 20:09:33 +01:00
Claude
5029db2302
refactor: reorganize nip47 wallet connect package into subpackages
...
Split the flat nip47WalletConnect package into logical subpackages:
- rpc/ - JSON-RPC protocol models (Request, Response, Notification, NwcMethod, NwcErrorCode, NwcTransaction, etc.)
- events/ - Nostr event types (LnZapPaymentRequestEvent, LnZapPaymentResponseEvent, NwcInfoEvent, NwcNotificationEvent)
- cache/ - Decryption caches (NostrWalletConnectRequestCache, NostrWalletConnectResponseCache)
Root level keeps the entry points: Nip47WalletConnect (URI parsing), Nip47Client, Nip47Server.
Existing subpackages (tags/, kotlinSerialization/, jackson/) remain unchanged.
https://claude.ai/code/session_018YcwMeTHPXmeqpbZHcBEUg
2026-03-17 19:04:24 +00:00
davotoula
d87bf37138
added comment about limitations
2026-03-17 19:53:57 +01:00
davotoula
e7d11fdc84
add Track interleaving
2026-03-17 19:51:58 +01:00
davotoula
a2f29d5e2e
Early return with the original uri if there are no tracks
2026-03-17 19:43:16 +01:00
davotoula
4cf3a84190
delete orphaned output file on failure
2026-03-17 19:42:18 +01:00
davotoula
b61e1d5779
fix resource leak(s) on exception
2026-03-17 19:40:12 +01:00
Vitor Pamplona
b8351b8e29
Merge branch 'main' into claude/event-sync-screen-sYGtN
2026-03-17 14:17:13 -04:00
Vitor Pamplona
18fdfcc9d8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
adaptability: use constant instead of repeated string literals
2026-03-17 14:10:45 -04:00
Vitor Pamplona
b22aa1ad0f
Shows default banner if the user's image is not available
2026-03-17 14:02:09 -04:00
Vitor Pamplona
7f5baab5df
Adds last seen to the user profile
2026-03-17 13:58:07 -04:00
davotoula
76f8130d40
Merge branch 'main-upstream' into claude/strip-file-metadata-sVIEd
2026-03-17 18:47:35 +01:00
Vitor Pamplona
aaa3bcfb2a
Merge pull request #1870 from vitorpamplona/claude/fix-event-counter-per-filter-Aps6R
...
Add per-filter event counting for relay pagination
2026-03-17 13:46:10 -04:00
Claude
308e9fcb9e
chore: remove unused coroutineContext import in EventSync
...
https://claude.ai/code/session_01Baaira4xoEHEsaSQCX52Sy
2026-03-17 17:43:04 +00:00
davotoula
a6c153a154
adaptability: use constant instead of repeated string literals
2026-03-17 18:42:39 +01:00
Claude
76c00dea3c
fix: track event counts per filter in downloadFromRelay
...
Change the event counter from a single global counter to per-filter
tracking using Filter.match(). Each filter's limit is now respected
individually - fulfilled filters are excluded from subsequent pages,
and pagination stops when all filters with limits are satisfied.
https://claude.ai/code/session_01Baaira4xoEHEsaSQCX52Sy
2026-03-17 17:41:40 +00:00
Vitor Pamplona
504a218eee
Merge branch 'main' into claude/event-sync-screen-sYGtN
2026-03-17 13:41:34 -04:00
Vitor Pamplona
97758a5163
fixes build
2026-03-17 13:35:50 -04:00
Vitor Pamplona
dd9e57542f
Merge branch 'main' into claude/event-sync-screen-sYGtN
2026-03-17 13:28:36 -04:00
Vitor Pamplona
985cab73cd
Merge branch 'main' into claude/strip-file-metadata-sVIEd
2026-03-17 13:27:00 -04:00
Vitor Pamplona
843058ce52
Merge pull request #1869 from vitorpamplona/claude/move-delete-button-topbar-SlZVz
...
Refactor DraftListScreen UI with top app bar improvements
2026-03-17 13:26:23 -04:00
Vitor Pamplona
91994a0b74
Merge branch 'main' into claude/strip-file-metadata-sVIEd
2026-03-17 13:25:54 -04:00
Vitor Pamplona
acb8068606
Merge pull request #1866 from vitorpamplona/claude/auto-load-transactions-scroll-KC8of
...
Add transaction filtering and pagination to wallet screen
2026-03-17 12:06:31 -04:00
Vitor Pamplona
cc98ac72c1
Revert to 20 since Alby only replies if limit is 20.
2026-03-17 12:04:10 -04:00
Vitor Pamplona
3764cd6d7f
missing imports
2026-03-17 11:51:02 -04:00
Vitor Pamplona
e66e5e28c1
Merge branch 'main' into claude/auto-load-transactions-scroll-KC8of
2026-03-17 11:48:21 -04:00
Vitor Pamplona
c027e70c8b
Merge pull request #1849 from vitorpamplona/claude/file-encryption-toggle-PwA8W
...
Add encrypted file upload with fallback option for NIP17 chats
2026-03-17 11:45:25 -04:00
Vitor Pamplona
30b785eec9
Merge branch 'main' into claude/file-encryption-toggle-PwA8W
2026-03-17 11:45:17 -04:00
Vitor Pamplona
4770f1eb90
Fixes sending url without cipher.
2026-03-17 11:43:24 -04:00
Claude
034cc0ab6d
feat: move downloadFromRelay pagination logic to Quartz library
...
Extract the paginated relay download into a reusable INostrClient
extension (NostrClientDownloadFromRelayExt.kt) in the Quartz
commonMain accessories package. Uses Channel-based event collection
for KMP compatibility (no JVM-only atomics).
EventSyncViewModel.downloadFromRelay now delegates to the Quartz
extension, keeping the ViewModel thin.
Add NostrClientDownloadFromRelayTest integration test against
wss://nos.lol with Filter(kinds = [MetadataEvent.KIND], limit = 10)
to verify paginated downloads return correctly-typed events.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-17 15:34:17 +00:00
Claude
bb32962f7d
fix: prevent infinite loading spinner on wallet transactions screen
...
- Convert filteredTransactions from cold Flow to StateFlow via stateIn()
to ensure reliable state updates with collectAsState()
- Add 30s timeout to NWC requests (fetchBalance, fetchTransactions,
loadMoreTransactions) so loading state resets if wallet doesn't respond
https://claude.ai/code/session_01CdNY7qYDRHJr1jhAFvVgzj
2026-03-17 15:29:37 +00:00
Vitor Pamplona
e0dc4edf7a
Merge branch 'main' into claude/event-sync-screen-sYGtN
2026-03-17 11:21:54 -04:00
nrobi144
d70b13ef33
fix(media): properly constrain video height within NoteCard
...
Replace aspectRatio modifier with BoxWithConstraints that manually
calculates height from aspect ratio and clamps it to the max height
constraint. Video now stays within its allocated space in the card,
so controls are accessible and content below is not overlapped.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 17:09:40 +02:00
Vitor Pamplona
45e0dc9bd5
renames class and other small changes
2026-03-17 11:02:30 -04:00
nrobi144
fbde0052a8
fix(media): video respects max height, stays within NoteCard bounds
...
Remove fillMaxWidth before aspectRatio so the caller's heightIn(max)
constraint is respected. Video now sizes to fit within the NoteCard
without overlapping the author header or overflowing the card.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 16:56:42 +02:00
nrobi144
9a19148da8
fix(media): stable hover controls, fix text cutoff
...
- Single hover zone on entire video — no more flickering from competing
zones. Play button always visible when paused, bottom controls appear
on hover (works in fullscreen too)
- Media height capped to 50% of window (min 200dp) so post text is
never pushed off-screen by large media
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 16:51:44 +02:00
nrobi144
248f38cc47
fix(media): zone-based video controls — play always visible, controls on hover
...
- Center play button always visible when paused
- Pause button appears on center hover when playing
- Bottom controls bar only appears when hovering the bottom area
- Controls also show when paused for discoverability
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 16:32:08 +02:00
nrobi144
e9249c924c
fix(media): only show video controls on hover
...
Controls (play button, seek bar, volume) are hidden by default and
appear when the mouse enters the video area. They auto-hide 2s after
the mouse leaves.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 16:27:57 +02:00
nrobi144
bce6c12ab3
feat(media): video thumbnails in feed via VLC first-frame extraction
...
Add VideoThumbnailCache that grabs the first rendered frame from VLC
and caches it in memory. Videos in the feed now show a thumbnail
preview instead of a blank background before the user clicks play.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 16:12:16 +02:00
Vitor Pamplona
baa55ab7f9
reverts to amber's session start
2026-03-17 09:55:56 -04:00
nrobi144
89f39fa77e
feat(search): show images and media in search results
...
Replace plain-text NotePreviewCard with full NoteCard in search results
so images, videos, and author avatars are visible inline without having
to open the note.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 15:40:48 +02:00
nrobi144
d091084064
fix(media): resize media to fit visible window, never truncate text
...
- Remove maxLines/TextOverflow from RichTextContent so post text is
never truncated
- Media height = window height minus 200dp chrome, so each image/video
fits in the visible area without scrolling
- Use ContentScale.Fit for images to scale down while keeping aspect
ratio instead of filling width and overflowing
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 15:33:54 +02:00
nrobi144
bdd1feae3e
fix(ui): show full post text, scrollable profile header with floating bar
...
- Remove maxLines=10 on post text so content is never truncated
- Profile header/card/tabs now scroll with content instead of staying
sticky — scrolls away naturally as you browse posts
- Floating compact header (back + avatar + name) slides in when
scrolling up and the full header is out of view
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 15:26:20 +02:00
Vitor Pamplona
9bf3086230
Make the session-start executable by default
2026-03-17 09:25:33 -04:00
Vitor Pamplona
345a569115
Merge pull request #1867 from vitorpamplona/claude/add-apk-pr-comments-gR7m7
...
Add direct APK download link and PR comments to benchmark workflow
2026-03-17 09:01:12 -04:00
nrobi144
2aa84c98ad
fix(media): cap feed media height to 70% of window height
...
Replace hardcoded 400.dp max with window-relative height so media
(images and videos) never overflow the visible area and controls
are always accessible without scrolling.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 13:53:58 +02:00
nrobi144
dffb996335
fix(media): immersive fullscreen via GraphicsDevice, separate view mode buttons
...
Replace WindowPlacement.Fullscreen (macOS maximize-only) with
GraphicsDevice.setFullScreenWindow() for true exclusive fullscreen that
hides menu bar and dock. Split single cycling view mode button into two
distinct toggles (theater + fullscreen). Hide all navigation chrome
(sidebar, nav rail, dividers, arrows, overlay menus) during fullscreen.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 13:49:39 +02:00
davotoula
f10387025d
spotlessApply
2026-03-17 07:27:56 +01:00
nrobi144
7d3d633e03
feat(media): bundle VLC, lazy video player, fullscreen with seek continuity
...
- Bundle VLC via ir.mahozad.vlc-setup plugin (all plugins for network playback)
- BundledVlcDiscoverer (Win/Linux) and MacOsVlcDiscoverer for bundled VLC discovery
- Lazy player activation — no VLC calls during composition, only on play click
- Pre-init VLC on background thread at startup
- Video controls: seek slider, volume, mute, fullscreen (two-row layout, no clipping)
- Buffering indicator (CircularProgressIndicator) while loading
- ActiveMediaManager enforces single-player — pauses others when new video plays
- Fullscreen passes seek position so lightbox resumes from current playback point
- LightboxOverlay renders videos (DesktopVideoPlayer) or images (ZoomableImage)
- Gitignore downloaded VLC binaries (appResources/{linux,macos,windows}/)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 07:23:42 +02:00
Claude
dbf5d6954c
fix: revert to artifact zip download, PR comment only
...
Use upload-artifact with artifact-id for direct zip download URL.
Remove prerelease approach and commit comments.
https://claude.ai/code/session_0138kUcZaPQoQcAc7nA1KDbf
2026-03-17 04:08:30 +00:00
Claude
706d282681
fix: direct APK download via prerelease asset, PR comment only
...
- Upload APK as a GitHub prerelease asset for direct .apk download
(no zip wrapping like artifacts)
- Remove commit comment, only comment on open PRs
- Clean up existing release with same tag before creating
https://claude.ai/code/session_0138kUcZaPQoQcAc7nA1KDbf
2026-03-17 04:05:33 +00:00
Claude
61dc903e9a
fix: use artifact ID for direct download URL instead of nightly.link
...
Use the artifact-id output from upload-artifact to construct a direct
GitHub artifact download URL. No third-party service needed — the URL
points to the artifact on GitHub which triggers a download when clicked.
https://claude.ai/code/session_0138kUcZaPQoQcAc7nA1KDbf
2026-03-17 04:03:18 +00:00
Vitor Pamplona
13da04e9f1
Merge pull request #1868 from vitorpamplona/claude/fix-missing-plugin-adHgr
...
Fix proxy bypass and improve code formatting
2026-03-16 23:51:49 -04:00
Claude
6bc927147c
fix: use nightly.link for direct APK download without auth
...
GitHub artifact URLs require authentication and don't provide direct
file downloads. nightly.link proxies artifact downloads, giving a
direct download link that works for anyone without GitHub login.
https://claude.ai/code/session_0138kUcZaPQoQcAc7nA1KDbf
2026-03-17 03:47:47 +00:00
nrobi144
cd7ee69f50
feat(media): add imeta tags on upload and drag-and-drop
...
- Build IMetaTag (NIP-92) from upload metadata (mime, sha256, dim, blurhash, size)
- Use TextNoteEvent.build directly with tag initializer for imeta injection
- Add drag-and-drop file support via Compose DragAndDropTarget
- Filter dropped files by media extension whitelist
- Visual border highlight on drag-over state
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
adecc35721
feat(media): wire profile gallery tab and lightbox
...
- Add Notes/Gallery PrimaryTabRow to UserProfileScreen
- Subscribe to PictureEvent (kind 20) for gallery grid
- Wire GalleryTab composable with image click callbacks
- Wire LightboxOverlay for full-screen image viewing
- Pass onImageClick to FeedNoteCard in notes tab
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
7773844d2f
feat(media): wire encrypted media, server settings, and server preferences
...
- ChatPane: display ChatFileAttachment for encrypted file header events
- DesktopPreferences: add blossom server list persistence
- Settings: add MediaServerSettings section above relay settings
- ComposeNoteDialog: use preferred blossom server from preferences
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
e654d48cdf
fix(media): code review — dead code removal, perf fixes, bug fixes
...
- Remove unused: MediaAspectRatioCache, VideoPlayerState, resetZoom,
onDoubleClick, delete/headUpload/createDeleteAuth, encryptAndUpload,
EncryptedUploadResult, unused options params, formatAudioTime dupe
- Fix VlcjPlayerPool.release() accumulating stale event listeners
- Fix SaveMediaAction FileDialog running on IO instead of EDT
- Pre-allocate video frame ByteArray to avoid ~240MB/s GC pressure
- Pool audio players in VlcjPlayerPool instead of factory-per-instance
- Remove listener in onDispose before returning player to pool
- Fix acquire() race condition by moving poll inside synchronized
- Reduce memory cache to 15%/256MB with weak references
- Parallelize server health checks
- Remove redundant Content-Type/Content-Length headers
- Deduplicate BlurHashFetcher bitmap conversion via bufferedImageToSkiaBitmap
- Hoist audioExtensions to top-level constant, rename allMediaUrls
- Remove nonfunctional Save button and dead decryptedBytes state
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
d5facd90df
test(media): add 49 unit tests for media upload, encryption, and server services
...
Coverage for DesktopMediaMetadata, DesktopUploadTracker, DesktopMediaCompressor,
DesktopBlossomClient (MockK), DesktopUploadOrchestrator (MockK + mockkObject),
ServerHealthCheck, and AESGCM encrypt/decrypt round-trip.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
dfaca39528
feat(media): inline audio playback with VLCJ no-video mode
...
Phase 9: AudioPlayer composable using VLCJ --no-video factory,
play/pause/seek controls, NoteCard splits audio from video URLs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
4450aacdf9
feat(media): Blossom server management settings with health checks
...
Phase 8: MediaServerSettings UI for add/remove/reorder Blossom servers,
ServerHealthCheck with 5s timeout HEAD requests, status indicators.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
ca4e51afa9
feat(media): NIP-68 picture display and profile gallery grid
...
Phase 7: PictureDisplay composable for kind 20 events with image-first
layout, GalleryTab with adaptive grid of thumbnails, lightbox support.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
f0acbb1934
feat(media): encrypted media service for NIP-17 DM file sharing
...
Phase 6: AESGCM encrypt/decrypt for DM file attachments, Blossom
upload of encrypted files, ChatFileAttachment composable with
auto-decrypt for images and file type display.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
1a2dc9efac
feat(media): lightbox overlay with zoom, gallery navigation, and save
...
Phase 5: Full-screen lightbox overlay with mouse wheel zoom + pan,
left/right gallery carousel, keyboard shortcuts (Esc/arrows/Ctrl+S),
save to disk via FileDialog. Images in NoteCard are clickable.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
405601463e
feat(media): VLCJ video playback with DirectRendering and player pool
...
Phase 4: VLCJ player pool (max 3 instances), DirectRendering via
CallbackVideoSurface → Skia Bitmap → Compose Image. Video controls
with auto-hide, seek, play/pause. Graceful fallback when VLC missing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
2181407647
feat(media): desktop upload UX with file picker, clipboard paste, and attachment row
...
Phase 3: Native file dialog, AWT clipboard paste handler, media
attachment UI with thumbnails, and ComposeNoteDialog media integration.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
443f7c6a09
feat(media): Phase 2 — Desktop Blossom upload client
...
- DesktopBlossomClient: PUT /upload, DELETE, HEAD /upload (BUD-06)
- DesktopBlossomAuth: kind 24242 auth with base64 Nostr header
- DesktopMediaMetadata: SHA-256, dimensions, blurhash via ImageIO
- DesktopMediaCompressor: lossless EXIF stripping (Commons Imaging)
- DesktopUploadOrchestrator: strip EXIF → metadata → auth → upload
- DesktopUploadTracker: StateFlow-based upload state tracking
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
nrobi144
212dda40ca
feat(media): Phase 0+1 — Coil3 image loading + inline images in notes
...
- DesktopImageLoaderSetup: Coil3 with explicit memory cache (25% heap,
max 512MB), persistent disk cache (OS-appropriate paths), SVG decoder
- DesktopBlurHashFetcher: blurhash placeholder images via Skia Bitmap
- DesktopBase64Fetcher: base64 data: URI image decoding
- SkiaGifDecoder: GIF first-frame rendering via Skia Codec
- MediaAspectRatioCache: thread-safe LruCache for aspect ratios
- NoteCard: inline AsyncImage for image URLs, stripped from text
- Added coil-compose, coil-okhttp, coil-svg, vlcj, commons-imaging,
androidx-collection deps to desktopApp
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-17 05:44:33 +02:00
Claude
883a2f995e
style: apply ktlint formatting fixes
...
https://claude.ai/code/session_01HeWiRdKDTnMGfEBUegk3d1
2026-03-17 03:43:19 +00:00
Claude
1c4f9769b1
fix: session-start hook fails silently when dl.google.com is blocked
...
The Claude Code web egress proxy does not include dl.google.com in its
allowlist, causing the session-start hook to abort entirely (due to
set -euo pipefail) when Android SDK downloads fail. This cascading
failure also prevented local.properties creation and ANDROID_HOME export.
Additionally, JAVA_TOOL_OPTIONS contains nonProxyHosts entries for
*.google.com and *.googleapis.com, which causes the JVM to bypass the
proxy for Google Maven, resulting in connection failures.
Changes:
- Remove set -euo pipefail; use per-section error handling instead
- Fix JAVA_TOOL_OPTIONS: strip *.google.com from nonProxyHosts
- Fix no_proxy: remove *.google.com and *.googleapis.com entries
- Move local.properties and env exports before SDK download section
- Make SDK downloads non-fatal with clear warning messages
- Install standalone ktlint as fallback for spotlessApply
- Create spotless-apply wrapper script for proxy-blocked environments
- Update Stop hook to fall back to spotless-apply when Gradle fails
https://claude.ai/code/session_01HeWiRdKDTnMGfEBUegk3d1
2026-03-17 03:43:10 +00:00
Claude
af12d13d67
fix: use artifact-url output for direct APK download link
...
The manually constructed URL was invalid. Use the artifact-url output
from upload-artifact which provides the correct download URL.
https://claude.ai/code/session_0138kUcZaPQoQcAc7nA1KDbf
2026-03-17 03:34:53 +00:00
Claude
39e15a8929
feat: comment benchmark APK link on open PRs
...
Add PR commenting to the build-benchmark-apk workflow. When a build
completes, it now finds any open PR for the branch and posts a comment
with a direct download link to the benchmark APK artifact.
https://claude.ai/code/session_0138kUcZaPQoQcAc7nA1KDbf
2026-03-17 03:23:00 +00:00
Claude
866dfca710
fix: rename _transactions to allTransactions to fix ktlint backing-property-naming
...
The backing property _transactions no longer has a matching public
property since it was replaced by filteredTransactions.
https://claude.ai/code/session_01CdNY7qYDRHJr1jhAFvVgzj
2026-03-17 03:07:57 +00:00
Vitor Pamplona
73d1e39587
Merge branch 'main' into claude/auto-load-transactions-scroll-KC8of
2026-03-16 23:03:09 -04:00
Claude
856e85988a
feat: improve Android push notifications with modern notification APIs
...
- Use MessagingStyle for DM notifications with sender avatars and
conversation formatting (integrates with Android Bubbles/conversation space)
- Add Direct Reply action so users can respond to DMs from the
notification shade without opening the app
- Add Mark as Read action with SEMANTIC_ACTION_MARK_AS_READ for
Android Auto/Wear OS integration
- Apply notification grouping with InboxStyle summary notifications
for both DMs and Zaps (group keys were defined but never used)
- Use BigTextStyle for zap notifications so long messages expand
- Set proper notification categories (CATEGORY_MESSAGE for DMs,
CATEGORY_SOCIAL for zaps) for OS-level prioritization and DND bypass
- Fix PendingIntent flag from FLAG_MUTABLE to FLAG_IMMUTABLE where
mutability is not needed (security improvement)
- Replace blocking image load (executeBlocking) with suspend-friendly
Coil execute() on IO dispatcher
- Upgrade DM channel importance to IMPORTANCE_HIGH for heads-up display
https://claude.ai/code/session_012w6K8H4nvZYxeRryW2USAp
2026-03-17 03:00:08 +00:00
Claude
11950dc4f4
feat: add transaction filter for zaps vs non-zaps on wallet screen
...
Adds filter chips (All / Zaps / Non-Zaps) to the transactions list.
Zap transactions are identified by having nostr metadata. The filter
is applied client-side via a combined Flow in WalletViewModel.
https://claude.ai/code/session_01CdNY7qYDRHJr1jhAFvVgzj
2026-03-17 02:55:16 +00:00
Claude
c3f7e491a6
feat: increase wallet transaction page size to 100
...
https://claude.ai/code/session_01CdNY7qYDRHJr1jhAFvVgzj
2026-03-17 02:34:15 +00:00
Vitor Pamplona
7a3b1afacc
Merge pull request #1865 from vitorpamplona/claude/add-apk-benchmark-action-5c4UX
...
Add GitHub Actions workflow for building benchmark APK
2026-03-16 22:33:15 -04:00
Claude
61e85df8db
feat: post commit comment when benchmark APK is ready
...
Adds a GitHub Script step that comments on the commit with a direct
link to the workflow artifacts, making it visible in PRs and branch
pages.
https://claude.ai/code/session_013hcKzBgJgfsrArSgTTGNEk
2026-03-17 02:27:53 +00:00
Claude
146f3f91b5
feat: add GitHub Action to build benchmark APK on claude branches
...
Adds a lightweight workflow that triggers on pushes to claude/* branches,
building only the Play Benchmark APK for quick testing after Claude
completes a task.
https://claude.ai/code/session_013hcKzBgJgfsrArSgTTGNEk
2026-03-17 02:20:47 +00:00
Claude
0459633d82
feat: move delete all button to top bar as icon in drafts screen
...
Replace the ElevatedButton in a sticky header with a delete icon
(Icons.Default.Delete) in the top bar actions area. The confirmation
dialog is preserved and now lives at the screen level, reading the
current feed state directly when confirmed.
https://claude.ai/code/session_01AbiBeDnT4KPKD16sKKaLD8
2026-03-17 02:20:13 +00:00
Claude
4a430e6663
feat: auto-load wallet transactions on scroll
...
Add infinite scroll pagination to the wallet transactions screen.
When the user scrolls within 5 items of the bottom, the next page of
transactions is automatically fetched and appended. Uses the existing
NWC list_transactions limit/offset support and total_count to know
when all transactions have been loaded.
https://claude.ai/code/session_01CdNY7qYDRHJr1jhAFvVgzj
2026-03-17 02:09:44 +00:00
Vitor Pamplona
d0297b7e34
Fixes stability plugin for AGP9
2026-03-16 19:44:51 -04:00
Vitor Pamplona
56cce46858
Solving all problems with Quartz tests
2026-03-16 19:22:28 -04:00
Vitor Pamplona
962da3280b
Moves the N44 test to Jvmtest
2026-03-16 18:57:00 -04:00
Vitor Pamplona
b0c714176a
Updates versions for github actions
2026-03-16 18:46:39 -04:00
Vitor Pamplona
6ffc902598
Unifies UriParser
2026-03-16 18:15:43 -04:00
Vitor Pamplona
790fd45470
Removes warnings
2026-03-16 18:10:55 -04:00
Vitor Pamplona
f708f6c265
Specify which .def file is used between simulators and ios Devices
2026-03-16 17:46:20 -04:00
Vitor Pamplona
7f61b4819b
new log fuctions mocked
2026-03-16 17:45:05 -04:00
Vitor Pamplona
e7760dc7c7
adds bundleId to the binary file
2026-03-16 17:16:18 -04:00
Vitor Pamplona
12c27af813
cancel other running builds in github actions when a new one comes up
2026-03-16 17:16:05 -04:00
Vitor Pamplona
7e2912ffd8
removes more warnings
2026-03-16 17:15:33 -04:00
Vitor Pamplona
874d750bf0
removing unused import
2026-03-16 17:01:59 -04:00
Vitor Pamplona
95c7adc90b
Less warnings
2026-03-16 16:53:17 -04:00
Vitor Pamplona
b96c1c2c3a
Fixes iosGzip
2026-03-16 16:38:31 -04:00
Vitor Pamplona
b916817247
Finishes serialization features for NIP-47
2026-03-16 16:35:05 -04:00
Vitor Pamplona
2d959b0108
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
drawerGesturesEnabled is true whenever the drawer is in transition (target != current)
Split the logic between onPreScroll and onPostScroll
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
Unnecessary ?. / ?: / !! on non-null Missing @OptIn annotations Parameter name mismatches Icons.Filled.* / Icons.AutoMirrored.* No cast needed / remove inline LocalLifecycleOwner import fix NIP-51 name() → title() Chess gameId → startEventId Nullable DecimalFormat safe calls DelicateCoroutinesApi opt-in
use 50/50 split for pager vs dock zones
fix: allow swipe-to-close when drawer is open on pager screens
2026-03-16 16:28:55 -04:00
Vitor Pamplona
abf2151bac
Damus' relay is way too restrictive
2026-03-16 16:28:42 -04:00
Vitor Pamplona
56f7d83b5b
Merge pull request #1860 from davotoula/swipe-on-main-screen
...
Swipe to switch tabs. Main screen and messages
2026-03-16 16:14:53 -04:00
Vitor Pamplona
dd55827486
Merge pull request #1863 from davotoula/reduce-compilation-warnings
...
Reduce compilation warnings
2026-03-16 16:14:38 -04:00
David Kaspar
645affd511
Merge pull request #1864 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-16 18:34:37 +00:00
Crowdin Bot
1a671fd0b4
New Crowdin translations by GitHub Action
2026-03-16 18:27:11 +00:00
David Kaspar
0c8a462ddf
Merge pull request #1862 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-16 18:25:26 +00:00
davotoula
9d95817b4d
drawerGesturesEnabled is true whenever the drawer is in transition (target != current)
2026-03-16 19:04:01 +01:00
davotoula
bf6ee6dc87
Split the logic between onPreScroll and onPostScroll
2026-03-16 19:01:51 +01:00
Crowdin Bot
21b6f9c67e
New Crowdin translations by GitHub Action
2026-03-16 17:50:19 +00:00
David Kaspar
d9c95de736
Merge pull request #1861 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-16 17:48:10 +00:00
Vitor Pamplona
7c22c4e6c5
Migrates to collections 1.6, which deprecates iOS Intel targets.
2026-03-16 13:45:01 -04:00
Crowdin Bot
1af1383428
New Crowdin translations by GitHub Action
2026-03-16 17:09:41 +00:00
Vitor Pamplona
ea6116cd5c
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
Fix swipe-back triggering unwanted draft deletion signing
fix: revert ReactionsSettingsScreen to upstream version
fix(nav): preserve screen state across overlay navigation
feat(search): collapsible section headers + sorting + search improvements
fix(ui): remove duplicate back button from SinglePaneLayout
refactor(search): extract thread-safe EventDeduplicator, unify dedup
fix(search): loading indicator, result delivery, and history race
fix(search): cleanup review findings — dead code, FQN refs, naming
refactor(search): extract shared code to commons, remove dead code
feat(search): add keyboard shortcuts, search history UI, and operator hints
feat(search): add SearchHistoryStore with recent queries and saved searches
feat(search): add advanced search UI with panel, results list, and SearchScreen rewrite
feat(search): add AdvancedSearchBarState with bidirectional sync
feat(search): add SearchFilterFactory and SearchResultFilter
feat(search): add query engine — SearchQuery, QueryParser, QuerySerializer, KindRegistry
2026-03-16 13:02:52 -04:00
Vitor Pamplona
81ecaa82ff
Migrates to vico charts 3.0
2026-03-16 12:53:54 -04:00
davotoula
588cfe4c96
Unnecessary ?. / ?: / !! on non-null
...
Missing @OptIn annotations
Parameter name mismatches
Icons.Filled.* / Icons.AutoMirrored.*
No cast needed / remove inline
LocalLifecycleOwner import fix
NIP-51 name() → title()
Chess gameId → startEventId
Nullable DecimalFormat safe calls
DelicateCoroutinesApi opt-in
2026-03-16 16:23:08 +01:00
davotoula
844847d871
use 50/50 split for pager vs dock zones
2026-03-16 15:40:59 +01:00
davotoula
2a9c9e4510
fix: allow swipe-to-close when drawer is open on pager screens
...
Keep drawer gestures enabled when the drawer is open so users can
swipe left to close it. Only disable gestures when the drawer is
closed (to let the pager and ZonedSwipeModifier handle gestures).
2026-03-16 15:40:40 +01:00
Vitor Pamplona
714afdc2a8
Update dependencies
2026-03-16 09:35:41 -04:00
Vitor Pamplona
7f6219c846
Merge pull request #1859 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-16 08:19:13 -04:00
Crowdin Bot
be09535cd6
New Crowdin translations by GitHub Action
2026-03-16 12:17:53 +00:00
Vitor Pamplona
2acf02945b
Merge pull request #1840 from nrobi144/feat/desktop-advanced-search
...
feat(desktop): advanced search with NIP-50, collapsible sections, and nav state preservation
2026-03-16 08:14:18 -04:00
Vitor Pamplona
f5d4d967eb
Merge pull request #1858 from dadofsambonzuki/fix/dm-swipe-back-signing
...
Fix swipe-back triggering unwanted draft deletion signing
2026-03-16 08:12:56 -04:00
Nathan Day
1c663cb26b
Fix swipe-back triggering unwanted draft deletion signing
...
When swiping back on a DM screen with an empty message, the BackHandler
was calling sendDraftSync() which checks if the message is blank and then
calls deleteDraftIgnoreErrors(). This creates and signs a NIP-09 DeletionEvent,
prompting the external signer to sign a deletion event.
The fix adds a check to only call sendDraftSync() when there's actual
content in the message, avoiding the unnecessary signing prompt.
2026-03-16 10:32:18 +00:00
davotoula
c56665d4dd
spotlessApply
2026-03-16 10:51:24 +01:00
nrobi144
e4b4606ab9
fix: revert ReactionsSettingsScreen to upstream version
...
Spotless reformatted this file during merge. Restoring upstream's
version to avoid unintended changes to the mobile app.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-16 07:35:09 +02:00
Vitor Pamplona
78ffd5ec6b
Moves nip06 tests to the right package.
2026-03-15 21:32:02 -04:00
Vitor Pamplona
d426dbd4ff
adds icons for desktop releases
2026-03-15 21:10:59 -04:00
Vitor Pamplona
04b4429809
removes another deprecation
2026-03-15 20:57:46 -04:00
Vitor Pamplona
d10b43c098
Migrates old Preview annotation
2026-03-15 20:55:55 -04:00
Vitor Pamplona
8b4a45cb5b
Removing deprecated library addresses and deprecated apis
2026-03-15 20:52:01 -04:00
Vitor Pamplona
bda7e48a84
removes more warnings
2026-03-15 20:33:31 -04:00
Vitor Pamplona
e87ac7468d
Removing Locale deprecations
2026-03-15 20:29:05 -04:00
Vitor Pamplona
49f5d9518e
Fixes warnings
2026-03-15 20:26:31 -04:00
Vitor Pamplona
19ca7afcb8
fixes warnings
2026-03-15 20:06:20 -04:00
Vitor Pamplona
1cdd061b06
removing warnings
2026-03-15 20:03:39 -04:00
Vitor Pamplona
929b5d6175
Merge pull request #1853 from vitorpamplona/claude/add-relay-event-counters-c7stK
...
Add NIP-45 COUNT query support to relay management UI
2026-03-15 19:58:19 -04:00
Vitor Pamplona
45b947ec68
Merge branch 'main' into claude/add-relay-event-counters-c7stK
2026-03-15 19:58:12 -04:00
Vitor Pamplona
88565d02ad
Merge pull request #1856 from vitorpamplona/claude/cross-platform-github-actions-xeNlt
...
Refactor CI/CD workflows for multi-platform builds
2026-03-15 19:57:59 -04:00
Vitor Pamplona
0e476c8988
Adds test and some refinements.
2026-03-15 19:51:39 -04:00
Claude
d996911cda
feat: add cross-platform CI for Linux, macOS, and Windows
...
- Split build.yml into lint, test (matrix: 3 OS), build-android, and
build-desktop (matrix: 3 OS with native packaging) jobs
- Tests now run on ubuntu, macos, and windows to validate cross-platform
compatibility
- Desktop distributions (DEB, DMG, MSI) built on their native OS and
uploaded as artifacts
- Split create-release.yml into create-release, deploy-android, and
deploy-desktop jobs so desktop distributions are included in releases
- Android APK/AAB builds and Quartz publishing remain on Linux
https://claude.ai/code/session_016dxFUErY4P6WRir4xxhCEr
2026-03-15 21:34:18 +00:00
Vitor Pamplona
61089fa866
Merge branch 'main' into claude/add-relay-event-counters-c7stK
2026-03-15 17:30:23 -04:00
Vitor Pamplona
91a9dcb9a1
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
Rename build step for Benchmark APK in workflow
compilation error fix: Changed map to mapNotNull
spotlessApply
2026-03-15 17:16:00 -04:00
Vitor Pamplona
3624d584db
Merge pull request #1855 from vitorpamplona/davotoula-patch-1
...
Rename build step for Benchmark APK in workflow
2026-03-15 17:15:39 -04:00
Vitor Pamplona
2fd29ab365
uses quiet mode to avoid lots of warnings in the commit screen
2026-03-15 17:15:16 -04:00
Vitor Pamplona
cef8f5acde
Fixes test case
2026-03-15 17:14:57 -04:00
David Kaspar
76c6f50fa8
Rename build step for Benchmark APK in workflow
2026-03-15 20:57:02 +00:00
Vitor Pamplona
6216f7a618
no casts needed
2026-03-15 16:55:00 -04:00
Vitor Pamplona
0c939bd447
converted from Java arraylist to kotlin arraylist
2026-03-15 16:50:34 -04:00
davotoula
3cfa9e1619
compilation error fix: Changed map to mapNotNull
2026-03-15 21:37:21 +01:00
davotoula
cd9d345a0e
spotlessApply
2026-03-15 21:35:23 +01:00
Vitor Pamplona
30b76347c5
Spotless
2026-03-15 16:15:44 -04:00
Vitor Pamplona
04d04ebe69
Merge pull request #1854 from vitorpamplona/claude/kotlin-serialization-mapper-4WYOP
...
Add Kotlin Serialization support for Nostr protocol types
2026-03-15 16:04:21 -04:00
Vitor Pamplona
ea48c2a5ec
Merge branch 'main' into claude/kotlin-serialization-mapper-4WYOP
2026-03-15 16:03:55 -04:00
Vitor Pamplona
badc681511
Merge pull request #1851 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-15 16:01:44 -04:00
Claude
d10687d6fe
feat: Implement iOS OptimizedJsonMapper using KotlinSerializationMapper
...
Replace all TODO stubs in the iOS actual implementation with delegation
to KotlinSerializationMapper. Wraps SerializationException into
IllegalArgumentException to match the jvmAndroid error handling pattern.
https://claude.ai/code/session_01QBc4Pb7a6m4TfLZSJKVdjw
2026-03-15 19:58:40 +00:00
Claude
3bea2f795c
refactor: Move KSerializers to their respective NIP packages
...
- Bunker serializers → nip46RemoteSigner/kotlinSerialization/
- NIP-47 serializers → nip47WalletConnect/kotlinSerialization/
- Rumor serializer → nip59Giftwrap/rumors/kotlinSerialization/
Mirrors the existing Jackson serializer directory structure which uses
a jackson/ subpackage within each NIP package.
https://claude.ai/code/session_01QBc4Pb7a6m4TfLZSJKVdjw
2026-03-15 19:55:19 +00:00
Claude
ffac682238
feat: Add kotlinx.serialization KSerializers mirroring all Jackson custom serializers
...
Add 15 KSerializer implementations in commonMain that replicate the exact
behavior of all 21 Jackson serializer/deserializer registrations:
- EventKSerializer, TagArrayKSerializer, FilterKSerializer
- EventTemplateKSerializer, RumorKSerializer, CountResultKSerializer
- MessageKSerializer (8 message types), CommandKSerializer (5 command types)
- BunkerRequest/Response/MessageKSerializer (NIP-46)
- Nip47Request/Response/NotificationKSerializer (NIP-47)
- KotlinSerializationMapper as the main entry point
Uses JsonElement-based approach for performance. All serializers produce
identical JSON output to Jackson. Includes comprehensive test suite (35+
tests) verifying exact output parity and cross-deserialization between
Jackson and kotlinx.serialization.
https://claude.ai/code/session_01QBc4Pb7a6m4TfLZSJKVdjw
2026-03-15 16:37:22 +00:00
Claude
22945b7faa
feat: add queryCountSuspend utility to Quartz and simplify ViewModels
...
Add INostrClient.queryCountSuspend() extension functions in Quartz that
wrap NIP-45 COUNT queries as suspend functions, managing subscription
lifecycle internally. Two overloads: single-relay and multi-relay.
Simplify BasicRelaySetupInfoModel and Nip65RelayListViewModel to use the
new utility — removes IRelayClientListener implementation, subId tracking
maps, onIncomingMessage handlers, and cleanup logic from both ViewModels.
https://claude.ai/code/session_016158D5mq5BygS1uBbLNbsA
2026-03-15 16:14:24 +00:00
Crowdin Bot
d8de0a9b84
New Crowdin translations by GitHub Action
2026-03-15 15:47:20 +00:00
Claude
17c3611f50
feat: redesign RelayEventCountRow with pill chip style
...
Replace the plain icon+text count display with rounded pill chips that
have a subtle green border and tinted background. Each count entry gets
its own pill with an icon and bold text, making the event counts more
visually distinct and scannable.
https://claude.ai/code/session_016158D5mq5BygS1uBbLNbsA
2026-03-15 15:46:56 +00:00
Vitor Pamplona
3bd6ef5f6c
changes from damus to nos.lol for more stable relay behavior in tests
2026-03-15 11:44:20 -04:00
Vitor Pamplona
2b157cc383
Fixes throw vs null test cases and nsec hallucinations
2026-03-15 11:18:39 -04:00
Vitor Pamplona
a793ff149b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-15 11:18:10 -04:00
Vitor Pamplona
c0a81ef9a2
Merge pull request #1850 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-15 11:07:30 -04:00
Crowdin Bot
68f58c3b8d
New Crowdin translations by GitHub Action
2026-03-15 15:06:39 +00:00
Vitor Pamplona
0380927f7e
fromJsonTo calls throw, they should always be wrapped if we want null results.
2026-03-15 11:05:40 -04:00
Vitor Pamplona
2c91fdea15
Avoids using format to write hex-encoded strings.
2026-03-15 11:03:50 -04:00
Claude
764c2241ca
refactor: integrate relay event counts into each ViewModel
...
Move count query logic from separate RelayEventCountViewModel into each
relay list's own ViewModel. BasicRelaySetupInfoModel now manages counts
via countFilters() override. Nip65RelayListViewModel gets its own count
infrastructure for home (outbox) and notification (inbox) relay lists.
Simplify AllRelayListScreen by removing 7 extra count ViewModels and
their LaunchedEffects.
https://claude.ai/code/session_016158D5mq5BygS1uBbLNbsA
2026-03-15 15:02:09 +00:00
Claude
b1723a5dfb
feat: add relay event count stats to AllRelay settings screen
...
Use NostrClient's NIP-45 COUNT queries to show how many events each
relay stores, with filters specific to each relay role:
- Outbox: events authored by the user
- Inbox: events where the user is p-tagged
- DM Inbox: DM events (kind 4, 1059) tagging the user
- Private Home: events authored by the user
- Proxy: total event count
- Search: total event count
- Indexer: kind 0 and kind 10002 counts separately
- Broadcast: no count (as specified)
https://claude.ai/code/session_016158D5mq5BygS1uBbLNbsA
2026-03-15 14:41:19 +00:00
Claude
997a59dc23
feat: add file encryption toggle for encrypted DMs with retry on failure
...
Add an "Encrypt files" toggle (default: on) to the file upload dialog in
NIP-17 encrypted DMs. When encrypted upload fails, show an informative
dialog explaining that many servers don't accept encrypted files on free
accounts, with an option to retry without encryption. The retry dialog
warns that without encryption anyone with the link can see the content.
https://claude.ai/code/session_012xvKzHrZPq3ZTAzBN2LvrR
2026-03-15 14:30:26 +00:00
Claude
aecbcb68a5
feat: per-relay recv/new counts and OK-true acceptance tracking
...
ViewModel:
- MAX_ACTIVITY_LOG raised to 5000
- Remove activeRelays from LiveSyncActivity (active relay chips removed)
- Add eventsAccepted: Int to CompletedRelayInfo
- Add totalEventsAccepted: Int to SyncState.Done
- Register IRelayClientListener on account.client for the duration of
the sync to intercept OkMessage(success=true) from destination relays
- sourceRelayOfEvent map attributes each forwarded event to the relay
it was first seen on; ConcurrentHashMap.remove() ensures the first
OK true is counted exactly once per event (dedup across dest relays)
- acceptedCountPerRelay accumulates per-source-relay accepted counts,
read at onRelayComplete time
- downloadFromPool.onEvent changed to (Event, NormalizedRelayUrl) to
carry the source relay into runSync routing logic
Screen:
- Remove ActiveRelaysCard and ActiveRelayChip composables + preview
- Remove animation imports (no longer needed)
- ActivityLogRow now shows two right-hand columns per relay:
recv N — events received from that source relay
new N — events accepted as new by destination relays (highlighted
in primary color when > 0)
- DoneCard now shows three lines:
Forwarded N events to destination relays.
M events accepted as new by destination relays. ← key headline
Completed in N seconds.
Strings: event_sync_done_body replaced by done_sent / done_accepted /
done_duration; event_sync_reading_from and events_found_log removed;
log_recv and log_new added.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-15 14:19:08 +00:00
David Kaspar
a21e38f428
Merge pull request #1847 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-15 11:53:03 +00:00
Crowdin Bot
7999010390
New Crowdin translations by GitHub Action
2026-03-15 11:51:55 +00:00
David Kaspar
00fb924dbb
Update README with build instructions and requirements
...
Added instructions for full build and requirements.
2026-03-15 11:50:24 +00:00
davotoula
f28fdd8404
Convert between flag types
...
spotlessApply
2026-03-14 21:39:27 +01:00
David Kaspar
f3aafd3884
Merge pull request #1845 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-14 20:26:58 +00:00
Crowdin Bot
2df98c456a
New Crowdin translations by GitHub Action
2026-03-14 20:04:41 +00:00
David Kaspar
21bf8a343a
Merge pull request #1844 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-14 20:03:08 +00:00
David Kaspar
caee58da55
Add migrations.xml to .gitignore
2026-03-14 20:02:48 +00:00
davotoula
64bf1d5090
update cz, pt, de, sv
2026-03-14 21:00:31 +01:00
Vitor Pamplona
ee449f78f4
Merge pull request #1843 from davotoula/bugfix-multiple-spinners-on-upload
...
Bugfix: multiple spinners on upload
2026-03-14 14:10:22 -04:00
David Kaspar
9d14a2d840
Merge pull request #1842 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-14 17:30:32 +00:00
davotoula
795da8cf1b
Block Add to message button while uploading
2026-03-14 18:00:36 +01:00
davotoula
1fc0ba8628
refactor:
...
extract MediaUploadTracker with common methods
bugfixes:
ChatFileUploadState.canPost() was missing isUploadingFile check
ChatNewMessageViewModel.cancel() was never resetting upload flags
Double-reset in ChatFileUploader and ChannelNewMessageViewModel
2026-03-14 18:00:36 +01:00
davotoula
42542159d4
bugfix: remove dead code
...
bugfix: ChannelNewMessageViewModel canPost checks wrong state
2026-03-14 18:00:36 +01:00
davotoula
c290a1c779
- SelectFromGallery and SelectFromFiles now accept an enabled param separate from isUploading
...
- All ViewModels track isUploadingFile alongside isUploadingImage, set via hasNonMedia()
- All screen call sites pass source-specific flags so only the initiating button spins
- canPost() methods block posting during file uploads too
- ChatNewMessageViewModel delegates to ChatFileUploadState (fixes pre-existing dead state)
- cancel() methods reset both flags in all ViewModels
2026-03-14 17:59:35 +01:00
Claude
a49a0ac9ae
feat: add @Preview composables to EventSyncScreen
...
One ThemeComparisonColumn preview per card — renders both dark and light
themes stacked — covering all independently previewable composables:
SyncProgressCardPreview — mid-sync progress (312/1024 relays, 4821 sent)
PausedCardPreview — paused state with relay/event counts
DoneCardPreview — completed run (18K events, 187s)
ErrorCardPreview — configuration error message
ActiveRelaysCardPreview — 5-relay FlowRow with pulsing chips
DestinationRelaysCardPreview — all three sections (outbox/inbox/DM)
ActivityLogCardPreview — mixed log: found events + empty/unreachable
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 16:16:36 +00:00
Claude
6aacaa7d41
fix: remove event sync section item from AllRelayListScreen
...
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 15:51:41 +00:00
Crowdin Bot
0dce9542fb
New Crowdin translations by GitHub Action
2026-03-14 15:41:38 +00:00
Vitor Pamplona
42574f302c
updates change log
2026-03-14 11:39:02 -04:00
Vitor Pamplona
d4ae3411c7
spotless
2026-03-14 11:36:58 -04:00
Vitor Pamplona
6739e66bd3
Merge pull request #1828 from vitorpamplona/claude/implement-nip47-wallet-Fjcds
...
Implement NIP-47 Wallet Connect protocol with full method support
2026-03-14 11:32:51 -04:00
Claude
78c66b00eb
fix: align arrow icons to 40dp to match user picture size
...
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 15:29:28 +00:00
Claude
b7dd460734
feat: live relay activity UI for event sync screen
...
ViewModel now emits a LiveSyncActivity StateFlow alongside the existing
SyncState, carrying:
- activeRelays: which relays are currently being queried
- recentCompletions: last 100 completed relays with event counts
- outboxTargets / inboxTargets / dmTargets: destination relay sets
downloadFromPool gains onRelayStart/onRelayComplete(relay, eventsFound)
callbacks; downloadFromRelay returns Int (total events across all pages).
Tracking uses ConcurrentHashMap.newKeySet + synchronized ArrayDeque for
thread safety across 50 concurrent workers.
Screen adds three new live cards:
ActiveRelaysCard — FlowRow of chips with a shared pulsing dot
animation (one InfiniteTransition for all chips)
DestinationRelaysCard — Outbox / Inbox / DMs sections, color-coded
using primary / secondary / tertiary
ActivityLogCard — fixed-height (260dp) inner-scrollable list;
filled dot + count for active relays, muted for
empty/unreachable ones; K/M formatting for counts
String resources updated: event_sync_batch_of → event_sync_relays_progress,
paused_body copy updated to relay language; 7 new strings added.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 15:26:12 +00:00
Vitor Pamplona
03e1c32757
Potential fix for pull request finding
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-03-14 11:20:33 -04:00
Claude
84035f887a
feat: parse NIP-47 transaction metadata for sender/recipient display
...
Add NwcTransactionMetadata parser that extracts comment, payer_data,
recipient_data, and nostr zap data from the untyped metadata field.
The transaction list UI now shows the Nostr user profile picture and
name for zap senders/recipients, falls back to payer name/email or
lightning address, and displays comment when it differs from description.
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 15:18:53 +00:00
Claude
666c795c93
fix: use correct cancellation checks in suspend functions
...
isActive is a CoroutineScope extension and has no CoroutineScope
receiver in plain suspend fun bodies (runSync, downloadFromRelay).
- runSync catch block: split into CancellationException (rethrow) +
Exception, removing the invalid isActive guard entirely
- downloadFromRelay while loop: while(isActive) -> while(true) with
coroutineContext.ensureActive() as the first statement, which works
in any suspend fun and throws CancellationException when cancelled
The isActive import is kept for the supervisorScope lambda in
downloadFromPool, where a CoroutineScope receiver is in scope.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 15:03:45 +00:00
Claude
2fd623a97d
fix: wallet screen showing "No wallet connected" on first open
...
The WalletViewModel.init() was called inside LaunchedEffect (async),
but hasWalletSetup() was checked synchronously during the first
composition frame—before init had run. Moved init to run synchronously
during composition and made hasWalletSetup a reactive StateFlow so the
UI updates when wallet state changes.
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 14:30:54 +00:00
Vitor Pamplona
120981f8c4
spotless apply
2026-03-14 10:18:16 -04:00
Vitor Pamplona
493fe05ac4
Fixes missing parameter
2026-03-14 10:18:08 -04:00
Claude
5905926d4a
feat: sliding window relay pool replaces fixed batch chunks
...
Instead of waiting for all 50 relays in a batch to finish before
starting the next 50, a Semaphore(MAX_CONCURRENT_RELAYS) keeps the
concurrency window full at all times: the moment one relay is fully
exhausted it releases the semaphore and the next relay starts.
Each relay is handled by downloadFromRelay(), which paginates
independently (until cursor) until the relay returns no events.
supervisorScope ensures a single relay failure does not cancel
the rest of the pool.
Dedup sets and event counter are now thread-safe (ConcurrentHashMap
key sets, AtomicLong) since workers fire concurrently.
SyncState.Running/Paused fields renamed:
chunkIndex/totalChunks -> relaysCompleted/totalRelays
nextChunkIndex -> nextRelayIndex
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 13:44:48 +00:00
Claude
1841e47c5c
feat: add high-level Nip47Client and Nip47Server APIs for NIP-47
...
Simplifies the NWC developer experience by providing Nip47Client (for
wallet client apps) and Nip47Server (for wallet service backends) that
handle URI parsing, signer creation, event building, filter construction,
and response decryption. Updates README with quick-start examples.
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 11:39:17 +00:00
David Kaspar
43914c0f09
Merge pull request #1841 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-14 11:19:39 +00:00
Crowdin Bot
4fc97f21c5
New Crowdin translations by GitHub Action
2026-03-14 11:10:01 +00:00
David Kaspar
dcf1e4e39b
Add Claude Code local settings to .gitignore
2026-03-14 11:08:34 +00:00
David Kaspar
a6d5944bf3
Fix JSON formatting in settings.json
2026-03-14 09:01:55 +00:00
David Kaspar
f2391e698a
Merge pull request #1839 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-14 05:06:48 +00:00
Crowdin Bot
f9f4e7716d
New Crowdin translations by GitHub Action
2026-03-14 05:06:26 +00:00
David Kaspar
ce3f9bec5c
Merge pull request #1838 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-14 05:04:49 +00:00
davotoula
3f1e826a10
update cz, pt, de, sv
2026-03-14 06:00:21 +01:00
Claude
580678eed8
feat: add server-side event builders and NIP-47 README for quartz
...
Adds missing server-side capabilities to the NIP-47 quartz module:
- LnZapPaymentResponseEvent.createResponse(): builds encrypted response
events (kind 23195) for wallet services to reply to client requests
- NwcNotificationEvent.createNotification(): builds encrypted notification
events (kind 23197) for wallet services to push payment notifications
Creates comprehensive README.md documenting the full NIP-47 API with
code examples for both wallet client and wallet service implementations,
covering URI parsing, request/response building, encryption, notifications,
error handling, transaction states, and caching.
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 04:25:27 +00:00
Claude
4b76c70c29
feat: add NIP-47 wallet interface with balance, send, receive, and transactions
...
Adds an Alby Go-inspired wallet interface accessible from the left drawer menu.
Uses existing NWC connection from zap settings to communicate with the wallet
via NIP-47 methods (get_balance, get_info, pay_invoice, make_invoice, list_transactions).
New files:
- WalletViewModel: manages wallet state and NWC requests
- WalletScreen: balance display with send/receive action buttons
- WalletSendScreen: paste BOLT-11 invoice and pay
- WalletReceiveScreen: create invoice with QR code display
- WalletTransactionsScreen: scrollable transaction history
Also adds generic sendNwcRequest() to NwcSignerState and Account for
sending arbitrary NIP-47 requests beyond just pay_invoice.
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 03:52:41 +00:00
Claude
cf922a064b
feat: Strip sensitive metadata from media files before upload
...
Adds a MetadataStripper that removes GPS location, camera info, timestamps,
and other sensitive EXIF/metadata from images, videos, and audio files before
uploading. This protects user privacy by default.
- Creates MetadataStripper using AndroidX ExifInterface for images and
MediaMuxer for video/audio remuxing
- Adds "Strip location metadata" toggle to all upload dialogs (NewMediaView,
ChatFileUploadDialog) so users can disable stripping per upload
- Persists the setting in AccountSettings (stripLocationOnUpload, default true)
- Integrates stripping into UploadOrchestrator before compression
- Covers all upload paths: media posts, DM attachments, channel uploads,
profile pictures, list/channel metadata images
https://claude.ai/code/session_01974zpAMSRD9GeqBt9ax6XD
2026-03-14 03:50:34 +00:00
Claude
0fe721f426
feat: Add markdown long-form post screen (NIP-23)
...
Add a new post screen specialized for writing and publishing long-form
content events (kind 30023) with markdown support. Includes:
- MarkdownPostViewModel with title, summary, cover image, and markdown
body fields, draft support, and LongTextNoteEvent creation
- MarkdownPostScreen with Edit/Preview tabs, monospace editor, markdown
preview using existing RenderContentAsMarkdown, and media upload that
inserts markdown image syntax
- Navigation route (Route.NewMarkdownPost) and AppNavigation entry
- String resources for the new screen
https://claude.ai/code/session_012pBNvnWtVtQ6aKSheWJUDt
2026-03-14 03:44:46 +00:00
Claude
83a6feeca4
feat: add Alby JS SDK client interop improvements
...
- Add NwcBudgetRenewal constants (daily/weekly/monthly/yearly/never)
- Add case-insensitive NwcTransactionState helpers (isSettled, isPending,
isFailed, isAccepted) for JS SDK lowercase state interop
- Add URI test using Alby JS SDK test vector (69effe7b... pubkey)
- Add JS SDK interop tests: lowercase transaction states in responses,
notifications, and list_transactions; empty get_budget response;
all budget renewal periods; structured transaction metadata;
full 13-method get_info response
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 03:28:17 +00:00
Claude
4ee937ff0c
test: add Alby Hub real test vectors to interop tests
...
Add tests using exact JSON payloads from Alby Hub's test suite:
- Real bolt11 invoice strings from Alby's mock data
- pay_keysend with TLV records and preimage
- make_invoice with nested metadata objects
- make_hold_invoice with 64-char payment hash
- settle_hold_invoice with preimage
- list_transactions with unpaid_outgoing filter
- create_connection with isolated=true
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 03:00:56 +00:00
Claude
9e4cb446ef
feat: add NIP-47 get_budget, sign_message, create_connection methods and Alby Hub interop
...
- Add get_budget, sign_message, create_connection request/response types
- Add NwcTransactionType (incoming/outgoing) and NwcTransactionState
(PENDING/SETTLED/FAILED/ACCEPTED) constants
- Add missing error codes: BAD_REQUEST, NOT_FOUND, EXPIRED
- Add settle_deadline field to NwcTransaction
- Add total_count to ListTransactionsResult
- Add metadata and lud16 to GetInfoResult
- Add unpaid_outgoing and unpaid_incoming to ListTransactionsParams
- Update Jackson deserializers for new method types
- Add AlbyInteropTest with 25+ tests verifying compatibility with
Alby Hub's JSON formats for all request/response types
- Update existing tests for new constants and error codes
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 02:58:40 +00:00
Claude
50282f32f4
feat: paginate relay queries with per-relay until cursor
...
Relays cap event responses at ~500 per request. After each EOSE, the
oldest createdAt seen on a relay becomes the next 'until' cursor and
the relay is re-queried for the next page. This repeats until a relay
returns no events (exhausted) or cannot be reached.
All active relays in a batch are queried in parallel each round; only
the relays that still have pages remaining participate in the next round.
Dead relays (onCannotConnect) are dropped immediately.
ConcurrentHashMap is used for per-relay counters and cursors since
IRequestListener callbacks can arrive from concurrent relay threads.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 02:48:40 +00:00
Claude
0bbbadd494
feat: chunk relays, parallel filters, and pausable sync
...
- Process relays in batches of 50 instead of one at a time; each batch
opens a single subscription covering all relays simultaneously, so
5 000 relays become 100 batches rather than 5 000 sequential round-trips.
- Collapse the three sequential phases into one combined query per batch:
send both the 'authored by me' filter and the 'p-tagged me' filter in
the same subscription, then route events to outbox/inbox/DM relays by
their properties. This halves the total number of relay connections.
- Make the procedure pausable: cancel() now transitions to SyncState.Paused
(carrying the next chunk index and events-sent count) instead of Idle.
The screen shows a Resume button that continues from the saved checkpoint
and a Start Over button to restart from scratch.
- The mobile-data dialog correctly routes to resume() vs start() depending
on whether a checkpoint exists.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-14 02:40:59 +00:00
Vitor Pamplona
da38555035
Merge pull request #1835 from vitorpamplona/claude/add-swipe-delete-cancel-QjI5b
...
Add cancel button to swipe-to-delete confirmation UI
2026-03-13 20:42:43 -04:00
Claude
bcb5be76c7
feat: Add cancel button to swipe-to-delete confirmation
...
After swiping a draft to delete, the red confirmation background now
shows both a "Delete" button (left) and a "Cancel" button (right).
Tapping Cancel resets the swipe state, allowing users to dismiss
the delete action without deleting the draft.
https://claude.ai/code/session_01ULVR1fKwka5TgfgSucPE4r
2026-03-13 23:19:47 +00:00
Vitor Pamplona
64118058f2
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: replace dialog with swipe-to-reveal delete button for drafts
feat: add confirmation dialog when swiping to delete a draft
2026-03-13 19:11:25 -04:00
Vitor Pamplona
474a875167
Fixes padding of the expiration date on NoteCompose
2026-03-13 19:11:10 -04:00
Claude
9d49b2da4f
feat: confirm dialog before starting sync on mobile data
...
Replace the disabled-Start + secondary-Start-Anyway button pattern
with a single always-enabled Start button that shows an AlertDialog
when the connection is metered/mobile, requiring explicit confirmation
before running a potentially gigabyte-scale operation.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-13 22:49:40 +00:00
Vitor Pamplona
ae0ab0c153
Merge pull request #1826 from vitorpamplona/claude/draft-delete-confirmation-y28xT
...
Add confirmation dialog to draft deletion via swipe gesture
2026-03-13 18:48:05 -04:00
Claude
90d7b0c678
feat: run EventSync in background by scoping it to AccountViewModel
...
Move EventSyncViewModel from a screen-scoped ViewModel to a plain class
held by AccountViewModel (activity-scoped). The sync job now runs on
AccountViewModel's viewModelScope, so it continues when the user
navigates away. The back button no longer cancels the sync.
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-13 22:42:09 +00:00
Claude
441dae8e25
feat: move EventSync to left drawer, remove button from AllRelayListScreen
...
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-13 22:37:16 +00:00
Vitor Pamplona
1b5d7fdc13
Merge pull request #1834 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-13 18:14:40 -04:00
Claude
b3adc56adf
feat: replace dialog with swipe-to-reveal delete button for drafts
...
Instead of showing a confirmation dialog, the swipe now stays open
revealing a red background with a clickable "Request Deletion" button.
Supports swiping from both left-to-right and right-to-left directions.
The user taps the revealed button to confirm deletion.
https://claude.ai/code/session_01JWJxejv2EKrPj2KGEfPPxU
2026-03-13 22:11:54 +00:00
Crowdin Bot
bb88228019
New Crowdin translations by GitHub Action
2026-03-13 22:10:50 +00:00
Vitor Pamplona
1468a41737
Adds expirations to change log
2026-03-13 18:07:33 -04:00
Vitor Pamplona
c4c73a2bb7
Adds expirations in all new post screens.
...
Adds expirations in the feed and chats.
2026-03-13 18:05:59 -04:00
Vitor Pamplona
42fdedf23b
fixes spotless
2026-03-13 17:03:24 -04:00
Vitor Pamplona
9cd779b60c
Merge pull request #1817 from vitorpamplona/claude/add-post-expiration-date-Nmedg
...
Add NIP-40 expiration date support to note creation
2026-03-13 17:01:27 -04:00
Vitor Pamplona
d81609165e
Small refactoring of the relay list screen
2026-03-13 16:28:50 -04:00
Vitor Pamplona
d281c2366c
Removes the need to pass context down to a composable
2026-03-13 16:04:46 -04:00
Vitor Pamplona
4a5ffb3169
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: add ZIP/JSON relay export and format picker dropdown
refactor: extract relay export logic into RelayExporter class
feat: add export button to relay settings screen
2026-03-13 15:31:22 -04:00
Vitor Pamplona
e51967923b
adds today's work to change log
2026-03-13 15:20:11 -04:00
Vitor Pamplona
8339413262
Fixes copilot recommendation
2026-03-13 15:20:01 -04:00
Vitor Pamplona
b3bfa8950d
Merge pull request #1823 from vitorpamplona/claude/export-relay-settings-v8uQg
...
Add relay settings export functionality
2026-03-13 15:09:25 -04:00
Vitor Pamplona
9b58a1be11
Fixing IO Dispatchers and scopes of choice.
2026-03-13 15:06:03 -04:00
Claude
0ad63bbfc1
feat: add ZIP/JSON relay export and format picker dropdown
...
- Create RelayListCollection to bundle all relay lists with section metadata
- Create RelayZipExporter that exports each relay category as a separate
JSON file (array of relay URL strings) inside a zip archive, shared
via FileProvider
- Refactor RelayExporter to use RelayListCollection
- Replace single export button with a dropdown menu letting users pick
between text export and ZIP (JSON) export
https://claude.ai/code/session_013PhuahpBFh6djVHzSsmNKM
2026-03-13 18:24:05 +00:00
Vitor Pamplona
f3eb609eee
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-13 13:45:44 -04:00
Vitor Pamplona
00f2d46b53
Refines user status flow and isExpired running
2026-03-13 13:45:22 -04:00
David Kaspar
b9f6017590
Merge pull request #1832 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-13 17:41:23 +00:00
Crowdin Bot
9ec8dc167c
New Crowdin translations by GitHub Action
2026-03-13 17:36:41 +00:00
Vitor Pamplona
99eaa37d4c
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: complete NIP-38 implementation with p tag, emoji, and expiration support
2026-03-13 13:33:11 -04:00
Vitor Pamplona
6f57652455
Merge pull request #1827 from vitorpamplona/claude/implement-nip-38-q8DOF
...
Enhance user status display with emoji support and metadata tags
2026-03-13 13:32:41 -04:00
Vitor Pamplona
1966cc2034
Bitcoin first then namecoin
2026-03-13 13:29:55 -04:00
Claude
e83ec94461
refactor: extract relay export logic into RelayExporter class
...
Moves the text formatting and share intent logic from AllRelayListScreen
into a dedicated RelayExporter class in the common package.
https://claude.ai/code/session_013PhuahpBFh6djVHzSsmNKM
2026-03-13 17:28:39 +00:00
Vitor Pamplona
8bc14b52b2
Spotless update
2026-03-13 13:25:23 -04:00
Vitor Pamplona
34f3692d9a
Merge pull request #1815 from vitorpamplona/claude/add-explorer-settings-page-zXosk
...
feat: add blockchain explorer settings page for OTS verification
2026-03-13 13:22:57 -04:00
Vitor Pamplona
f4d6e3cb3e
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-13 13:22:44 -04:00
Vitor Pamplona
bcdc8386a0
Merge pull request #1830 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-13 13:18:50 -04:00
Crowdin Bot
178e47ebf5
New Crowdin translations by GitHub Action
2026-03-13 13:28:43 +00:00
Vitor Pamplona
4bf7f982ba
Makes the new translation settings work
2026-03-13 09:24:12 -04:00
Vitor Pamplona
3e0b8a5f8f
Fixes gradle build on MacOS and adds a Clibsodium.def file
2026-03-13 08:40:51 -04:00
Vitor Pamplona
c778c9f109
Adds a hook to get claude web to compile and check android code
2026-03-13 08:40:28 -04:00
Vitor Pamplona
ae41a956ac
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-13 08:22:28 -04:00
Vitor Pamplona
e8a031251a
Merge pull request #1829 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-13 08:22:12 -04:00
Vitor Pamplona
9ca79acbe4
lint
2026-03-13 08:21:55 -04:00
Crowdin Bot
c0bd88278c
New Crowdin translations by GitHub Action
2026-03-13 12:20:55 +00:00
Vitor Pamplona
c33ba239d0
Merge pull request #1824 from vitorpamplona/claude/improve-translation-settings-dDwmL
...
Redesign language settings UI with searchable language pickers
2026-03-13 08:16:58 -04:00
Vitor Pamplona
3a6d199962
Merge pull request #1821 from KotlinGeekDev/kmp-completeness
...
Kmp completeness, Part 2 - Libsodium
2026-03-13 08:01:33 -04:00
KotlinGeekDev
10f5799014
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-13 09:20:58 +01:00
Claude
8c73dd8f14
test: add comprehensive test suite for NIP-47 Wallet Connect implementation
...
Covers all 10 request methods (create, serialize, deserialize), all success
and error response types, notification deserialization, EncryptionTag and
NotificationsTag parse/assemble/isTag, NwcInfoEvent build and capabilities,
NwcNotificationEvent structure, LnZapPaymentRequestEvent create/decrypt
with NIP-04 and NIP-44, and Nip47WalletConnect URI parsing and serialization.
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-13 03:45:50 +00:00
Claude
da26ab14ab
feat: complete NIP-47 Nostr Wallet Connect implementation in Quartz
...
Implements the full NIP-47 specification with all request methods,
response types, notification events, and JSON serialization.
New request methods:
- pay_invoice (updated with amount, metadata params)
- pay_keysend (amount, pubkey, preimage, TLV records)
- make_invoice, lookup_invoice, list_transactions
- get_balance, get_info
- make_hold_invoice, cancel_hold_invoice, settle_hold_invoice
New response types:
- Success responses for all methods above
- NwcErrorResponse (generic error for any method)
- NwcErrorCode enum with UNSUPPORTED_ENCRYPTION
New event kinds:
- NwcInfoEvent (kind 13194) - wallet service capabilities
- NwcNotificationEvent (kind 23197) - NIP-44 encrypted notifications
- Legacy kind 23196 support for NIP-04 notifications
New data models:
- NwcTransaction (shared invoice/payment object)
- TlvRecord (for keysend TLV records)
- Notification types: payment_received, payment_sent, hold_invoice_accepted
- HoldInvoiceAcceptedData with settle_deadline
Tags (following NIP-88 pattern):
- EncryptionTag for encryption scheme negotiation
- NotificationsTag for supported notification types
Updated:
- LnZapPaymentRequestEvent: generic createRequest() with NIP-44 support
- URI parser: lud16 parameter support
- Jackson deserializers: all methods routed correctly
- EventFactory: new kinds registered
https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-13 03:15:21 +00:00
Claude
82e500eee1
feat: complete NIP-38 implementation with p tag, emoji, and expiration support
...
- Add optional r/p/e/a/emoji tags to StatusEvent.create() for full spec compliance
- Add GENERAL and MUSIC type constants to StatusEvent
- Filter expired statuses in UserStatusCache.addStatus() and add removeExpired()
- Add p tag (profile reference) display in DisplayStatusInner
- Add NIP-30 custom emoji rendering in status display via CreateTextWithEmoji
- Allow status type parameter in UserStatusAction.create()
https://claude.ai/code/session_0117asp4mDiR65dxbAGKi2hg
2026-03-13 03:06:22 +00:00
Claude
48485ce933
feat: add confirmation dialog when swiping to delete a draft
...
The swipe-to-delete gesture on the drafts screen was too sensitive,
causing accidental deletions. Added a confirmation dialog that appears
after the swipe gesture completes, requiring the user to confirm before
the draft is actually deleted.
https://claude.ai/code/session_01JWJxejv2EKrPj2KGEfPPxU
2026-03-13 02:49:07 +00:00
Claude
0da3e562fb
style: spotless apply on EventSync files
...
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-13 02:40:08 +00:00
Claude
997a270a84
feat: add export button to relay settings screen
...
Adds a share icon button in the top bar of the relay settings screen
that exports all relay configurations (except Connected Relays) as
human-readable text via Android's share intent. Each section includes
a header and description, with one relay URL per line.
https://claude.ai/code/session_013PhuahpBFh6djVHzSsmNKM
2026-03-13 02:30:33 +00:00
Claude
7746561360
feat: refresh translation settings UI with modern components
...
- Translate To: shows all available languages with searchable list instead
of only device locales
- Don't Translate From: uses InputChip FlowRow with an Add button and
searchable language picker to add new languages
- Language Preferences: displays as OutlinedCards with radio buttons for
choosing display language, includes delete and add-new-pair functionality
with guided source/target selection
- Added new string resources for the refreshed UI
https://claude.ai/code/session_011iTJ1gg8weaxaALiUQNH4C
2026-03-13 02:29:35 +00:00
Claude
83e79cf857
feat: add EventSync screen for relay event synchronization
...
- Add EventSyncScreen composable with UI for event sync configuration
- Add EventSyncViewModel for managing sync state and business logic
- Add route and navigation entry for EventSync screen
- Add entry point in AllRelayListScreen
- Add string resources for EventSync UI
https://claude.ai/code/session_01U8qF9mK4UBvXsXP1zNMXfX
2026-03-13 02:15:16 +00:00
Vitor Pamplona
198aa0971c
adds ./gradlew spotlessApply request to claude
...
improves description of the .md file
2026-03-12 22:13:33 -04:00
KotlinGeekDev
5cdf8bdd86
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-13 01:12:49 +01:00
Vitor Pamplona
d9eb44df1f
Improving the spacing in the new translation settings screen
2026-03-12 19:52:36 -04:00
Vitor Pamplona
0d9f390cd9
missing tests fix
2026-03-12 19:44:51 -04:00
Vitor Pamplona
e6eb421e79
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
feat: add missing translation settings to Translation settings menu
2026-03-12 19:43:11 -04:00
Vitor Pamplona
21e29bbb3c
Fixes test cases.
2026-03-12 19:42:46 -04:00
Vitor Pamplona
deeac97082
Merge pull request #1814 from vitorpamplona/claude/add-translation-settings-MIoUT
...
feat: add missing translation settings to Translation settings menu
2026-03-12 19:41:40 -04:00
Vitor Pamplona
ebbd7e1a77
adds today's work to the change log
2026-03-12 19:06:17 -04:00
Vitor Pamplona
fa67030b47
Adds support for BUD-10 Blossom URIs
2026-03-12 18:57:46 -04:00
Vitor Pamplona
d4dd5a65e6
anySync was returning either on true or false. it was not doing what it was supposed to do which is returning after the first true.
2026-03-12 18:56:17 -04:00
KotlinGeekDev
aa172dbfbc
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-12 22:17:46 +01:00
KotlinGeekDev
3838b6b815
Some fixes.
2026-03-12 22:16:34 +01:00
KotlinGeekDev
42f48e11fc
Make CI happy(attempt 2).
2026-03-12 21:49:08 +01:00
David Kaspar
4b304ce8d5
Merge pull request #1822 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-12 20:46:11 +00:00
Crowdin Bot
bfd595ea00
New Crowdin translations by GitHub Action
2026-03-12 20:45:10 +00:00
David Kaspar
c477745fbd
Merge pull request #1820 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-12 20:43:26 +00:00
KotlinGeekDev
a463a9802f
Slightly modify defFile generation, to stop CI cries.
2026-03-12 21:36:25 +01:00
KotlinGeekDev
750bedbabd
Foundations(iOS Sourceset): Reduce the header files only to those needed, plus utilities.
2026-03-12 21:06:02 +01:00
KotlinGeekDev
0b928d29a6
Make the libsodium cinterop file generation more reliable. Add in(and comment out) some test code for extracting the libsodium headers from zip file.
2026-03-12 20:28:02 +01:00
KotlinGeekDev
527130a53c
Merge remote-tracking branch 'origin/kmp-completeness' into kmp-completeness
2026-03-12 20:22:55 +01:00
KotlinGeekDev
d957efb1b8
Foundations(iOS Sourceset): Streamline libsodium bindings configuration.
2026-03-12 16:55:19 +01:00
Crowdin Bot
f31e73f182
New Crowdin translations by GitHub Action
2026-03-12 14:53:15 +00:00
Vitor Pamplona
ad17924622
Making sure UrlDetector returns a schema even if the parser points to some user:password scheme.
2026-03-12 10:48:11 -04:00
Vitor Pamplona
3eb2fcbcb8
Solves the sorting contract crash by precaching all values before sorting.
2026-03-12 10:45:54 -04:00
KotlinGeekDev
2b61f4a3d6
Function rename for digest provider.
2026-03-12 15:33:07 +01:00
KotlinGeekDev
759b0c8b96
Foundations(iOS Sourceset): Use alternative implementation for MacInstance, due to complications with mac length under previous implementation, which makes NIP49 tests(with all other relevant tests) pass. Some spotless fixes.
2026-03-12 15:31:33 +01:00
KotlinGeekDev
8f02ea0cf6
Foundations(iOS Sourceset): Provide implementation for LibSodiumInstance.ios.kt, using the native library(shipped in project). Generate cinterop definition file with custom Gradle task. Defines bindings for use in actual code(may be streamlined later). Adds NIP44 tests and makes sure they pass.
2026-03-12 15:13:32 +01:00
nrobi144
327bb1efc8
fix(nav): preserve screen state across overlay navigation
...
RootContent now stays composed when overlays are shown, preventing
search results and other state from being destroyed on navigation.
Overlay wrapped in opaque Surface to cover root content visually.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-12 13:32:05 +02:00
nrobi144
5a437ed5ac
feat(search): collapsible section headers + sorting + search improvements
...
- Collapsible sticky section headers with animated chevron
- Full header row clickable to toggle collapse
- SearchResultSorter, SearchSortOrder, pseudo-kind filtering
- TextFieldValue cursor preservation, relay timeout improvements
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-12 13:23:27 +02:00
nrobi144
7180edf162
Merge upstream/main into feat/desktop-advanced-search
...
Resolve conflicts:
- RelayStatus.kt: keep both relay URLs
- SearchScreen.kt: keep advanced search implementation
- SinglePaneLayout.kt: add missing Spacer import
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-12 13:22:15 +02:00
Claude
e07d42e3da
feat: add NIP-40 expiration date to short note post screen
...
Allows users to add an expiration date to posts via NIP-40. The feature
follows the same pattern as content warning (toggle button in the bottom
action bar, expandable section in the post body) and uses the same
calendar/time picker UI as poll deadlines.
- ExpirationDateButton: timer icon toggles orange when active
- ExpirationDatePicker: date+time picker with "Expires in X" display
- ViewModel: wantsExpirationDate + expirationDate state, wired into
both TextNoteEvent and PollEvent builders, loaded from drafts
- Strings: add_expiration_date, expiration_date_label, etc.
https://claude.ai/code/session_016QjmArr6zfM1Qx58iNrntA
2026-03-12 10:38:23 +00:00
Claude
117c903e7c
feat: add missing translation settings to Translation settings menu
...
Expose the translateTo and languagePreferences fields from
AccountLanguagePreferences in the Translation settings screen
(UserSettingsScreen), which previously only showed the
dontTranslateFrom setting.
New settings added:
- Translate To: dropdown to select the target translation language
from the device's configured locales, with a checkmark on the
currently selected language.
- Language Display Preferences: for each saved language-pair
preference (source → target), a dropdown to choose which language
to show first; only visible when at least one preference exists.
https://claude.ai/code/session_01BheCJbDDZDAAYo6GAJBtFf
2026-03-12 09:46:07 +00:00
Claude
3e16d317fc
feat: add blockchain explorer settings page for OTS verification
...
Adds a new "Bitcoin Explorer (OTS)" settings page in App Settings,
modeled after the existing Namecoin settings page.
Users can configure a custom Mempool-compatible blockchain explorer
API URL for OpenTimestamps proof verification. When a custom URL is
set it takes priority over the automatic Tor-aware selection (mempool.space
when Tor is active, blockstream.info otherwise).
Changes:
- OtsSettings: immutable data class for explorer config
- OtsSharedPreferences: DataStore-backed persistence (global/app-level)
- TorAwareOkHttpOtsResolverBuilder: accepts customExplorerUrl lambda
- OtsSettingsSection: UI section with active explorer display, URL input,
known-explorers reference list, and reset button
- OtsSettingsScreen: full screen wrapping the section
- Routes.OtsSettings: new navigation route
- AllSettingsScreen: new entry under App Settings
- AppModules: wires otsPrefs and passes custom URL to resolver builder
https://claude.ai/code/session_01GX7k36uepGxU3U1fBKYFrx
2026-03-12 09:35:16 +00:00
Vitor Pamplona
a94d5bfd07
Fixes BUD 10 tests
2026-03-11 15:29:16 -04:00
Vitor Pamplona
548ce0a69d
spotless apply
2026-03-11 15:24:02 -04:00
Vitor Pamplona
3712448c3f
Merge pull request #1812 from vitorpamplona/claude/kotlin-blossom-uri-parser-lrQXn
...
Add BUD-10 Blossom URI parser and serializer
2026-03-11 15:19:22 -04:00
David Kaspar
853cdddc99
Merge pull request #1811 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-11 19:19:15 +00:00
Claude
ac69a0fa74
feat(nipB7Blossom): add BUD-10 Blossom URI parser
...
Implements a pure-Kotlin (commonMain) parser for the BUD-10 blossom: URI
scheme, which allows sharing blob references with discovery hints.
Format: blossom:<sha256>.<ext>[?xs=<server>&as=<pubkey>&sz=<bytes>]
- BlossomUri data class holds sha256, extension, servers (xs), authors (as), size (sz)
- BlossomUri.parse() returns null for non-blossom URIs or invalid SHA-256
- Supports repeated xs/as params (multiple servers and authors)
- Percent-encodes server URLs on serialisation; decodes on parse
- BlossomUri.toUriString() round-trips back to a canonical URI
- Includes commonTest coverage for all parsing cases
https://claude.ai/code/session_01T4jyLbkNWd3f7i6MwsBcD4
2026-03-11 19:16:45 +00:00
Crowdin Bot
6aef5df6c8
New Crowdin translations by GitHub Action
2026-03-11 19:11:37 +00:00
David Kaspar
3bfd3f4314
Merge pull request #1810 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-11 19:09:52 +00:00
David Kaspar
61421f1393
Merge pull request #1809 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-11 19:05:03 +00:00
davotoula
d7f9d584d6
update cz, pt, de, sv
2026-03-11 20:04:05 +01:00
Crowdin Bot
a81b98a63a
New Crowdin translations by GitHub Action
2026-03-11 19:03:42 +00:00
Vitor Pamplona
0c040d8816
addresses long domain names for blossom and nostr profiles
2026-03-11 14:59:52 -04:00
Vitor Pamplona
6a2cbb3a3a
Using a real hex key in preview
2026-03-11 14:59:22 -04:00
Vitor Pamplona
1385feb066
fixes non-lowercase schemas on posts
2026-03-11 14:38:19 -04:00
Vitor Pamplona
d521e29824
Shows all users cited in subscriptions for each relay.
2026-03-11 14:27:51 -04:00
Vitor Pamplona
1c044c9072
If warning is blank, revert to defaults
2026-03-11 14:12:02 -04:00
Vitor Pamplona
ffe5e14b2b
Display content warning reason
2026-03-11 14:10:55 -04:00
Vitor Pamplona
a4010189cd
Adds content warning reason to all new post screens
2026-03-11 13:52:18 -04:00
Vitor Pamplona
7ce13b5ba5
Adds content sensitivity descriptors to all screens
2026-03-11 13:47:10 -04:00
Vitor Pamplona
9bb87b38f5
Merge pull request #1808 from vitorpamplona/claude/add-content-warning-description-5BF4B
...
Add optional description field for sensitive content warnings
2026-03-11 13:43:47 -04:00
Vitor Pamplona
eedfc61fad
Fixes lingering relays on loading follows outbox relays.
2026-03-11 13:17:06 -04:00
Claude
2b0518a675
feat: allow users to add a description to the sensitive content warning
...
- Add contentWarningReason() helper to TagArrayExt and EventExt for reading the reason from existing events
- Add contentWarningDescription state to ShortNotePostViewModel, wired into event building and draft load/save/reset
- Update ContentSensitivityExplainer to accept description state and render an OutlinedTextField for user input
- Pass description state from ShortNotePostScreen to ContentSensitivityExplainer
- Add "Reason (optional)" placeholder string resource
https://claude.ai/code/session_01P2nkYdNiWXiAcfMPTRTVEW
2026-03-11 16:51:37 +00:00
Vitor Pamplona
84da81b62f
Adds calendar events and snippets to the search query
2026-03-11 12:44:29 -04:00
Vitor Pamplona
1bd96707e5
Improving the looks of namecoin settings
2026-03-11 12:33:52 -04:00
Vitor Pamplona
3bd2f4251b
Increasing sha256 pool size
2026-03-11 12:33:11 -04:00
Vitor Pamplona
2312bea10d
Merge pull request #1807 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-11 12:30:59 -04:00
Vitor Pamplona
5437ee98b4
updates readme
2026-03-11 12:29:00 -04:00
Crowdin Bot
b6829523a7
New Crowdin translations by GitHub Action
2026-03-11 16:28:06 +00:00
Vitor Pamplona
bba11b1813
Merge pull request #1805 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-11 12:26:36 -04:00
Vitor Pamplona
2649d05e25
merge with spotless apply
2026-03-11 12:24:25 -04:00
Crowdin Bot
60db83ecad
New Crowdin translations by GitHub Action
2026-03-11 16:24:10 +00:00
Vitor Pamplona
0f934ee461
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: add CodeSnippetEvent (NIP-C0) rendering to NoteCompose and ThreadFeedView
2026-03-11 12:22:44 -04:00
Vitor Pamplona
8d968c2fc0
Merge pull request #1806 from vitorpamplona/claude/namecoin-settings-route-qFW0S
...
Extract Namecoin settings to dedicated screen
2026-03-11 12:21:57 -04:00
Vitor Pamplona
c1705507a8
Adds 1.06 change log
2026-03-11 12:21:03 -04:00
Claude
3b3482e753
feat: move NamecoinSettingsSection to its own route and screen
...
Extract the Namecoin settings from PrivacyOptionsScreen into a
dedicated NamecoinSettingsScreen with its own Route.NamecoinSettings
route. Add a "Namecoin Settings" entry to AllSettingsScreen so users
can navigate to it directly from the settings list.
https://claude.ai/code/session_013gEw6fJYFiFoe4zETo8dpC
2026-03-11 16:19:07 +00:00
Vitor Pamplona
dccc644a9e
Merge pull request #1804 from vitorpamplona/claude/add-code-snippet-rendering-0G1Mv
...
Add support for rendering NIP-23 Code Snippet events
2026-03-11 12:12:21 -04:00
Claude
74e44f1256
feat: add CodeSnippetEvent (NIP-C0) rendering to NoteCompose and ThreadFeedView
...
- Create CodeSnippet.kt with RenderCodeSnippetEvent (feed card view) and
RenderCodeSnippetHeaderForThread (full thread view)
- Feed card shows: filename/language badge, description, 5-line code preview
in a monospace box with rounded border
- Thread header shows: full code in scrollable monospace block plus metadata
(license, runtime, deps)
- Add is CodeSnippetEvent branch to NoteCompose.kt RenderNoteRow when-statement
- Add is CodeSnippetEvent branch to ThreadFeedView.kt header when-statement
https://claude.ai/code/session_01X6jjsMLGBUmcaWXHJKmrEn
2026-03-11 15:46:18 +00:00
Vitor Pamplona
76090077b6
Displays % of uptime in relay settings
2026-03-11 10:59:43 -04:00
Vitor Pamplona
76e86ee5f7
adds calendar rendering to the thread view
2026-03-11 10:59:21 -04:00
Vitor Pamplona
3fdde60a37
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
fix: resolve conflicts with upstream PR #1789 merge
fix(desktop): remove noisy debug logs and silence SLF4J warnings
feat(desktop): add bunker heartbeat indicator to sidebar navigation
fix(desktop): verify user pubkey via get_public_key after nostrconnect login
fix(desktop): address code review findings for NIP-46 bunker login
feat(desktop): add nostrconnect:// login flow for QR-based signer pairing
revert: remove QR code scanning from login
feat(desktop): webcam QR scanning via ffmpeg for bunker login
feat(desktop): add webcam QR code scanning for bunker login
feat(desktop): add QR code scanning for bunker login
fix(desktop): clear stored credentials on logout
feat(desktop): update login hints to mention bunker:// option
fix(desktop): simplify settings logout to just a button
feat(desktop): add logout option to menu bar and settings
test: add NIP-46 test suite for desktop, quartz, and fix pre-existing chess test errors
feat(desktop): add NIP-46 remote signer (bunker://) login
2026-03-11 08:42:44 -04:00
Vitor Pamplona
71574a5ce0
tracks and displays connection tentatives on relay settings
2026-03-11 08:42:32 -04:00
Vitor Pamplona
ca9074e6f5
better relay parsing messaging
2026-03-11 08:17:14 -04:00
Vitor Pamplona
4576204c1d
Fixes relay list backup
2026-03-11 08:10:50 -04:00
Vitor Pamplona
190bdb0795
Merge pull request #1803 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-11 07:51:20 -04:00
Crowdin Bot
c67781f87d
New Crowdin translations by GitHub Action
2026-03-11 11:49:38 +00:00
Vitor Pamplona
d01b5aba4e
Merge pull request #1791 from nrobi144/feat/nip46-bunker-login
...
feat(desktop): NIP-46 bunker login with heartbeat indicator
2026-03-11 07:47:38 -04:00
nrobi144
f0ffe3cbe3
fix(ui): remove duplicate back button from SinglePaneLayout
...
Overlay screens (UserProfileScreen, ThreadScreen) already render their
own back+title header. Remove the redundant SinglePaneHeader bar.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 11:36:46 +02:00
nrobi144
3c6c368582
refactor(search): extract thread-safe EventDeduplicator, unify dedup
...
Replace raw MutableSet with synchronized EventDeduplicator class.
Remove dual dedup in addNoteResults — trackRelayEvent now gates all
event processing. SearchScreen callbacks skip dupes early via return
value.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 11:36:39 +02:00
nrobi144
edf764709d
fix: resolve conflicts with upstream PR #1789 merge
...
- Add missing commons domain files (BunkerLoginUseCase, NostrConnectLoginUseCase)
- Restore CoroutineScope in NostrSignerRemote for suspend decrypt call
- Update isolation test: upstream removed `since` filter (PR #1789 )
- Add new INostrClient interface methods to TrackingNostrClient mock
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:35:56 +02:00
nrobi144
36efbd1544
fix(desktop): remove noisy debug logs and silence SLF4J warnings
...
Remove feedSub/contactList debug prints from FeedScreen, suppress
GiftWrapEvent decryption failure log (expected for others' wraps),
and add slf4j-nop to silence "No SLF4J providers" console warnings.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:20:19 +02:00
nrobi144
4d1d92db39
feat(desktop): add bunker heartbeat indicator to sidebar navigation
...
Pulsating green heart icon shows NIP-46 signer connection status in both
DeckSidebar and SinglePaneLayout NavigationRail. Tooltip displays last
ping time. SignerConnectionState moved to commons for KMP sharing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:20:18 +02:00
nrobi144
5475d6c2bc
fix(desktop): verify user pubkey via get_public_key after nostrconnect login
...
The nostrconnect flow was trusting params[0] from the signer's connect
message as the user's pubkey. Some signers (e.g. nsec.app) don't put
the actual user pubkey there, causing all relay subscriptions to query
the wrong identity — contact lists, profiles, and DMs all returned empty.
Now calls remoteSigner.getPublicKey() after the handshake to get the
verified pubkey from the signer. Also stabilizes FeedScreen relay
subscriptions with distinctUntilChanged() and adds relay.primal.net
to defaults.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:20:18 +02:00
nrobi144
3a1e38a2f2
fix(desktop): address code review findings for NIP-46 bunker login
...
- Add bounds check in fromBunkerUri for missing query params (P2-1)
- Preserve bunker keys on transient force-logout (P2-3)
- Replace debug printlns with DebugConfig.log() (P2-4)
- Replace unused Unstable with Disconnected state (P2-5)
- Move validateBunkerUri to account package (P3-9)
- Fix Compose state update from IO thread (P3-11)
- Add disconnectNip46Client() to onDispose cleanup (P3-12)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:10 +02:00
nrobi144
12c91aae3d
feat(desktop): add nostrconnect:// login flow for QR-based signer pairing
...
Adds client-initiated NIP-46 (nostrconnect://) flow so users can pair
with a remote signer (e.g. Amber) by scanning a QR code instead of
manually copying a bunker:// URI.
Changes:
- Fix RemoteSignerManager to decrypt NIP-44 content before parsing
- Add CoroutineScope to NostrSignerRemote for async event callbacks
- Add loginWithNostrConnect() to AccountManager with 120s timeout
- Add QrCodeCanvas composable using ZXing for QR generation
- Add "Connect" tab to LoginCard showing QR + copyable URI + waiting state
- Wire nostrconnect flow through LoginScreen
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:10 +02:00
nrobi144
bff6723ba6
revert: remove QR code scanning from login
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:10 +02:00
nrobi144
d030843522
feat(desktop): webcam QR scanning via ffmpeg for bunker login
...
Replaces webcam-capture (broken on Apple Silicon) with ffmpeg
avfoundation capture. Opens a live preview dialog that scans
for QR codes from the FaceTime camera. Works natively on arm64.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:10 +02:00
nrobi144
6e04482981
feat(desktop): add webcam QR code scanning for bunker login
...
Uses webcam-capture + ZXing to scan QR codes from the camera.
Click the QR icon on the login screen to open a webcam scanner
dialog that auto-detects bunker:// URIs from Amber's QR display.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:10 +02:00
nrobi144
fd1b435020
feat(desktop): add QR code scanning for bunker login
...
Adds a QR scan button to the login card that decodes QR codes from
clipboard images or image files using ZXing. Useful for scanning
bunker:// URIs from Amber's QR display.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:09 +02:00
nrobi144
5661c6df27
fix(desktop): clear stored credentials on logout
...
All user-initiated logouts now pass deleteKey=true to remove
nsec from secure storage, clear last_npub, and delete bunker state.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:09 +02:00
nrobi144
eafedda99e
feat(desktop): update login hints to mention bunker:// option
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:09 +02:00
nrobi144
26ea0be4c7
fix(desktop): simplify settings logout to just a button
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:09 +02:00
nrobi144
2346d92f16
feat(desktop): add logout option to menu bar and settings
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:09 +02:00
nrobi144
1821b9ff71
test: add NIP-46 test suite for desktop, quartz, and fix pre-existing chess test errors
...
Add comprehensive test coverage for NIP-46 bunker login across quartz and desktopApp:
Quartz (4 files, 48 tests):
- ResponseParserTest: all 7 response parsers (success/error/unexpected)
- FromBunkerUriTest: URI parsing, validation, edge cases
- ConvertExceptionsTest: SignerResult→Exception mapping
- NostrConnectEventTest: canDecrypt, talkingWith, verifiedRecipientPubKey
Desktop (6 files, 45 tests):
- BunkerUriUtilsTest: validateBunkerUri + stripBunkerSecret
- AccountManagerKeyLoginTest: nsec/npub/invalid login, save, generate
- AccountManagerLogoutTest: logout, forceLogout, state transitions
- AccountManagerLoadAccountTest: internal/bunker/missing-key scenarios
- AccountManagerBunkerLoginTest: hasBunkerAccount, setConnectingRelays
- AccountManagerHeartbeatTest: start/stop, no-crash with internal signer
Production changes:
- AccountManager: constructor private→internal, add homeDir param for test injection, extract stripBunkerSecret to internal top-level, constants internal
- desktopApp/build.gradle.kts: add mockk test dependency
Fix pre-existing chess test compilation errors:
- ChessStateReconstructorTest: add missing jester subpackage imports
- ChessGameEventTest: altText()→alt() + add nip31Alts import
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:16:09 +02:00
nrobi144
6c24c52104
feat(desktop): add NIP-46 remote signer (bunker://) login
...
Support bunker:// URI login for desktop, enabling private key delegation
to remote signers (nsec.app, Amber). Includes heartbeat monitoring,
force-logout on revocation, and ConnectingRelays startup state.
- AccountManager: bunker login/save/load, heartbeat ping, force logout
- LoginCard: auto-detect bunker:// URI, validation, connecting state
- LoginScreen: wire bunker callback, ConnectingRelays screen
- Main.kt: relay timeout, error recovery, scope cleanup, data objects
- ForceLogoutDialog: alert on signer revocation/disconnect
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 10:15:24 +02:00
nrobi144
979d07679c
fix(search): loading indicator, result delivery, and history race
...
- Replace boolean isSearching with counter-based activeSubscriptionCount
so loading state stays true until both subs (people + notes) complete
- Add indeterminate LinearProgressIndicator overlaid on search bar bottom
border with matching 12dp rounding, replacing "Searching relays..." text
- Send search REQs to all configured relays (relayStatuses) instead of
only connected ones — fixes NIP-50 relays never receiving search queries
- Move clearResults/startSearching out of remember() into LaunchedEffect
to avoid side effects during composition
- Fix history saving partial queries by replacing LaunchedEffect with
snapshotFlow to properly observe isSearching transitions
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 09:29:27 +02:00
nrobi144
a702dcc0ee
fix(search): cleanup review findings — dead code, FQN refs, naming
...
- Remove unused `key` param from ExpandableSection
- Replace FQN references with imports in AdvancedSearchPanel and SearchScreen
- Use MetadataEvent.KIND instead of magic `0`
- Remove dead `relayStatuses` collection (only `connectedRelays` used)
- Remove CachedUserResult sealed variant (never constructed)
- Rename SearchHint `identifier` param to `example`
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 07:28:04 +02:00
nrobi144
e8e2650fa9
refactor(search): extract shared code to commons, remove dead code
...
- Extract DateUtils (isLeapYear, dateToUnix, timestampToDate) to deduplicate
identical implementations in QueryParser and QuerySerializer
- Move SavedSearch data class from desktopApp to commons/search
- Replace local formatTimestamp with existing toTimeAgo from commons/util
- Remove dead code: resolveAuthorName, _authorSuggestions (never called)
- Remove dead code: createOrFilters (never wired into SearchScreen)
- Remove unused ICacheProvider dependency from AdvancedSearchBarState
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-11 07:21:17 +02:00
Vitor Pamplona
9f903709e7
Move location permission watcher to the outside of the screens to avoid recreating them
2026-03-10 20:01:55 -04:00
Vitor Pamplona
8cd9449ba6
Improves upload of music and documents.
2026-03-10 19:49:15 -04:00
Vitor Pamplona
8a03f0b501
Replaces Aboutme for NIP-05 in the user search
2026-03-10 19:12:27 -04:00
Vitor Pamplona
2567a7c022
Better alignment and options in the UI.
2026-03-10 18:56:00 -04:00
Vitor Pamplona
178fcbb4c1
removes unused imports
2026-03-10 18:47:00 -04:00
Vitor Pamplona
cc4e81146f
Saves the position of the screen on import follows dialog
2026-03-10 18:46:18 -04:00
Vitor Pamplona
7a3794eabb
New string resource
2026-03-10 18:19:10 -04:00
Vitor Pamplona
a8d4705fa6
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-10 16:58:24 -04:00
Vitor Pamplona
a1e90b8c9f
save the lazy list state and make it scroll in the search view model to avoid coming back on another feed position
2026-03-10 16:56:31 -04:00
Vitor Pamplona
26b7efafe8
enforces specific keys when using nip05/namecoin
2026-03-10 16:41:59 -04:00
Vitor Pamplona
ef1d7e1249
Merge pull request #1800 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-10 16:29:14 -04:00
Vitor Pamplona
9a3b11e522
Adds the ability to upload any file form any new post screen
2026-03-10 16:23:02 -04:00
Crowdin Bot
ffff1399b9
New Crowdin translations by GitHub Action
2026-03-10 20:18:49 +00:00
Vitor Pamplona
087e5878a6
Fixes some compilation issues
2026-03-10 16:14:38 -04:00
Vitor Pamplona
c0e97c19c0
Improves wording to download to the phone as opposed to the profile gallery
2026-03-10 16:07:45 -04:00
Vitor Pamplona
b4184d2235
Moves the upload file button closer to the image upload
2026-03-10 15:54:03 -04:00
Vitor Pamplona
b2a8a422b2
- Breaks the new Import Follow interface into two screens
...
- Improves user suggestion search by evaluating specific nip-05s and npubs
2026-03-10 15:48:04 -04:00
Vitor Pamplona
dbaa02cdb0
merge
2026-03-10 15:29:28 -04:00
Vitor Pamplona
cdc9ff783d
Accepts INIP05Client on the check and update function
2026-03-10 14:39:33 -04:00
David Kaspar
8f5e69e5ba
Merge pull request #1799 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-10 18:38:29 +00:00
Vitor Pamplona
558e8a2dd2
Adds constructor to DualCase class
2026-03-10 14:37:55 -04:00
Vitor Pamplona
1de38ad9ec
Creates an interface for Nip05Client
2026-03-10 14:37:40 -04:00
Crowdin Bot
132959a5cf
New Crowdin translations by GitHub Action
2026-03-10 18:23:38 +00:00
Vitor Pamplona
9b233c8679
no message
2026-03-10 14:23:31 -04:00
Vitor Pamplona
835001bd6c
Making nip05 client stable
2026-03-10 14:22:06 -04:00
Vitor Pamplona
ccb3ca69dc
Merge pull request #1798 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-10 14:21:39 -04:00
Vitor Pamplona
d69a9fdde1
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
fix: preserve search screen scroll position across navigation
feat: add audio and PDF file upload support to ShortNotePostScreen
New Crowdin translations by GitHub Action
2026-03-10 13:50:13 -04:00
Vitor Pamplona
9e105e017d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
update cz, pt, de, sv
New Crowdin translations by GitHub Action
2026-03-10 13:49:26 -04:00
Crowdin Bot
98a09db9b0
New Crowdin translations by GitHub Action
2026-03-10 17:47:16 +00:00
Vitor Pamplona
7b8352afe2
Merge pull request #1795 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-10 13:45:34 -04:00
Vitor Pamplona
cdecc2087c
Merge pull request #1796 from vitorpamplona/claude/add-audio-pdf-upload-dy1dy
...
Add file upload support for audio and PDF documents
2026-03-10 13:45:23 -04:00
Vitor Pamplona
4ad9e435e0
Merge pull request #1797 from vitorpamplona/claude/fix-search-scroll-position-U10Lv
...
Persist search screen scroll position across navigation
2026-03-10 13:44:24 -04:00
Claude
a64e9bb3cf
fix: preserve search screen scroll position across navigation
...
Replace ephemeral rememberLazyListState() with rememberForeverLazyListState()
so the scroll position is persisted when navigating to a search result and back.
https://claude.ai/code/session_01PmSFQqSMzP51mtqPLwFEtp
2026-03-10 15:15:27 +00:00
Vitor Pamplona
ab9ecdc939
Adds methods to follow a bunch of users at the same time
2026-03-10 11:12:23 -04:00
Claude
a7cec6f5fd
feat: add audio and PDF file upload support to ShortNotePostScreen
...
Add a new "attach file" button that opens a document picker filtered to
audio/* and application/pdf MIME types. This uses OpenMultipleDocuments
contract since PickVisualMedia only supports images/videos.
- Add SelectFromFiles composable with AttachFile icon button
- Add isAudio() and isDocument() helpers to SelectedMedia
- Add FilePreviewPlaceholder for audio/PDF thumbnail display
- Add upload_file string resource
https://claude.ai/code/session_018naEzfHjLRQLgaWAtY4aSz
2026-03-10 14:48:47 +00:00
Vitor Pamplona
b8f9b18506
Moves the account import idea to a route after login
2026-03-10 10:19:18 -04:00
Crowdin Bot
bc7d0fd758
New Crowdin translations by GitHub Action
2026-03-10 14:07:56 +00:00
David Kaspar
f42939c3b0
Merge pull request #1794 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-10 14:04:37 +00:00
davotoula
1e65228488
update cz, pt, de, sv
2026-03-10 14:56:33 +01:00
David Kaspar
b749fbdb88
Merge pull request #1793 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-10 13:37:53 +00:00
Crowdin Bot
1aa368221a
New Crowdin translations by GitHub Action
2026-03-10 13:30:51 +00:00
Vitor Pamplona
ff4356ce31
Moves away from calling relay feeds "favorites"
2026-03-10 09:26:09 -04:00
Vitor Pamplona
3146b91c59
Make user import stable
2026-03-10 09:13:16 -04:00
Vitor Pamplona
55477429be
removes old null mute lists from top nav bar
2026-03-10 09:13:05 -04:00
Vitor Pamplona
c4b4e1b5c8
adds a button to see the feed in the RelayInformationScreen
2026-03-10 08:51:10 -04:00
Vitor Pamplona
50a578cfdc
Fixes preview of relay information screen
2026-03-10 08:50:51 -04:00
Vitor Pamplona
741a2e13b5
Fixes imports in NoteCompose
2026-03-10 08:44:53 -04:00
Vitor Pamplona
9ca5fc0496
Fixed rendering of calendar event previews
2026-03-10 08:43:59 -04:00
Vitor Pamplona
9c8bac7b0b
Merge pull request #1792 from vitorpamplona/claude/add-calendar-event-rendering-HsY4W
...
Add support for rendering NIP-52 calendar events
2026-03-10 08:28:30 -04:00
Claude
fec2f2dfc8
feat: add @Preview functions for RenderCalendarTimeSlotEvent and RenderCalendarDateSlotEvent
2026-03-10 12:26:42 +00:00
Claude
2a2bdc8026
feat: add calendar event rendering for NIP-52 CalendarTimeSlotEvent and CalendarDateSlotEvent
...
Adds UI rendering for kind 31922 (CalendarDateSlotEvent) and kind 31923
(CalendarTimeSlotEvent) in the note feed. Each event renders with a header
image, title, date/time range, location, and summary.
2026-03-10 12:20:07 +00:00
Vitor Pamplona
376e34bde6
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
fix(quartz): connect() returns Unit, caller calls getPublicKey separately
fix(quartz): fix NIP-44 key mutation and NIP-46 connect response handling
feat: add custom ElectrumX server settings for Namecoin resolution
feat: import follow list with Namecoin resolution during signup
2026-03-10 08:20:03 -04:00
Vitor Pamplona
70af50b74f
Adds default Relay Feeds
2026-03-10 08:19:49 -04:00
Vitor Pamplona
21d1734365
Merge pull request #1786 from mstrofnone/feat/custom-electrumx-settings
...
feat: Custom ElectrumX server settings for Namecoin resolution
2026-03-10 08:14:36 -04:00
Vitor Pamplona
97a3fcc9df
Merge pull request #1785 from mstrofnone/feat/import-follow-list-namecoin
...
feat: import follow list with Namecoin resolution during signup
2026-03-10 08:14:24 -04:00
Vitor Pamplona
88e6825028
Merge pull request #1789 from nrobi144/fix/nip46-quartz-bugs
...
fix(quartz): fix NIP-44 key mutation and NIP-46 connect response handling
2026-03-10 08:08:08 -04:00
nrobi144
b3952ce9db
feat(search): add keyboard shortcuts, search history UI, and operator hints
...
Phase 6: Integration and polish.
- Escape key closes advanced panel or clears search
- Search history shown in empty state (recent + saved searches)
- Auto-save to history when search completes
- Updated empty state with operator hint examples
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 12:15:14 +02:00
nrobi144
e1abb037be
feat(search): add SearchHistoryStore with recent queries and saved searches
...
Phase 5: Persistent search history using Java Preferences API.
- Last 20 queries stored, deduped by serialized text
- Saved searches with labels and timestamps
- Uses QuerySerializer/QueryParser for round-trip serialization (no new deps)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 12:13:34 +02:00
nrobi144
55154dddb2
feat(search): add advanced search UI with panel, results list, and SearchScreen rewrite
...
Phase 4: Desktop UI composables for advanced search.
- Rewrite SearchScreen.kt to use AdvancedSearchBarState with TextFieldValue
- Add AdvancedSearchPanel with kind presets, author chips, date range, hashtags, language
- Add SearchResultsList with sticky headers for People/Notes/Articles/Other sections
- Make QueryParser.parseDateToTimestamp and QuerySerializer.timestampToDate public
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 12:12:17 +02:00
nrobi144
8265d3f70a
feat(search): add AdvancedSearchBarState with bidirectional sync
...
Phase 3: State holder with MutableStateFlow<SearchQuery> as SSOT,
sourceOfChange discriminator to prevent parse/serialize loops,
debounced query for subscriptions, results management, author
name resolution via cache autocomplete.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 11:44:57 +02:00
nrobi144
c3a45822d5
feat(search): add SearchFilterFactory and SearchResultFilter
...
Phase 2: SearchFilterFactory converts SearchQuery → List<Filter> with
default 3-group kind splitting (Android parity), NIP-50 inline
extensions, OR query support. SearchResultFilter handles client-side
exclusions, reply/media pseudo-kind detection, dedup.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 11:43:48 +02:00
nrobi144
ae76b86ab6
feat(search): add query engine — SearchQuery, QueryParser, QuerySerializer, KindRegistry
...
Phase 1 of advanced search. Recursive descent parser for operators
(from:, kind:, since:, until:, lang:, domain:, #tag, -exclude, OR),
serializer for bidirectional sync, kind alias registry with pseudo-kind
support. 68 unit tests all passing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 11:42:13 +02:00
nrobi144
e56b0d2b83
fix(quartz): connect() returns Unit, caller calls getPublicKey separately
...
Per Amber maintainer: connect never returns a pubkey — response is
"ack" or the secret string. Rewrote ConnectResponse.parse() to check
result/error fields directly on base BunkerResponse (matching Jackson
deserialization). connect() is now a pure protocol handshake; callers
call getPublicKey() separately as a domain concern.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-10 07:24:57 +02:00
Vitor Pamplona
e47299cd6b
Rendering a fake waveform when playing music without any video frames.
2026-03-09 16:32:50 -04:00
Vitor Pamplona
328fd5221c
Reducing the distance from the center to the side seek buttons on video playback
2026-03-09 13:02:15 -04:00
Vitor Pamplona
eafbd450ea
changes player's min height to match the gradients on controllers.
2026-03-09 13:00:02 -04:00
Vitor Pamplona
68997b8033
Always render video playback center buttons on the top
2026-03-09 12:59:10 -04:00
Vitor Pamplona
05b3a122f5
Positions search relays after users in the search result list
2026-03-09 12:48:48 -04:00
Vitor Pamplona
7b3a745548
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-09 12:41:16 -04:00
Vitor Pamplona
1aa61a156d
If tying a relay in the search screen, adds it to the results.
2026-03-09 12:37:58 -04:00
Vitor Pamplona
bdf4add64f
Adds a list of users of a relay to the relay information dialog.
2026-03-09 12:24:10 -04:00
Vitor Pamplona
a34ba7cea8
Adds relay search to the search page
2026-03-09 11:46:21 -04:00
Vitor Pamplona
2387a1bb91
Improves the order of search results
2026-03-09 11:25:00 -04:00
Vitor Pamplona
76598c304e
Improvements to profile page
2026-03-09 10:44:33 -04:00
David Kaspar
8e10bd1911
Merge pull request #1790 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-09 13:12:51 +00:00
Crowdin Bot
40bbd62725
New Crowdin translations by GitHub Action
2026-03-09 12:47:21 +00:00
Vitor Pamplona
961b8cf19e
Fixes user search/list not resetting
...
Fixes modifier bug
2026-03-09 08:43:29 -04:00
nrobi144
39393d328b
fix(quartz): fix NIP-44 key mutation and NIP-46 connect response handling
...
Two bugs in quartz's NIP-46 remote signer:
1. FixedKey.getEncoded() returned the raw byte array reference. javax.crypto.Mac
zeroes the key via destroy() after HMAC computation, corrupting the NIP-44
saltPrefix ("nip44-v2") after the first computeConversationKey call. All
subsequent NIP-44 decryptions with different key pairs fail with Invalid Mac.
Fix: return key.copyOf() instead of key.
2. NostrSignerRemote.connect() only handled pubkey responses. Amber (and other
signers) may respond with "ack" or "already connected" error. Added
ConnectResponse parser that maps these to success and falls back to
getPublicKey() to retrieve the actual pubkey.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-09 07:49:58 +02:00
Vitor Pamplona
af4404c86e
Improves display of the drop down when adding relays.
2026-03-08 13:47:11 -04:00
Vitor Pamplona
7fa9fdff9e
When adding new relays, show full information dialog
2026-03-08 13:07:29 -04:00
Vitor Pamplona
693931ed15
Removes the need to start user searches with @ in the user fields across the app.
2026-03-08 12:43:59 -04:00
Vitor Pamplona
785ef8f2f3
Final touches
2026-03-08 12:31:10 -04:00
Vitor Pamplona
92da66059b
Opens the amount dialog when pressing the zap button without any zap setup
2026-03-08 12:31:03 -04:00
Vitor Pamplona
db27b876ff
Refines new Zap dialog screen
2026-03-08 12:17:41 -04:00
Vitor Pamplona
8912e55269
text improvements
2026-03-08 12:12:08 -04:00
Vitor Pamplona
c1e8231ed9
Merge pull request #1784 from vitorpamplona/claude/improve-zap-settings-ui-D36RD
...
feat: improve Zap Settings UI with sections, chips, and animations
2026-03-08 11:59:13 -04:00
Vitor Pamplona
f39de5a078
Merge pull request #1788 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-08 10:04:24 -04:00
Crowdin Bot
0b59a6233e
New Crowdin translations by GitHub Action
2026-03-08 14:00:37 +00:00
Vitor Pamplona
44a2f11963
Merge pull request #1787 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-08 09:59:38 -04:00
Crowdin Bot
5cf661dd8b
New Crowdin translations by GitHub Action
2026-03-08 13:59:11 +00:00
Vitor Pamplona
991f1dfca5
spotless apply
2026-03-08 09:58:41 -04:00
Vitor Pamplona
be09cc8aa3
Merge pull request #1783 from vitorpamplona/claude/improve-urldetector-readability-lqyci
...
refactor: improve URLDetector readability
2026-03-08 09:57:56 -04:00
M
55c45480b4
feat: add custom ElectrumX server settings for Namecoin resolution
...
Add a 'Namecoin Resolution' section that lets users configure custom
ElectrumX servers for .bit / d/ / id/ name resolution. When custom
servers are configured, they are used EXCLUSIVELY — the hardcoded
public defaults are completely ignored. This gives privacy-conscious
users full control over which servers observe their name lookups.
Server format: host:port (TLS default) or host:port:tcp (plaintext).
Supports .onion addresses for Tor-routed lookups.
New files:
NamecoinSettings.kt
Immutable settings data class with server string parsing/formatting.
NamecoinSharedPreferences.kt
DataStore-backed persistence following the TorSharedPreferences
pattern. Provides a synchronous snapshot for the serverListProvider
lambda and observable StateFlow for the UI.
NamecoinSettingsSection.kt
Compose UI: enable/disable toggle, active server display with
DEFAULT/CUSTOM badge, add/remove servers with validation, reset.
NamecoinSettingsTest.kt
Unit tests for parsing, formatting, round-trips, and edge cases.
Integration:
AppModules.kt — added namecoinPrefs (NamecoinSharedPreferences) and
wired customServersOrNull into the existing serverListProvider so
user-configured servers take priority over the Tor/default logic.
Refactored from an earlier patch to avoid duplicating code already in
main. The quartz-layer ElectrumXClient, NamecoinNameResolver, and
supporting types are reused unchanged.
2026-03-08 16:16:22 +11:00
M
8456b38dea
feat: import follow list with Namecoin resolution during signup
...
Add a new signup step that lets users bootstrap their feed by importing
another profile's follow list. Supports all identifier types:
- npub1... (NIP-19 bech32)
- 64-char hex pubkey
- alice@example.com (NIP-05 HTTP)
- alice@example.bit / d/name / id/name (Namecoin blockchain)
Flow: Enter identifier → Resolve → Fetch kind 3 → Preview with
select/deselect → Apply follows → Done. Users can search multiple
profiles before continuing.
Changes to existing files:
- NamecoinNameResolver: add resolveDetailed() + NamecoinResolveOutcome
- NamecoinNameService: add resolveDetailed(), resolvePubkey()
- AccountSessionManager: add isNewAccount flag, finishNewAccountSetup()
- AccountScreen: route new accounts to ImportFollowListSection
New files:
- FollowListImporter: identifier resolution + kind 3 fetch + parsing
- ImportFollowListViewModel: state machine for the import flow
- ImportFollowListScreen: UI with preview, select/deselect, search again
- FollowListImporterTest: 14 unit tests
2026-03-08 15:38:54 +11:00
Claude
233d0bf089
feat: improve Zap Settings UI with sections, chips, and animations
...
- Organize zap settings into three clear sections with primary-colored
headers: Quick Zap Amounts, Zap Privacy, and Nostr Wallet Connect
- Replace plain Buttons with InputChip for amount selection — each chip
shows a lightning bolt, the amount, and a close icon to remove it
- Add animateContentSize() to the chips FlowRow so adding/removing
amounts animates smoothly
- Add descriptive sub-text under each section header explaining what
the control does
- NWC section: show an animated "Connected / Not Connected" status badge
(green CheckCircle vs grey RadioButtonUnchecked) that cross-fades via
AnimatedContent when the connection state changes
- NWC section: add animateColorAsState for the status color transition
- Replace the bare icon-only Add button with an OutlinedButton labelled
"Connect Wallet" for better discoverability
- Move the manual pubkey/relay/secret fields into a collapsible
"Advanced" row animated with AnimatedVisibility (expandVertically +
fadeIn/fadeOut). The section auto-expands when a connection already
exists or when a QR/clipboard import populates the pubkey field
- Add 9 new string resources for the new UI copy
https://claude.ai/code/session_01QzBq319fsxhrT91bGxws6N
2026-03-08 02:09:28 +00:00
Claude
812f465608
refactor: improve URLDetector readability
...
- UrlDetector: simplify space handler in readDefault() — both branches
of if/else were calling the same readEnd(InvalidUrl), making the
conditional dead code; now we always call readEnd after attempting
to read the domain
- UrlDetector: remove redundant inner buffer.isNotEmpty() check in
readEnd(), already guarded by the outer condition
- UrlDetector: rename processColon() parameter from length to
startLength to eliminate the var length = length self-shadowing
- UrlDetector: replace ArrayList<Url>() with mutableListOf<Url>()
for idiomatic Kotlin
- DomainNameReader: replace lastSection.deleteRange(0, lastSection.length)
with lastSection.clear() which expresses the intent directly
- DomainNameReader: move isDotPercent() and isXn() extension functions
from inside the class body to private file-level functions — extension
functions defined on a class instance are unusual and confusing
https://claude.ai/code/session_01Pci2AC45yQxQw6F6g7jWdd
2026-03-08 00:54:38 +00:00
David Kaspar
46d54d2826
Merge pull request #1782 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-07 22:09:58 +00:00
Crowdin Bot
e94985c614
New Crowdin translations by GitHub Action
2026-03-07 22:03:53 +00:00
Vitor Pamplona
9054e45310
Fixes test case
2026-03-07 16:55:12 -05:00
Vitor Pamplona
2059f46c42
Make Urls Stable
2026-03-07 16:55:04 -05:00
Vitor Pamplona
e6e697a5f8
Adds the full list of URLs to the Desktop app
2026-03-07 16:54:47 -05:00
Vitor Pamplona
0e3ca7ac35
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst : (35 commits)
New Crowdin translations by GitHub Action
fix chess tests
Replace subsequent checks with '!isNullOrEmpty()' call
use forEach: no intermediate list created.
Use filterIsInstance to avoid dual iteration
Lambda argument should be moved out of parentheses
replace null checks with Elvis
merge call chain with flatMap (slight performance improvement)
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
update cz, pt, de, sv
was this meant to be withContext?
add names to boolean params
remove unused imports
Explicit type arguments can be inferred
remove redundant modifiers
correct package name
If-Null return/break/... foldable to '?:'
Declaration has type inferred from a platform call, which can lead to unchecked nullability issues. Specify type explicitly as nullable or non-nullable.
Declaration has type inferred from a platform call, which can lead to unchecked nullability issues. Specify type explicitly as nullable or non-nullable.
...
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/ReactionsSettingsScreen.kt
2026-03-07 16:47:16 -05:00
Vitor Pamplona
966d02d89e
Removes top level domain number of char limitations to accept nostr: uris
2026-03-07 16:41:11 -05:00
Vitor Pamplona
e3f99051db
Applies new UrlDetector to the RichTextViewer
2026-03-07 16:38:25 -05:00
Vitor Pamplona
030921c963
Adds treatment for the transition between ASCII and non-ASCII in the middle of urls
2026-03-07 15:19:24 -05:00
Vitor Pamplona
5e1a193f78
only http for the url previews
2026-03-07 11:08:38 -05:00
Vitor Pamplona
109a5e7cd7
Adds single label domains to parse nostr: urls too
2026-03-07 10:51:19 -05:00
David Kaspar
864555bc0f
Merge pull request #1781 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-07 07:31:54 +00:00
Crowdin Bot
ec0fca24c6
New Crowdin translations by GitHub Action
2026-03-07 01:23:23 +00:00
Vitor Pamplona
feeba9bf90
Merge pull request #1780 from davotoula/lint-fixes-pt2
...
Lint fixes pt2
2026-03-06 20:21:54 -05:00
Vitor Pamplona
6318c54214
Merge pull request #1779 from davotoula/quartz-fix-jvm-chess-tests
...
fix chess tests
2026-03-06 20:21:12 -05:00
davotoula
5658b14ad4
fix chess tests
2026-03-06 23:26:40 +01:00
davotoula
b713b01af1
Replace subsequent checks with '!isNullOrEmpty()' call
2026-03-06 22:47:29 +01:00
davotoula
f8187bad14
use forEach: no intermediate list created.
2026-03-06 22:38:05 +01:00
davotoula
03171f97a5
Use filterIsInstance to avoid dual iteration
2026-03-06 22:21:03 +01:00
davotoula
6bfb508ddc
Lambda argument should be moved out of parentheses
2026-03-06 22:17:32 +01:00
davotoula
d7d9352a90
replace null checks with Elvis
2026-03-06 22:09:19 +01:00
davotoula
4e614a3179
merge call chain with flatMap (slight performance improvement)
2026-03-06 21:51:26 +01:00
David Kaspar
a89bfd0b05
Merge pull request #1778 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-06 20:47:40 +00:00
Crowdin Bot
3bf79355b8
New Crowdin translations by GitHub Action
2026-03-06 20:46:29 +00:00
David Kaspar
b61ba78eb3
Merge pull request #1777 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-06 20:45:03 +00:00
Crowdin Bot
82fd15272d
New Crowdin translations by GitHub Action
2026-03-06 20:43:36 +00:00
David Kaspar
069a19b3f5
Merge pull request #1776 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-06 20:42:07 +00:00
Vitor Pamplona
5d9687fb47
Merge pull request #1771 from mstrofnone/namecoin-nip05-improvements
...
fix: address race conditions and improve Namecoin NIP-05 resolution
2026-03-06 15:13:20 -05:00
Vitor Pamplona
976a9d5c77
Merge pull request #1774 from davotoula/lint-fixes
...
Lint fixes
2026-03-06 15:12:43 -05:00
Vitor Pamplona
1729a55add
Merge pull request #1775 from davotoula/potential-bug-note-compose
...
Typo / potential bug?
2026-03-06 15:12:19 -05:00
davotoula
8d212b8f03
update cz, pt, de, sv
2026-03-06 21:04:26 +01:00
davotoula
aec0101769
was this meant to be withContext?
2026-03-06 20:10:35 +01:00
davotoula
7f0b2c500f
add names to boolean params
2026-03-06 19:59:20 +01:00
davotoula
582153b193
remove unused imports
2026-03-06 19:59:20 +01:00
davotoula
8868b1b0e6
Explicit type arguments can be inferred
2026-03-06 19:59:20 +01:00
davotoula
bd71e9ae8f
remove redundant modifiers
2026-03-06 19:59:20 +01:00
davotoula
8329184d99
correct package name
2026-03-06 19:46:48 +01:00
davotoula
c8c42b5d70
If-Null return/break/... foldable to '?:'
2026-03-06 19:46:47 +01:00
davotoula
34e1ea92b2
Declaration has type inferred from a platform call, which can lead to unchecked nullability issues. Specify type explicitly as nullable or non-nullable.
2026-03-06 19:46:47 +01:00
davotoula
99e8ffcdeb
Declaration has type inferred from a platform call, which can lead to unchecked nullability issues. Specify type explicitly as nullable or non-nullable.
2026-03-06 19:46:47 +01:00
davotoula
7de098063f
Specifying : ExoPlayer makes the contract explicit
2026-03-06 19:46:47 +01:00
davotoula
953e8c1749
supress false positive
2026-03-06 19:46:47 +01:00
davotoula
5ac8b9ad62
Prefer mutableLongStateOf instead of mutableStateOf
2026-03-06 19:46:47 +01:00
davotoula
80fb171e0a
Unnecessary; SDK_INT is always >= 26
2026-03-06 19:46:47 +01:00
davotoula
8876c3c1d7
use multi-dollar string interpolation
...
avoid default locale
2026-03-06 19:46:47 +01:00
davotoula
ccb5738826
Replace the API-branched calls with ContextCompat.registerReceiver() which handles the flags transparently across all API levels
2026-03-06 19:46:47 +01:00
davotoula
4ee4a00b58
Add a nested comment explaining why this function is empty
2026-03-06 19:46:47 +01:00
Vitor Pamplona
f4d401bc56
Switches to our own version of the Url Detector
2026-03-06 10:58:59 -05:00
mstrofnone
a817a2cc79
remove dead namecoinNameService declaration from AppModules
...
The NamecoinNameService.init() singleton was the only consumer of
the companion object removed in the previous commit. The
namecoinNameService val itself was never referenced — namecoinResolver
is what's wired into Nip05Client.
2026-03-07 00:49:05 +11:00
mstrofnone
24a03b5d20
remove unused singleton companion object from NamecoinNameService
...
The companion object (instance, getInstance, init) was dead code —
nothing outside the class referenced it. Koin handles instantiation
via AppModules.
2026-03-07 00:38:58 +11:00
Vitor Pamplona
ddc4daaa28
Merge pull request #1773 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-06 08:12:46 -05:00
Crowdin Bot
998e6c690b
New Crowdin translations by GitHub Action
2026-03-06 13:12:29 +00:00
Vitor Pamplona
dd062f6e38
Merge pull request #1772 from greenart7c3/main
...
perf: optimize state management and clean up styling in ReactionsSettingsScreen
2026-03-06 08:10:13 -05:00
greenart7c3
0320ccf4a0
perf: optimize state management and clean up styling in ReactionsSettingsScreen
...
- Change `items` state initialization to use `toList()` instead of `toMutableList()` to ensure a fresh immutable snapshot from the flow.
- Reformat chained modifiers in `DraggableItem` for better readability.
2026-03-06 08:15:33 -03:00
M
4ecfbbb844
fix: add missing StateFlow import, merge duplicate KDoc blocks, and fix rebase conflicts
...
- Add missing 'import kotlinx.coroutines.flow.StateFlow' in SearchBarViewModel.kt
- Merge duplicate KDoc blocks on nameShowWithFallback in ElectrumXClient.kt
- Move NamecoinLookupException to ElectrumXServer.kt (avoid redeclaration)
- Remove duplicate NameShowResult/ElectrumxServer from ElectrumXClient.kt
- Fix ElectrumxClient -> ElectrumXClient renames in NamecoinNameService
- Extract namecoinElectrumxClient in AppModules.kt for NamecoinNameService.init()
- Update package paths from nip05.namecoin to nip05DnsIdentifiers.namecoin
2026-03-06 14:22:49 +11:00
M
050fd3a412
feat: propagate distinct error types from ElectrumX to search UI
...
Add NamecoinLookupException sealed class to distinguish:
- NameNotFound: name queried successfully but doesn't exist on blockchain
- NameExpired: name exists but expired (>36000 blocks since last update)
- ServersUnreachable: all ElectrumX servers failed with connection errors
Previously, all three cases returned null from nameShowWithFallback,
making it impossible for the UI to show meaningful feedback.
Changes:
- ElectrumxClient.connectAndQuery: throws NameNotFound/NameExpired
instead of returning null for definitive blockchain answers
- ElectrumxClient.nameShow: lets NamecoinLookupException propagate
(only catches connection/IO errors as null)
- ElectrumxClient.nameShowWithFallback: short-circuits on NameNotFound/
NameExpired (no point trying other servers for definitive answers),
throws ServersUnreachable when all servers fail with connection errors
- SearchBarViewModel: new namecoinSearchState flow with typed states
(Idle/Loading/Resolved/NotFound/Expired/ServersUnreachable) for UI
to show loading spinners, resolved profiles, and specific error
messages. Derived namecoinResolvedUser from this flow.
Discovered while porting to notedeck (damus-io/notedeck#1314 ).
2026-03-06 14:15:11 +11:00
M
ee418bdd0a
fix: address race conditions and improve Namecoin NIP-05 resolution
...
Fixes discovered while porting Namecoin NIP-05 to Primal Android
(PrimalHQ/primal-android-app#934 ):
1. Race condition: stale intermediate lookups overwrite final result
- Changed map to mapLatest in SearchBarViewModel so that previous
in-flight ElectrumX lookups are cancelled when the query changes
- Without this, typing 'd/testls' character by character causes
stale results from 'd/test', 'd/testl' etc. to arrive after
the correct 'd/testls' result and overwrite it with null
2. CancellationException swallowed in catch block
- mapLatest cancels previous coroutines via CancellationException
- The generic catch was catching it and emitting null, wiping the
valid result. Now re-throws CancellationException
3. Root lookup fails when names object has no underscore key
- extractFromDomainValue tried names[localPart] then names[underscore]
which is the same thing for root lookups
- Now falls back to first available entry for root lookups when
no underscore key exists
- Non-root lookups still fail correctly (no false matches)
4. Global Mutex serializes all lookups
- Single Mutex in ElectrumxClient blocked unrelated lookups to
different servers. A 25s timeout on one server stalled everything
- Now uses per-server mutexes via ConcurrentHashMap
5. customServers set but never read
- NamecoinNameService.setCustomServers() stored the list but the
resolver was constructed with the default serverListProvider
- Now wires customServers through to the resolver
6. resolveLive uses orphaned CoroutineScope
- Now accepts an optional external scope parameter so callers can
tie resolution to their own lifecycle
Adds 2 new tests: root fallback to first entry, non-root no-fallback.
2026-03-06 14:14:29 +11:00
Vitor Pamplona
13f401df8c
Moves test cases to commonTest
2026-03-05 08:34:18 -05:00
Vitor Pamplona
73c5418114
Fixes bug on Show More calculations for very long texts.
2026-03-05 08:31:01 -05:00
Vitor Pamplona
cb6391085a
Improving the ui for reaction row settings
2026-03-04 17:37:52 -05:00
Vitor Pamplona
f4ec5735d3
Better description of the settings
2026-03-04 17:21:32 -05:00
Vitor Pamplona
0e124f3017
Merge pull request #1769 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-04 17:18:51 -05:00
Crowdin Bot
52ec6eded8
New Crowdin translations by GitHub Action
2026-03-04 22:09:54 +00:00
Vitor Pamplona
6be2c7cbdf
Merge pull request #1768 from vitorpamplona/claude/add-drag-drop-reactions-43YJ2
...
Replace move buttons with drag-to-reorder in reactions settings
2026-03-04 17:08:14 -05:00
Claude
c2384d2082
feat: add drag-and-drop reordering for reaction row items
...
Replace up/down arrow buttons with a drag handle icon that supports
long-press drag gestures for reordering reaction items in settings.
Items visually lift with elevation and scale during drag, and swap
positions when dragged past neighboring item thresholds.
https://claude.ai/code/session_01RYsPFgnoeJ3BmwjFPMvTuU
2026-03-04 21:32:09 +00:00
David Kaspar
13dadeda37
Merge pull request #1767 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-04 20:13:57 +00:00
Crowdin Bot
9f772b0e13
New Crowdin translations by GitHub Action
2026-03-04 20:12:55 +00:00
Vitor Pamplona
9b9c2a722a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-04 15:09:40 -05:00
Vitor Pamplona
c95a9842a4
Adds the latin1 characters to the ascii block to avoid splitting words
2026-03-04 15:09:26 -05:00
David Kaspar
82ff8010c5
Merge pull request #1766 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-04 19:57:11 +00:00
Crowdin Bot
3a97f89199
New Crowdin translations by GitHub Action
2026-03-04 19:42:16 +00:00
Vitor Pamplona
2f94b3cb15
Adds the latin1 characters to the ascii block to avoid splitting words
2026-03-04 14:38:48 -05:00
Vitor Pamplona
be5c1f4832
Removes encrypted data from search
2026-03-04 13:56:06 -05:00
Vitor Pamplona
a536cc6f82
Merge pull request #1764 from greenart7c3/claude/reactions-settings-HhrO0
...
Add customizable reactions row settings screen
2026-03-04 13:35:03 -05:00
Vitor Pamplona
4839535355
Fixes test case for new class names
2026-03-04 13:29:09 -05:00
greenart7c3
4bd0ed97aa
Explicit imports
2026-03-04 14:46:44 -03:00
Claude
d2d887a782
feat: Add reactions row settings (enable/disable, order, show/hide counters)
...
Add a new Reactions Settings screen that allows users to:
- Enable or disable each reaction button (Reply, Boost, Like, Zap, Share)
- Reorder reaction buttons with up/down arrows
- Show or hide the counter for each reaction type
Changes:
- AccountSyncedSettingsInternal: Add ReactionRowAction enum, ReactionRowItem
data class, and reactionRowItems field to AccountReactionPreferencesInternal
- AccountSyncedSettings: Wrap reactionRowItems in MutableStateFlow
- AccountSettings/Account: Add changeReactionRowItems methods
- AccountViewModel: Add reactionRowItemsFlow() and changeReactionRowItems()
- ReactionsRow: Add showCounter param to BoostReaction, LikeReaction,
ZapReaction, ReplyReaction variants; refactor GenericInnerReactionRow to
render dynamically based on settings
- New ReactionsSettingsScreen with per-button enable/counter toggles and
move-up/move-down ordering
- Routes, AppNavigation, AllSettingsScreen: wire up new settings screen
https://claude.ai/code/session_01QizUFfWDeKjLK2SuhanipJ
2026-03-04 17:24:25 +00:00
Vitor Pamplona
fbbc506e84
updates all dependencies
2026-03-04 12:19:57 -05:00
Vitor Pamplona
1fa93788db
android target seems to be creating some issues between plugin dependencies after adding spm
2026-03-04 12:19:47 -05:00
Vitor Pamplona
da01c6ccd1
Moves smp plugin to version catalog
2026-03-04 12:18:55 -05:00
Vitor Pamplona
67390bb8ec
Updating Coil
2026-03-04 12:18:11 -05:00
Vitor Pamplona
d662cd6b64
Merge pull request #1757 from KotlinGeekDev/kmp-completeness
...
KMP Completeness, Part 1.
2026-03-04 10:27:24 -05:00
Vitor Pamplona
089600d7f0
Fixes test case
2026-03-04 10:26:21 -05:00
Vitor Pamplona
8501c86663
Further organizes Calendar events
2026-03-04 10:25:51 -05:00
Vitor Pamplona
d3bab2f8cb
Separate generics functions
2026-03-04 10:19:10 -05:00
Vitor Pamplona
b563ab44b0
Merge pull request #1762 from vitorpamplona/claude/nip52-calendar-compliance-yXoXR
...
Add NIP-52 Calendar event builders and tag helpers
2026-03-04 10:06:03 -05:00
Vitor Pamplona
ac936dc673
minor adjustment
2026-03-04 10:02:23 -05:00
Vitor Pamplona
470b1680d0
Moves electrum client to the jvmAndroid scope
2026-03-04 10:00:33 -05:00
Vitor Pamplona
193561c336
Migrates to LruCache
2026-03-04 09:32:31 -05:00
Vitor Pamplona
c10f7a0ef2
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-04 09:32:20 -05:00
Vitor Pamplona
9abd61e2de
Improves package layout for nip64 chess
2026-03-04 09:25:38 -05:00
Vitor Pamplona
46dcd105c8
Organizes Chess class and common tags
2026-03-04 09:19:39 -05:00
Vitor Pamplona
4060bef2be
Lint
2026-03-04 09:19:21 -05:00
KotlinGeekDev
ff7aa3df79
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-04 14:40:12 +01:00
David Kaspar
aab0785626
Merge pull request #1763 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-04 13:37:57 +00:00
Crowdin Bot
af589afa4d
New Crowdin translations by GitHub Action
2026-03-04 13:34:05 +00:00
Vitor Pamplona
01a45d3b65
Merge pull request #1761 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-04 08:30:46 -05:00
Vitor Pamplona
ad578b394d
Merge pull request #1759 from vitorpamplona/claude/refactor-nip64chess-structure-3iFIB
...
refactor: restructure nip64Chess to match nip88Polls pattern
2026-03-04 08:30:35 -05:00
Vitor Pamplona
0ebbd54498
Merge pull request #1734 from mstrofnone/feature/namecoin-nip05-resolution
...
feat: Namecoin NIP-05 identity verification via ElectrumX
2026-03-04 08:30:21 -05:00
Vitor Pamplona
e065cbc63b
Merge branch 'main' into feature/namecoin-nip05-resolution
2026-03-04 08:29:48 -05:00
Claude
c00295f6f2
feat: implement full NIP-52 calendar spec compliance
...
- CalendarDateSlotEvent (31922): Add title, summary, image, geohash,
hashtags, participants, references, multiple locations accessors and
build() method with DSL builder pattern
- CalendarTimeSlotEvent (31923): Fix timezone bug (startTzId/endTzId
were parsed as Long instead of String), add all accessors like
DateSlot, rename startTmz/endTmz to startTzId/endTzId, add build()
- CalendarRSVPEvent (31925): Remove incorrect location/start/end
accessors (not in spec), add status/freebusy/calendarEventAddress/
calendarEventId/calendarEventAuthor accessors, update from outdated
L/l label format to current status/fb tag format, add build()
- CalendarEvent (31924): Add title and calendarEventAddresses accessors,
add build() method
- Create NIP-52 tag classes: LocationTag, RSVPStatusTag (with enum),
FreeBusyTag (with enum)
- Create TagArrayBuilderExt.kt with DSL builder extensions for all
four calendar event types
https://claude.ai/code/session_01UMXgE3tNftmqNZqcYwF2kL
2026-03-04 13:29:04 +00:00
Crowdin Bot
a5fe5836e5
New Crowdin translations by GitHub Action
2026-03-04 13:28:27 +00:00
Vitor Pamplona
755df5e60e
Merge pull request #1760 from nrobi144/feat/desktop-deck-layout
...
feat(desktop): multi-column deck layout with single-pane toggle
2026-03-04 08:26:32 -05:00
KotlinGeekDev
4cea4e4f5d
Fix issues needing a fix caught by review.
2026-03-04 13:51:46 +01:00
KotlinGeekDev
7b6db9404c
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-04 13:21:27 +01:00
nrobi144
db530a6820
fix(desktop): audit fixes for deck layout
...
Critical:
- GlobalFeed now renders global feed (was identical to HomeFeed)
- DeckState uses atomic _columns.update{} instead of non-atomic .value=
- lastKnownWidth marked @Volatile for thread safety
Medium:
- save() debounced 500ms via coroutine (was sync disk I/O per drag frame)
- Width redistribution fills gaps after clamping on column remove
- Hashtag column pre-fills search query
- ColumnNavigationState.stack exposed as StateFlow not MutableStateFlow
- Settings column deduped (focuses existing instead of adding duplicate)
- Exceptions logged in save/load instead of silently swallowed
Low:
- Thread column icon fixed (was Home, now Article)
- Drag divider hit target widened to 12dp (visual stays 4dp)
- Horizontal scroll added for column overflow
- Auto-fit columns on first composition / window resize
- Column shortcuts limited to actual column count
- Deterministic default column IDs
- Overlay fallback shows message instead of blank
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 10:02:22 +02:00
nrobi144
73b8059b55
feat(desktop): collapsible info panel in chess deck column
...
Hide GameInfo/MoveHistory/Actions panel by default in deck view
with a chevron toggle to expand. Add Chess to AddColumnDialog.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 09:45:01 +02:00
nrobi144
991ac3b31b
merge: integrate upstream main with chess PR #1702
...
Resolves merge conflicts in Main.kt, adds Chess column type
to deck layout (DeckColumnType, ColumnHeader, DeckColumnContainer,
DeckState, SinglePaneLayout, View menu). Updates DesktopMessagesScreen
calls for new relayManager/localCache params.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-04 09:33:44 +02:00
David Kaspar
931ea33694
Merge pull request #1758 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-04 05:21:06 +00:00
KotlinGeekDev
b145a14ea3
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-03-04 02:02:12 +01:00
Claude
2df8a106d4
refactor: restructure nip64Chess to match nip88Polls pattern
...
Reorganize nip64Chess event classes into individual packages with
dedicated tag classes, TagArrayBuilderExt, and TagArrayExt files,
following the same structure used by nip88Polls.
New package structure:
- challenge/ - LiveChessGameChallengeEvent with PlayerColorTag, TimeControlTag
- accept/ - LiveChessGameAcceptEvent with ChallengeEventTag
- move/ - LiveChessMoveEvent with GameIdTag, MoveNumberTag, SanTag, FenTag
- end/ - LiveChessGameEndEvent with ResultTag, TerminationTag, WinnerTag
- draw/ - LiveChessDrawOfferEvent
- game/ - ChessGameEvent (Kind 64)
- jester/ - JesterEvent, JesterProtocol, JesterContent, JesterGameEvents
Each tag class follows the companion object pattern with isTag(),
parse(), and assemble() methods. Each event package includes
TagArrayBuilderExt for building and TagArrayExt for parsing.
https://claude.ai/code/session_01Qtzhka3p5N3Hbns4xrRbsv
2026-03-04 00:51:43 +00:00
Crowdin Bot
a37c6b5e6f
New Crowdin translations by GitHub Action
2026-03-04 00:32:36 +00:00
Vitor Pamplona
546d1e9e73
Protects against invalid URLs
2026-03-03 19:30:39 -05:00
KotlinGeekDev
a820082a6a
Fix linter issues.
2026-03-04 01:30:38 +01:00
Vitor Pamplona
5cf306683a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
update cz, pt, de, sv
New Crowdin translations by GitHub Action
update cz, pt, de, sv
New Crowdin translations by GitHub Action
2026-03-03 19:26:25 -05:00
Vitor Pamplona
96967b9e30
Clearing AccountViewModels more precisely
2026-03-03 19:17:15 -05:00
KotlinGeekDev
bbd17e4e64
Fix build issues.
2026-03-04 01:06:33 +01:00
KotlinGeekDev
a23850f002
Merge branch 'upstream-main' into kmp-completeness
2026-03-04 00:44:47 +01:00
KotlinGeekDev
68a262fa88
Merge branch 'main' of https://github.com/vitorpamplona/amethyst into upstream-main
...
# Conflicts:
# gradle/libs.versions.toml
# quartz/build.gradle.kts
# quartz/src/androidHostTest/kotlin/com/vitorpamplona/quartz/TestResourceLoader.android.kt
# quartz/src/iosMain/kotlin/com/vitorpamplona/quartz/utils/GZip.ios.kt
# quartz/src/iosTest/kotlin/com/vitorpamplona/quartz/TestResourceLoader.kt
2026-03-04 00:37:10 +01:00
KotlinGeekDev
aaf3be98b7
Foundations(iOS Sourceset): Update SpmForKmp. Fix UnicodeNormalizer code.
2026-03-04 00:27:00 +01:00
David Kaspar
ea8ed31ba4
Merge pull request #1756 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-03 22:43:07 +00:00
Crowdin Bot
b1504da012
New Crowdin translations by GitHub Action
2026-03-03 22:40:22 +00:00
David Kaspar
9b6d2e9c3a
Merge pull request #1755 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-03 22:39:09 +00:00
davotoula
8ad1cddb42
update cz, pt, de, sv
2026-03-03 22:36:06 +00:00
David Kaspar
c04d93fcea
Merge pull request #1754 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-03 22:24:51 +00:00
Crowdin Bot
8c8fdbc27c
New Crowdin translations by GitHub Action
2026-03-03 22:23:46 +00:00
David Kaspar
43133b70f4
Merge pull request #1753 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-03 22:22:21 +00:00
davotoula
382273647f
update cz, pt, de, sv
2026-03-03 22:18:20 +00:00
Vitor Pamplona
14e6f1bdb1
Merge pull request #1752 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-03 17:07:27 -05:00
Crowdin Bot
dc817abe2c
New Crowdin translations by GitHub Action
2026-03-03 21:44:54 +00:00
Vitor Pamplona
d8911ef69c
Account State is more than just a view model.
2026-03-03 16:42:45 -05:00
Vitor Pamplona
2e71401342
Deletes the default scope form App Modules
2026-03-03 15:17:01 -05:00
M
cb1031705b
Remove dead ElectrumX servers ulrichard.ch and nmc2.lelux.fi
...
ulrichard.ch:50006 — connects but never responds (timeout)
nmc2.lelux.fi:50006 — DNS resolution fails (ENOTFOUND)
2026-03-04 06:34:39 +11:00
M
c649f2163b
Add nmc2.bitcoins.sk and 46.229.238.187 as backup ElectrumX servers
...
Both verified to resolve Namecoin names via scripthash lookups.
Port 57002, TLS with self-signed certs.
2026-03-04 06:30:50 +11:00
Vitor Pamplona
a417eb46f7
Fixes the need to have tags and kinds for inbox.nostr.wine to work
2026-03-03 13:40:26 -05:00
Vitor Pamplona
264b988b41
Fixing sending inside this function
2026-03-03 13:37:55 -05:00
Vitor Pamplona
7b80ee8bf0
Fixes the need to specify route in the check if navigation is going to the same route or not
2026-03-03 12:29:17 -05:00
Vitor Pamplona
cdbee03e93
Fixes animation for settings pages
2026-03-03 12:10:57 -05:00
Vitor Pamplona
cd6cdf7add
Switch Surface use on KeyBackup to Scaffod
2026-03-03 12:10:45 -05:00
Vitor Pamplona
edb73b3556
Updates AGP
2026-03-03 11:52:03 -05:00
Vitor Pamplona
5d8452af06
lint
2026-03-03 10:54:44 -05:00
Vitor Pamplona
386afdbe8d
Merge pull request #1751 from vitorpamplona/claude/improve-zapcustomdialog-ui-2Fzic
...
Redesign Zap Custom Dialog with improved UI/UX
2026-03-03 10:54:05 -05:00
Vitor Pamplona
7695416ca0
Merge pull request #1750 from vitorpamplona/claude/convert-dialog-to-route-9lrlG
...
Convert UpdateZapAmountDialog to full-screen navigation route
2026-03-03 10:51:07 -05:00
Vitor Pamplona
583891a145
Merge branch 'main' into claude/convert-dialog-to-route-9lrlG
2026-03-03 10:51:00 -05:00
Vitor Pamplona
be0e53fa08
Merge pull request #1748 from vitorpamplona/claude/convert-backup-dialog-route-ngbkf
...
Convert AccountBackupDialog to full-screen navigation route
2026-03-03 10:48:20 -05:00
Vitor Pamplona
1fb4860d68
Merge pull request #1749 from vitorpamplona/claude/convert-dialog-to-route-7Co1n
...
Convert UpdateReactionTypeDialog to screen-based navigation
2026-03-03 10:48:05 -05:00
Claude
6f80232c32
feat: improve ZapCustomDialog UI with chips and cleaner layout
...
- Add dialog title "Send Zap" with close button in header
- Add preset amount SuggestionChips from user's saved zap amounts
- Replace TextSpinner dropdown with FilterChip row for zap type selection
- Make amount field full-width with "sats" suffix
- Move ZapButton to bottom as full-width call-to-action
- Add imePadding for keyboard avoidance
- Add RoundedCornerShape(16dp) to dialog Surface
- Add HorizontalDivider separating header from content
- Change message keyboard capitalization to Sentences
- Add send_zap string resource
https://claude.ai/code/session_017gXfNSaqGshRth2x5tdTKz
2026-03-03 15:46:19 +00:00
Claude
9910bd0dfa
feat: convert AccountBackupDialog to a navigation Route
...
Replaces the local dialog state in AllSettingsScreen with a proper
Route.AccountBackup, presented as a bottom-slide composable.
- Add `Route.AccountBackup` to Routes.kt (sealed class + getRouteWithArguments)
- Rename `AccountBackupDialog` → `AccountBackupScreen` accepting `INav` instead of `onClose`; remove Dialog wrapper
- Register `composableFromBottom<Route.AccountBackup>` in AppNavigation
- Update AllSettingsScreen to navigate to Route.AccountBackup instead of managing local dialog state
https://claude.ai/code/session_01KRRANB1b7wV7mpxEvpfjc7
2026-03-03 15:43:18 +00:00
Claude
fb066b3b6f
feat: convert UpdateReactionTypeDialog to a route
...
Replace the dialog-based UpdateReactionTypeDialog with a
navigation route (Route.UpdateReactionType) that slides up
from the bottom. UpdateReactionTypeScreen replaces the Dialog
wrapper with a plain Scaffold. Call sites in AllSettingsScreen
and ReactionsRow now navigate to the route instead of managing
local dialog state.
https://claude.ai/code/session_01TSjuYdBADTRXwT4w8Yx1vU
2026-03-03 15:42:51 +00:00
Claude
c3a0141a47
feat: convert UpdateZapAmountDialog to Route
...
- Add Route.UpdateZapAmount to Routes.kt with optional nip47 parameter
- Create UpdateZapAmountScreen.kt as a Scaffold-based screen using SavingTopBar
- Register composableFromBottomArgs<Route.UpdateZapAmount> in AppNavigation.kt
- Replace dialog state in AllSettingsScreen with nav.nav(Route.UpdateZapAmount())
- Replace dialog state in ReactionsRow with nav.nav(Route.UpdateZapAmount())
- Remove UpdateZapAmountDialog composables, keeping UpdateZapAmountContent and authenticate helpers
https://claude.ai/code/session_01N95sLM14khkJupTfvJcoKq
2026-03-03 15:42:27 +00:00
nrobi144
afe126f393
feat(desktop): add single-pane/deck toggle with smart column resizing
...
- Add LayoutMode enum (SINGLE_PANE/DECK) persisted in DesktopPreferences
- SinglePaneLayout: NavigationRail + single content area reusing deck routing
- View menu "Deck Layout" toggle with Cmd+Shift+D shortcut
- Column resize: redistribute width on add/remove, double-click header to expand
- Constrain drag resize to window bounds via BoxWithConstraints
- FlowRow headers in FeedScreen/ReadsScreen to wrap on narrow columns
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-03 17:38:32 +02:00
Vitor Pamplona
3c32dbc701
lint
2026-03-03 10:23:27 -05:00
Vitor Pamplona
2b80ab52b7
Merge pull request #1747 from vitorpamplona/claude/nip39-kind-10011-support-EACQk
...
Implement NIP-39 External Identities (kind 10011) event support
2026-03-03 10:01:52 -05:00
Claude
79b06d35b9
feat: add NIP-39 kind 10011 (ExternalIdentitiesEvent) support
...
- Add ExternalIdentitiesEvent (kind 10011) to quartz/nip39ExtIdentities
with createNew/updateFromPast factory methods and identityClaims()
- Generalize TagArrayBuilderExt to work with any Event type (not just
MetadataEvent) so claims/twitterClaim etc. work with both kinds
- Extract replaceClaims logic to List<IdentityClaimTag>.replaceClaims()
shared extension used by both MetadataEvent and ExternalIdentitiesEvent
- Register ExternalIdentitiesEvent in EventFactory (kind 10011)
- Add consume(ExternalIdentitiesEvent) to LocalCache and dispatch in
justConsumeInnerInner
- Add ExternalIdentitiesEvent.KIND to UserMetadataForKeyKinds relay filter
so kind 10011 is fetched alongside kind 0 when loading user profiles
- Add UserExternalIdentitiesViewModel that observes the kind 10011
AddressableNote for a user and exposes List<IdentityClaimTag> as a Flow
- Thread UserExternalIdentitiesViewModel through ProfileScreen →
RenderScreen → ProfileHeader → DrawAdditionalInfo
- DrawAdditionalInfo now shows kind 10011 identities, falling back to
kind 0 for backwards compatibility
- UserMetadataState: add sendNewUserIdentities() for kind 10011 and
remove identity claim params from sendNewUserMetadata() (kind 0)
- NewUserMetadataViewModel: load identities from kind 10011 first
(fallback to kind 0), save identities to kind 10011 separately
https://claude.ai/code/session_017iU6ZdRu5qRXPCeDztVeeV
2026-03-03 13:47:27 +00:00
Vitor Pamplona
a005ec5354
Merge pull request #1746 from davotoula/cleaner-code
...
Cleaner code
2026-03-03 06:46:34 -05:00
Vitor Pamplona
d2ddb9ded5
Merge pull request #1745 from davotoula/defensive-backup-rules
...
defensive backup rules
2026-03-03 06:45:28 -05:00
davotoula
169416b548
Remove unnecessary suspend modifier from sentToTop() and simplify getNoteIfExists call
2026-03-03 10:06:32 +00:00
davotoula
2d42556b03
Functions shouldn't be empty
2026-03-03 10:03:01 +00:00
davotoula
b1a1ccc145
Define a constants instead of duplicating String literals
2026-03-03 09:54:54 +00:00
davotoula
b3911fedd9
defensive backup rules
2026-03-03 09:42:43 +00:00
Vitor Pamplona
0370e51e57
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: add NIP-C0 code snippet support (kind:1337)
2026-03-02 19:27:27 -05:00
Vitor Pamplona
88f5843e08
A bit more of a refactoring
2026-03-02 19:25:49 -05:00
Vitor Pamplona
1c3e58303d
Merge pull request #1744 from vitorpamplona/claude/add-c0-protocol-support-GAos6
...
feat: add NIP-C0 code snippet support (kind:1337)
2026-03-02 19:17:53 -05:00
Claude
8c12d4d692
feat: add NIP-C0 code snippet support (kind:1337)
...
Adds full protocol support for NIP-C0 code snippet events following the
same structure used for NIP-88 polls.
Quartz (quartz/nipC0CodeSnippets/):
- CodeSnippetEvent (kind:1337) with accessors for all optional metadata
- TagArrayExt: parse language, extension, name, description, runtime,
license, deps (repeatable), and repo from tag arrays
- TagArrayBuilderExt: typed builder functions for CodeSnippetEvent
- Tag classes: LanguageTag (l), ExtensionTag, SnippetNameTag (name),
SnippetDescriptionTag (description), RuntimeTag, LicenseTag, DepTag,
RepoTag
EventFactory: register kind 1337 → CodeSnippetEvent
LocalCache: add consume(CodeSnippetEvent) and dispatch in when block
https://claude.ai/code/session_013ykLNfJNdwWpXh8ZhZaSXY
2026-03-02 23:48:43 +00:00
Vitor Pamplona
27d1a00196
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-03-02 18:35:34 -05:00
Vitor Pamplona
624cf26c29
Switches the public message API to use quoted posts on replies
2026-03-02 18:22:45 -05:00
Vitor Pamplona
934b1fd5ed
First chess refactoring
2026-03-02 18:14:08 -05:00
David Kaspar
fb6d582560
Merge pull request #1743 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-02 22:44:41 +00:00
Vitor Pamplona
df72a6e094
Fix floating action
2026-03-02 17:43:52 -05:00
Vitor Pamplona
d3343c2747
Fix wrong to string usage
2026-03-02 17:43:34 -05:00
Crowdin Bot
f72838139c
New Crowdin translations by GitHub Action
2026-03-02 22:35:03 +00:00
Vitor Pamplona
254ef7081b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: add NIP-66 relay monitor and discovery support to quartz
2026-03-02 17:32:37 -05:00
Vitor Pamplona
c5cbc1887f
Moves all event kind names to strings.xml
2026-03-02 17:29:42 -05:00
Vitor Pamplona
15c961670e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
always show playback speed and position/duration text in white regardless of theme
New Crowdin translations by GitHub Action
extract rememberSaveMediaAction to eliminate toast/permission duplication
restore download toast and permission check fix overflow button background to solid
Code review fixes: reduce duplicate code
Code review fixes: Skip-forward clamps against unknown duration Share dropdown is no longer anchored to the overflow button simplify: keep skip amount fixed at 10
Code review fixes: Redundant Box in SkipButton Unused string resources remember { fadeIn() } pattern
Code review fixes: skipSeconds duplication + stale duration read pointerInput(Unit) stale capture ShareMediaAction composed unconditionally Overflow menu background opaque in dark theme
simplify top buttons, move to overflow add skip buttons add gradient overlays and double-tap gesture support
add skip button component, overflow menu component, gradient overlay
2026-03-02 17:18:40 -05:00
Vitor Pamplona
85330f932c
Merge pull request #1742 from vitorpamplona/claude/add-nip66-support-GmCWu
...
feat: add NIP-66 relay monitor and discovery support to quartz
2026-03-02 17:17:33 -05:00
Vitor Pamplona
7ed0909169
Blocks the size of RelayAuthStatus arrays from growing forever with auth messages
2026-03-02 17:09:52 -05:00
Vitor Pamplona
c3de179124
Merge pull request #1714 from davotoula/media3-updated-player-controls
...
Media3 updated player controls
2026-03-02 17:08:05 -05:00
davotoula
c335d3acd4
always show playback speed and position/duration text in white regardless of theme
2026-03-02 21:35:32 +00:00
Claude
49e2f2c7c9
feat: add NIP-66 relay monitor and discovery support to quartz
...
Implements both event kinds from NIP-66 (Relay Monitor Protocol):
- Kind 10166 (RelayMonitorEvent) - replaceable event published by
monitoring services, declaring check frequency, timeout values, and
supported check types (open, read, write, auth, nip11, dns, geo)
- Kind 30166 (RelayDiscoveryEvent) - addressable event (keyed by relay
URL in d-tag) published per monitored relay, carrying RTT metrics,
network type, relay type, supported NIPs, accepted kinds, access
requirements, topics, and geohash
Package: nip66RelayMonitor/{monitor,discovery} following existing NIP-88
patterns with tag classes, TagArrayBuilderExt, and TagArrayExt. Both
events registered in EventFactory.
https://claude.ai/code/session_01Wtg56Vudthgfyz8ASTb4p7
2026-03-02 21:20:43 +00:00
Vitor Pamplona
399c9463bf
- Removing unnecessary feed definitions
...
- Adds favorite relays to the top filter
2026-03-02 16:16:23 -05:00
David Kaspar
858d06380e
Merge pull request #1741 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-02 21:09:46 +00:00
Crowdin Bot
db380cfe24
New Crowdin translations by GitHub Action
2026-03-02 20:58:37 +00:00
Vitor Pamplona
bb6f052f32
Remove unnecessary params for FeedDefinitions
2026-03-02 15:56:18 -05:00
Vitor Pamplona
333480c29b
Moves TopFilter markers from Strings to full objects.
2026-03-02 15:41:44 -05:00
Vitor Pamplona
7fabb6b554
Makes addresses serializable
2026-03-02 15:39:58 -05:00
Vitor Pamplona
88294de509
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
localize hardcoded Navigate string in UserSearchCard
add user avatar content descriptions in shared components
add content description to poll deadline date icon
correct pause button accessibility label
unrelated code cleanup
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
2026-03-02 15:39:44 -05:00
davotoula
3220b4a1a7
extract rememberSaveMediaAction to eliminate toast/permission duplication
2026-03-02 20:07:53 +00:00
davotoula
08f389230e
restore download toast and permission check
...
fix overflow button background to solid
2026-03-02 20:07:43 +00:00
M
69e95159e9
fix: check Namecoin name expiry before resolving
...
Query current block height via blockchain.headers.subscribe and reject
names that have expired (>= 36000 blocks since last update). Populate
expiresIn field in NameShowResult for downstream use.
Unconfirmed transactions (height <= 0) are treated as active.
2026-03-03 06:56:59 +11:00
M
3f39f96e81
fix: route ElectrumX through Tor proxy, add onion server
...
- ElectrumxClient accepts injected SocketFactory (lambda) so connections
respect the user's Tor/proxy settings instead of leaking their IP
through raw sockets
- Add ProxiedSocketFactory for SOCKS5 proxy routing
- Add .onion ElectrumX server as primary when Tor is enabled, with
electrumx.testls.space as clearnet fallback
- NamecoinNameResolver accepts serverListProvider lambda for dynamic
server selection based on current Tor settings
- RoleBasedHttpClientBuilder.socketFactoryForNip05() bridges Amethyst's
Tor settings to the socket factory
- NamecoinNameService now requires explicit init with proxy-aware client
- Remove dead code: Nip05NamecoinAdapter (never referenced),
NamecoinVerificationDisplay (never called)
- Update design documentation
2026-03-03 06:28:01 +11:00
David Kaspar
5984292ea5
Merge pull request #1740 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-02 18:03:49 +00:00
Crowdin Bot
408bc86e1d
New Crowdin translations by GitHub Action
2026-03-02 18:02:41 +00:00
David Kaspar
95353b5077
Merge pull request #1739 from davotoula/acessibility-issues
...
Fix minor accessibility issues
2026-03-02 17:59:17 +00:00
davotoula
49ea2a9a5a
localize hardcoded Navigate string in UserSearchCard
2026-03-02 16:57:12 +00:00
davotoula
daebea262a
add user avatar content descriptions in shared components
2026-03-02 16:56:28 +00:00
davotoula
937f30b48d
add content description to poll deadline date icon
2026-03-02 16:54:24 +00:00
davotoula
434a7dcf52
correct pause button accessibility label
2026-03-02 16:53:40 +00:00
davotoula
79e39e7e4f
unrelated code cleanup
2026-03-02 16:52:50 +00:00
David Kaspar
d87f62c330
Merge pull request #1738 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-02 16:28:55 +00:00
Crowdin Bot
7b5a7b8e0f
New Crowdin translations by GitHub Action
2026-03-02 16:27:51 +00:00
David Kaspar
f207bf14d7
Merge pull request #1737 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-03-02 16:26:19 +00:00
David Kaspar
381c3144b6
Merge branch 'main' into l10n_crowdin_translations
2026-03-02 16:26:10 +00:00
Vitor Pamplona
5b0f7b5a02
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
update cz, pt, de, sv
remove unused imports
remove unused imports
remove unused imports
2026-03-02 11:25:18 -05:00
Vitor Pamplona
e6000cd3e9
Fixes spacing for replying to text
2026-03-02 11:20:09 -05:00
Vitor Pamplona
379dfedf05
Fixes link colors
2026-03-02 11:19:59 -05:00
Crowdin Bot
35090fcdfb
New Crowdin translations by GitHub Action
2026-03-02 16:16:16 +00:00
Vitor Pamplona
f18b87db5d
Merge pull request #1736 from davotoula/update-translations
...
update cz, pt, de, sv
2026-03-02 11:12:23 -05:00
Vitor Pamplona
c9b8cb677b
Merge pull request #1735 from davotoula/remove-unused-imports
...
Remove unused imports
2026-03-02 11:12:09 -05:00
davotoula
0d513dd63e
update cz, pt, de, sv
2026-03-02 16:02:40 +00:00
davotoula
59309c2b1d
remove unused imports
2026-03-02 15:53:21 +00:00
davotoula
51ba076f26
remove unused imports
2026-03-02 15:52:03 +00:00
davotoula
8846dd7edb
remove unused imports
2026-03-02 15:47:30 +00:00
Vitor Pamplona
89579aa35e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: add RelayFeedScreen for browsing and following relay-specific feeds
2026-03-02 09:31:39 -05:00
Vitor Pamplona
6b1e6ef267
Fixing the "replying to" line appearing in every reply in the threadview
2026-03-02 09:29:11 -05:00
Vitor Pamplona
2c2102f6e6
refactoring
2026-03-02 08:47:28 -05:00
Vitor Pamplona
0072dd3481
Merge pull request #1733 from vitorpamplona/claude/add-relay-filter-screen-aXgh6
...
Add relay feed screen with filtering and follow/unfollow functionality
2026-03-02 08:34:08 -05:00
M
f6447d2020
feat: wire Namecoin search into SearchBarViewModel
...
Resolve .bit, d/, and id/ identifiers from the search bar via
ElectrumX blockchain lookups. Typing any Namecoin identifier format
(m@testls.bit , testls.bit, d/testls, id/alice) now queries the
Namecoin blockchain and shows the resolved user at the top of results.
The namecoinResolvedUser flow in SearchBarViewModel detects Namecoin
identifiers, resolves them through NamecoinNameService, and prepends
the result to the standard local cache search results.
Updated docs with search integration details and manual testing guide.
2026-03-02 19:43:24 +11:00
M
d82ace2f63
feat: Namecoin NIP-05 identity verification via ElectrumX
...
Add censorship-resistant NIP-05 verification using the Namecoin blockchain.
Users can set their nip05 field to a .bit domain (e.g. alice@example.bit )
or direct Namecoin name (d/example, id/alice) and Amethyst will resolve
the pubkey mapping via ElectrumX instead of HTTP.
Resolution uses the standard Electrum protocol (scripthash-based lookups):
- Build canonical name index script matching ElectrumX-NMC indexing
- Query blockchain.scripthash.get_history for the name's tx history
- Parse NAME_UPDATE script from the latest transaction output
- Extract Nostr pubkey from the name's JSON value
Supports both d/ (domain) and id/ (identity) Namecoin namespaces,
simple and extended NIP-05-like value formats with relay hints,
LRU caching with 1h TTL, and self-signed TLS certificates.
New files:
- quartz: ElectrumxClient, NamecoinNameResolver, NamecoinLookupCache
- amethyst: NamecoinNameService, Nip05NamecoinAdapter, NamecoinVerificationDisplay
- docs: namecoin-nip05-design.md
- tests: NamecoinNameResolverTest
Modified:
- Nip05Client: optional namecoinResolver routes .bit to blockchain
- AppModules: wire up resolver
See docs/namecoin-nip05-design.md for full architecture and protocol details.
2026-03-02 13:07:46 +11:00
Claude
3a9622fb1e
feat: add RelayFeedScreen for browsing and following relay-specific feeds
...
- Add RelayFeedScreen similar to HashtagScreen but filtered by relay URL
- Follow/Unfollow buttons add/remove the relay from Favorite Relay list
- New post FAB opens the standard note composer (Route.NewShortNote)
- Add RelayFeedFilter (DAL) to show notes seen from a specific relay
- Add SingleRelayFeedViewModel backed by RelayFeedFilter
- Add datasource layer: RelayFeedFilterAssembler, SubAssembler, and
FilterPostsByRelay for subscribing to relay-specific note streams
- Add Route.RelayFeed(url) and register in AppNavigation
- Add relayFeed to RelaySubscriptionsCoordinator
- Add FavoriteRelayListState.addRelay/removeRelay for single-relay ops
- Add Account.followFavoriteRelay/unfollowFavoriteRelay
- Add AccountViewModel.followFavoriteRelay/unfollowFavoriteRelay
- Add observeUserIsFollowingRelay composable observer
https://claude.ai/code/session_013gNQjBzeSSmesYow7HfAjW
2026-03-02 01:09:52 +00:00
Vitor Pamplona
050ef73530
adds support for NIP-51 favorite relay lists.
2026-03-01 19:50:07 -05:00
Vitor Pamplona
7fd163d6d4
- Adds reactions and zap settings to the settings screen
...
- Creates a better distinction between settings for the user and for the whole app.
2026-03-01 19:25:13 -05:00
Vitor Pamplona
69e061e4c4
Fixes Stability of the Update Reaction view model
2026-03-01 19:15:36 -05:00
Vitor Pamplona
7889e3a624
Minimizes subs by merging PayTo with the Metadata sub
2026-03-01 18:59:46 -05:00
Vitor Pamplona
4b82ec4022
Removes unecessary subId names
2026-03-01 17:02:12 -05:00
Vitor Pamplona
0cba056932
formatting
2026-03-01 16:50:17 -05:00
Vitor Pamplona
bb5e09fe8f
Fixes duplicated strings
2026-03-01 16:50:09 -05:00
Vitor Pamplona
7f3d01ce0e
Merge pull request #1731 from vitorpamplona/claude/move-strings-to-xml-qav0M
...
Externalize hardcoded strings to string resources
2026-03-01 16:42:27 -05:00
Claude
ba1d61d8d9
feat: move hardcoded UI strings to strings.xml
...
Replaces hardcoded string literals in composables with string resource
references for proper i18n support. Adds 20 new strings to strings.xml.
Files updated:
- NewUserMetadataScreen: "Social proof" section title
- NoteCompose: "Approve" community post button
- Badge: " and N others" badge awardees text
- Chess: "Decline"/"Accept" challenge buttons
- InteractiveStory: "Restart" story button
- Poll: "Submit" poll button
- ChessGameScreen: "Back", "Relay Settings", "Loading game...",
"Game Not Found", "This game may have ended...", "Game ID: ...",
"Go Back"
- ChessLobbyScreen: "Back", "Relay Settings", "New Game",
"Dismiss", "Connected"
- chess/NewChessGameButton: "New Chess Game" content description
- home/NewChessGameButton: "New Chess Game" content description
- UserSettingsScreen: "Remove <language>" content description
https://claude.ai/code/session_0151CDmy5k2pEWnxhRxet41h
2026-03-01 20:44:43 +00:00
Vitor Pamplona
16088be597
Correct zap colors
2026-03-01 14:40:47 -05:00
Vitor Pamplona
1a2940fba2
Fixes bug that was not recording these EOSEs
2026-03-01 14:40:25 -05:00
Vitor Pamplona
918108118a
Adding more event kind names to the relay settings
2026-03-01 14:26:08 -05:00
Vitor Pamplona
f8a0f17384
Making filter stable
2026-03-01 14:22:54 -05:00
Vitor Pamplona
fbdc8791cd
Fixes missing empty paragraphs
2026-03-01 12:59:29 -05:00
Vitor Pamplona
cd18fdf79a
Merge pull request #1728 from vitorpamplona/claude/add-relay-subscriptions-display-WHbsT
...
Add active subscriptions and outbox display to relay info screen
2026-03-01 12:48:25 -05:00
Vitor Pamplona
566bdb8a74
Merge pull request #1729 from vitorpamplona/claude/relay-search-suggestions-T1gpP
...
Add relay URL suggestions to relay input field
2026-03-01 12:47:04 -05:00
Vitor Pamplona
7212e9a879
Adds Relay Url to the Rich Text viewer
2026-03-01 12:45:47 -05:00
Vitor Pamplona
ca6af92411
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: add RelayUrlSegment for ws:// and wss:// relay URIs
fix: treat multibyte characters as URL terminators in RichTextParser
Simplify profile edit screen layout
feat: show "Replying to" label in quoted notes
fix: suppress parent thread in quoted notes
2026-03-01 11:48:46 -05:00
Vitor Pamplona
2ddcf41201
Merge pull request #1730 from vitorpamplona/claude/add-relay-uri-detection-vOdNR
...
Add RelayUrlSegment for WebSocket relay URL parsing
2026-03-01 11:48:09 -05:00
Claude
b472be3a1a
feat: add relay search suggestions to all Add a Relay fields
...
When the user types in any "Add a Relay" field in AllRelayListScreen,
the app now searches HintIndexer's relayDB for matching relay URLs
and displays them as clickable suggestions below the text field.
Clicking a suggestion fills the field with the relay URL, matching
the design pattern of ShowUserSuggestionList in ShortNotePostScreen.
New files:
- RelaySuggestionState: debounced Flow-based state filtering relayDB
- ShowRelaySuggestionList: Column of clickable RelayUrlLine rows
https://claude.ai/code/session_0115sYZGVQBZLX7s9oCDcKoi
2026-03-01 16:39:14 +00:00
Claude
304c348736
feat: add RelayUrlSegment for ws:// and wss:// relay URIs
...
Adds a new RelayUrlSegment type to RichTextParser that detects and
labels relay URIs (ws:// and wss:// schemes) as a distinct segment
type, separate from generic LinkSegments.
https://claude.ai/code/session_01U21sGdEEMLo4hY8dwxNzPr
2026-03-01 16:33:58 +00:00
Claude
ce56f49369
feat: add active relay subscriptions and outbox display to RelayInformationScreen
...
Adds a new section before Errors and Notices that shows live relay state:
- REQ subscriptions: each subscription card shows its ID and a visual
breakdown of all active filters using colored chips by kind category
(notes/social/DM/economic), author counts, tag values, and time bounds
- COUNT subscriptions: same display for count queries
- Pending outbox events: chip list of event IDs awaiting delivery
Filter chips use Material3 color roles to indicate kind categories:
primaryContainer for text events (note/repost/reaction), secondaryContainer
for social/list events, tertiaryContainer for DMs/gift wraps, and
errorContainer for economic events (zap requests/receipts/NWC).
https://claude.ai/code/session_012zzv2j63ibraPNrQx8fGeu
2026-03-01 16:32:41 +00:00
Vitor Pamplona
f5a7461fed
Adds an emoji name to the preview to see if we can replicate the alignment when loading the username dynamically
2026-03-01 11:02:14 -05:00
Vitor Pamplona
678a97d01b
Merge pull request #1727 from kojira/fix/multibyte-url-terminators
...
fix: treat multibyte characters as URL terminators in RichTextParser
2026-03-01 11:00:21 -05:00
kojira
fd28d354e7
fix: treat multibyte characters as URL terminators in RichTextParser
2026-03-01 23:54:12 +09:00
Vitor Pamplona
e7a9241833
Merge pull request #1724 from dmnyc/feat/quote-repost-reply-to-label
...
feat: show "Replying to" label in quoted notes
2026-02-28 20:39:37 -05:00
Vitor Pamplona
e7c5727f75
Merge pull request #1725 from dmnyc/feat/profile-edit-cleanup
...
Simplify profile edit screen layout
2026-02-28 20:37:39 -05:00
The Daniel
2b36858c12
Simplify profile edit screen layout
...
Reduce visual clutter by reordering fields, improving labels, and
collapsing rarely-used social proof fields into an expandable section.
- Rename "Name" field to "Username" with @ prefix
- Reorder: Lightning Address, Nostr Address (NIP-05), Website, Pronouns
- Remove deprecated LN URL (lud06) field
- Move social proof fields (Twitter, GitHub, Mastodon) into a
collapsible "Social proof" section (auto-expands if data exists)
- Clearer labels: "Lightning Address", "Nostr Address (NIP-05)"
2026-02-28 20:10:17 -05:00
The Daniel
eb3b7077fd
feat: show "Replying to" label in quoted notes
...
Follow-up to #1723 . When a quoted note is itself a reply, display a
compact "Replying to [username]" label above the content instead of
showing nothing. Uses the event's p-tags to resolve reply targets
directly, matching the Damus-style display.
2026-02-28 18:53:32 -05:00
Vitor Pamplona
5fc7bab885
Merge pull request #1723 from dmnyc/fix/quote-repost-without-parent-display
...
fix: Suppress parent thread in quoted notes
2026-02-28 17:52:56 -05:00
The Daniel
ace1401a27
fix: suppress parent thread in quoted notes
...
Adds unPackReply = false to both DisplayFullNote (nostr: bech links)
and DisplayNoteFromTag (tag references) so that quoted notes only
show the quoted post itself without its parent thread context.
2026-02-28 17:44:04 -05:00
Vitor Pamplona
3b0d7c7f09
Reverses claude new rendering scheme because we need to break into new paragraphs before coming to the rendering stage.
2026-02-28 16:34:53 -05:00
Vitor Pamplona
80921b8367
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
refactor: replace FlowRow-based RenderTextParagraph with single Text() composable
2026-02-28 15:41:59 -05:00
Vitor Pamplona
de3f790e0d
Merge pull request #1722 from vitorpamplona/claude/refactor-render-text-paragraph-yKHu8
...
Refactor RichTextViewer to use inline content instead of FlowRow
2026-02-28 15:38:47 -05:00
Claude
956ae21926
refactor: replace FlowRow-based RenderTextParagraph with single Text() composable
...
RenderTextParagraph previously assembled each word/segment as a separate
composable inside a FlowRow. It now outputs a single Text() composable
with a built AnnotatedString and an InlineTextContent map so images,
videos, and custom emojis are shown inline within the text flow:
- Images and videos (with preview): InlineTextContent with a fixed-size
media placeholder (300×200 sp) containing ZoomableContentView
- Custom emojis: InlineTextContent with emoji-sized placeholder per
image glyph via CustomEmoji.assembleAnnotatedList
- Hashtags: LinkAnnotation.Clickable span + optional InlineTextContent
icon for decorated hashtags (#bitcoin, #nostr, etc.)
- Clickable URLs, emails (mailto:), phones (tel:): LinkAnnotation.Url
spans with primary-colour styling
- Block-level widgets (URL previews, invoices, LNURL withdraw, Cashu,
secret emojis, Nostr note/profile references): InlineTextContent with
a 300×300 sp block placeholder
- User/event tag references without quote preview: InlineTextContent
with a narrow text-height reference placeholder (150 sp × emojiSize)
The spaceWidth / measureSpaceWidth plumbing is removed from
RenderTextParagraph and its callers (RenderRegular callback no longer
receives Dp). measureSpaceWidth is kept because Highlight.kt still uses
it for its own FlowRow layout.
RenderWordWithPreview, RenderWordWithoutPreview, the private
ZoomableContentView string-URL wrapper, RenderCustomEmoji, and
NoProtocolUrlRenderer are all inlined into RenderTextParagraph and
removed. HashtagIcon.kt @Preview is updated to the new API.
https://claude.ai/code/session_01TtfLvFoR5Qpr2bHBWr5z3f
2026-02-28 20:29:14 +00:00
Vitor Pamplona
8f73a37a53
Fixes wrapping a non-observable value
2026-02-28 12:29:33 -05:00
Vitor Pamplona
e58cbc9c8a
Modifier.weight(1f) is stateless. It doesn't need to be keyed on noteEvent
2026-02-28 12:28:23 -05:00
Vitor Pamplona
21ff7c8502
avoids recreating modifiers
2026-02-28 12:21:46 -05:00
Vitor Pamplona
a5edef2db8
No need to recreate the modifier on background changes
2026-02-28 12:20:47 -05:00
Vitor Pamplona
1bff239183
Fixes need for suspending function on uploading
2026-02-28 11:43:31 -05:00
Vitor Pamplona
30ffeaed34
Merge pull request #1720 from vitorpamplona/claude/add-profile-upload-button-RzGz4
...
feat: add profile picture upload button when user has no picture
2026-02-28 10:53:48 -05:00
Vitor Pamplona
f08297c36c
Merge pull request #1718 from vitorpamplona/claude/review-amethyst-issues-VFf0H
...
fix: render audio MIME types in imeta tags as playable media
2026-02-28 10:52:05 -05:00
Claude
11e86b5805
feat: add profile picture upload button when user has no picture
...
When a user visits their own profile and has no profile picture set,
show a semi-transparent upload button overlay directly on the profile
picture area. Tapping it opens the gallery picker, uploads the image
to the configured server (NIP-96 or Blossom), and immediately saves
the metadata — without requiring the user to navigate to the edit screen.
- Add uploadPictureAndSave() to NewUserMetadataViewModel: loads current
metadata, uploads the image, then saves all metadata with the new picture
- Add ProfilePictureWithUploadOverlay composable that wraps ZoomableUserPicture
and conditionally shows the upload overlay when isMe && no picture
- Add ProfilePictureUploadButton composable for the overlay UI with
loading state support
- Use ProfilePictureWithUploadOverlay in ProfileHeader instead of
ZoomableUserPicture directly
https://claude.ai/code/session_01XemJ8Hx9q4mMd1StZNY9CE
2026-02-28 02:06:43 +00:00
Claude
1efcaefe94
fix: render audio MIME types in imeta tags as playable media
...
Audio URLs with `audio/*` MIME types in NIP-92 imeta tags were silently
dropped (createMediaContent returned null) because only `image/` and
`video/` prefixes were checked. They now map to MediaUrlVideo, which
Media3/ExoPlayer already handles correctly for audio playback.
Also adds common audio extensions (ogg, wav, flac, aac, opus, m4a) to
the extension-based fallback so audio files without imeta tags are also
detected.
Fixes https://github.com/vitorpamplona/amethyst/issues/1701
https://claude.ai/code/session_01YSi64eXRokSy2GzYHoNFES
2026-02-28 00:34:32 +00:00
Vitor Pamplona
3762c8d6c3
Fixes the activity cast
2026-02-27 08:54:30 -05:00
Vitor Pamplona
9675f59040
Fixes lack of import and new kotlin rules
2026-02-27 08:53:49 -05:00
Vitor Pamplona
972c1ac71d
Merge pull request #1717 from vitorpamplona/claude/ios-gzip-compression-iHfKC
...
Implement GZip compression/decompression for iOS using zlib
2026-02-27 07:55:37 -05:00
Claude
b8cda402cb
test(quartz/utils): add GZipTest to commonTest
...
Covers the full expect/actual contract across all platforms (Android,
JVM, iOS):
- round-trip for empty, single-char, simple, unicode, and JSON strings
- repetitive input compresses to a smaller size
- gzip magic number (0x1F 0x8B) present in compressed output
- compressed bytes differ from raw input bytes
- decompress of invalid data throws an exception
- special/control characters survive a round-trip
https://claude.ai/code/session_0125CGfu6aMAnSv6ZzAxFHvV
2026-02-27 01:57:10 +00:00
Claude
5cd05ab008
feat(quartz/ios): implement GZip compress/decompress for iOS
...
Uses platform.zlib (built-in on all Apple targets) via Kotlin/Native
cinterop to provide the actual GZip implementation:
- compress: deflateInit2 with windowBits=31 (MAX_WBITS+16) for gzip
format; deflateBound gives a tight upper-bound so a single Z_FINISH
call is always enough – no output loop required.
- decompress: inflateInit2 with windowBits=47 (MAX_WBITS+32) for
automatic gzip/zlib format detection; output is collected in
fixed-size chunks to handle arbitrary decompressed sizes.
https://claude.ai/code/session_0125CGfu6aMAnSv6ZzAxFHvV
2026-02-27 01:18:47 +00:00
Vitor Pamplona
c2868d4100
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
feat: consolidate drawer settings into a single Settings hub screen
New Crowdin translations by GitHub Action
2026-02-26 20:11:11 -05:00
Vitor Pamplona
027d932b63
Merge pull request #1716 from vitorpamplona/claude/consolidate-drawer-settings-CBYo3
...
Consolidate settings screens into unified AllSettingsScreen
2026-02-26 20:08:25 -05:00
Claude
e5eb21168b
feat: consolidate drawer settings into a single Settings hub screen
...
Replace six individual drawer items (Relays, Media Servers, Security
Filters, Privacy Options, App Preferences, User Preferences) with a
single "Settings" entry that navigates to a new AllSettingsScreen hub.
The hub lists all six options as clickable rows, each navigating to
their existing screens unchanged.
https://claude.ai/code/session_017Z9x4PNJuMtMQgfYSxTVSU
2026-02-27 01:06:02 +00:00
Vitor Pamplona
fe8dd3fb51
Fixing incorrect cast
2026-02-26 20:05:30 -05:00
Vitor Pamplona
18270f8020
Adds a reqUntilEoseAsFlow extension to the Nostr Client
2026-02-26 19:56:39 -05:00
Vitor Pamplona
1b4044814f
Merge pull request #1715 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-26 19:49:09 -05:00
Vitor Pamplona
0e659b5b07
Fixes instruction to use event database
2026-02-26 19:42:45 -05:00
Vitor Pamplona
abf977b791
Removes common tags
2026-02-26 19:39:53 -05:00
Crowdin Bot
6197cc6a7a
New Crowdin translations by GitHub Action
2026-02-27 00:39:49 +00:00
Vitor Pamplona
23c3edbec8
docs: add quartz-integration skill for using Quartz in external KMP projects
...
Adds a comprehensive Claude skill covering Gradle setup, key management,
event creation/signing, relay client, subscriptions, NIP builders, and
platform-specific notes. Also updates the legacy quartz-kmp.md to redirect
to the new skill.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-26 19:37:44 -05:00
Vitor Pamplona
5b156c4530
Basic (ugly) rendering of Zap events when quoted inside of posts.
2026-02-26 19:26:33 -05:00
davotoula
87bf52b59e
Code review fixes:
...
reduce duplicate code
2026-02-26 18:22:52 +00:00
davotoula
3822197830
Code review fixes:
...
Skip-forward clamps against unknown duration
Share dropdown is no longer anchored to the overflow button
simplify: keep skip amount fixed at 10
2026-02-26 18:22:28 +00:00
davotoula
ce76f8fb27
Code review fixes:
...
Redundant Box in SkipButton
Unused string resources
remember { fadeIn() } pattern
2026-02-26 18:22:11 +00:00
davotoula
ebbc7b5526
Code review fixes:
...
skipSeconds duplication + stale duration read
pointerInput(Unit) stale capture
ShareMediaAction composed unconditionally
Overflow menu background opaque in dark theme
2026-02-26 18:21:43 +00:00
davotoula
3e9475087e
simplify top buttons, move to overflow
...
add skip buttons
add gradient overlays and double-tap gesture support
2026-02-26 18:17:13 +00:00
davotoula
eb57811654
add skip button component, overflow menu component, gradient overlay
2026-02-26 18:13:34 +00:00
Vitor Pamplona
591c32ceb3
Solving some more stability issues
2026-02-25 16:53:50 -05:00
Vitor Pamplona
105dfa21fb
Resolving some stability issues
2026-02-25 16:45:03 -05:00
Vitor Pamplona
b523505c05
fixes spotless check
2026-02-24 18:00:04 -05:00
Vitor Pamplona
89cf71d555
Merge pull request #1710 from nrobi144/feat/desktop-private-dms
...
feat(desktop): encrypted private DMs (NIP-04/NIP-17)
2026-02-24 17:50:55 -05:00
Vitor Pamplona
b1fd450c91
Merge branch 'main' into feat/desktop-private-dms
2026-02-24 17:50:48 -05:00
Vitor Pamplona
f0d62a8ea2
Merge pull request #1713 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-24 17:40:36 -05:00
Crowdin Bot
80ca7d05ea
New Crowdin translations by GitHub Action
2026-02-24 22:31:46 +00:00
Vitor Pamplona
f2410a6921
- Turn video controller creation into a flow, removing most of the little hacks to get the controller to work in the lifecycle
...
- Uses new Media3 content view frames
- Redesigns video playback interface to remove unused buttons and modernize it.
- Adds our own buttons and indicators for the video playback
- Checks if PiP is supported and active before showing the button.
- Improves click interactions with the image dialog
- Fixes Surface release bugs
- Creates new interface for the Picture in Picture view
- Fixes muting and play buttons on the Picture in Picture
2026-02-24 17:28:41 -05:00
Vitor Pamplona
3942a38f0e
Fixes missing Video Decoder for the Gallery
2026-02-24 17:22:18 -05:00
Vitor Pamplona
6c63ef60f3
Adds a filter for multiple addressable kinds but one key
2026-02-24 17:21:57 -05:00
Vitor Pamplona
4e39df2707
Initializes the disk cache on an io thread after 3 seconds.
2026-02-24 17:21:37 -05:00
Vitor Pamplona
4c81ef19df
Fixes build.gradle to add dependencies for the Gallery
2026-02-24 17:02:03 -05:00
Vitor Pamplona
bdc708e658
Fixes stability of the feedstate
2026-02-24 17:01:25 -05:00
Vitor Pamplona
5e2a4b2cef
- Migrates Gallery to not play videos and simply display a tumbnail when it is a video
...
- Fixes incorrect aspect ratios of the AutoNonLazyGrid when multiple images exist for a single entry
- Adds Play buttons when the image fails to load so that people click and the post appears.
2026-02-23 19:28:53 -05:00
Vitor Pamplona
6c12476902
Fixes bug when showing multiple versions of replaceable videos in the gallery.
2026-02-23 19:21:58 -05:00
KotlinGeekDev
3817fb04f0
Merge remote-tracking branch 'origin/kmp-completeness' into kmp-completeness
2026-02-23 20:46:09 +01:00
KotlinGeekDev
d48dfce3a5
Foundations(iOS Sourceset): Provide implementation for DigestInstance. Make note about KECCAK256(not supported, until other solution is found).
2026-02-23 19:44:55 +01:00
KotlinGeekDev
fd1b1ae635
Foundations(iOS Sourceset): Duplicate Nip-04 tests for iOS, in order to test the AESCBC implementation used underneath.
2026-02-23 18:05:20 +01:00
KotlinGeekDev
265fef0a93
Foundations(iOS Sourceset): Provide implementation for AESGCM. Duplicate AESGCM tests for iOS. Move dependency to 'cryptography-optimal' make use of all iOS crypto providers.
2026-02-23 17:57:54 +01:00
nrobi144
e7239980c6
feat(desktop): add multi-column deck layout replacing NavigationRail
...
Replace the 80dp NavigationRail + single content area with a TweetDeck-style
multi-column deck. Default layout: Home Feed + Notifications + Messages.
New deck system:
- DeckColumnType sealed class with 12 column types
- DeckState with StateFlow-based column management
- Per-column navigation stack for in-column drill-down
- Draggable dividers for column resize (300-800dp)
- Column config persisted via Jackson JSON in DesktopPreferences
- 48dp thin sidebar with add-column and settings buttons
- AddColumnDialog for picking column types
Keyboard shortcuts:
- Cmd+T: Add column
- Cmd+W: Close focused column
- Cmd+1-9: Focus column by index
- Cmd+Shift+Left/Right: Move column left/right
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 11:53:31 +02:00
nrobi144
78aa7962e9
feat(desktop): add DM broadcast status banner and audit fixes
...
- Show relay confirmation URLs in broadcast banner
- Add relayUrls field to DmBroadcastStatus.Sent
- Wire send progress tracking with per-relay confirmations
- Fix empty chatroom Loading state transition
- Improve NewDmDialog npub metadata resolution
- Harden sendAndWaitForResponse timeout handling
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-23 06:53:53 +02:00
nrobi144
35a15f0462
feat(desktop): add DM broadcast banner and fix empty room loading
...
- Fix ListChangeFeedViewModel stuck on Loading for empty chatrooms by
adding invalidateData() call in init block
- Add DmBroadcastStatus sealed class and DmBroadcastBanner composable
in commons for relay send progress display
- Add DmSendTracker using sendAndWaitForResponse for confirmed delivery
- Wire send tracking through DesktopIAccount into ChatPane banner
- Fix audit risks: unsubscribe DMs on account change, wait for relay
connect before subscribing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 12:20:04 +02:00
nrobi144
5d983c5d27
fix(desktop): wire gift wrap broadcast for DM reactions
...
The sendWrappedReaction function was creating NIP-17 gift wraps via
NIP17Factory but never broadcasting them. Added sendGiftWraps() to
IAccount interface with implementations in both Desktop and Android.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 09:34:33 +02:00
nrobi144
3f5ad8f7be
feat(desktop): wire NIP-17 emoji reactions in DM chat
...
Replace TODO stub with sendWrappedReaction using NIP17Factory.
createReactionWithinGroup creates gift-wrapped reactions for group privacy.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 07:34:53 +02:00
nrobi144
9a30b935d2
feat(desktop): wire DM sending, subscriptions, and new DM dialog
...
- DesktopIAccount: sign + broadcast NIP-04/NIP-17 messages via relay layer
- Main.kt: activate DM subscriptions on login, consume events into cache
- NewDmDialog: user search dialog with SearchBarState + UserSearchCard
- DesktopMessagesScreen: wire Cmd+Shift+N and "+" button to NewDmDialog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 07:33:04 +02:00
Vitor Pamplona
2f1eeea77b
Merge pull request #1708 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-18 15:00:31 -05:00
Crowdin Bot
bae16f0b52
New Crowdin translations by GitHub Action
2026-02-18 19:58:57 +00:00
Vitor Pamplona
fc502d81d4
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
update cz, pt, de, sv
2026-02-18 14:56:21 -05:00
Vitor Pamplona
bcd2bc066b
- Removes nip96 and updates Blossom recommendations
2026-02-18 14:56:07 -05:00
Vitor Pamplona
9000a11377
Merge pull request #1707 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-18 13:08:20 -05:00
Crowdin Bot
b1dad24393
New Crowdin translations by GitHub Action
2026-02-18 18:05:59 +00:00
David Kaspar
69a7ceef6c
Merge pull request #1706 from davotoula/update-translations
...
update cz, pt, de, sv
2026-02-18 18:03:38 +00:00
Vitor Pamplona
086e2046db
Fixes test file loader for iOS
2026-02-18 12:34:55 -05:00
Vitor Pamplona
ee7d20e939
Minor adjustment in class names
2026-02-18 12:25:48 -05:00
Vitor Pamplona
64c8c0edfd
Improves the name of the NIP01 Crypto object
2026-02-18 11:29:56 -05:00
Vitor Pamplona
907ff6e844
Moves deterministic signer to the test package since it's only used there.
2026-02-18 11:24:33 -05:00
Vitor Pamplona
cf7b4ed4e3
Fixes warning in chess test cases
2026-02-18 10:49:59 -05:00
Vitor Pamplona
ab6560d47d
Fixes Chess's need for clone functions that are not available on iOS
2026-02-18 10:46:06 -05:00
Vitor Pamplona
2c3ca7f906
- Finishes the transition to EventHint objects for building events.
...
- Removes the "a-tag" dependency on Addressable interface because the `a` can have different names in different objects.
2026-02-18 10:45:50 -05:00
davotoula
2af1dfbcf4
update cz, pt, de, sv
2026-02-18 11:36:20 +00:00
nrobi144
5d81da2486
feat(desktop): add encrypted DMs with split-pane layout (NIP-04/NIP-17)
...
Full desktop DM implementation with shared components extracted to commons:
- Relay layer: DM relay state, filter construction, subscription coordinator
- Shared: ChatroomFeedFilter, ChatroomFeedViewModel, ChatNewMessageState
- Shared UI: ChatBubbleLayout, ChatMessageCompose, ChatroomHeader, ChatTheme
- Desktop: split-pane (conversation list + chat), keyboard shortcuts, hover reactions
- IAccount extended with signer, sendNip04/17, chatroomList, isAcceptable
Refs: vitorpamplona/amethyst#1704
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-18 13:19:46 +02:00
Vitor Pamplona
46b17628ac
Adds ditto as search relay
2026-02-17 19:30:04 -05:00
Vitor Pamplona
7bd4698073
Updates Tor
2026-02-17 19:28:53 -05:00
Vitor Pamplona
fa4180e4ac
Updates readme with the current list of supported NIPs
2026-02-17 19:19:29 -05:00
Vitor Pamplona
c755908db5
Removes string-concat compiler argument since it is not supported anymore
2026-02-17 19:02:53 -05:00
Vitor Pamplona
862ce9e2c2
Move to AGP 9.0.1
2026-02-17 19:01:25 -05:00
Vitor Pamplona
cf7bdef028
Adds missing actual implementations on iOS
2026-02-17 19:00:24 -05:00
Vitor Pamplona
c4e3d99392
moves chess lib to version catalog
2026-02-17 18:45:35 -05:00
Vitor Pamplona
bb3937edb4
Makes 24h the default end time for polls
2026-02-17 18:41:25 -05:00
Vitor Pamplona
a6ff66b8ae
Rounds time formatting
2026-02-17 18:39:17 -05:00
Vitor Pamplona
d6c9462b46
Removing unnecessary class.
2026-02-17 17:09:45 -05:00
Vitor Pamplona
277a311fdc
In Compose, a UI element with a height of 0 generally cannot receive pointer events (clicks), even if it visually scales back up later via the graphicsLayer. This commit blocks the progress from going to zero
2026-02-17 16:50:43 -05:00
Vitor Pamplona
46bc0dd750
Fixes poll rendering with images are included in the options
2026-02-17 16:40:46 -05:00
Vitor Pamplona
713e91185b
Merge pull request #1702 from nrobi144/feat/chess-pgn-display-878
...
chess: live chess game implementation with Jester protocol
2026-02-17 16:12:26 -05:00
Vitor Pamplona
b16fd2c4d1
Merge pull request #1705 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-17 16:05:45 -05:00
Crowdin Bot
24e4b86065
New Crowdin translations by GitHub Action
2026-02-17 21:04:02 +00:00
Vitor Pamplona
f665bec63d
adds basic support for NIP85 Polls
2026-02-17 16:00:54 -05:00
KotlinGeekDev
460be8cbf3
Foundations(iOS Sourceset): Provide implementation for AESCBC.
2026-02-17 01:03:19 +01:00
KotlinGeekDev
2d2ddda2c5
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-02-13 04:20:01 +01:00
Vitor Pamplona
893a318fbd
Correctly refreshes the Live bubbles when switching top filters.
2026-02-12 16:20:03 -05:00
Vitor Pamplona
e84e748959
updating libraries
2026-02-12 15:13:07 -05:00
KotlinGeekDev
bb5d785cb3
Enable running tests with resources for the androidHostTest sourceset, specifically HintIndexerTest. Replace non-null assertion with exception throw, to precisely identify test resource errors.
2026-02-12 15:02:02 +01:00
KotlinGeekDev
68c7f5e884
Linter fixes, plus a lint suppression for Buffer.kt.
2026-02-12 14:28:59 +01:00
Vitor Pamplona
e0db24e9d7
Fixes the blinking and multi-broadcasting issues of the track broadcast snackbar
2026-02-11 17:43:55 -05:00
KotlinGeekDev
9caba9dcd4
Merge upstream changes.
2026-02-11 14:26:36 +01:00
KotlinGeekDev
3f9614dd8f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst into upstream-main
...
# Conflicts:
# gradle/libs.versions.toml
2026-02-11 13:57:01 +01:00
nrobi144
5f15f0c3b1
fix: address Copilot review comments
...
- ChessPosition: include all fields in equals/hashCode
- AcceptedGamesRegistry: add thread safety with synchronized
- ChessEventBroadcaster: use valid filter for connection trigger
- ChessEventBroadcaster: fix misleading relayResults
- Remove println debug logging from ChessSubscription/Broadcaster
- UserProfileScreen: use proper JSON parsing via MetadataEvent
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 16:39:24 +02:00
nrobi144
8d098cf86d
feat(chess): focused polling, promotion fix, and game end celebration
...
- Add focused game mode to ChessPollingDelegate: when viewing a game,
only that game is polled instead of all active games
- Fix pawn promotion by parsing promotion suffix in publishMove
(e.g., "e8q" -> "e8" + QUEEN)
- Add game end overlay with victory/defeat/draw celebration
- Remove all debug println statements for production readiness
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:14:34 +02:00
nrobi144
3c89c442bc
feat(chess): add slim ViewModels and shared broadcast banner (Steps 7-10)
...
Step 7: ChessViewModelNew.kt - Slim Android ViewModel (~130 lines)
- Delegates all business logic to ChessLobbyLogic
- Exposes StateFlows from logic.state
- Platform adapter creation only
Step 8: DesktopChessViewModelNew.kt - Slim Desktop ViewModel (~120 lines)
- Same pattern as Android, delegates to ChessLobbyLogic
- UserMetadataCache for profile display
- External CoroutineScope injection
Step 9: ChessBroadcastBanner.kt - Shared Compose banner in commons
- Uses ChessBroadcastStatus from ChessLobbyState
- Works on both Android and Desktop via Compose Multiplatform
- Shows broadcasting progress, sync status, errors
Step 10: UI consumers ready for migration
- New ViewModels use ChessChallenge (enriched display data)
- Shared banner ready to replace Android-only ChessStatusBanner
- Existing screens continue to work with old ViewModel
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:14:34 +02:00
nrobi144
42b33ca04c
feat(chess): add platform adapters and enhance lobby state (steps 5-6)
...
- Add ChessLobbyState with completedGames, replaceGameState(), moveToCompleted()
- Add challengerAvatarUrl to ChessChallenge
- Add CompletedGame data class for game history
Platform Adapters:
- AndroidChessAdapter: AndroidChessPublisher, AndroidRelayFetcher, AndroidMetadataProvider
- DesktopChessAdapter: DesktopChessPublisher, DesktopRelayFetcher, DesktopMetadataProvider
Shared Infrastructure:
- ChessRelayFetchHelper for one-shot relay queries
- IUserMetadataProvider interface for platform-specific metadata
- ChessFilterBuilder with simple filter methods for fetchers
- ChessSubscriptionController interface for subscription management
Fix ChessSubscription.kt to remove broken dataSources().chess reference
(subscriptions now managed by ChessLobbyLogic)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:14:34 +02:00
nrobi144
e0d0e33408
refactor impl
2026-02-10 12:14:05 +02:00
nrobi144
c2f035acc0
docs: update chess implementation status
...
- Mark ChessViewModel, navigation, relay subscriptions as complete
- Update file structure to reflect KMP commons migration
- Update checklist with completed items
- Revise next steps to focus on FAB and badge display
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:10:39 +02:00
nrobi144
de2ebb2f7b
feat(chess): add relay subscriptions for live game events
...
- Subscribe to LocalCache.live.newEventBundles for chess events
- Handle incoming opponent moves (LiveChessMoveEvent)
- Handle game acceptance (LiveChessGameAcceptEvent)
- Handle game endings (LiveChessGameEndEvent)
- Track new challenges directed at user (LiveChessGameChallengeEvent)
- Auto-update badge count on relevant events
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:10:38 +02:00
nrobi144
4a02c12acd
feat(chess): implement ChessViewModel with event publishing
...
- Add state management for active games, challenges, badges
- Implement createChallenge for new games
- Add acceptChallenge for joining games
- Add publishMove with both simple (from/to) and full (ChessMoveEvent) APIs
- Add resign and offerDraw for game termination
- Wire up to existing ChessGameScreen and Chess.kt UI
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:10:38 +02:00
nrobi144
607cdf0c17
refactor(commons): migrate chess UI to KMP commonMain
...
- Move chess UI components from src/main/java to src/commonMain/kotlin
- Add consume functions for chess events in LocalCache
- Resolve merge conflicts with main branch KMP migration
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-10 12:10:38 +02:00
nrobi144
63fc5e86f6
fixes
2026-02-10 12:10:38 +02:00
nrobi144
06accf5831
full chess implementation
2026-02-10 11:58:00 +02:00
nrobi144
18c8156ab2
integrate chess events
2026-02-10 11:56:43 +02:00
nrobi144
19c36c2979
initial nip64 implementation
2026-02-10 11:54:36 +02:00
Vitor Pamplona
a70101f5e5
cleans up broadcasting tracker
2026-02-09 20:28:35 -05:00
KotlinGeekDev
295f980584
Merge remote-tracking branch 'origin/kmp-completeness' into kmp-completeness
2026-02-10 00:23:37 +01:00
Vitor Pamplona
89b058fff3
Adds yabu and nostr1 profile relays
2026-02-09 17:54:04 -05:00
Vitor Pamplona
97251b345a
Correcting relay url
2026-02-09 17:41:27 -05:00
Vitor Pamplona
9d32c314d1
Switching nostr.band to antiprimal on app defaults.
2026-02-09 16:27:19 -05:00
Vitor Pamplona
bc9adc8352
Breaks the search filter down into two subscriptions to prioritize Metadata without punishing content.
2026-02-09 16:12:11 -05:00
KotlinGeekDev
dcb10b249a
Foundations(iOS Sourceset): Provide implementation for MacInstance(using external library). Bring some tests into commonTest to make sure it works.
2026-02-09 21:57:54 +01:00
KotlinGeekDev
aa4d586025
Linter fixes for GZip.ios.kt
2026-02-09 20:42:18 +01:00
KotlinGeekDev
656af17b1c
Implement fix for URLs with absolute paths.
2026-02-09 20:41:18 +01:00
Vitor Pamplona
ae84a64b71
Fixes reformatting bug
2026-02-09 14:09:07 -05:00
Vitor Pamplona
eb66182211
- Updates several libraries
...
- Reformats code to the newest Klint
- Fixes isEmpty bug on Filters
2026-02-09 14:06:07 -05:00
Vitor Pamplona
710f15f790
- Fixes copyright using KDoc patterns instead of simpler comments
...
- Moves spotless and git-hooks to hidden folders
2026-02-09 13:06:41 -05:00
Vitor Pamplona
6125394354
Migrates to AGP 9
2026-02-08 16:33:39 -05:00
Vitor Pamplona
f8a232385d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-02-08 12:05:02 -05:00
Vitor Pamplona
9d8c1f3ffe
Avoid dependency of AccountSettings for NwcSignerState
2026-02-08 12:04:51 -05:00
Vitor Pamplona
c319b25077
Merge pull request #1700 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-08 11:52:00 -05:00
Crowdin Bot
234ca70c4e
New Crowdin translations by GitHub Action
2026-02-08 16:43:29 +00:00
Vitor Pamplona
913b694f78
Clean up on unnecessary methods on Note
2026-02-08 11:35:26 -05:00
Vitor Pamplona
aa4cfdc237
Small refactoring
2026-02-07 18:54:48 -05:00
Vitor Pamplona
393d3b33f1
deletes old test
2026-02-07 18:52:17 -05:00
Vitor Pamplona
f37ab8e656
Moves to LruCache from androidx
2026-02-07 18:25:23 -05:00
Vitor Pamplona
2e64d36f39
Moves Blossom server list to use the ICacheProvider
2026-02-07 18:23:42 -05:00
Vitor Pamplona
571fb6af4b
Moves the new observables to commons
2026-02-07 18:20:50 -05:00
Vitor Pamplona
7813d20f8e
Increases the limit of Zap downloads for profiles to 1000
2026-02-07 18:20:23 -05:00
Vitor Pamplona
838fb3ed7e
Groups zaps in profile by user
...
Moves author's zap cache to the Profile viewmodel
Redesigns composables to match.
Updates Notifications to not use the old zap cache.
2026-02-07 17:52:26 -05:00
Vitor Pamplona
452d549e43
Fixes the fact that SortedSets can have duplicated objects in parallel adds.
...
Moves to concurrent sets with a Comparator that checks the object's reference to remove duplications in the set when events from addressables differ
2026-02-07 17:50:39 -05:00
Vitor Pamplona
2e85d1356e
Fixes Addressable vs Replaceable bases
2026-02-07 17:48:37 -05:00
Vitor Pamplona
93a17366a7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
Add SKILL.md for AI agent customization
2026-02-07 14:29:35 -05:00
Vitor Pamplona
ea34125fad
Moves relays used by each user cache to the new architecture
2026-02-07 14:29:03 -05:00
Vitor Pamplona
03e8316db4
Moves lud06 to lud16 mapping to Quartz
2026-02-07 12:29:13 -05:00
Vitor Pamplona
44b635c9e4
Merge pull request #1699 from CentauriAgent/add-agent-skill
...
Add SKILL.md for AI agent customization
2026-02-07 12:00:18 -05:00
Centauri
9c9a4f2e7d
Add SKILL.md for AI agent customization
...
This file provides instructions for AI agents to fork, customize,
and build branded versions of Amethyst.
Includes:
- Prerequisites and environment setup
- Step-by-step build workflow
- Common customizations (app name, package ID, icons, client tags)
- Troubleshooting guide
- Distribution options
2026-02-07 11:17:57 -05:00
Vitor Pamplona
4e39a531b7
Moves metadata methods from User to UserCache object
2026-02-07 10:18:13 -05:00
Vitor Pamplona
823624f8f2
adds a longer crop for npubs so that we can see vanity keys better when they don't have nip05s or statuses
2026-02-07 10:17:37 -05:00
Vitor Pamplona
bab881e75d
Moves status to a user property to avoid searching on scrolling
2026-02-06 18:15:12 -05:00
Vitor Pamplona
ec629ff081
Migrates contact list management to addressable notes
...
Creates new observable flows for LocalCache.
2026-02-06 16:12:11 -05:00
Vitor Pamplona
130a83f0b9
Fixes stability of Profile viewmodels
2026-02-06 15:54:08 -05:00
Vitor Pamplona
e97a30fcb1
Migrates to use "title" instead of "name" tags for NIP-51 lists.
2026-02-05 18:20:04 -05:00
Vitor Pamplona
4ced055035
Switches the metadata relay for the relay being used with the most amount of posts to be the relayhint
2026-02-04 17:38:01 -05:00
Vitor Pamplona
a67fe859e8
Merge pull request #1697 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-02-04 16:45:42 -05:00
Crowdin Bot
5de551078f
New Crowdin translations by GitHub Action
2026-02-04 21:41:27 +00:00
Vitor Pamplona
f89833cc72
Fix fdroid build
2026-02-04 16:37:29 -05:00
Vitor Pamplona
0225fde2a5
Fixes NIP05 username on Profiles
2026-02-04 16:25:40 -05:00
Vitor Pamplona
e6f7a543cd
Migrates Desktop App to the new metadata cache.
2026-02-04 15:38:16 -05:00
Vitor Pamplona
d2f77ed521
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst : (48 commits)
Use accountViewModel.viewModelScope instead of rememberCoroutineScope() to allow download/share to finish even when controls auto-close.
Add content parameter to allow sharing of video from video player
New Crowdin translations by GitHub Action
- use a valid hex key - check the value of the tags
Fixed NullPointerException when filter contain tags
Fix assertEquals order
fix Jackson deserialization for empty Filters and add regression test
New Crowdin translations by GitHub Action
Consume File.delete() return values Extract duplicated "https://" literal into a private const val HTTPS_PREFIX
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
Load and save payment targets
refactor(commons): migrate from Moko to Compose Multiplatform Resources
feat(broadcast): Enhance retry, multi-broadcast UI, and post tracking (#1682 )
wip: Add BroadcastTracker to AccountViewModel (#1682 )
feat(broadcast): Add transparent event broadcasting feedback (#1682 )
Enabled the reactions expand control for zapraisers even when there are no zaps
New Crowdin translations by GitHub Action
refactor to reduce complexity encodePcmToAac
...
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/notifications/CardFeedState.kt
2026-02-04 14:35:35 -05:00
Vitor Pamplona
7bc7265757
Refactors the old NIP-05 code on Quartz
...
New Caching system for User metadata
New Caching system for NIP-05 verifications
2026-02-04 14:31:30 -05:00
KotlinGeekDev
1f94602404
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-02-02 16:43:30 +01:00
Vitor Pamplona
8085d3ead6
Merge pull request #1695 from davotoula/share-videos-from-video-view
...
Share videos from video view
2026-01-30 17:38:55 -05:00
davotoula
f7b815bedb
Use accountViewModel.viewModelScope instead of rememberCoroutineScope() to allow download/share to finish even when controls auto-close.
2026-01-30 22:30:56 +01:00
davotoula
1cd8eeda4e
Add content parameter to allow sharing of video from video player
2026-01-30 21:49:30 +01:00
David Kaspar
96ff0e59f6
Merge pull request #1694 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-30 14:45:52 +00:00
Crowdin Bot
863f93a621
New Crowdin translations by GitHub Action
2026-01-30 13:48:47 +00:00
David Kaspar
d38450424b
Merge pull request #1693 from greenart7c3/main
...
fix crash in Jackson deserialization for empty Filters
2026-01-30 13:46:52 +00:00
greenart7c3
577b4c0e0a
- use a valid hex key
...
- check the value of the tags
2026-01-30 09:38:09 -03:00
greenart7c3
f2d7b115d9
Fixed NullPointerException when filter contain tags
2026-01-30 09:00:52 -03:00
greenart7c3
8bfd670f8b
Fix assertEquals order
2026-01-30 08:50:09 -03:00
greenart7c3
247e30beed
fix Jackson deserialization for empty Filters and add regression test
2026-01-30 07:31:38 -03:00
David Kaspar
85e9984153
Merge pull request #1692 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-29 07:46:29 +00:00
Crowdin Bot
781da12475
New Crowdin translations by GitHub Action
2026-01-29 07:23:27 +00:00
David Kaspar
0f286f68c8
Merge pull request #1691 from davotoula/sonar-fixes
...
chore: sonar fixes
2026-01-29 07:21:57 +00:00
davotoula
7793d2e2a3
Consume File.delete() return values
...
Extract duplicated "https://" literal into a private const val HTTPS_PREFIX
2026-01-28 23:02:38 +01:00
KotlinGeekDev
b965ff1cc6
Merge remote-tracking branch 'origin/kmp-completeness' into kmp-completeness
2026-01-28 15:09:57 +01:00
KotlinGeekDev
3ee600ea28
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-01-28 00:09:19 +01:00
KotlinGeekDev
506996b382
Foundations(iOS Sourceset): Provide implementation for GZip compression/decompression. Some small fixes in URLs.ios.kt .
2026-01-27 20:52:43 +01:00
KotlinGeekDev
3f9f496c8b
Foundations(iOS Sourceset): Provide implementation for UnicodeNormalizer.
2026-01-27 17:14:32 +01:00
KotlinGeekDev
4e2f779b54
Foundations(iOS Sourceset): Provide implementation for UrlEncoder.
2026-01-27 16:31:04 +01:00
KotlinGeekDev
fb5288d5f1
Foundations(iOS Sourceset): Provide implementation for makeAbsoluteIfRelativeUrl() in ServerInfoParser.ios.kt
2026-01-26 20:08:44 +01:00
KotlinGeekDev
94a5237eaa
Foundations(iOS Sourceset): Provide implementation for fastFindURLs(). Make a test for it.
2026-01-26 16:56:11 +01:00
Vitor Pamplona
53d0aa8e42
Merge pull request #1689 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-26 10:02:02 -05:00
Crowdin Bot
f2c27dbdc8
New Crowdin translations by GitHub Action
2026-01-26 15:00:22 +00:00
Vitor Pamplona
e52817f8e9
Merge pull request #1688 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-26 09:58:01 -05:00
Vitor Pamplona
596b8aafba
Merge pull request #1683 from nrobi144/feat/1682-transparent-broadcast-feedback
...
add transparent event broadcasting feedback
2026-01-26 09:57:41 -05:00
Crowdin Bot
6fff7dc17b
New Crowdin translations by GitHub Action
2026-01-26 14:55:12 +00:00
Vitor Pamplona
c3f09987aa
Merge pull request #1676 from nrobi144/nrobi144/phase-2A
...
Desktop: Basic Search + Bookmarks + Zaps
2026-01-26 09:53:35 -05:00
Vitor Pamplona
671a102c7c
Merge pull request #1673 from davotoula/share-videos-to-other-apps
...
Share videos to other apps (via intent)
2026-01-26 09:47:14 -05:00
Vitor Pamplona
c91bacaa91
Merge pull request #1687 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-26 09:46:11 -05:00
Vitor Pamplona
e8cf5fb60d
Merge pull request #1686 from greenart7c3/payto_part2
...
Payment targets part two
2026-01-26 09:45:54 -05:00
Crowdin Bot
f618741211
New Crowdin translations by GitHub Action
2026-01-26 14:44:00 +00:00
Vitor Pamplona
7a4386da81
Merge pull request #1684 from nrobi144/feat/1675-migrate-moko-to-cmp-resources
...
refactor(commons): migrate from Moko to Compose Multiplatform Resources
2026-01-26 09:42:12 -05:00
greenart7c3
058cdc782a
Load and save payment targets
2026-01-26 11:18:48 -03:00
nrobi144
71e68dc35b
refactor(commons): migrate from Moko to Compose Multiplatform Resources
...
Remove Moko Resources dependency that blocks AGP 9.0 migration.
Migrate to built-in Compose Multiplatform Resources which is compatible
with the new KMP Android plugin.
- Remove moko-resources plugin and libraries from commons module
- Move strings.xml from moko-resources/ to composeResources/values/
- Update imports from SharedRes.strings.* to Res.string.*
- Add compose.components.resources dependency to desktopApp
- Configure resource package as com.vitorpamplona.amethyst.commons.resources
Closes #1675
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-25 13:29:55 +02:00
nrobi144
dedfd59d0b
feat(broadcast): Enhance retry, multi-broadcast UI, and post tracking ( #1682 )
...
- Add Retrying state to RelayResult for in-flight retry tracking
- Implement synced 360° rotating animation for pending/retrying icons
- Refactor BroadcastDetailsSheet for multi-broadcast sections (max 2 expanded)
- Add overflow summary for additional broadcasts beyond 2
- Fix sheet text colors using theme colors for better visibility
- Make sheet fully expandable (skipPartiallyExpanded)
- Add event cache to BroadcastTracker for retry support
- Implement retry that updates existing broadcast in-place
- Add tracked broadcasting for posts and quotes via createPostEvent/consumePostEvent
- Fix relay list computation for new posts (use event-based, not empty note)
- Make post editor close immediately, broadcast continues in background
- Style CompletedBroadcastIndicator consistently with BroadcastBanner
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-23 16:27:29 +02:00
David Kaspar
8ebba994e8
Merge pull request #1681 from davotoula/feature/display-zapraise
...
Enabled the reactions expand control for zapraisers even when there are no zaps
2026-01-23 06:35:13 +00:00
nrobi144
c5d9fc3c15
wip: Add BroadcastTracker to AccountViewModel ( #1682 )
...
Phase 2 progress - added BroadcastTracker instance to AccountViewModel.
Integration with reaction buttons pending.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-23 06:55:13 +02:00
nrobi144
3ac8ba669b
feat(broadcast): Add transparent event broadcasting feedback ( #1682 )
...
Phase 1 - Core infrastructure:
- BroadcastModels: BroadcastEvent, RelayResult, BroadcastStatus data classes
- BroadcastTracker: State management with live progress updates
- BroadcastBanner: Global progress indicator (animated)
- BroadcastSnackbar: Result notifications with actions
- BroadcastDetailsSheet: Relay status detail bottom sheet
Refs: #1682
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-23 06:50:25 +02:00
davotoula
1e611a3fb5
Enabled the reactions expand control for zapraisers even when there are no zaps
2026-01-22 18:32:37 +01:00
David Kaspar
8bbeb9aadb
Merge pull request #1679 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-22 09:28:08 +00:00
Crowdin Bot
5f75d5a48b
New Crowdin translations by GitHub Action
2026-01-22 09:25:17 +00:00
David Kaspar
b39a3d1911
Merge pull request #1678 from davotoula/sonar-fixes
...
Sonar fixes - reduce Cognitive Complexity in VoiceAnonymizer.kt
2026-01-22 09:23:22 +00:00
davotoula
1a736f1c8a
refactor to reduce complexity encodePcmToAac
2026-01-21 17:41:54 +01:00
davotoula
b8ecb03ddd
refactor to reduce complexity decodeAudioToPcm
2026-01-21 17:41:53 +01:00
nrobi144
ff47080cf1
fix: Resolve API mismatches after merge with upstream
...
- Fix import paths to use desktop.subscriptions instead of commons.subscriptions
- Update DesktopLocalCache to match ICacheProvider interface changes
- Use correct commons.relayClient paths for ComposeSubscriptionManager
- Add missing justConsumeMyOwnEvent and getOrCreateAddressableNote methods
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-21 06:23:58 +02:00
nrobi144
d08aed47e8
Merge upstream/main into nrobi144/phase-2A
...
Resolved import conflicts caused by package reorganization:
- upstream moved classes to amethyst/service/relayClient/*
- upstream moved models to commons/model/*
- kept our desktop additions (zaps, bookmarks, search)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-21 06:04:13 +02:00
davotoula
80c946be44
rename method to reflect new functionality
2026-01-20 22:42:48 +01:00
davotoula
ac4a1de0cd
Block share menu from closing while downloading video
2026-01-20 22:31:14 +01:00
davotoula
d542e4d6a0
change to 2 minutes delay before cleaning up temp shared file
2026-01-20 19:55:19 +01:00
davotoula
6257b6dd80
Merge branch 'main' into share-videos-to-other-apps
2026-01-20 19:35:41 +01:00
David Kaspar
29faa7882d
Increase max voice record duration to 600 seconds
2026-01-20 18:27:20 +00:00
David Kaspar
5401a89356
Merge pull request #1677 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-20 18:21:28 +00:00
Crowdin Bot
c801e9ce86
New Crowdin translations by GitHub Action
2026-01-20 13:34:58 +00:00
Vitor Pamplona
f134f815d0
Merge pull request #1672 from davotoula/voice-notes-code-review-fixes
...
Voice notes enhancements and code review fixes
2026-01-20 08:33:11 -05:00
nrobi144
8155cfee9d
update metadata loading
2026-01-20 15:18:11 +02:00
nrobi144
8f6de1d304
zap updates
2026-01-19 16:32:01 +02:00
davotoula
4897aa4d09
Use coroutine instead of Handler for temp file cleanup
2026-01-18 22:51:00 +01:00
davotoula
5450c7670f
update translations
2026-01-18 22:31:31 +01:00
davotoula
1a04f16d1a
Safer temp video handling
...
Cleanup deletes the actual shared file (and on error) instead of the old temp path in
Guard against empty response.body
Gate media-type detection so image sharing only checks image headers
Added unit test for rename-failure fallback
2026-01-18 22:28:55 +01:00
davotoula
f2e484b18e
URL videos: Downloads video to temp file using streaming (avoids OOM), shows progress indicator, shares via Intent, cleans up after 60 seconds
...
Local videos: Shares directly without downloading
Video format detection: Supports MP4, WebM, MKV, AVI, MOV based on file magic numbers
2026-01-18 20:09:00 +01:00
KotlinGeekDev
893d363a03
Merge remote-tracking branch 'origin/kmp-completeness' into kmp-completeness
2026-01-16 16:11:23 +01:00
KotlinGeekDev
db536289c4
Make linter happy, I guess.
2026-01-16 16:10:58 +01:00
KotlinGeekDev
f2ac68ccf8
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-01-15 20:53:38 +01:00
davotoula
505a6583ee
remove unused imports
2026-01-15 14:20:05 +01:00
davotoula
40d6943439
sonar fixes
2026-01-15 14:12:09 +01:00
davotoula
835fbb90b7
Do something with the "Boolean" value returned by "delete".
2026-01-15 14:00:13 +01:00
davotoula
76a05f7d71
moved re-record button inline and added to VoiceMessagePreview.kt
2026-01-15 13:58:14 +01:00
davotoula
5be1633843
limit voice recording to 180s
2026-01-15 13:58:14 +01:00
davotoula
db75a7c910
preallocate list capacity
2026-01-15 13:58:14 +01:00
davotoula
50b0e8bd17
Moved processingPreset = preset to execute synchronously before launching the coroutine
2026-01-15 13:58:14 +01:00
davotoula
0b233f3a3f
use colorScheme.onSurfaceVariant instead of Gray
2026-01-15 13:58:14 +01:00
davotoula
001dce8fef
guard for null inputFile.parentFile
2026-01-15 13:58:14 +01:00
davotoula
708c6da9fe
add docs
2026-01-15 13:58:14 +01:00
davotoula
c6d437b98e
confirmed: <1 results in Higher pitch. Adjusted NEUTRAL to slightly lower pitch
2026-01-15 13:58:14 +01:00
davotoula
5ce4391db4
guard encoder / decoder .stop
2026-01-15 13:58:13 +01:00
Vitor Pamplona
6f62e2c7b1
Merge pull request #1671 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-14 17:58:41 -05:00
Crowdin Bot
208f57830f
New Crowdin translations by GitHub Action
2026-01-14 22:56:07 +00:00
Vitor Pamplona
92d4654b20
Removes the memory counter methods because they are not the best way to measure the size in memory of these objects, since we intern strings all the time.
2026-01-14 16:49:11 -05:00
Vitor Pamplona
3d0b0c01b9
Finishes editing quartz event store readme
2026-01-14 15:36:32 -05:00
Vitor Pamplona
adb2f48fb5
Updates event store readme
2026-01-14 15:29:13 -05:00
Vitor Pamplona
54ab70beb7
Fixes https://github.com/vitorpamplona/amethyst/issues/1670
2026-01-14 14:24:57 -05:00
Vitor Pamplona
c41040848c
Fixes NPE on null existing event.
2026-01-14 09:30:53 -05:00
Vitor Pamplona
6097a0b5b7
Removes the need for an extra object for the tag array in the custom emoji nip
2026-01-13 17:32:38 -05:00
Vitor Pamplona
288fccd414
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-13 17:13:17 -05:00
Vitor Pamplona
be7865d458
updates keyring and vico
2026-01-13 17:13:03 -05:00
Vitor Pamplona
e0e0990278
Merge pull request #1669 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-13 16:16:43 -05:00
Crowdin Bot
b0210e98f1
New Crowdin translations by GitHub Action
2026-01-13 21:08:51 +00:00
Vitor Pamplona
04ac40fa1a
moves test as well
2026-01-13 16:07:03 -05:00
Vitor Pamplona
2ce1e81072
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-13 16:04:15 -05:00
Vitor Pamplona
09d0f4425c
Moves some of the stuff that was saved in Commons back to the desktop app because it is only used there
2026-01-13 16:04:02 -05:00
Vitor Pamplona
73fe985a65
Fixes tests
2026-01-13 15:49:08 -05:00
Vitor Pamplona
ba5c86fbba
Migrates rich text parser from jvm to commons
2026-01-13 15:31:26 -05:00
Vitor Pamplona
bc55749998
Merge pull request #1668 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-13 15:01:19 -05:00
Crowdin Bot
33c51b9a10
New Crowdin translations by GitHub Action
2026-01-13 20:00:04 +00:00
Vitor Pamplona
42bdd1c831
Emoji State to commons
2026-01-13 14:57:29 -05:00
Vitor Pamplona
7c1053df2d
Moves reports to common
...
Adds support for additional information
2026-01-13 14:37:32 -05:00
Vitor Pamplona
9b7a83796b
Moves private chatroom models to commons
2026-01-13 14:33:24 -05:00
Vitor Pamplona
afe66cd55f
Moves user actions to commons
2026-01-13 14:31:04 -05:00
Vitor Pamplona
a8dd229fb2
Moves Channels (public chats, ephemeral channels and live streams) Account modules to commons
2026-01-13 14:30:51 -05:00
Vitor Pamplona
6d15e4861c
Moves channels to commons and removes the dependency in the cache from Note
2026-01-13 12:22:40 -05:00
Vitor Pamplona
5241a6dfa7
Fixes missing cache after AI PR for the desktop app
...
Removes dependency on the Cache from User.
Updates interface methods to match.
2026-01-13 11:27:45 -05:00
Vitor Pamplona
2fe0157b2e
Merge pull request #1665 from davotoula/voice-distortion-poc
...
Voice distortion (basic)
2026-01-13 08:13:02 -05:00
davotoula
ec159ff85f
add translations
2026-01-12 23:03:52 +01:00
davotoula
f13a9164c2
code review: resource leaks and init guard
2026-01-12 23:03:52 +01:00
davotoula
3287e3c031
add a ±10% random variation to HIGH and DEEP pitch
2026-01-12 23:03:51 +01:00
davotoula
666015b8eb
reduce duplication:
...
New shared controller for state + processing + distorted file cleanup
New shared UI section for anonymization header + preset selector
2026-01-12 23:03:51 +01:00
davotoula
a4af706ebd
correct the item where progress spinner happens on
2026-01-12 23:03:51 +01:00
davotoula
6f8533f5e1
added explainer to UI
2026-01-12 23:03:51 +01:00
davotoula
9c0fbbf8a4
correct pitch selection
...
Add to voice note screen (new note)
2026-01-12 23:03:51 +01:00
davotoula
63d7ba07b9
add voice preset selector UI to VoiceReplyScreen
2026-01-12 23:03:51 +01:00
davotoula
8182268a00
add voice anonymization state to VoiceReplyViewModel
2026-01-12 23:03:51 +01:00
davotoula
8de148e562
add VoiceAnonymizer for audio pitch/formant shifting
2026-01-12 23:03:51 +01:00
davotoula
83d4d3e756
add VoicePreset enum for voice anonymization
...
Define preset options (None, Deep, High, Neutral)
2026-01-12 23:03:51 +01:00
davotoula
bfd0fc01b9
add TarsosDSP dependency for voice anonymization
2026-01-12 23:03:51 +01:00
David Kaspar
8f1ff084d0
Merge pull request #1664 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-12 21:17:22 +00:00
Crowdin Bot
c585b05879
New Crowdin translations by GitHub Action
2026-01-12 20:32:01 +00:00
Vitor Pamplona
e9210872bd
Improves performance by precaching signatures before sorting them
...
Fixes out of order crash when the same signature came back.
2026-01-12 15:29:33 -05:00
Vitor Pamplona
e561492705
Removes unused aliases
2026-01-12 15:28:33 -05:00
Vitor Pamplona
096f59ffc1
Merge pull request #1663 from nrobi144/phase1-final
...
Desktop - Threads and Notifications + Empty state updates
2026-01-12 10:00:20 -05:00
Vitor Pamplona
2adde38a9c
Merge pull request #1660 from davotoula/1654-voice-reply-to-text-note-as-kind-1
...
voice reply to text note as kind 1
2026-01-12 09:39:03 -05:00
KotlinGeekDev
a9f6ebde83
Merge branch 'vitorpamplona:main' into kmp-completeness
2026-01-12 15:25:11 +01:00
KotlinGeekDev
f5bb0dbc1d
Move cachemap dependency to version catalog.
2026-01-12 15:06:57 +01:00
KotlinGeekDev
7c936cfcac
Foundations(iOS Sourceset): Provide implementation for LargeCache, using a CacheMap.
2026-01-12 15:05:50 +01:00
KotlinGeekDev
d90f3f4f98
Foundations(iOS Sourceset): Provide implementation for Rfc3986 on iOS, using the Swift Rfc3986UriBridge.
2026-01-12 14:55:24 +01:00
KotlinGeekDev
b94f8c9083
Foundations(iOS Sourceset): - Fix test resource loading for iOS targets(using Gradle env. variables).
...
- Bring in the SwiftPackageManager for KMP plugin, to use Swift libraries for iOS implementations(and configure accordingly).
- Bring in cachemap dependency(for iOS LargeCache implementation).
2026-01-12 14:52:12 +01:00
Róbert Nagy
30f7077ea3
Merge branch 'main' into phase1-final
2026-01-12 07:02:49 +02:00
nrobi144
e1412c1f97
fix: Add proper empty states with EOSE tracking
...
- NotificationsScreen: Show "No notifications yet" after EOSE instead of infinite loading
- FeedScreen: Show "No notes found" after EOSE for both Global and Following feeds
- ThreadScreen: Show "Note not found" if root note missing after EOSE, "No replies yet" for empty threads
Uses existing EmptyState component from commons. Tracks EOSE (End of Stored Events) from relays to distinguish between "still loading" and "no data".
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-12 06:52:33 +02:00
nrobi144
ec629ac3fe
feat: Extract Card interface and CardFeedState to commons (B1)
...
- Create commons/ui/notifications/CardFeedState.kt with:
- Card interface (createdAt, id)
- CardFeedState sealed class (Loading, Loaded, Empty, FeedError)
- DefaultCardComparator for sorting
- Update Android imports to use commons Card/CardFeedState:
- DefaultFeedOrder.kt
- AccountViewModel.kt
- CardFeedContentState.kt
- CardFeedState.kt (now only contains concrete card types)
- CardFeedView.kt
Part of Phase B (Notifications Feed Extraction) for #1648
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-12 06:34:14 +02:00
nrobi144
45207857c6
finish ThreadScreen
2026-01-12 06:23:57 +02:00
David Kaspar
dea0c336ef
Merge pull request #1661 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-11 17:54:16 +00:00
davotoula
1e898d57b2
code review fixes:
...
textHint variable was retrieved but never used
extracted logic for fixing relay hints and author information in tags
made mimeType check logic clearer
2026-01-11 18:34:59 +01:00
Crowdin Bot
b71bb8cd2b
New Crowdin translations by GitHub Action
2026-01-11 17:20:41 +00:00
Vitor Pamplona
d9a9cdd374
Fixes lack of update in follow count on the UserProfile page
2026-01-11 12:18:21 -05:00
davotoula
f51d0fb56e
code review:
...
added p-tag for voice reply to kind 1
allow waveform IMeta with a missing mimeType to render as audio
2026-01-11 17:42:05 +01:00
davotoula
70c638ad90
refactor to a shared composable to eliminate waveform code duplication
2026-01-11 10:37:25 +01:00
davotoula
d8093f64b1
Display kind 1 voice replies as audio waveform
2026-01-11 10:37:24 +01:00
davotoula
58b97e0695
Voice reply to VoiceEvent/VoiceReplyEvent (KIND 1222/1244) → Creates VoiceReplyEvent (KIND 1244)
...
Voice reply to TextNoteEvent (KIND 1) → Creates TextNoteEvent (KIND 1) with audio IMeta attachment and proper reply tags
2026-01-11 10:12:43 +01:00
Vitor Pamplona
d24fe03bdd
Avoids crashing when the k tag is a text
2026-01-10 18:34:01 -05:00
Vitor Pamplona
1cf2beb92e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
remove unused imports
guard for NaN crash with short recordings
fix re-record button
change icon to stop icon
change from "hold to record" to "click to start, click to stop"
2026-01-10 12:10:40 -05:00
Vitor Pamplona
3e88eed640
Merge pull request #1657 from davotoula/record-voice-on-off-button
...
Record voice on off button instead of hold to record
2026-01-10 12:09:59 -05:00
Vitor Pamplona
30e5b3d35e
removes bringing back all versions of an Addressable on the search screen.
2026-01-10 12:08:42 -05:00
David Kaspar
1882792a9d
Merge pull request #1658 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-10 17:07:09 +00:00
Crowdin Bot
a935c7cecf
New Crowdin translations by GitHub Action
2026-01-10 17:06:00 +00:00
Vitor Pamplona
cf0f71d04f
Fixes: https://github.com/vitorpamplona/amethyst/issues/1621
...
Renders the fork information at the second line for the Master Note as well.
2026-01-10 12:02:26 -05:00
davotoula
d52906fda0
remove unused imports
2026-01-10 17:59:01 +01:00
davotoula
7b6b0f66a5
guard for NaN crash with short recordings
2026-01-10 17:59:01 +01:00
davotoula
5faa439a8b
fix re-record button
2026-01-10 17:37:50 +01:00
davotoula
524180bec9
change icon to stop icon
2026-01-10 17:37:50 +01:00
davotoula
3c12be354e
change from "hold to record" to "click to start, click to stop"
2026-01-10 17:37:50 +01:00
Vitor Pamplona
045f2aced9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
update cz, pt, de, sv
2026-01-10 11:36:22 -05:00
Vitor Pamplona
1ead2983ac
Moves to a fork model via interfaces to start creating specific screens for each event type
2026-01-10 11:36:11 -05:00
Vitor Pamplona
1c26ccecc0
Adds support for NipTexts on Amethyst
2026-01-10 11:15:03 -05:00
nrobi144
6aacb8e654
move ThreadFilter to commons
2026-01-09 14:40:30 +02:00
David Kaspar
d8b8650048
Merge pull request #1652 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-09 11:30:39 +00:00
Crowdin Bot
c7b408f79d
New Crowdin translations by GitHub Action
2026-01-09 11:29:27 +00:00
David Kaspar
761addb92e
Merge pull request #1651 from davotoula/update-translations
...
update cz, pt, de, sv
2026-01-09 11:28:09 +00:00
davotoula
e874e302e0
update cz, pt, de, sv
2026-01-09 11:17:56 +01:00
nrobi144
a6f49665a7
feat: Extract drawReplyLevel modifier to commons
...
Move the thread reply level visualization modifier to shared commons
module for use by both Android and Desktop platforms.
- Add ThreadModifiers.kt to commons/ui/thread/
- Update Android ThreadFeedView to use shared modifier
- Add overload for non-State level parameter
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-09 07:14:52 +02:00
nrobi144
9836a47f65
update Android imports
2026-01-09 07:01:36 +02:00
nrobi144
a6d90c319e
feat: Add lifecycle-viewmodel KMP dependencies to commons
...
Adds androidx.lifecycle.viewmodel.compose and lifecycle.runtime.compose
to commons/commonMain as preparation for extracting ViewModels to shared code.
These dependencies have KMP support since 2.8.0 (currently on 2.10.0).
Preparation for Phase A2: Extract Thread ViewModels to commons.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-01-09 07:01:36 +02:00
nrobi144
211305c572
A1 extract to commons
2026-01-09 07:01:35 +02:00
Vitor Pamplona
54c1605de7
v1.05.1
2026-01-08 19:01:01 -05:00
Vitor Pamplona
dca9a1da47
Clicking on Drafts now edits the post.
2026-01-08 18:29:00 -05:00
Vitor Pamplona
466ae37b85
Fixes bug of mixing DMs between the logged in users.
2026-01-08 17:30:46 -05:00
Vitor Pamplona
b586971f00
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-08 16:23:16 -05:00
Vitor Pamplona
bb01918120
v1.05.0
2026-01-08 16:21:30 -05:00
Vitor Pamplona
f2bda2e5ec
No need to set items directly. This happens later.
2026-01-08 15:23:11 -05:00
Vitor Pamplona
e12d924c59
Merge pull request #1650 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-08 10:57:57 -05:00
Crowdin Bot
a972891059
New Crowdin translations by GitHub Action
2026-01-08 15:03:34 +00:00
Vitor Pamplona
dd259bab33
Separates currentFilters from lastSeenFilters to correctly close subscriptions with relays when ending them on NostrClient.
2026-01-08 10:00:42 -05:00
Vitor Pamplona
19d3c5a10e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-07 16:42:16 -05:00
Vitor Pamplona
d5ba3ffc04
Simplifies NIP-05 processing
2026-01-07 16:38:51 -05:00
Vitor Pamplona
882cf6ee59
Moving OpenGraph parser to commons
2026-01-07 16:34:15 -05:00
KotlinGeekDev
086e929e32
Make some modifications to CustomBitSet.
2026-01-07 22:27:01 +01:00
Vitor Pamplona
cba4d25424
Moves follows and publish to their own packages
2026-01-07 16:16:01 -05:00
Vitor Pamplona
1176093567
Merge pull request #1647 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-07 15:37:36 -05:00
Crowdin Bot
b5a9b346c6
New Crowdin translations by GitHub Action
2026-01-07 20:35:11 +00:00
Vitor Pamplona
6b8036eac4
Forcing notify relay to be either the NIP-65 or DM relays
2026-01-07 15:33:16 -05:00
Vitor Pamplona
139e9fd3ef
Re-adds name to the profile edit page.
2026-01-07 14:52:40 -05:00
Vitor Pamplona
259b476139
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-07 14:43:46 -05:00
Vitor Pamplona
92f07c5615
Remove deprecated field
2026-01-07 14:33:56 -05:00
Vitor Pamplona
dceabbb51e
delete duplicated file
2026-01-07 14:33:45 -05:00
Vitor Pamplona
96ae047271
Removes unnecessary file from commons
2026-01-07 14:31:23 -05:00
Vitor Pamplona
ab99dc34f3
Merge pull request #1646 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-07 14:04:01 -05:00
Crowdin Bot
331124c92a
New Crowdin translations by GitHub Action
2026-01-07 18:42:55 +00:00
Vitor Pamplona
13aaaeacd8
Fixes imports
2026-01-07 13:40:24 -05:00
Vitor Pamplona
64c237a4e5
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-07 13:27:00 -05:00
Vitor Pamplona
60dafd9267
Moves reactions to packages for their nips
2026-01-07 13:26:47 -05:00
Vitor Pamplona
1783fbab59
Separating ListChange
2026-01-07 13:18:17 -05:00
David Kaspar
78d614129a
Merge pull request #1645 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-07 17:26:51 +00:00
Crowdin Bot
5051eb6d40
New Crowdin translations by GitHub Action
2026-01-07 17:25:00 +00:00
Vitor Pamplona
cf174c7734
Removes dependency on okhttp for the HTMLParser
2026-01-07 12:22:57 -05:00
Vitor Pamplona
0e59ea570e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-07 12:09:40 -05:00
Vitor Pamplona
e3832ee19b
Moves Filters from Common to Desktop
2026-01-07 12:06:28 -05:00
Vitor Pamplona
5cb0231cf9
Fixes the choice of padding to match what it was on Amethyst
2026-01-07 12:06:11 -05:00
Vitor Pamplona
ed5246e8c3
Merge pull request #1644 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-07 11:57:24 -05:00
Vitor Pamplona
806bc2729a
Fixes places for the test and common code
2026-01-07 11:51:45 -05:00
Crowdin Bot
e05aa611eb
New Crowdin translations by GitHub Action
2026-01-07 16:43:22 +00:00
Vitor Pamplona
9014424f0d
Merge pull request #1643 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-07 11:42:50 -05:00
Crowdin Bot
e84eca2bca
New Crowdin translations by GitHub Action
2026-01-07 16:42:01 +00:00
Vitor Pamplona
dd9d7ac0c8
Merge remote-tracking branch 'origin/nrobi144/desktop-phase1'
...
* origin/nrobi144/desktop-phase1:
Fixes FilledFilter test
moves keystore to commons to avoid unnecessary dependencies on Quartz
Fixes missing tagsAll
2026-01-07 11:41:30 -05:00
Vitor Pamplona
71448d9712
Merge pull request #1642 from nrobi144/nrobi144/desktop-phase1
...
Desktop Phase 1 - Compose Multiplatform Support
2026-01-07 11:40:46 -05:00
Vitor Pamplona
d3e0cdd135
Fixes FilledFilter test
2026-01-07 11:16:26 -05:00
Vitor Pamplona
ce01e8f70c
moves keystore to commons to avoid unnecessary dependencies on Quartz
2026-01-07 11:09:45 -05:00
Vitor Pamplona
7a7ce69709
Fixes missing tagsAll
2026-01-07 10:54:09 -05:00
Vitor Pamplona
9232da7421
Merge branch 'main' into nrobi144/desktop-phase1
2026-01-07 10:43:15 -05:00
Vitor Pamplona
dcbe7df007
Fixes test
2026-01-07 10:07:26 -05:00
Vitor Pamplona
48bd284ef1
Update AccountManager.kt
2026-01-07 09:24:40 -05:00
Vitor Pamplona
41cb143e0d
Merge branch 'main' into nrobi144/desktop-phase1
2026-01-07 09:23:57 -05:00
nrobi144
a9141763e1
previous PR fixes
2026-01-07 07:12:00 +02:00
Vitor Pamplona
60ce65470f
Merge pull request #1641 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-06 19:02:45 -05:00
Crowdin Bot
deb5da4866
New Crowdin translations by GitHub Action
2026-01-07 00:00:42 +00:00
Vitor Pamplona
b65546487d
Adjusts tests to be more flexible when reading NIPs from NIP-11
2026-01-06 18:57:56 -05:00
Vitor Pamplona
109150e693
These logs make everything go slow :(
2026-01-06 18:53:18 -05:00
Vitor Pamplona
93b139da62
Fixes test case
2026-01-06 18:39:51 -05:00
Vitor Pamplona
f33e2fbcfb
Disables top bar reappearance to avoid the feed moving when coming back from page to page.
2026-01-06 18:06:24 -05:00
Vitor Pamplona
3c85220c7c
fixes package name
2026-01-06 18:05:30 -05:00
Vitor Pamplona
cde8a343cb
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
remove unused imports
2026-01-06 17:39:04 -05:00
Vitor Pamplona
e26fb94933
Improvements on NIP-11
...
- Support for self, privacy_policy, terms_of_service, grasps
- New UI for the Relay Information Screen
- Improvements to the Debug Message
- Compose-stable objects
- Clickable elements for NIPs, external links, grasps, etc
2026-01-06 17:38:47 -05:00
David Kaspar
83af151c0d
Merge pull request #1639 from davotoula/main
...
remove unused imports
2026-01-06 17:48:02 +00:00
David Kaspar
185979f82c
Merge branch 'vitorpamplona:main' into main
2026-01-06 17:11:18 +00:00
Vitor Pamplona
36b50576d9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-06 10:09:23 -05:00
Vitor Pamplona
fd47391afe
Decreases the icon even further
2026-01-06 10:08:29 -05:00
nrobi144
fd83560852
key storage implementation
2026-01-06 17:08:28 +02:00
davotoula
d837fbb4c9
remove unused imports
2026-01-06 15:49:35 +01:00
David Kaspar
2d1a151195
Merge pull request #1638 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-06 14:36:18 +00:00
Crowdin Bot
fe0723889d
New Crowdin translations by GitHub Action
2026-01-06 14:34:17 +00:00
Vitor Pamplona
173a40394e
Smaller icon to avoid interfering with Trust scores
2026-01-06 09:32:23 -05:00
nrobi144
df9d648988
key storage spotless
2026-01-06 06:50:31 +02:00
nrobi144
4339247815
key storage
2026-01-06 06:49:59 +02:00
Vitor Pamplona
40f9622722
Checks kind size before throwing
2026-01-05 19:41:23 -05:00
Vitor Pamplona
8a5e05c0ac
Simple check to make sure events are valid.
2026-01-05 19:26:24 -05:00
Vitor Pamplona
69c53aca06
Improving error logs
2026-01-05 19:26:00 -05:00
Vitor Pamplona
2c4279621d
Makes the Kotlin Serialization lenient to avoid unnecessary crashes
2026-01-05 17:18:01 -05:00
Vitor Pamplona
1835c2238e
removes unecessary log
2026-01-05 16:01:39 -05:00
Vitor Pamplona
a9df6fcc61
Adds the default bookmark option to be inside the bookmark list screen
2026-01-05 13:38:24 -05:00
Vitor Pamplona
2fc7e505a3
Update stability analiser
2026-01-05 09:36:46 -05:00
nrobi144
2079493fc4
spotless
2026-01-05 13:43:54 +02:00
nrobi144
7d3ac9ec8a
add avatars
2026-01-05 13:43:00 +02:00
nrobi144
55d59fcfd2
fix follows not working
2026-01-05 13:12:39 +02:00
nrobi144
115c622dca
fix profile not loading
2026-01-05 06:46:19 +02:00
Vitor Pamplona
a151bba3d0
Improves stability for video ui
2026-01-04 16:41:58 -05:00
Vitor Pamplona
fe1e0e46c3
Fixes warnings on test case
2026-01-04 16:38:21 -05:00
Vitor Pamplona
fdc751f9e5
Updates Vico
2026-01-04 16:38:06 -05:00
Vitor Pamplona
eeafeeff17
Moves to new banner by Purple Painer
2026-01-04 14:40:45 -05:00
Vitor Pamplona
0d665c41d2
Merge pull request #1637 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-04 13:42:21 -05:00
Crowdin Bot
69dd0b8e5e
New Crowdin translations by GitHub Action
2026-01-04 18:38:38 +00:00
Vitor Pamplona
9f8a28c6d0
Merge pull request #1636 from davotoula/reduce-sonarcube-warnings
...
Reduce sonarcube warnings
2026-01-04 13:37:26 -05:00
davotoula
59fb175637
refactor VoiceMessagePreview.kt
2026-01-04 12:32:08 +01:00
davotoula
a4925de4a1
cleaner code
2026-01-04 12:27:07 +01:00
davotoula
0d923b5caa
optimise imports
2026-01-04 12:19:00 +01:00
Vitor Pamplona
7b13b9e72a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-03 18:18:50 -05:00
Vitor Pamplona
d7888c57fa
Creating additional configuration options and amplifying tests to a combination of all those options
2026-01-03 18:18:36 -05:00
David Kaspar
010a51949c
Merge pull request #1635 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-03 21:09:02 +00:00
Crowdin Bot
c878b07458
New Crowdin translations by GitHub Action
2026-01-03 19:54:51 +00:00
Vitor Pamplona
98ccb5e0ae
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2026-01-03 14:52:08 -05:00
nrobi144
64eec9844b
bugfixes
2026-01-03 13:00:02 +02:00
nrobi144
f800e20b05
reuse some filtering logic
2026-01-03 06:15:37 +02:00
Vitor Pamplona
7a34b8480e
Fixes count not working for LIMIT queries
2026-01-02 17:22:18 -05:00
Vitor Pamplona
51f9fdd58c
Adds a simple query to the count filter
2026-01-02 16:58:59 -05:00
Vitor Pamplona
989c63a717
Expose query plans with the current hasher
2026-01-02 16:57:49 -05:00
Vitor Pamplona
48e791c634
removes logs
2026-01-02 16:17:58 -05:00
David Kaspar
e722f1eb61
Merge pull request #1632 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-02 21:01:45 +00:00
Crowdin Bot
98ba083172
New Crowdin translations by GitHub Action
2026-01-02 19:56:51 +00:00
Vitor Pamplona
307cff87e7
Adds more settings to pick different ways to build the SQL database
2026-01-02 14:54:30 -05:00
nrobi144
36bb89fd36
update desktop with refactored classes
2026-01-02 14:54:24 +02:00
nrobi144
2751855186
extract actions from amethyst
2026-01-02 13:29:55 +02:00
nrobi144
6581fe18a3
initial desktop phase1 fixes
2026-01-02 07:52:36 +02:00
nrobi144
146e4e5533
initial desktop phase1
2026-01-02 07:51:31 +02:00
Vitor Pamplona
7c63d654f2
Inverts the name of the isFilledFilter function
2026-01-01 21:29:20 -05:00
David Kaspar
19d66f37d4
Merge pull request #1631 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2026-01-01 21:17:15 +00:00
Crowdin Bot
4c9df0bfef
New Crowdin translations by GitHub Action
2026-01-01 20:09:47 +00:00
Vitor Pamplona
7b919ba44a
added description
2026-01-01 15:07:27 -05:00
Vitor Pamplona
291db1f30b
duplicates kinds and pubkey on the tags table to take complex queries under 100 microseconds
2026-01-01 14:57:48 -05:00
Vitor Pamplona
238d4e0004
No need for the fts module anymore
2026-01-01 14:52:11 -05:00
Vitor Pamplona
f6d920366d
Fixes some of the tests
2026-01-01 12:53:02 -05:00
Vitor Pamplona
aac880c575
Range queries are not effective as the first argument, switching to kind, key, created_at index, which also almost invalidates the need for the Replaceable idx and is only kept for the unique key consistency
2026-01-01 12:51:43 -05:00
Vitor Pamplona
8affb2564b
explains the fk index on tags
2026-01-01 12:49:12 -05:00
Vitor Pamplona
b7c7eabf2a
Explains limit index
2026-01-01 12:48:48 -05:00
Vitor Pamplona
f48eba6a8e
No need for this index since it will be covered by addressable_idx
2026-01-01 12:48:22 -05:00
Vitor Pamplona
307703cbb7
Explains ID index
2026-01-01 12:47:35 -05:00
Vitor Pamplona
45df452a38
Adds stable to the desktop account manager
2026-01-01 12:37:54 -05:00
Vitor Pamplona
9d67d5d6dc
Implements a raw add on to the query builder
2026-01-01 12:37:44 -05:00
Vitor Pamplona
1978c8e17e
Faster way of coding equals to null in the sql builder
2026-01-01 12:37:13 -05:00
Vitor Pamplona
507256e0dd
Fixes Or builder
2026-01-01 12:36:26 -05:00
Vitor Pamplona
90f38c3a58
adds a isRegular filter for the Kind alias
2026-01-01 12:22:20 -05:00
Vitor Pamplona
6553012372
Uses aliases for the Filter class
2026-01-01 12:22:07 -05:00
nrobi144
5c4db83b40
run spotless
2026-01-01 12:56:52 +02:00
nrobi144
9b330164a7
use typealiases as references to reduce files changed
2026-01-01 12:41:13 +02:00
nrobi144
4bc7e86448
fixes imports
2026-01-01 07:55:31 +02:00
nrobi144
3750c7e26e
fixes
2026-01-01 07:32:44 +02:00
nrobi144
eb47c19172
move models to commons
2026-01-01 07:26:39 +02:00
Vitor Pamplona
393366d9cc
Adds size of the DB as a function to the lib
2025-12-31 18:41:20 -05:00
Vitor Pamplona
5d7c84d357
Setting higher cache size
2025-12-31 16:53:41 -05:00
Vitor Pamplona
6713c3bd50
Adds performance and flexibility by exposing Raw methods
2025-12-31 13:39:17 -05:00
Vitor Pamplona
4f7972df90
Removes logs
2025-12-31 13:37:02 -05:00
Vitor Pamplona
780ea487aa
Adds a test case to simulate reports
2025-12-31 09:42:54 -05:00
Vitor Pamplona
4f1ad11d79
Moves SQLBuilder to its own class
2025-12-31 09:27:33 -05:00
nrobi144
f3b8589fea
update claude.md
2025-12-31 13:00:25 +02:00
nrobi144
628f86e1a1
update claude.md
2025-12-31 07:46:50 +02:00
nrobi144
65859a9269
update claude.md
2025-12-31 07:13:27 +02:00
Vitor Pamplona
7b696f5f54
Adds created_at to tags to speed up tag-ordered queries
2025-12-30 16:23:11 -05:00
Vitor Pamplona
5eb9d230e2
Moves current test to a better name of Notifications
...
Adds a Followers test
2025-12-30 13:00:03 -05:00
Vitor Pamplona
c3d741ebd1
Implements AND queries for tags: https://github.com/nostr-protocol/nips/pull/1365
2025-12-30 12:29:04 -05:00
Vitor Pamplona
df97b7c444
Improves efficiency of the filter class for matching and checking errors
2025-12-30 12:09:05 -05:00
Vitor Pamplona
333285747b
Migrates to using indexes instead tagNames to avoid non-ASCII chars reaching the DB
2025-12-30 12:06:22 -05:00
Vitor Pamplona
2a8e7cbe94
Fixes duplicated results
2025-12-30 12:03:09 -05:00
nrobi144
f180fd39e1
finish skills
2025-12-30 15:45:02 +02:00
nrobi144
f654af9d8a
initial skills
2025-12-30 15:18:48 +02:00
Vitor Pamplona
258c4e0111
Moves BundledUpdate (which should cease to exist at some point) to Amethyst's module
2025-12-29 19:42:47 -05:00
Vitor Pamplona
54ce0a5a92
Moves mutable time to Amethyst
2025-12-29 19:37:45 -05:00
Vitor Pamplona
c5133e98f8
- Fixes Preview Tag
...
- Fixes Email Pattern
2025-12-29 18:57:56 -05:00
KotlinGeekDev
bd030e2e96
Merge branch 'vitorpamplona:main' into kmp-completeness
2025-12-30 00:39:11 +01:00
Vitor Pamplona
e9d07b3939
Aligns Android studio with gradle files
2025-12-29 17:37:43 -05:00
Vitor Pamplona
d586c39008
Getting rid of some idea files in the repo
2025-12-29 16:21:19 -05:00
Vitor Pamplona
31d7e135cb
Updates kotlin, compose, multiplatform, activity, serialization, media3, mockk, secp256, tor, androidxCamera, stdlib
2025-12-29 14:23:48 -05:00
KotlinGeekDev
5db9384e7f
Foundations(iOS Sourceset): Linter fixes for EventHasherSerializer and Secp256k1Instance.
2025-12-29 19:01:22 +01:00
KotlinGeekDev
4feaec5e00
Foundations(iOS Sourceset): Implement functions(some, basic) for BitSet(with passing tests that use it).
2025-12-29 19:00:00 +01:00
Vitor Pamplona
6054c5700d
Merge pull request #1625 from nrobi144/feat/desktop-multiplatform
...
Create desktopApp module
2025-12-29 10:41:58 -05:00
Vitor Pamplona
d2c8991916
Merge pull request #1627 from greenart7c3/payto_part1
...
Payment targets - part 1
2025-12-29 09:31:45 -05:00
greenart7c3
ff0466872a
Create PaymentTargetEvent
2025-12-29 06:26:25 -03:00
Vitor Pamplona
163632249e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
Quartz Feature Parity Table on Multiplatform
enhanced recording button
translations
bug fix: - Allow reply to reply by using BaseVoiceEvent
TODO: Reply to a reply fails to upload Verify deletion of temp voice files
Code review: - Removed DisposableEffect cleanup - Added cancelUpload() to selectRecording()
TOOD: Move re-record higher up tp avoid google assistant on longpress Reply to a reply fails to upload Verify deletion of temp voice files
Register Route in AppNavigation Modify ReplyViaVoiceReaction to Navigate
Add VoiceReply Route Create VoiceReplyViewModel and VoiceReplyScreen Add String Resource(s)
2025-12-28 12:23:14 -05:00
David Kaspar
7351cf1dd3
Merge pull request #1626 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-28 16:24:52 +00:00
Crowdin Bot
d2164118bc
New Crowdin translations by GitHub Action
2025-12-28 15:59:11 +00:00
Vitor Pamplona
425d07fa8f
Merge pull request #1622 from davotoula/voice-notes-replies
...
Christmas delivery: Voice notes replies
2025-12-28 10:57:52 -05:00
Vitor Pamplona
fe046477f5
Merge pull request #1624 from DestBro/quartz_feature_parity_table_on_multiplatform
...
Quartz Feature Parity Table on Multiplatform
2025-12-28 10:40:40 -05:00
Róbert Nagy
edd0ac9b77
Merge branch 'main' into feat/desktop-multiplatform
2025-12-28 15:43:59 +02:00
nrobi144
0dcd480d43
leftover changes
2025-12-28 07:35:48 +02:00
nrobi144
e407e03e90
update readme
2025-12-28 07:21:36 +02:00
nrobi144
b23ff488ed
refactor: Polish shared commons components and fix formatting
...
- Improve RelayConnectionManager with better connection handling
- Refine UI components (LoginCard, ProfileInfoCard, RelayStatusCard)
- Update KeyInputField with improved layout
- Fix formatting in FeedHeader and AppScreen
- Add proper number formatting utilities
- Remove .claude config from version control
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-28 07:03:57 +02:00
Vitor Pamplona
57a22384b2
Refactoring
2025-12-27 17:57:32 -05:00
Vitor Pamplona
390da16129
Creating a IndexingStrategy interface
2025-12-27 17:55:30 -05:00
Dumitru
71d9f25557
Quartz Feature Parity Table on Multiplatform
2025-12-27 20:41:17 +01:00
Vitor Pamplona
55774b0292
sorting tags before inserting speeds up imports by ~20%
2025-12-27 13:13:46 -05:00
Vitor Pamplona
068ba3b717
Vacuum and Analyze are blocking, so moving to a coroutine.
2025-12-27 12:40:23 -05:00
Vitor Pamplona
d435231f55
Setting cache doesn't seem to do anything :(
2025-12-27 12:38:22 -05:00
Vitor Pamplona
f07070d65e
Fixes test name
2025-12-27 12:12:12 -05:00
Vitor Pamplona
f0b6fa622c
adds vacuum and analyse utility functions
2025-12-27 12:11:58 -05:00
Vitor Pamplona
f9582bb007
Increases cache size to up to 40MB
2025-12-27 12:11:31 -05:00
nrobi144
201acc8140
feat: Extract shared UI components to commons for Android/Desktop reuse
...
Extract reusable components from desktopApp to commons module:
Utilities (commonMain):
- NumberFormatters: countToHumanReadable, countToHumanReadableBytes
- PubKeyFormatter: toShortDisplay, toDisplayHexKey for key formatting
Utilities (jvmAndroid):
- TimeAgoFormatter: Human-readable time formatting for Nostr timestamps
- ZapFormatter: BigDecimal amount formatting with G/M/k suffixes
UI Components (commonMain):
- AppScreen enum for shared navigation
- LoadingState, EmptyState, ErrorState with refresh/retry support
- FeedHeader with relay status indicator
- NoteCard for displaying Nostr notes
- ActionButtons (AddButton, RemoveButton)
- RobohashImage for avatar display
- PlaceholderScreens (Search, Messages, Notifications)
- RelayStatusColors and shared color definitions
UI Components (jvmAndroid):
- LoginCard with key input field
- NewKeyWarningCard for new key backup warnings
- KeyInputField and SelectableKeyText
- ProfileInfoCard for account display
- RelayStatusCard for relay management
Core (jvmAndroid):
- AccountManager with login/logout/key generation
- RelayConnectionManager base class
- RelayStatus and DefaultRelays
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-27 15:12:04 +02:00
nrobi144
e5a064d0c3
feat: Add expect/actual for blurhash and base64Image in commons
...
- Create PlatformImage expect/actual abstracting Bitmap/BufferedImage
- Move pure blurhash algorithms (Base83, SRGB, CosineCache, BlurHashEncoder) to commonMain
- Rewrite BlurHashDecoder to return PlatformImage instead of Bitmap
- Add PlatformImage.toBlurhash() extension in commonMain
- Add platform-specific Bitmap.toBlurhash() and BufferedImage.toBlurhash()
- Add base64Image toPlatformImage() for both Android and JVM
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-27 12:48:32 +02:00
nrobi144
131252f19d
feat: Convert commons module to Kotlin Multiplatform
...
- Rewrite build.gradle.kts for KMP with Android + JVM targets
- Restructure source sets: commonMain, jvmAndroid, androidMain, jvmMain
- Replace android.util.LruCache with androidx.collection.LruCache (KMP-ready)
- Replace android.util.Patterns with local regex constants
- Move shared code to commonMain (icons, hashtags, robohash, compose, etc.)
- Move JVM-shared code to jvmAndroid (richtext, base64Image detection)
- Keep Android-specific code in androidMain (blurhash, bitmap handling)
- Remove @Preview annotations from shared code (Android-only feature)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-27 07:52:45 +02:00
Vitor Pamplona
273d5feb94
- Adds support to delete GiftWraps by p-tag for Deletion and Vanish modules
...
- Adds Query plans to the test cases
- Reduces the amount of indexes that weren't used.
2025-12-26 15:43:51 -05:00
Vitor Pamplona
4455509e32
Converts pubkey to pubkey hash on vanish events.
2025-12-26 14:33:41 -05:00
Vitor Pamplona
5dcac034ac
Uses event_header_row_id as primary key (with index) on event_vanish
2025-12-26 14:32:22 -05:00
Vitor Pamplona
ef5ed755be
Uses primary key to reuse rowId instead of building a separate index.
2025-12-26 14:31:18 -05:00
Vitor Pamplona
720e4d2c87
Forces the use of the index on Addressables and Replaceables
2025-12-26 14:29:10 -05:00
KotlinGeekDev
356b49dba9
Foundations(iOS Sourceset): Implement functions(some, basic) for EventHasherSerializer.
2025-12-26 16:17:58 +01:00
KotlinGeekDev
59c18f6b23
Foundations(iOS Sourceset): Implement secp256k1 instance functions. Small fixes in TestResourceLoader.
2025-12-26 15:27:50 +01:00
nrobi144
59eeb1ff0c
fix: Use configured relays to initiate subscriptions
...
The FeedScreen was waiting for connectedRelays to be non-empty before
subscribing, but relays are only added to the NostrClient pool when
subscriptions request them. This created a deadlock where no relays
would ever connect.
Now uses relayStatuses.keys (configured relays) to initiate the
subscription, which triggers the NostrClient to add those relays
to its pool and connect to them.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-26 14:10:02 +02:00
nrobi144
8c8a4ab9e8
feat: Add relay connections, login, and feed view to desktop app
...
- Add DesktopHttpClient and DesktopRelayConnectionManager for relay WebSocket connections
- Implement AccountManager with key generation and nsec/npub login support
- Create LoginScreen with key import and new key generation UI
- Build FeedScreen with live global feed subscription and note cards
- Add ProfileScreen showing account info and logout
- Update RelaySettingsScreen with connection status and relay management
- Configure JDK 21 toolchain for desktop builds
- Add shared UI analysis documentation
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-26 14:02:44 +02:00
nrobi144
e441a67e2b
fix: Correct compose compiler plugin alias
...
Use jetbrainsComposeCompiler alias to match version catalog.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-26 08:24:38 +02:00
nrobi144
82f8bc62a0
feat: Add Compose Multiplatform Desktop support foundation
...
- Add desktopApp module with JVM entry point and sidebar navigation
- Add Claude specs for AI-assisted development:
- Agent definitions: nostr-protocol, kotlin-multiplatform, compose-ui, kotlin-coroutines
- Skills: quartz-kmp conversion, compose-desktop patterns
- Commands: desktop-run, nip, extract
- Update Gradle configuration with Compose Multiplatform 1.7.1 plugin
- Add coroutines and secp256k1 JVM dependencies to version catalog
Next steps:
- Convert Quartz library to full KMP (expect/actual for crypto)
- Implement relay connections in desktop app
- Share UI components between Android and Desktop
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-26 08:21:02 +02:00
Vitor Pamplona
eeb0c11c65
No need for this create method of GiftWraps to be suspending
2025-12-24 17:10:34 -05:00
Vitor Pamplona
66ea8ceda0
Fixes replaceable test
2025-12-24 17:10:04 -05:00
Vitor Pamplona
77e56f86a9
Using in memory databases for the test cases
2025-12-24 17:09:33 -05:00
Vitor Pamplona
09eeebba94
Keeps the hasher cache on the seed module
2025-12-24 15:28:59 -05:00
Vitor Pamplona
f1298c3133
Removes event id from the deletion module insert
2025-12-24 15:27:38 -05:00
Vitor Pamplona
826308cbad
test addressable filters together with event-id based for deletions and updates
2025-12-24 15:26:43 -05:00
Vitor Pamplona
ff48af5090
Adds a pTagHash utility to the hasher
2025-12-24 15:25:27 -05:00
davotoula
6f8072d1bb
enhanced recording button
2025-12-24 18:37:29 +00:00
davotoula
0a0365c266
translations
2025-12-23 16:28:39 +00:00
davotoula
6785f124e9
bug fix:
...
- Allow reply to reply by using BaseVoiceEvent
2025-12-23 15:04:08 +00:00
davotoula
2422e77dd0
TODO:
...
Reply to a reply fails to upload
Verify deletion of temp voice files
Code review:
- move re-record button higher
2025-12-23 15:04:08 +00:00
davotoula
64fe4dfac6
Code review:
...
- Removed DisposableEffect cleanup
- Added cancelUpload() to selectRecording()
2025-12-23 15:04:08 +00:00
davotoula
9b2ef76250
TOOD:
...
Move re-record higher up tp avoid google assistant on longpress
Reply to a reply fails to upload
Verify deletion of temp voice files
Code review:
- temp file cleanup on disposal
- Made uploads cancellable
- recording must exist; metadata-only no longer enables Send)
- Removed duplication
2025-12-23 15:04:08 +00:00
davotoula
8eee85a05e
Register Route in AppNavigation
...
Modify ReplyViaVoiceReaction to Navigate
2025-12-23 15:04:08 +00:00
davotoula
13e07eb2e8
Add VoiceReply Route
...
Create VoiceReplyViewModel and VoiceReplyScreen
Add String Resource(s)
2025-12-23 15:04:08 +00:00
Vitor Pamplona
aa2f969be6
Faster event serializer -> sha256 -> id comparison without creating intermediary buffers.
2025-12-23 09:39:30 -05:00
Vitor Pamplona
01ea413afd
Faster SQLLite DB with probabilistic hashvalues
2025-12-22 15:18:59 -05:00
Vitor Pamplona
79d6745ee6
Adds faster parsers for Messages and Commands
...
Unwraps inline runCatching because it seems faster for some reason.
2025-12-22 14:52:02 -05:00
David Kaspar
2de4d49fd8
Merge pull request #1620 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-22 20:30:10 +01:00
Crowdin Bot
94f1e45b9a
New Crowdin translations by GitHub Action
2025-12-22 19:20:35 +00:00
Vitor Pamplona
10bba83ee3
Faster Event parsers
2025-12-22 14:18:59 -05:00
Vitor Pamplona
59413f3051
Moves type to the when clause
2025-12-22 12:25:07 -05:00
Vitor Pamplona
23a7e3b535
Fixes kind being a number
2025-12-22 12:23:34 -05:00
Vitor Pamplona
4c1fedddef
Makes runCatching inline
2025-12-22 12:17:55 -05:00
Vitor Pamplona
14a6ba586a
Fixes command parser
2025-12-22 11:19:25 -05:00
Vitor Pamplona
349625f748
simple refactoring
2025-12-22 11:18:28 -05:00
Vitor Pamplona
e278982e6d
Filters correct events
2025-12-22 11:17:43 -05:00
Vitor Pamplona
c7038d695f
Adds new tests for rumor and template serializer
2025-12-22 11:07:01 -05:00
Vitor Pamplona
eefca1e3f4
Removes unnecessary tests
2025-12-22 08:11:55 -05:00
Vitor Pamplona
37158a83dc
Adds a nextLong random method
...
Adds unbounded methods because they are faster.
2025-12-20 12:26:16 -05:00
Vitor Pamplona
e4f3a56851
Removes the Statement cache since statements are not thread safe
2025-12-20 12:25:16 -05:00
Vitor Pamplona
8cbc5f1e93
Faster Array Deserializer
2025-12-19 18:57:12 -05:00
Vitor Pamplona
8d5f866ed0
Merge
2025-12-19 17:47:26 -05:00
Vitor Pamplona
62151727f2
Merge pull request #1619 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-19 17:45:47 -05:00
Vitor Pamplona
7e65f1afa7
Fixes the Imodule dependency
2025-12-19 17:45:31 -05:00
Crowdin Bot
f6890e4e27
New Crowdin translations by GitHub Action
2025-12-19 22:34:14 +00:00
Vitor Pamplona
1dbb5f0c83
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-12-19 17:31:37 -05:00
Vitor Pamplona
664f0d0d59
Adds a Benchmark to simulate a real use on storage operators
2025-12-19 17:29:23 -05:00
Vitor Pamplona
8d15f0478f
Faster MurMur hash for 64bit results.
2025-12-18 17:30:53 -05:00
Vitor Pamplona
fde5d57b16
Faster parseResult array builder
2025-12-18 12:08:05 -05:00
Vitor Pamplona
12beeea8ee
Adds a module interface for the SQL Lite db with drop functions too
2025-12-18 12:01:17 -05:00
Vitor Pamplona
7840bc3318
Uses in memory DB because that's where the performance hits
2025-12-18 11:57:38 -05:00
Vitor Pamplona
d3abc47365
Merge pull request #1618 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-18 09:40:43 -05:00
Crowdin Bot
26124ba10b
New Crowdin translations by GitHub Action
2025-12-18 14:32:20 +00:00
Vitor Pamplona
34355121b1
Merge
2025-12-18 09:28:49 -05:00
Vitor Pamplona
5df019e485
adds kotlin ktx to benchmark
2025-12-18 09:21:40 -05:00
Vitor Pamplona
625a12f4e2
Better way to clear the test db
2025-12-16 18:03:50 -05:00
Vitor Pamplona
9069b11036
small refactoring
2025-12-16 18:03:26 -05:00
Vitor Pamplona
0fb64c5ff7
Fixes new generics on the benchmark classes
2025-12-16 16:57:02 -05:00
Vitor Pamplona
2b865ab56d
Fixes assertions after using generics on event stores query
2025-12-16 15:24:59 -05:00
Vitor Pamplona
759971d139
Merge pull request #1614 from davotoula/cleaner-code-pt2
...
log boolean returned by .delete()
2025-12-16 11:15:52 -05:00
davotoula
3373d3a958
log boolean returned by .delete()
2025-12-16 17:08:44 +01:00
Vitor Pamplona
7c0e0c49d3
Merge pull request #1613 from davotoula/cleaner-code
...
cleaner code
2025-12-16 11:05:26 -05:00
davotoula
aa4270883d
correct way to clear collection
2025-12-16 17:00:00 +01:00
David Kaspar
8a5732cc47
Merge pull request #1612 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-16 15:24:36 +01:00
Crowdin Bot
128155714d
New Crowdin translations by GitHub Action
2025-12-16 13:37:17 +00:00
Vitor Pamplona
7b453076db
Merge pull request #1609 from davotoula/voice-notes
...
Create KIND 1222 (voice notes) in amethyst
2025-12-16 08:35:43 -05:00
Vitor Pamplona
769e92f49d
Merge pull request #1610 from davotoula/get-identity-claim-fixes
...
minor bug fix: getIdentityClaimIcon
2025-12-16 08:33:58 -05:00
Vitor Pamplona
eef3f42d3f
Creating interfaces for multiple EventStores
2025-12-16 08:31:17 -05:00
davotoula
90c8a9df4c
use 0 size reference for all identity icons
...
fix bug (R.string.github vs R.drawable.github)
2025-12-16 12:10:29 +01:00
davotoula
7e1998174c
Delete any existing temp file before replacing
2025-12-16 09:36:24 +01:00
Vitor Pamplona
aa9ac205c1
deletes Db after tests
2025-12-15 22:04:20 -05:00
Vitor Pamplona
7cffdd88bb
Adds additional hashtag filter test for the db
2025-12-15 17:16:52 -05:00
David Kaspar
44f395815d
Merge pull request #1608 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-15 20:33:24 +01:00
davotoula
de927b62bd
translate hardcoded strings
2025-12-15 20:11:00 +01:00
davotoula
3dd4249220
code review: abort posting message if voice upload fails
2025-12-15 19:39:24 +01:00
davotoula
a370112bc5
code review: extract startRecording code
2025-12-15 19:33:08 +01:00
davotoula
09f66359ad
code review: delete temp voice files in removeVoiceMessage(), cancel() and uploadVoiceMessageSync()
2025-12-15 19:17:24 +01:00
davotoula
0f06838c25
code review: replace layout with box (Calling a androidx.compose.ui.UiComposable composable function where a UI Composable composable was expected )
2025-12-15 19:09:09 +01:00
davotoula
2a0eeed55f
code review: remove unsafe casting to avoid app crash if a non-voice reply context leaks through
...
lint fixes
2025-12-15 19:03:58 +01:00
davotoula
555fc983f6
Fix rate conditions between subsequent recordings
...
reduce duplicate code
fix a few coding issues (state management, callback usage, scope management)
2025-12-15 18:35:24 +01:00
davotoula
f3fea8cfb4
Flow: Record, preview, then post or cancel
...
Added media server selection for upload
Added recording indicator
Added upload progress
Text input disabled for voice messages
2025-12-15 18:05:53 +01:00
davotoula
c0d7afe86c
fix potential race condition with previous recorder in method stop
2025-12-15 17:24:45 +01:00
davotoula
8ebd76b77b
add a record voice button to new post screen
2025-12-15 17:10:30 +01:00
Vitor Pamplona
8f9340038b
Removes advertisement by default.
2025-12-15 08:32:31 -05:00
Crowdin Bot
6e7c02c5b6
New Crowdin translations by GitHub Action
2025-12-15 11:15:10 +00:00
David Kaspar
54e6369d41
Merge pull request #1605 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-15 12:13:50 +01:00
Crowdin Bot
8028c7b2d4
New Crowdin translations by GitHub Action
2025-12-14 17:15:06 +00:00
Vitor Pamplona
17f886d661
Merge pull request #1604 from davotoula/optimise-imports-and-lint
...
Optimise imports and lint
2025-12-14 12:13:53 -05:00
davotoula
9ef9fb4b09
amethyst lint
2025-12-14 10:20:25 +01:00
davotoula
c2636e6e2f
amethyst
2025-12-14 10:17:09 +01:00
davotoula
49517e2264
quartz
2025-12-14 10:12:15 +01:00
David Kaspar
86aa23ef3f
Merge pull request #1603 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-14 09:45:45 +01:00
Crowdin Bot
49ec21c243
New Crowdin translations by GitHub Action
2025-12-14 01:45:25 +00:00
Vitor Pamplona
3f26794038
Merge pull request #1602 from DestBro/patch-1
...
Add iosX64 target
2025-12-13 20:44:10 -05:00
Dumitru
3c06e0ffb1
Fix typo iosX64MainTest to iosX64Test
2025-12-13 23:40:55 +01:00
Dumitru
6d7205625a
Add iosX64 target
2025-12-13 23:18:47 +01:00
Vitor Pamplona
83d14bd0e3
Minor adjustments and new benchmarks
2025-12-12 19:51:41 -05:00
Vitor Pamplona
1a63b77a2f
Reduce some variables
2025-12-12 19:41:12 -05:00
Vitor Pamplona
286d9c8347
Improve formatting
2025-12-12 18:24:19 -05:00
Vitor Pamplona
c89ae5782e
small refactoring
2025-12-12 17:45:18 -05:00
Vitor Pamplona
84eb0a9abb
Adds a large array test case
2025-12-12 17:40:38 -05:00
Vitor Pamplona
e1b23e8ea5
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-12-12 17:30:57 -05:00
Vitor Pamplona
7a61217eb6
Fixes rounding loop of MurMur128
2025-12-12 17:29:49 -05:00
David Kaspar
50c7dea2bd
Merge pull request #1601 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-12 23:29:33 +01:00
Crowdin Bot
ed316fb06b
New Crowdin translations by GitHub Action
2025-12-12 21:56:51 +00:00
Vitor Pamplona
95723479d6
Adds MurMur3128bits for x64
2025-12-12 16:54:34 -05:00
Vitor Pamplona
5c01aaf996
Upgrades AGP
2025-12-12 13:25:29 -05:00
Vitor Pamplona
25e9313d17
Reverts interning of all tag sizes due to significant gains in memory usage from large duplicated tags, like r tags with urls
2025-12-11 18:26:27 -05:00
Vitor Pamplona
9bd07468c2
deletes db before tests
2025-12-11 17:13:51 -05:00
Vitor Pamplona
39eed5d85a
reformatting
2025-12-11 17:09:03 -05:00
Vitor Pamplona
ee972cff35
reverts db deletions to avoid conflicts with the open file
2025-12-09 18:02:26 -05:00
Vitor Pamplona
b06f80e862
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
Offers support for external transactions Offers support for indexing strategies for tags
2025-12-09 17:28:43 -05:00
Vitor Pamplona
d0efe26ce7
Offers support for external transactions
...
Offers support for indexing strategies for tags
2025-12-09 17:28:33 -05:00
Vitor Pamplona
26a764a634
Offers support for external transactions
...
Offers support for indexing strategies for tags
2025-12-09 17:15:22 -05:00
Vitor Pamplona
bcebac529b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-12-09 11:02:50 -05:00
Vitor Pamplona
fc03d8032e
Activates recomposition logging in the application class
2025-12-09 11:02:36 -05:00
Vitor Pamplona
15ee49282d
Adds the stability plugin to allow traces in debug
2025-12-09 11:01:03 -05:00
Vitor Pamplona
ac41580ef7
Merge pull request #1599 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-09 10:38:41 -05:00
Crowdin Bot
516c7c93ae
New Crowdin translations by GitHub Action
2025-12-09 14:52:11 +00:00
Vitor Pamplona
d268577443
Adds the missing when clauses due to the change in reports.
2025-12-09 09:49:18 -05:00
Vitor Pamplona
d3fb507faa
Reducing the need to intern large tags
2025-12-09 09:37:49 -05:00
Vitor Pamplona
f4a0cd5af3
The number of params varies but a good limit seems to be 1000. This breaks the tag insert into many 1000 param inserts
2025-12-09 09:20:17 -05:00
Vitor Pamplona
e44322adaa
Speeds up db deletions
2025-12-09 09:05:37 -05:00
Vitor Pamplona
98e818cc60
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-12-08 20:00:12 -05:00
Vitor Pamplona
03f13eeb4b
Improved support for random report types coming from AI
2025-12-08 19:59:59 -05:00
David Kaspar
23747a9334
Merge pull request #1597 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-04 22:47:58 +01:00
Crowdin Bot
5dea9e3cef
New Crowdin translations by GitHub Action
2025-12-04 19:44:01 +00:00
Vitor Pamplona
0abc631773
- Removes compose bom from Quartz to avoid unnecessary dependencies.
...
- Removes old datetime dependencies from Quartz
- Moves compose.runtime dependencies to compose.runtime.annotation
- Adds dependency on coroutines directly (instead of through compose runtime)
- Removes old secp256 target dependencies
- Adds Default scope for NostrClient and Relay Authenticator
- Updates readme
2025-12-04 14:41:33 -05:00
Vitor Pamplona
03633c70ca
Adds link to quartz versions in the readme
2025-12-03 15:24:32 -05:00
Vitor Pamplona
67eb47adb1
Updates Tor, Compose, Activity
2025-12-03 15:23:47 -05:00
Vitor Pamplona
0cea52ca80
Shows WoT Followers in each user profile
2025-12-02 19:23:13 -05:00
Vitor Pamplona
e7c1925c76
Shows WoT Followers
2025-12-02 19:15:51 -05:00
Vitor Pamplona
bb77163955
Adds WoT scores for public chat and live stream screens
2025-12-02 18:56:07 -05:00
Vitor Pamplona
cc679e3d6b
Using banner without the user header for Follow packs because the user is already listed in the bottom of the card.
2025-12-02 18:33:10 -05:00
Vitor Pamplona
1125c4e8f5
Creates a new size for the score tag due to the size of DM Group headers
2025-12-02 18:20:06 -05:00
Vitor Pamplona
aa1aaeea38
Adds scores to the notification cards
2025-12-02 18:07:29 -05:00
Vitor Pamplona
742fa14286
Fixes size of the score in the dm screen
2025-12-02 17:35:41 -05:00
Vitor Pamplona
7f741260d1
Adds a cache system for WoT scores
2025-12-02 16:59:16 -05:00
Vitor Pamplona
9e1f863a67
Refactoring
2025-12-02 16:53:47 -05:00
Vitor Pamplona
72dc9368fb
Fixes missing emit for null events
2025-12-02 16:05:23 -05:00
Vitor Pamplona
71dc25099e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
fix lint warnings
add custom serializer that accepts both single integers and arrays add tests
New Crowdin translations by GitHub Action
updated cz, de, pt, sv
2025-12-02 15:16:39 -05:00
Vitor Pamplona
ab44d5daf5
Removing the generalist approach of ptag-mentions
2025-12-02 15:16:14 -05:00
Vitor Pamplona
e6861ea988
Removes expired addressable events.
2025-12-02 15:13:29 -05:00
Vitor Pamplona
62bf7db348
Adds the about user proerty of Contact Card
2025-12-02 15:07:07 -05:00
Vitor Pamplona
0a76405d90
Merge pull request #1596 from davotoula/bugfix-Unexpected-JSON-token
...
Bugfix: unexpected json token
2025-12-02 08:55:00 -05:00
davotoula
70b36d64b5
fix lint warnings
2025-12-02 12:57:56 +01:00
davotoula
24bd1d0c97
add custom serializer that accepts both single integers and arrays
...
add tests
2025-12-02 12:53:51 +01:00
David Kaspar
e41c3284ff
Merge pull request #1595 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-02 12:28:52 +01:00
Crowdin Bot
03b646cb33
New Crowdin translations by GitHub Action
2025-12-02 09:28:01 +00:00
David Kaspar
80593e28db
Merge pull request #1594 from davotoula/update-translations
...
updated cz, de, pt, sv
2025-12-02 10:26:32 +01:00
davotoula
9435ba9b14
updated cz, de, pt, sv
2025-12-02 10:15:06 +01:00
Vitor Pamplona
39223f0270
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-12-01 18:19:18 -05:00
Vitor Pamplona
4332f311b3
- Removing user reports flow
...
- Integrates LocalCache.consume report into the consumeRegularEvent practice
2025-12-01 18:16:37 -05:00
Vitor Pamplona
3d984d8917
Merge pull request #1593 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-12-01 17:52:48 -05:00
Crowdin Bot
30b6fff4d4
New Crowdin translations by GitHub Action
2025-12-01 22:51:23 +00:00
Vitor Pamplona
5062c10849
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
Remove delay, and implement custom moving function that updates the list in one event, rather than two with the previous approach.
Increase delay time in moveBookmark. Need to find a better alternative to delay.
String resources.
Re-introduce display stats for bookmark list, focusing on total bookmarks size per category.
Support moving articles/posts from private to public and vice versa.
2025-12-01 17:47:01 -05:00
Vitor Pamplona
8b5676bd39
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst: (23 commits)
Fix default permissions
Add Bookmark group metadata edit to routes/nav. Make refactors to make use of it.
Bookmark group metadata edit screen, with VM and string resources. Add methods to LabeledBookmarkListEvent and LabeledBookmarkListsState. Support image urls in LabeledBookmarkList.
String resources. Remove unneeded Todo.
Add bookmark list addition/removal to the note dropdown menu.
Article Bookmark management screen. Add routes and nav entries for both screens.
Post Bookmark management screen.
Other Hashtag/Link related refactors.
Remove HashtagListView and LinksListView due to spec changes, with their entries in BookmarkType.
Use stringResources. Implement the necessary callbacks in BookmarkGroupScreen. Disable component stats display in BookmarkGroupItem until Link/Hashtag support is implemented.
Bring ArticleListView up to speed. Fix callback naming mistake in BookmarkGroupItemOptions and refactor usages accordingly.
First category-based screen: PostListView. Modify NoteCompose to use a different note options menu when in the PostListView.
Fix some methods in LabeledBookmarkListsState. Add useful methods to LabeledBookmarkList and BookmarkGroupViewModel.
Introduce BookmarkGroupScreen, with it's associated ViewModel, and the different category-based views.
Move BookmarkType to an enum instead, for serialization purposes.
Slight function name refactor in LabeledBookmarkListsState, and inclusion of a method to reference a particular bookmark group. Add route for viewing a bookmark group, and wire UI accordingly.
Change the UI of BookmarkGroupItem to add buttons for viewing parts of the bookmark group.
Add support for LabeledBookmarkListEvent in the LocalCache, and EventFactory(to prevent crashes when creating one).
Add bookmark groups option to side menu. Make them work by hooking them up in Account.
Build out UI for the list of labeled bookmarks, or bookmark groups, borrowing some components from elsewhere.
...
2025-12-01 17:46:14 -05:00
Vitor Pamplona
4c43bc99da
Merge pull request #1591 from KotlinGeekDev/bookmark-groups-improvements
...
Bookmark groups improvements.
2025-12-01 17:46:08 -05:00
Vitor Pamplona
13aa96faef
Refactoring report caching.
2025-12-01 17:45:21 -05:00
KotlinGeekDev
80947207ab
Remove delay, and implement custom moving function that updates the list in one event, rather than two with the previous approach.
2025-11-28 16:14:47 +01:00
KotlinGeekDev
bf6109d18b
Increase delay time in moveBookmark. Need to find a better alternative to delay.
2025-11-28 15:21:58 +01:00
KotlinGeekDev
19a499f6cc
Merge branch 'main' into bookmark-groups-improvements
2025-11-28 13:37:54 +00:00
Vitor Pamplona
2db23b5f7f
Merge pull request #1592 from greenart7c3/main
...
Fix duplicated default permissions
2025-11-28 07:16:22 -05:00
greenart7c3
7c4ad3abb7
Fix default permissions
2025-11-28 05:43:52 -03:00
KotlinGeekDev
b4431aab54
String resources.
2025-11-28 04:52:45 +01:00
KotlinGeekDev
cd62b0a722
Re-introduce display stats for bookmark list, focusing on total bookmarks size per category.
2025-11-28 04:43:59 +01:00
KotlinGeekDev
194f57acc3
Support moving articles/posts from private to public and vice versa.
2025-11-28 04:31:08 +01:00
Vitor Pamplona
74193a006d
Merge pull request #1586 from KotlinGeekDev/labeled-bookmarks
...
Bookmark Lists.
2025-11-27 08:17:45 -05:00
KotlinGeekDev
cd0a0405a9
Add Bookmark group metadata edit to routes/nav. Make refactors to make use of it.
2025-11-27 07:19:04 +01:00
KotlinGeekDev
0f21c72936
Bookmark group metadata edit screen, with VM and string resources. Add methods to LabeledBookmarkListEvent and LabeledBookmarkListsState. Support image urls in LabeledBookmarkList.
2025-11-27 07:08:08 +01:00
KotlinGeekDev
576d20723d
Merge remote-tracking branch 'origin/labeled-bookmarks' into labeled-bookmarks
2025-11-26 22:45:50 +01:00
KotlinGeekDev
2e5b55a213
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-26 21:45:35 +00:00
KotlinGeekDev
07f82d3a22
String resources. Remove unneeded Todo.
2025-11-26 22:44:16 +01:00
KotlinGeekDev
a0bff70dc2
Add bookmark list addition/removal to the note dropdown menu.
2025-11-26 22:25:59 +01:00
KotlinGeekDev
5742968f4c
Article Bookmark management screen. Add routes and nav entries for both screens.
2025-11-26 22:22:50 +01:00
KotlinGeekDev
e8f55c6456
Post Bookmark management screen.
2025-11-26 22:21:10 +01:00
KotlinGeekDev
b00eb413fa
Other Hashtag/Link related refactors.
2025-11-26 19:49:16 +01:00
KotlinGeekDev
6fc5084931
Remove HashtagListView and LinksListView due to spec changes, with their entries in BookmarkType.
2025-11-26 19:47:42 +01:00
Vitor Pamplona
1155e7d5b1
Using real keys to preview
2025-11-26 11:00:04 -05:00
Vitor Pamplona
b776957d0e
Reverts to 500 posts to load in the Profile screen (too many replies in some users)
2025-11-26 10:59:47 -05:00
Vitor Pamplona
f29a6337a0
Removing unused methods in User
2025-11-25 16:56:04 -05:00
Vitor Pamplona
0ad1d75fe7
Improving font size of the WoT Score
2025-11-25 16:47:53 -05:00
Vitor Pamplona
f76638f077
Adds a way to view WoT scores
2025-11-25 15:47:08 -05:00
Vitor Pamplona
fd628fffd2
Removes Contact cards from filter since it wasn't returning anything (user is in the d tag, not p or author)
2025-11-25 15:46:51 -05:00
Vitor Pamplona
ff8b441bf6
Increases max pool of SHA 256 processors
2025-11-25 15:02:50 -05:00
Vitor Pamplona
7981ecc82c
Adds pre-caching for trust providers
2025-11-25 11:03:00 -05:00
KotlinGeekDev
925506269d
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-25 11:35:01 +00:00
Vitor Pamplona
0c864b7c76
fixes wong kind
2025-11-24 11:18:27 -05:00
Vitor Pamplona
1bfe1e4844
Adds TrustProvider loader to the account filter
2025-11-24 11:03:32 -05:00
Vitor Pamplona
1e00c08f7d
Fixes ConcurrentExceptions on Event outbox tentative management
2025-11-24 10:50:58 -05:00
Vitor Pamplona
4f019c6e49
Removes ConcurrentModificationException on outbox events
2025-11-24 10:01:05 -05:00
Vitor Pamplona
5e7f938442
Merge pull request #1589 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-22 12:18:52 -05:00
Crowdin Bot
5fb309d00c
New Crowdin translations by GitHub Action
2025-11-22 17:16:30 +00:00
Vitor Pamplona
83639a5991
Merge pull request #1587 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-22 12:15:14 -05:00
KotlinGeekDev
d1fe0cb941
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-22 02:45:27 +00:00
Crowdin Bot
f3938fb336
New Crowdin translations by GitHub Action
2025-11-21 22:18:06 +00:00
Vitor Pamplona
d12a8ba1c1
Revert runTest because the wait to get results back fails in the function
2025-11-21 17:16:08 -05:00
Vitor Pamplona
382de9ba03
Fixing new remember rules
2025-11-21 16:51:21 -05:00
Vitor Pamplona
25094be07c
Puts flow creation inside a remember
2025-11-21 16:43:32 -05:00
Vitor Pamplona
ad879fcf63
Fix test
2025-11-21 16:42:07 -05:00
Vitor Pamplona
50f91e8b91
Updates dependencies
2025-11-21 16:37:56 -05:00
Vitor Pamplona
1f3bd7614e
Moves account loading to the IO thread
2025-11-21 16:37:48 -05:00
Vitor Pamplona
c5fae65f2d
Moves temporaryAccount handler to lazy loading
2025-11-21 15:31:02 -05:00
Vitor Pamplona
2bff998340
Moves from List to Set of Trust Provider
2025-11-21 15:18:31 -05:00
KotlinGeekDev
f103fe9c79
Merge conflict-resolved changes from upstream
2025-11-21 19:09:50 +01:00
KotlinGeekDev
dae8544938
Fix some conflicts
2025-11-21 18:44:24 +01:00
KotlinGeekDev
b4aca59372
Use stringResources. Implement the necessary callbacks in BookmarkGroupScreen. Disable component stats display in BookmarkGroupItem until Link/Hashtag support is implemented.
2025-11-21 18:19:41 +01:00
Vitor Pamplona
ffe88a5364
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
add a convertExeptions function
added response helper
check for error result
create a RemoteSignerManager
add a fromBunkerUri helper
add a signer result interface for remote signer
implement the functions of nip46
return BunkerResponse from connect
- Add connect, getPublivKey and ping - send NostrConnectEvent to relays
- Add connect, getPublivKey and ping - send NostrConnectEvent to relays
Create NostrSignerRemote
2025-11-21 11:30:51 -05:00
Vitor Pamplona
0d7f2ce838
Adds support for Trust Provider lists
2025-11-21 11:29:46 -05:00
KotlinGeekDev
26c66a97b5
Bring ArticleListView up to speed. Fix callback naming mistake in BookmarkGroupItemOptions and refactor usages accordingly.
2025-11-21 14:51:53 +01:00
KotlinGeekDev
808030d176
First category-based screen: PostListView. Modify NoteCompose to use a different note options menu when in the PostListView.
2025-11-21 14:20:57 +01:00
KotlinGeekDev
267d680ffc
Fix some methods in LabeledBookmarkListsState. Add useful methods to LabeledBookmarkList and BookmarkGroupViewModel.
2025-11-21 14:11:55 +01:00
Vitor Pamplona
058e8ab833
Merge pull request #1555 from greenart7c3/nip46
...
Support for nip 46
2025-11-20 14:53:17 -05:00
Vitor Pamplona
23d1e94ddf
Moves the prepare video call to IO
2025-11-18 19:12:21 -05:00
Vitor Pamplona
89d7e52dc4
Avoids blinking image space in the screen
2025-11-18 18:07:08 -05:00
Vitor Pamplona
2f93aa8777
Moves the QR Code screen from Dialog to full Route
2025-11-18 17:56:04 -05:00
Vitor Pamplona
6f0c65d84c
Merge pull request #1583 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-18 17:26:42 -05:00
Crowdin Bot
07ce3d5e5f
New Crowdin translations by GitHub Action
2025-11-18 22:20:37 +00:00
Vitor Pamplona
ba541129ba
Merge pull request #1582 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-18 17:19:45 -05:00
Vitor Pamplona
b9d4805d56
Merge pull request #1581 from StellarStoic/main
...
ui: center QR dialog content and reduce excessive top spacing
2025-11-18 17:19:36 -05:00
Crowdin Bot
302aee325f
New Crowdin translations by GitHub Action
2025-11-18 22:19:14 +00:00
Vitor Pamplona
3b648a1d9f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
Open njump.to, iris.to, zap.stream and shosho.live in Amethyst
2025-11-18 17:17:09 -05:00
Vitor Pamplona
a36d35912a
Manages the pool state without having to loop through relays, saving some milliseconds of processing.
2025-11-18 17:12:39 -05:00
Vitor Pamplona
326f059d1e
Removes logging for connected and available relay dump
2025-11-18 16:00:28 -05:00
StellarStoic
3762fb7b2a
ui: center QR dialog content and reduce excessive top spacing
2025-11-18 13:23:36 +01:00
Vitor Pamplona
653e70070c
Merge pull request #1580 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-17 16:55:12 -05:00
Crowdin Bot
941f890e46
New Crowdin translations by GitHub Action
2025-11-17 21:49:41 +00:00
Vitor Pamplona
a0bd0bb619
Merge pull request #1579 from kirpy0x/UpdateNostrLinks
...
Open njump.to, iris.to, zap.stream and shosho.live in Amethyst
2025-11-17 16:48:31 -05:00
kirpy
be2d976124
Open njump.to, iris.to, zap.stream and shosho.live in Amethyst
2025-11-17 12:55:10 -07:00
KotlinGeekDev
c48436b0a6
Introduce BookmarkGroupScreen, with it's associated ViewModel, and the different category-based views.
2025-11-17 18:51:39 +01:00
KotlinGeekDev
c50c3f26c8
Move BookmarkType to an enum instead, for serialization purposes.
2025-11-17 18:17:16 +01:00
Vitor Pamplona
ae22f4685d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
New Crowdin translations by GitHub Action
user correct overlad that accepts argument
New Crowdin translations by GitHub Action
2025-11-17 08:15:49 -05:00
David Kaspar
84694d8a36
Merge pull request #1578 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-17 13:48:05 +01:00
Crowdin Bot
f73046e652
New Crowdin translations by GitHub Action
2025-11-17 12:46:11 +00:00
David Kaspar
3727bc408b
Merge pull request #1577 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-17 13:44:52 +01:00
Crowdin Bot
69ea1c8e51
New Crowdin translations by GitHub Action
2025-11-17 11:10:43 +00:00
David Kaspar
43fba40076
Merge pull request #1576 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-17 12:09:20 +01:00
greenart7c3
a6f3e09a6c
add a convertExeptions function
2025-11-17 07:07:49 -03:00
greenart7c3
7dce71d8fa
added response helper
2025-11-17 07:07:49 -03:00
greenart7c3
c2f2dc46d9
check for error result
2025-11-17 07:07:49 -03:00
greenart7c3
e02dfce152
create a RemoteSignerManager
2025-11-17 07:07:48 -03:00
greenart7c3
55b4ddc453
add a fromBunkerUri helper
2025-11-17 07:07:48 -03:00
greenart7c3
8d529e1ea9
add a signer result interface for remote signer
2025-11-17 07:07:48 -03:00
greenart7c3
b2f2a409c3
implement the functions of nip46
2025-11-17 07:07:48 -03:00
greenart7c3
aee6ffdbf5
return BunkerResponse from connect
2025-11-17 07:07:48 -03:00
greenart7c3
da85e59424
- Add connect, getPublivKey and ping
...
- send NostrConnectEvent to relays
2025-11-17 07:07:47 -03:00
greenart7c3
e6f109de74
- Add connect, getPublivKey and ping
...
- send NostrConnectEvent to relays
2025-11-17 07:07:47 -03:00
greenart7c3
df1bf82e76
Create NostrSignerRemote
2025-11-17 07:07:46 -03:00
Crowdin Bot
f5d8b9df8b
New Crowdin translations by GitHub Action
2025-11-17 07:53:24 +00:00
David Kaspar
2c3da65063
Merge pull request #1574 from davotoula/bugfix-placeholder-not-replaced-with-value
...
Bugfix: use correct overload that accepts argument
2025-11-17 08:52:03 +01:00
David Kaspar
4e6b3a142b
Merge pull request #1575 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-16 19:26:09 +01:00
Crowdin Bot
976ff9970a
New Crowdin translations by GitHub Action
2025-11-16 16:50:25 +00:00
David Kaspar
c5073303ba
Merge pull request #1573 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-16 17:49:05 +01:00
davotoula
3b81490ac1
user correct overlad that accepts argument
2025-11-16 17:43:59 +01:00
KotlinGeekDev
eb8b19ceb9
Slight function name refactor in LabeledBookmarkListsState, and inclusion of a method to reference a particular bookmark group. Add route for viewing a bookmark group, and wire UI accordingly.
2025-11-16 15:40:46 +01:00
Vitor Pamplona
4f5acc5c29
Updates to the latest zapstore config
2025-11-15 17:57:03 -05:00
Crowdin Bot
5f6e65f768
New Crowdin translations by GitHub Action
2025-11-15 22:35:09 +00:00
Vitor Pamplona
ae6f37a52f
v1.04.2 to appease the PlayStore
2025-11-15 17:28:55 -05:00
Vitor Pamplona
f6e0124734
Merge pull request #1571 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-15 16:55:10 -05:00
Crowdin Bot
b6a7d9146f
New Crowdin translations by GitHub Action
2025-11-15 21:52:58 +00:00
Vitor Pamplona
8492a597c5
Merge pull request #1570 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-15 16:52:28 -05:00
Vitor Pamplona
5264bd2cbc
v1.04.1
2025-11-15 16:51:45 -05:00
Crowdin Bot
f630c34045
New Crowdin translations by GitHub Action
2025-11-15 21:51:29 +00:00
Vitor Pamplona
042ff4c5ed
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-11-15 16:49:33 -05:00
Vitor Pamplona
f7e72c57d3
Turn the Pay zaps via intent dialog into a full screen with route
2025-11-15 16:41:47 -05:00
Vitor Pamplona
fef78cd557
Fixes test case for payload type
2025-11-15 16:41:02 -05:00
Vitor Pamplona
673d8d2c30
Makes sure the Zap the Devs dialog doesn't appear behind the status bar
2025-11-15 16:11:58 -05:00
Vitor Pamplona
414aef1818
Merge pull request #1569 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-15 15:41:18 -05:00
Crowdin Bot
bbc4f4281a
New Crowdin translations by GitHub Action
2025-11-15 20:30:16 +00:00
Vitor Pamplona
14e3098924
Fixes deserialization issues with old jsons that didn't have these properties
2025-11-15 15:27:57 -05:00
Vitor Pamplona
7742e27780
Moves all hashtags to lowercase and unfollows with ignore case just in case some other client added in uppercase
2025-11-15 15:20:56 -05:00
Vitor Pamplona
a1879a93df
sending a new version for quartz
2025-11-15 12:26:38 -05:00
Vitor Pamplona
a86f64fce5
Fixes release Id for the zap the devs button
2025-11-15 12:01:17 -05:00
Vitor Pamplona
075a92a709
Version 1.04
2025-11-15 11:45:26 -05:00
Vitor Pamplona
67d6b9e350
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-11-15 11:34:05 -05:00
Vitor Pamplona
f7fd1e79f0
Improves creation of lists for users that had none
2025-11-15 11:26:35 -05:00
Vitor Pamplona
01afb0aeeb
Merge pull request #1568 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-15 11:11:35 -05:00
Crowdin Bot
d777e94aad
New Crowdin translations by GitHub Action
2025-11-15 16:09:40 +00:00
Vitor Pamplona
1bd2b2168f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
updated cz, de, pt, sv
New Crowdin translations by GitHub Action
2025-11-15 11:08:00 -05:00
Vitor Pamplona
719e34ea8d
Less jarring delete buttons on lists
2025-11-15 11:04:13 -05:00
Vitor Pamplona
78c13a7d29
Minor changes to the change log
2025-11-15 10:36:44 -05:00
David Kaspar
61d4f3000f
Merge pull request #1567 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-15 13:21:09 +01:00
Crowdin Bot
22c8ecefed
New Crowdin translations by GitHub Action
2025-11-15 12:15:13 +00:00
David Kaspar
8995c7a51d
Merge pull request #1566 from davotoula/update-translations
...
updated cz, de, pt, sv
2025-11-15 13:14:06 +01:00
David Kaspar
ef267acee2
Merge pull request #1565 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-15 13:13:49 +01:00
davotoula
cbf9effcf4
updated cz, de, pt, sv
2025-11-15 09:38:00 +01:00
KotlinGeekDev
37b6f84d9f
Merge remote-tracking branch 'origin/labeled-bookmarks' into labeled-bookmarks
2025-11-15 03:36:28 +01:00
Crowdin Bot
007f512cc4
New Crowdin translations by GitHub Action
2025-11-15 00:20:39 +00:00
Vitor Pamplona
96ee6baa8f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-11-14 19:18:33 -05:00
Vitor Pamplona
f400cc6088
Adds a change log
2025-11-14 19:07:52 -05:00
KotlinGeekDev
f1c3a881f1
Change the UI of BookmarkGroupItem to add buttons for viewing parts of the bookmark group.
2025-11-14 20:12:02 +01:00
KotlinGeekDev
822d464a6e
Add support for LabeledBookmarkListEvent in the LocalCache, and EventFactory(to prevent crashes when creating one).
2025-11-14 19:45:32 +01:00
KotlinGeekDev
34e5e7de5b
Add bookmark groups option to side menu. Make them work by hooking them up in Account.
2025-11-14 19:38:48 +01:00
Vitor Pamplona
23299b5ef3
half-way contrast for placeholder texts
2025-11-13 18:25:49 -05:00
David Kaspar
88a3e2a74b
Merge pull request #1563 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-13 19:17:56 +01:00
Crowdin Bot
e5fe63d630
New Crowdin translations by GitHub Action
2025-11-13 15:53:22 +00:00
Vitor Pamplona
e6a10e07c4
Correctly adding relays to the filters so that the Global feed can filter only events that came from the relays listed in the Global filter.
2025-11-13 10:50:13 -05:00
Vitor Pamplona
19846e7ff3
Improves the composition of NIP-05 lines
2025-11-13 10:49:29 -05:00
Vitor Pamplona
05af3a78e4
Increases the contrast of placeholder text
2025-11-13 10:45:58 -05:00
Vitor Pamplona
c9370f8d02
Better parse multiple imetas with multiple urls into appropriate properties
2025-11-13 10:45:28 -05:00
Vitor Pamplona
f186b78ca9
Adds test case for empty d-tags in naddr1
2025-11-13 10:30:26 -05:00
Vitor Pamplona
abcaf19d2b
removes zapstr.live
2025-11-13 09:11:20 -05:00
Vitor Pamplona
43fbf4f40f
Removes filestr
2025-11-13 09:11:09 -05:00
Vitor Pamplona
9f66cd0660
Opens Follow Packs on following.space
2025-11-13 09:10:56 -05:00
Vitor Pamplona
b80f24b587
Upgrades dependencies
2025-11-13 08:42:07 -05:00
KotlinGeekDev
5068247807
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-13 09:15:43 +00:00
Vitor Pamplona
ee52f10192
removes unecessary list of icons option from drawer
2025-11-12 18:19:28 -05:00
Vitor Pamplona
8d41b58167
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-11-12 17:26:17 -05:00
Vitor Pamplona
ac291c996c
Adds on click to the UserProfile selections
2025-11-12 17:21:46 -05:00
Vitor Pamplona
29d11c8281
Moves the List/Pack creation Dialog to a screen and adds an Image upload option
2025-11-12 17:17:22 -05:00
Vitor Pamplona
e2c50847d0
Merge pull request #1562 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-12 14:21:30 -05:00
Crowdin Bot
b339e3a245
New Crowdin translations by GitHub Action
2025-11-12 19:20:01 +00:00
Vitor Pamplona
8963024a95
Fixes Jump on FollowPack screens
2025-11-12 14:18:01 -05:00
Vitor Pamplona
27bc950afb
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-11-12 14:12:26 -05:00
Vitor Pamplona
0ddbb4616b
Adds creation, edits and member update for Follow Packs
2025-11-12 13:50:57 -05:00
Vitor Pamplona
adb484bf56
Improves descriptions of lists and packs
2025-11-12 13:18:18 -05:00
Vitor Pamplona
bd30b526a9
Adds a @Stable marker on UserSuggestionState s
2025-11-12 12:34:49 -05:00
Vitor Pamplona
ce49725771
Allows customization of the Create new list dialog
2025-11-12 12:34:11 -05:00
Vitor Pamplona
6c64297415
Adds an update method for changes in current Event
2025-11-12 12:33:35 -05:00
Vitor Pamplona
90330165d2
Prepares to create follow packs
2025-11-12 12:33:10 -05:00
David Kaspar
fe876de4c9
Merge pull request #1561 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-12 15:13:05 +01:00
Crowdin Bot
b17d709696
New Crowdin translations by GitHub Action
2025-11-12 13:32:00 +00:00
Vitor Pamplona
8554257329
Change reqResultsInOrderAsFlow to reqAsFlow
2025-11-12 08:29:05 -05:00
Vitor Pamplona
9eee5d9e1e
slight performance improvement on the reqflow
2025-11-12 08:27:59 -05:00
Vitor Pamplona
b4810fd12c
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
2025-11-11 19:29:10 -05:00
Vitor Pamplona
bf803384a8
This early decryption doesn't seem needed anymore. The event consumer in the account will take care of decrypting the new DM
2025-11-11 19:01:52 -05:00
Vitor Pamplona
e8eb4c688c
Modifies the flow to only output changes in the relay piece that has modified.
2025-11-11 19:01:20 -05:00
Vitor Pamplona
a5207c3f0a
adds recursive markAsSeen to mark the inner chat element of NIP-17 DMs for each relay that that message was received.
2025-11-11 19:00:49 -05:00
Vitor Pamplona
ce073553ee
Makes sure the edit is Stable
2025-11-11 18:59:34 -05:00
Vitor Pamplona
dd97dfc67f
Merge pull request #1560 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-11 17:08:06 -05:00
Vitor Pamplona
1cfe953a65
Refactors the code to avoid using callback lambdas
2025-11-11 16:37:15 -05:00
Vitor Pamplona
d4b91845d5
rename runIOCatching to launchSigner
2025-11-11 16:10:49 -05:00
Crowdin Bot
a114bf9dfa
New Crowdin translations by GitHub Action
2025-11-11 21:05:02 +00:00
Vitor Pamplona
b14c588a34
Moves the dispatcher of the save event for server models from each of the viewmodels to the account view model since the scope gets cancelled when the screen closes.
2025-11-11 16:01:19 -05:00
Vitor Pamplona
1589b646a8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
updated cz, de, pt, sv
2025-11-11 16:00:15 -05:00
Vitor Pamplona
8c3ab80e47
More correctly parses null and default values from NIP-55 using Jackson
2025-11-11 14:00:17 -05:00
David Kaspar
4690f59922
Merge pull request #1556 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-11 09:12:24 +01:00
Crowdin Bot
255389aa3c
New Crowdin translations by GitHub Action
2025-11-11 07:58:56 +00:00
David Kaspar
cf756669e5
Merge pull request #1557 from davotoula/update-translations
...
updated cz, de, pt, sv
2025-11-11 08:57:39 +01:00
davotoula
d7ca9d5a82
updated cz, de, pt, sv
2025-11-11 08:53:04 +01:00
Vitor Pamplona
5f88249be6
Creates a feed filter option for only kind 3 users
2025-11-10 19:45:39 -05:00
Vitor Pamplona
db354b646f
Adds context to the highlights
2025-11-10 18:42:17 -05:00
Vitor Pamplona
17fdf05847
Fixes the author of the highlight
2025-11-10 18:00:32 -05:00
Vitor Pamplona
ddfe61eb9f
adds description to the follow card ui
2025-11-10 17:36:07 -05:00
Vitor Pamplona
8bdd9d0979
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
updated cz, de, pt, sv
New Crowdin translations by GitHub Action
Update strings.xml
# Conflicts:
# amethyst/src/main/res/values/strings.xml
2025-11-10 17:12:11 -05:00
Vitor Pamplona
bd1a70039a
Creates a feed for follow packs
2025-11-10 17:02:21 -05:00
KotlinGeekDev
0c06bd4271
Build out UI for the list of labeled bookmarks, or bookmark groups, borrowing some components from elsewhere.
2025-11-10 19:34:55 +01:00
David Kaspar
87599b7e59
Merge pull request #1554 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-10 18:22:12 +01:00
Crowdin Bot
5762490098
New Crowdin translations by GitHub Action
2025-11-10 17:03:42 +00:00
David Kaspar
e634040504
Merge pull request #1553 from davotoula/update-translations
...
updated cz, de, pt, sv
2025-11-10 18:02:10 +01:00
davotoula
15e7909222
updated cz, de, pt, sv
2025-11-10 18:01:16 +01:00
Vitor Pamplona
ffaa06fed7
Adds an option to render a user gallery from HexKeys instead of full User objects
2025-11-10 11:18:18 -05:00
Vitor Pamplona
58128d9ad0
Making Channel metadata view model stable for performance
2025-11-10 11:17:22 -05:00
Vitor Pamplona
011aebfc27
Moving preview EmptyNav to a class to avoid Nav auto-imports in production code.
2025-11-10 11:17:04 -05:00
Vitor Pamplona
7230f67782
Merge pull request #1552 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-10 08:02:31 -05:00
Crowdin Bot
93e80dda83
New Crowdin translations by GitHub Action
2025-11-10 12:54:37 +00:00
Vitor Pamplona
0505011eab
Merge pull request #1551 from maxblake2015/main
...
Update strings.xml
2025-11-10 07:53:07 -05:00
KotlinGeekDev
d029c9eca0
Merge remote-tracking branch 'origin/labeled-bookmarks' into labeled-bookmarks
2025-11-09 22:13:47 +01:00
KotlinGeekDev
1d49ee3d57
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-09 21:13:32 +00:00
KotlinGeekDev
751cbdcaa9
Introduce LabeledBookmarkList and a full implementation for LabeledBookmarkListsState.
2025-11-09 22:12:54 +01:00
KotlinGeekDev
d5a2910029
Add support for descriptions in LabeledBookmarkListEvent. Make function names clearer, and add modification functions.
2025-11-09 22:11:12 +01:00
Max Blake
ea83dc3fd7
Update strings.xml
...
a small logical correction
2025-11-08 12:22:45 +00:00
Vitor Pamplona
948180157f
pushes exception upward if triggered
2025-11-07 17:37:34 -05:00
Vitor Pamplona
a996065c05
Creates new observer for events with null option
2025-11-07 17:27:41 -05:00
Vitor Pamplona
c328a3aefe
Refactors event observer name to a more precise one
2025-11-07 17:26:20 -05:00
Vitor Pamplona
6ccec0681a
Marks address as stable
2025-11-07 17:23:53 -05:00
Vitor Pamplona
26a6b5d219
- Inverts public and private tabs
...
- adds number of users in the tab title
2025-11-06 16:19:43 -05:00
Vitor Pamplona
d17f39e85b
Fixes naming cropping the menu icon
2025-11-06 16:18:29 -05:00
Vitor Pamplona
2ac5a57efe
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
optimise imports
synchronize all cache mutations and supply sinceRelaySet so callers get snapshot copies rework groupByRelayPresence to build relay snapshots via sinceRelaySet, filtering with immutable lists to prevent ConcurrentModificationException when relays update mid-iteration
Hardened EOSEAccountFast against concurrent access so callers no longer iterate over live mutable maps
Adjusted subscription cleanup to avoid mutating the watcher map while iterating it, preventing the ConcurrentModificationException when accounts switch
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/ui/note/UserCompose.kt
2025-11-06 15:15:34 -05:00
Vitor Pamplona
6727bd0430
Improves padding of the ListItem interfaces
2025-11-06 14:15:59 -05:00
Vitor Pamplona
34aca458ed
migrates to njump.to
2025-11-06 13:49:15 -05:00
KotlinGeekDev
3613bed5fa
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-06 16:22:38 +00:00
Vitor Pamplona
ba082d86e2
Merge pull request #1550 from davotoula/reduce-errors-ConcurrentModificationException
...
Reduce errors in log: concurrent modification exception
2025-11-06 09:50:22 -05:00
davotoula
409b3b43f7
optimise imports
2025-11-06 10:19:32 +01:00
davotoula
545cd2ff6d
synchronize all cache mutations and supply sinceRelaySet so callers get snapshot copies
...
rework groupByRelayPresence to build relay snapshots via sinceRelaySet,
filtering with immutable lists to prevent ConcurrentModificationException when relays update mid-iteration
2025-11-06 10:12:07 +01:00
davotoula
a82d6565fa
Hardened EOSEAccountFast against concurrent access so callers no longer iterate over live mutable maps
2025-11-06 10:12:07 +01:00
davotoula
c07202944d
Adjusted subscription cleanup to avoid mutating the watcher map while iterating it, preventing the ConcurrentModificationException when accounts switch
2025-11-06 10:12:07 +01:00
KotlinGeekDev
19fa7e25d5
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-06 01:35:11 +00:00
Vitor Pamplona
178582f3c4
Showing the list option in all Follow Buttons
2025-11-05 19:03:01 -05:00
Vitor Pamplona
c2c3442b74
Fixes showing the list of people button when the user is blocked
2025-11-05 19:02:45 -05:00
Vitor Pamplona
43942891b7
Changes the following marker to be a follow from all lists and follow sets
2025-11-05 18:02:49 -05:00
Vitor Pamplona
fc488064b7
Changes animations for profile buttons to come from the bottom of the screen
2025-11-05 17:58:56 -05:00
Vitor Pamplona
4535966c32
Refactoring of class names and breaking down bigger files into many
2025-11-05 17:48:16 -05:00
Vitor Pamplona
83f460c01d
Selects the full text when adding users to list
2025-11-05 17:06:59 -05:00
Vitor Pamplona
6c630c75c2
Improves design of the lists and User management screen.
2025-11-05 16:40:20 -05:00
Vitor Pamplona
8d33ea8f99
Remove description from top nav bar of the list
2025-11-05 16:39:59 -05:00
Vitor Pamplona
558d952a00
Generalize List counters
2025-11-05 16:39:37 -05:00
Vitor Pamplona
1eb2309952
sort by title instead
2025-11-05 16:39:07 -05:00
Vitor Pamplona
0ffbbee31a
Switch to vector graphics
2025-11-05 16:04:03 -05:00
Vitor Pamplona
ed8b285700
Sort lists by identifier
2025-11-05 15:54:01 -05:00
Vitor Pamplona
452082c6cb
Fixes multiline list name
2025-11-05 15:53:47 -05:00
KotlinGeekDev
7accbc198b
Merge branch 'vitorpamplona:main' into labeled-bookmarks
2025-11-05 20:25:46 +00:00
Vitor Pamplona
8168d353dd
Improves the look of the list of lists of people screen
2025-11-05 14:11:15 -05:00
KotlinGeekDev
e2df96ea4b
Introduce LabeledBookmarkListEvent.
2025-11-05 17:51:12 +01:00
Vitor Pamplona
59cdb222d5
Removes the Mute List from the All Follows TopNav option
2025-11-05 10:51:10 -05:00
Vitor Pamplona
712965cc8f
Fixes the unfollow button on profile (removes the follow signal including all lists for now)
...
Also fixes spacing of the Follow button
2025-11-04 19:50:57 -05:00
Vitor Pamplona
5741914c2a
Fixes User profile banner being off place in short images
2025-11-04 19:41:23 -05:00
Vitor Pamplona
b8cce80d9f
Updates all libs
2025-11-04 19:41:05 -05:00
Vitor Pamplona
7dfa343ad8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
* 'main' of https://github.com/vitorpamplona/amethyst :
New Crowdin translations by GitHub Action
code simplification and deduplication
code simplification and deduplication
Add blurhash and dim to Nip96Uploader.kt
added blurhash to blossom upload
New Crowdin translations by GitHub Action
Update README to mark video capture as complete
Parse for video segments and exclude them from image gallery
add VideoSegment and failing tests
Fix location being added to note even after deselecting it
optimise imports
New Crowdin translations by GitHub Action
update cs, de, sv, pt translations
Revert "update buffer to 64kb"
update buffer to 64kb
Change length to Long from Int: avoids potential overflow, Long seems to be used everywhere else
Create a CountingInputStream utility to avoid duplication Prevent INT overflow in BlossomUploader.kt Connection Cleanup in ImageDownloader.kt Added try-finally in Sha256Hasher.jvmAndroid.kt
Add streaming hash utility function to quartz multiplatform, follow the existing pool/worker design Change hashing in ImageDownloader.kt to use streaming
stream file to calculate both hash and size without loading it all at once
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/lists/followsets/FollowSetScreen.kt
2025-11-04 19:28:45 -05:00
Vitor Pamplona
be804092d7
- Refactors people lists
...
- Adds people and follow list cache on the account class
- Updates TopNav to use the new caching
- Removes redundant viewModels for list feeds
- Adds the ability to add and remove users from the List screen
2025-11-04 19:24:24 -05:00
Vitor Pamplona
50b551bb80
Updates emoji and user autocomplete state to use Account and avoid linking AccountViewModel
2025-11-04 19:21:04 -05:00
Vitor Pamplona
7c439f2448
Merge pull request #1549 from davotoula/optimise-imports
...
Optimise imports
2025-11-03 14:06:59 -05:00
davotoula
5ce184d400
Merge branch 'main' into optimise-imports
2025-11-03 19:45:12 +01:00
Vitor Pamplona
bda1fcadf8
Merge pull request #1548 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-03 12:47:34 -05:00
Crowdin Bot
379e539e89
New Crowdin translations by GitHub Action
2025-11-03 17:39:48 +00:00
Vitor Pamplona
f14b545947
Merge pull request #1531 from davotoula/1530-added-streaming-hashing-utility-to-avoid-OOM-on-large-files
...
Fix OutOfMemoryError for Large File Uploads
2025-11-03 12:38:38 -05:00
Vitor Pamplona
b8fff0c428
Merge pull request #1546 from davotoula/1537-dont-include-video-media-in-image-gallery
...
dont include video media in image gallery
2025-11-03 12:37:53 -05:00
davotoula
942de50148
code simplification and deduplication
2025-11-02 20:37:20 +01:00
davotoula
76be7b0d58
code simplification and deduplication
2025-11-02 19:56:38 +01:00
davotoula
4b260cfc07
Add blurhash and dim to Nip96Uploader.kt
2025-11-02 18:25:49 +01:00
davotoula
eee1487883
added blurhash to blossom upload
2025-11-02 18:25:49 +01:00
David Kaspar
27380f276c
Merge pull request #1547 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-11-01 19:26:09 +01:00
Crowdin Bot
f62b1667c3
New Crowdin translations by GitHub Action
2025-11-01 18:22:14 +00:00
David Kaspar
eb4f0b9af9
Update README to mark video capture as complete
2025-11-01 18:20:58 +00:00
davotoula
7c374fb586
Parse for video segments and exclude them from image gallery
2025-11-01 16:37:38 +01:00
davotoula
1e12decd36
add VideoSegment and failing tests
2025-11-01 16:23:35 +01:00
Vitor Pamplona
1411de32a0
Adds search of events and addresses in the Deletion Event
2025-10-31 18:43:45 -04:00
Vitor Pamplona
7ea61824c8
Moves filter interfaces to their own files
2025-10-31 18:41:41 -04:00
Vitor Pamplona
f0923fb393
Fixes crash when checking and creating new users from tags.
2025-10-31 18:38:29 -04:00
Vitor Pamplona
3eb662851b
Adds a flatten to set utility
2025-10-31 18:36:05 -04:00
Vitor Pamplona
f9bd660774
Merge pull request #1545 from greenart7c3/main
...
Fix location being added to note even after deselecting it
2025-10-31 08:26:00 -04:00
greenart7c3
bdb2637803
Fix location being added to note even after deselecting it
2025-10-31 06:34:49 -03:00
davotoula
c3c75b46a7
optimise imports
2025-10-30 19:20:02 +01:00
David Kaspar
3c7104fb6a
Merge pull request #1544 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-30 19:19:05 +01:00
Crowdin Bot
c111912d2f
New Crowdin translations by GitHub Action
2025-10-30 17:56:08 +00:00
David Kaspar
0f4e514308
Merge pull request #1543 from davotoula/update-tr
...
update cs, de, sv, pt translations
2025-10-30 18:54:44 +01:00
davotoula
ccf9d4ce80
update cs, de, sv, pt translations
2025-10-30 18:19:38 +01:00
Vitor Pamplona
95cc0783fd
Adds a req that returns the list of events in order of arrival
2025-10-29 18:30:00 -04:00
Vitor Pamplona
f9f7cdf12f
Renames internal Req objects
2025-10-29 18:29:23 -04:00
Vitor Pamplona
40d417038e
adds a Start request to the req listener
2025-10-29 18:28:59 -04:00
Vitor Pamplona
895562b4a9
Simplifies readme
2025-10-29 18:28:38 -04:00
Vitor Pamplona
b8511b5ac3
Adds simplified methods to create Requests from NostrClient
2025-10-29 16:51:49 -04:00
Vitor Pamplona
40ce627de0
Merge
2025-10-29 15:57:48 -04:00
Vitor Pamplona
56a856cf71
Better filter for People Lists
2025-10-29 15:55:33 -04:00
Vitor Pamplona
904b8c445f
Merge pull request #1540 from davotoula/1535-dont-use-own-follow-sets-for-follows-check
...
only check follow sets when user1 is the logged-in user
2025-10-29 15:47:30 -04:00
davotoula
3a744b9c1d
only check follow sets when user1 is the logged-in user
2025-10-29 20:33:39 +01:00
Vitor Pamplona
6d8b5fa85d
Moves message button to Profile Actions
2025-10-29 15:19:11 -04:00
Vitor Pamplona
a913194c41
Updates deprecated Clipboard manager
2025-10-29 15:18:57 -04:00
Vitor Pamplona
a9ebf561e7
Merge pull request #1539 from greenart7c3/main
...
Fix DecryptZapRequest CommandType
2025-10-29 14:00:05 -04:00
greenart7c3
fb7610cafd
Fix DecryptZapRequest CommandType
2025-10-29 14:38:54 -03:00
Vitor Pamplona
cd35c8e30e
uses faster spotless check on commits
2025-10-29 12:20:37 -04:00
Vitor Pamplona
f3209d2415
Moves SettingsCategory to take integers instead of Strings
2025-10-29 12:19:38 -04:00
Vitor Pamplona
d44b24936c
Activates reverse scrolling for the new post screen in order to avoid hiding the cursor behind the keyboard when typing long texts.
2025-10-29 11:23:09 -04:00
Vitor Pamplona
a9aadb60fc
Merge pull request #1538 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-29 09:56:13 -04:00
Crowdin Bot
59f2cdcb2f
New Crowdin translations by GitHub Action
2025-10-29 13:21:40 +00:00
Vitor Pamplona
00eb6ee3f1
Adds a missing outbox popup on posting new notes
2025-10-28 19:09:24 -04:00
Vitor Pamplona
09e4b2ea44
Fixes inconsistent relay lists
2025-10-28 18:41:43 -04:00
Vitor Pamplona
f8b920a128
Adds a popup to warn users of the lack of inbox relays
2025-10-28 13:12:36 -04:00
Vitor Pamplona
0705ee9581
Unifying the parser for the tag array
2025-10-28 13:05:57 -04:00
Vitor Pamplona
bf664ea0c5
Avoids interning of large strings and objects where the duplication is not common
2025-10-28 12:18:19 -04:00
Vitor Pamplona
39f3aef7b5
Don't intern signatures, content and tags since they are not usually duplicated
2025-10-28 12:11:34 -04:00
davotoula
7254dce3a9
Revert "update buffer to 64kb"
...
This reverts commit 4e31a9a5ac .
2025-10-26 10:25:40 +01:00
davotoula
4e31a9a5ac
update buffer to 64kb
2025-10-26 00:09:17 +02:00
davotoula
d01f6a2178
Change length to Long from Int: avoids potential overflow, Long seems to be used everywhere else
2025-10-25 23:54:56 +02:00
davotoula
2332623cde
Create a CountingInputStream utility to avoid duplication
...
Prevent INT overflow in BlossomUploader.kt
Connection Cleanup in ImageDownloader.kt
Added try-finally in Sha256Hasher.jvmAndroid.kt
2025-10-25 23:43:24 +02:00
davotoula
93994564f6
Add streaming hash utility function to quartz multiplatform, follow the existing pool/worker design
...
Change hashing in ImageDownloader.kt to use streaming
2025-10-25 23:22:31 +02:00
davotoula
e1c54f52e3
stream file to calculate both hash and size without loading it all at once
2025-10-25 21:24:12 +02:00
Vitor Pamplona
371d3bf0f7
Improves paddings, language and add stickiness backgrounds
2025-10-24 19:08:26 -04:00
Vitor Pamplona
b0e7082ec6
Solves crash when the same user is in the private and public part of the list
2025-10-24 19:07:31 -04:00
Vitor Pamplona
34971211f1
Better icon padding
2025-10-24 19:06:36 -04:00
Vitor Pamplona
b065956aec
Normalize thicknesses of the divisors
2025-10-24 19:05:35 -04:00
Vitor Pamplona
36f79ca581
Correct animations for the list screens
2025-10-24 19:02:52 -04:00
Vitor Pamplona
7aeb4e7582
Enabling more threads in debug
2025-10-24 18:51:18 -04:00
Vitor Pamplona
25d6562500
Solving lack of stream name
2025-10-24 18:08:39 -04:00
Vitor Pamplona
67e3b05a42
Uses the new nostrnwc deep link for connections
2025-10-24 17:53:31 -04:00
Vitor Pamplona
a157c60697
update compose
2025-10-24 14:59:06 -04:00
Vitor Pamplona
50d63a0501
making sure the disappearing modifier is not doing anything when the top or bottom bars are not present.
2025-10-23 19:24:23 -04:00
Vitor Pamplona
e1cbfbb280
Fixes large top bars on these screens
2025-10-23 17:46:26 -04:00
Vitor Pamplona
b6aec40e9a
New Disappearing Top, Bottom and Action Scaffold
2025-10-23 17:45:21 -04:00
Vitor Pamplona
e70a191191
No need for disappearing scaffolds in these screens
2025-10-23 17:42:10 -04:00
Vitor Pamplona
59a5a15866
Merge pull request #1528 from davotoula/image-gallery-improve-layout
...
Image gallery improve layout
2025-10-23 09:13:44 -04:00
davotoula
b82145ac10
Merge branch 'main' into image-gallery-improve-layout
2025-10-23 15:01:29 +02:00
Vitor Pamplona
ee80361478
- Removes the deprecated hacks from Contact Lists
...
- Removes the use of kind 3 to show hashtags which fixes issues when people unfollowing the hashtag and it would just affect the InterestListEvent
2025-10-22 18:31:00 -04:00
Vitor Pamplona
2d551d4adf
Fixes the visual references to communities and hashtags in the top right of the post
2025-10-22 18:27:53 -04:00
Vitor Pamplona
35da3b4efe
Makes sure the list of geohashes and hashtags use lowercase words
2025-10-22 18:26:52 -04:00
Vitor Pamplona
5306dd52d7
spotless needs to clean the compiled files to compute all unused imports
2025-10-22 16:29:47 -04:00
Vitor Pamplona
2ada3855d0
Remove imports
2025-10-22 16:28:20 -04:00
Vitor Pamplona
cabdfea8f9
No need to avoid annotations with test
2025-10-22 16:28:10 -04:00
Vitor Pamplona
d9c0a9af43
Reactivates removing imports on ktint by default
2025-10-22 16:27:52 -04:00
Vitor Pamplona
a7c846f641
Removes NIP-04 DMs with hidden words from the Notification screen
2025-10-22 16:16:15 -04:00
davotoula
f7ed4d2aaa
NEEDS testing:
...
Swapped the local var orientation by remember { mutableStateOf(...) } for an explicit MutableState: we now create orientationState = remember(firstImage) { mutableStateOf(...) }, update it with
orientationState.value = …, and return orientationState.value.
2025-10-22 09:32:26 +01:00
Vitor Pamplona
031e604923
Only avoids sending a message for the request state if it is a new open request
2025-10-21 20:17:04 -04:00
Vitor Pamplona
551bd344e0
Makes sure to trigger null pointer exception on message deserializer
2025-10-21 20:15:48 -04:00
Vitor Pamplona
c21b2ca60f
Removes the choice of Dispatchers from Quartz
2025-10-21 20:15:05 -04:00
Vitor Pamplona
db1d5c7e82
Adds the user outbox relays when loading addressables by that user.
2025-10-21 20:09:13 -04:00
Vitor Pamplona
17618ac361
Fixes bug when loading users
2025-10-21 19:29:43 -04:00
Vitor Pamplona
bf94d0d91c
For reports, only use the outbox relay if the user has it. (don't use our default bootstrapping relays)
2025-10-21 19:09:58 -04:00
Vitor Pamplona
66096e5b98
Allows an empty metadata to reload everything about the user
2025-10-21 19:09:25 -04:00
Vitor Pamplona
c8a608718c
Merge
2025-10-21 18:42:11 -04:00
Vitor Pamplona
df54f7bb67
Moves all Dispatchers.Default to IO because of the amount of Synchronized code that blocks the thread underneath each coroutine and since Default only has the exact number of threads the processor offers, once they block, we lose computing power
2025-10-21 18:30:08 -04:00
David Kaspar
5b230a4c9b
Merge branch 'main' into image-gallery-improve-layout
2025-10-22 00:10:34 +02:00
Vitor Pamplona
d8907e3dfb
Caches the User object to avoid being deleted by the soft reference on Local Cache
2025-10-21 17:52:45 -04:00
Vitor Pamplona
889e3d63ff
Merge pull request #1527 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-21 16:06:01 -04:00
Crowdin Bot
5f7b318647
New Crowdin translations by GitHub Action
2025-10-21 20:04:21 +00:00
Vitor Pamplona
e2b2b10994
- Separates a relay failure tracker to a module
...
- Updates finding the outbox relay set to include the set of connected relays before all of the relays.
2025-10-21 15:55:32 -04:00
davotoula
a055f473cb
prevent race condition: Added a state-aware rememberFirstImageOrientation helper so each gallery watches the cache until the first image’s real aspect ratio is known
2025-10-21 15:56:18 +01:00
davotoula
c735c358bb
extracted common logic
2025-10-21 15:47:20 +01:00
davotoula
50cbbb55b6
three images case: test for aspect ratio of first image and adapt gallery based on that
2025-10-21 15:41:40 +01:00
davotoula
103845225b
two images case: test for aspect ratio of first image and adapt gallery based on that
2025-10-21 15:19:35 +01:00
Vitor Pamplona
a27df3a9b6
Improving click and long press interactions with the relay list item and status bar items
2025-10-21 09:19:11 -04:00
Vitor Pamplona
d51d1f4453
Updates OkHttp, Tor and Spotless back
2025-10-21 08:38:53 -04:00
Vitor Pamplona
f899d446bc
Merge
2025-10-21 08:37:53 -04:00
Vitor Pamplona
c1295ed97f
Reverts composable naming conventions on spotless
2025-10-21 08:34:29 -04:00
Vitor Pamplona
774c5412d3
Merge pull request #1526 from davotoula/revert-spotless-plugin
...
revert spotless plugin version
2025-10-21 08:32:47 -04:00
davotoula
38d5527b91
revert spotless plugin (need to find a solution for @Composable function names)
...
Remove unused imports
2025-10-21 12:47:42 +01:00
Vitor Pamplona
1ce352e69f
Changes the icon of account preferences to translation for now
2025-10-20 21:00:11 -04:00
Vitor Pamplona
bf3e5c4568
no need for this anymore
2025-10-20 20:57:20 -04:00
Vitor Pamplona
200db73ce4
remove fmt.wiz.biz from bootstrap relays
2025-10-20 20:22:58 -04:00
Vitor Pamplona
2d1fd4a48a
Remove companions
2025-10-20 20:22:37 -04:00
Vitor Pamplona
a0cb2a7db6
Creates a default relay list for indexers in new accounts
2025-10-20 20:22:20 -04:00
Vitor Pamplona
382319addf
Adds a declared follows state
2025-10-20 20:21:18 -04:00
Vitor Pamplona
37625987c1
Only listens to notification changes when the UI is visible
2025-10-20 19:41:27 -04:00
Vitor Pamplona
63bd0b6cae
Watches the okHttp client for web calls (only active when screen is visible)
2025-10-20 19:40:04 -04:00
Vitor Pamplona
48a69f1d26
Watches the correct OKHttp for relays
2025-10-20 19:39:33 -04:00
Vitor Pamplona
f663bb78aa
Reduce error log sizes
2025-10-20 18:41:43 -04:00
Vitor Pamplona
a163c4188f
Adjustments to the lazy initialization of the app
2025-10-20 18:41:00 -04:00
Vitor Pamplona
fabec35593
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-10-20 17:13:25 -04:00
Vitor Pamplona
e4ce7415a3
Don't use "when" when just one line is needed
2025-10-20 17:13:11 -04:00
Vitor Pamplona
911fdffa95
Turns the EOSE class into a mutable map for speed
2025-10-20 17:12:36 -04:00
Vitor Pamplona
3a73de6828
Separates the new GaleryParser from Composables so that later we can cache it and parse it on the Default thread.
2025-10-20 17:12:12 -04:00
Vitor Pamplona
c4653b147c
Adds new benchmark cases
2025-10-20 17:10:08 -04:00
Vitor Pamplona
cbba2fe423
Merge pull request #1525 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-18 18:14:05 -04:00
Crowdin Bot
8aa7c57a24
New Crowdin translations by GitHub Action
2025-10-18 22:13:15 +00:00
Vitor Pamplona
e45b4b11dc
Restructuring Relay systems to:
...
- Maintain order of incoming messages for relay listeners
- Defers all processing of incoming messages to coroutines via channels, freeing OkHttp's thread as soon as possible.
- Simplifies the main relay class by using attached listener modules for each function of the relay client.
- Migrate defaultOnConnect calls to become listener based and moved to NostrClients
- Treat counts as query only, not subscriptions.
- Coordinates REQs so that if an update is required to be sent but the server has not finished processing events, waits for it to finish and sends it later as soon as EOSE or Close arrives
- Correctly sustain the local state of each Req.
- Creates an Account follow list per Relay state that only includes shared relays as a better source of functioning relays
- Changes UserLoading features in a tentative to make them faster since they are used by all functions in the app.
- Correctly marks EOSE for filters that are aligned with the Req State from NostrClient
- Avoid subsequent REQ updates before EOSE or CLOSE calls.
- Refactoring RelayClient listener to be not dependent of which module is active for a relay client.
- Refactors authenticators to do complete operation as a module
- Breaks down Relay Client modules (Auth, Reqs, Counts, Event submissions) in the Relay Pool class.
- Creates listeners just for special REQ situations
- Move statistics to outside the base relay class as a listener
- Move logs to outside the base relay class as a listener
- Better structures a Standalone Relay client
- More appropriately communicate errors to the listeners
- Remove relay state on listeners
2025-10-18 18:10:45 -04:00
Vitor Pamplona
e20afd39a3
Removing onClosing listener because it isn't being used.
2025-10-18 17:12:10 -04:00
Vitor Pamplona
4c633c7dec
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-10-18 08:44:21 -04:00
Vitor Pamplona
97fc10d6ea
Increases local video disk cache to 1GB
2025-10-17 18:00:38 -04:00
Vitor Pamplona
b8d0f057c5
Adds a way to remove everyone but some keys from the list of EOSEs
2025-10-17 14:30:13 -04:00
Vitor Pamplona
990cca3d64
Moving the EmptyOTS resolver to Quartz for test cases
2025-10-17 14:29:46 -04:00
Vitor Pamplona
4a0c924d4f
Merge pull request #1524 from davotoula/use-runTest-instead-of-runBlocking
...
change from runBlocking to runTest where appropriate
2025-10-15 18:57:42 -04:00
davotoula
5d6e7d1921
change from runBlocking to runTest where appropriate
2025-10-15 21:00:00 +02:00
Vitor Pamplona
563e985a2b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-10-14 16:13:16 -04:00
David Kaspar
50adf82d90
Merge pull request #1523 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-14 22:11:49 +02:00
Vitor Pamplona
7a05f527dd
Moving Log.java to Log.kt
2025-10-14 15:18:45 -04:00
Vitor Pamplona
0668f2caa4
Updates Compose, Firebase, GMS, JNA, mock, okhttp, secp256, spotless, vico, zoomable, androidXCamera
2025-10-14 14:38:28 -04:00
Vitor Pamplona
4af576f5f4
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-10-14 14:15:38 -04:00
Crowdin Bot
fdbf261455
New Crowdin translations by GitHub Action
2025-10-14 17:43:52 +00:00
Vitor Pamplona
e422dcda50
Merge pull request #1519 from davotoula/1516-Private-Public-Bookmark-Removal-Issue
...
Private public bookmark removal issue
2025-10-14 13:42:42 -04:00
David Kaspar
a210bd1c8f
Merge pull request #1522 from davotoula/update-translations
...
Updated cs, se, de, pt
2025-10-14 19:23:26 +02:00
davotoula
49f77af3e8
Updated cs, se, de, pt
2025-10-14 18:59:54 +02:00
David Kaspar
7d22ef0d12
Merge pull request #1521 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-14 17:58:02 +02:00
Crowdin Bot
deee1a1c85
New Crowdin translations by GitHub Action
2025-10-14 13:50:15 +00:00
Vitor Pamplona
7a1dcbc76e
Merge pull request #1520 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-14 09:49:15 -04:00
Vitor Pamplona
68264f2c7f
Merge pull request #1518 from davotoula/bugfix-dont-render-gallery-for-mixed-images-and-videos
...
Bugfix: dont render gallery for mixed images and videos
2025-10-14 09:49:06 -04:00
Vitor Pamplona
b1d3aa968d
Merge branch 'main' into bugfix-dont-render-gallery-for-mixed-images-and-videos
2025-10-14 09:48:58 -04:00
Crowdin Bot
2ebdedafaa
New Crowdin translations by GitHub Action
2025-10-14 13:47:57 +00:00
Vitor Pamplona
4ffc121003
Merge pull request #1517 from davotoula/fix-streamable-videos
...
Use latest LightCompressor-enhanced
2025-10-14 09:46:37 -04:00
Vitor Pamplona
a4f1e45aac
Merge pull request #1507 from KotlinGeekDev/followset-improvements
...
More follow set improvements.
2025-10-14 09:46:07 -04:00
davotoula
3a3d1a6f25
bugfix: don't remove from public bookmarks when removing from private
2025-10-14 13:31:27 +02:00
davotoula
85bdf67ac3
added failing test: Public tags should be preserved when removing from private bookmarks
2025-10-14 13:21:46 +02:00
KotlinGeekDev
9e991f8a49
Fix user removal functions, by updating them to take into account backend modifications made earlier.
2025-10-13 21:31:22 +01:00
KotlinGeekDev
e6c841373b
String resources. Remove unused string resource in other locale-specific files, to avoid much work.
2025-10-13 21:04:42 +01:00
KotlinGeekDev
ba756c9acd
Take into account profile membership when removing profile.
2025-10-13 20:30:18 +01:00
davotoula
349156f380
fix: Only render as gallery if all segments are images
2025-10-13 19:32:25 +02:00
davotoula
133c897731
Added junit and mockK for androidTest UI dependencies
...
Added failing androidTest for mixed image/video parsing
2025-10-13 18:38:14 +02:00
davotoula
13402fa5d4
Use lightcompressor-enhanced 1.6.0 release
2025-10-13 09:25:11 +02:00
davotoula
2a3c31cc5b
Use latest LightCompressor-enhanced:
...
Fix for Progressive download
Replaced obsolete MP4 parser libraries with native MediaMuxer/MediaCodec
2025-10-12 21:13:12 +02:00
Vitor Pamplona
5fcf0c5938
Using a week as the default cut off for notifications from random relays.
2025-10-10 12:54:58 -04:00
Vitor Pamplona
0fab3afea2
Moves static relay stats to a injectable object
2025-10-10 11:38:22 -04:00
Vitor Pamplona
0bc38c1fa4
Removes sub stats from the Subscription controller to move outside.
2025-10-10 11:34:25 -04:00
Vitor Pamplona
0c0410d1dd
Adds an isValid function to all commands so we can check before sending
2025-10-10 11:33:18 -04:00
Vitor Pamplona
fa971b1822
Removes stats from Orchestrator to move out of the inner classes and be an option for app developers instead.
2025-10-10 11:31:32 -04:00
Vitor Pamplona
24f7d76dc4
Adds a Count reply message to relays
2025-10-10 11:17:43 -04:00
Vitor Pamplona
973cfd24fa
Creates our own Coil Logger to minimize trash stacks in the logs
2025-10-10 10:56:25 -04:00
Vitor Pamplona
5c09cd0b55
Rejects additional urls with %20 and fixes Wss ones.
2025-10-10 10:55:46 -04:00
Vitor Pamplona
5975130824
Avoids logging at the BasicOkHttp level
2025-10-10 10:51:09 -04:00
Vitor Pamplona
0a23e23801
Moves quartz to Java 21 due to binary inconsistencies between the multiple builds of KMP (tests conflicting with main)
2025-10-10 10:49:35 -04:00
Vitor Pamplona
a0c1b01a4b
Adds a build template option for NIP42 auths
2025-10-10 10:48:39 -04:00
Vitor Pamplona
0708936c23
Mocks the android log on test cases
2025-10-10 10:47:59 -04:00
KotlinGeekDev
ac60e3d221
String resources.
2025-10-09 20:13:00 +01:00
KotlinGeekDev
3c622f544c
Make a method specially for cloning/copying. Refactor createListWithDescription().
2025-10-09 19:55:40 +01:00
KotlinGeekDev
a8d01e3667
Put in the relevant code in PeopleListEvent. Use DescriptionTag instead of manual construction.
2025-10-09 17:02:42 +01:00
KotlinGeekDev
9aa5f1bd9f
Add support for modifying follow set descriptions.
2025-10-09 16:56:40 +01:00
KotlinGeekDev
192a257780
Merge branch 'vitorpamplona:main' into followset-improvements
2025-10-08 01:53:14 +00:00
Vitor Pamplona
0045426840
Fixes a bug of not loading some notification message kinds
2025-10-06 19:15:48 -04:00
Vitor Pamplona
0ab7dd9797
Adds test cases for the new sub map filters.
2025-10-06 18:55:23 -04:00
Vitor Pamplona
a6e4a8d4fc
Performance improvement for the address serializer.
2025-10-06 18:05:03 -04:00
Vitor Pamplona
5f59f1ab41
Adds submap queries to the addressable large cache
2025-10-06 18:04:37 -04:00
KotlinGeekDev
049430cd2e
Merge branch 'vitorpamplona:main' into followset-improvements
2025-10-06 21:25:27 +00:00
Vitor Pamplona
b546294078
getOrCreateUser already checks for Hex64. No need to do it twice
2025-10-06 15:44:13 -04:00
Vitor Pamplona
456ef86c85
Speeding up OkHttp startup
2025-10-06 15:17:37 -04:00
Vitor Pamplona
b8ad2961b9
Speeds up loading of the Follow lists in start up by using the new isHex64 method
2025-10-06 15:04:12 -04:00
Vitor Pamplona
0348454e36
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-10-06 14:47:00 -04:00
Vitor Pamplona
b55cdda52a
Makes the order of the Tor Relay settings match across data objects
2025-10-06 14:42:25 -04:00
Vitor Pamplona
8c93560058
Fixes trusted relay lists incorrectly only using DM relays
2025-10-06 14:41:56 -04:00
David Kaspar
72b800bfb4
Merge pull request #1514 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-06 19:19:40 +01:00
Crowdin Bot
4a6dbd4ba5
New Crowdin translations by GitHub Action
2025-10-06 18:18:10 +00:00
David Kaspar
52686c3488
Merge pull request #1513 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-06 19:16:56 +01:00
David Kaspar
d8613da3ad
Merge branch 'main' into l10n_crowdin_translations
2025-10-06 19:16:34 +01:00
Crowdin Bot
bea393c4ef
New Crowdin translations by GitHub Action
2025-10-06 17:34:07 +00:00
Vitor Pamplona
cf4104292c
Merge pull request #1511 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-06 13:32:25 -04:00
Vitor Pamplona
deaaa30b92
Merge pull request #1512 from davotoula/fix-nwc-string-deleted-on-restart
...
BUGFIX: Fix nwc string deleted on restart
2025-10-06 13:32:13 -04:00
davotoula
1fdf869c05
create putOrRemove overload for Nip47URI?
2025-10-06 18:56:12 +02:00
davotoula
701acb004f
remove unnecessary suspend
2025-10-06 18:52:14 +02:00
davotoula
341994e505
The putOrRemove(key: String, event: Any?) signature loses type information. When JsonMapper.toJson() tries to serialize, it sees Any? and can't find the serializer for Nip47URI, causing:
...
SerializationException: Serializer for class 'Any' is not found
2025-10-06 18:50:15 +02:00
KotlinGeekDev
c432a54561
Merge branch 'vitorpamplona:main' into followset-improvements
2025-10-06 10:40:57 +00:00
KotlinGeekDev
55198b1546
Move one last string to string resources.
2025-10-06 11:39:43 +01:00
Crowdin Bot
b9d369a88c
New Crowdin translations by GitHub Action
2025-10-06 08:01:52 +00:00
David Kaspar
6c72c36b9a
Merge pull request #1510 from davotoula/update-translations
...
Update local versions of CS, DE since crowdin only uses those?
2025-10-06 09:00:33 +01:00
David Kaspar
369aab2c0c
Merge pull request #1509 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-06 09:00:14 +01:00
davotoula
e129796418
Update local versions of CS, DE since crowdin only uses those?
2025-10-06 09:54:40 +02:00
KotlinGeekDev
eb99febb2b
Merge branch 'vitorpamplona:main' into followset-improvements
2025-10-04 06:48:59 +00:00
Crowdin Bot
da79d5b0ba
New Crowdin translations by GitHub Action
2025-10-03 22:39:37 +00:00
Vitor Pamplona
0843d5db95
Separates EOSE for drafts alone.
2025-10-03 18:37:48 -04:00
Vitor Pamplona
df77bd6633
Only loads drafts if the account is writeable.
2025-10-03 18:18:16 -04:00
Vitor Pamplona
cf8c8e47a2
Creates an option to ignore reconnection relays that should be used when the network settings change.
2025-10-03 18:03:04 -04:00
Vitor Pamplona
26462a150e
Makes sure the scope is cancelled when the NostrClient is done
2025-10-03 18:01:34 -04:00
Vitor Pamplona
66a5412961
Migrates fDroid flavor to the new version of the markdown
2025-10-03 17:08:16 -04:00
Vitor Pamplona
93f33cca70
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
# Conflicts:
# gradle/libs.versions.toml
# quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/accessories/NostrClientSendAndWaitExt.kt
2025-10-03 16:46:03 -04:00
Vitor Pamplona
4b959577f0
Corrects follow list logs for performance and uses the right scope
2025-10-03 16:37:20 -04:00
Vitor Pamplona
88747ad1b7
Improves log messages in the relay services
2025-10-03 16:35:10 -04:00
Vitor Pamplona
13d05dc599
Loads the main account in parallel faster before the screen needs it
2025-10-03 15:59:43 -04:00
Vitor Pamplona
b002f9f37e
Uses the new isHex64 in the ContactList
2025-10-03 15:58:38 -04:00
Vitor Pamplona
7994945209
30% Faster isHex for strings with 64 bytes.
2025-10-03 15:58:01 -04:00
Vitor Pamplona
9085f4bbea
Merge pull request #1508 from greenart7c3/main
...
Fix sendAndWaitForResponse never receiving a response
2025-10-03 13:03:10 -04:00
greenart7c3
beff7e60b7
Fix sendAndWaitForResponse never receiving a response
2025-10-03 13:30:45 -03:00
KotlinGeekDev
e418a26f41
Add support for copying/cloning follow sets in the UI.
2025-10-03 16:26:20 +01:00
KotlinGeekDev
2df575d4af
Modify the models to support creating a new list with several profiles. Use IO dispatcher in FollowSetState. Introduce follow set copying/cloning, with custom names/descriptions for the clones.
2025-10-03 16:02:15 +01:00
KotlinGeekDev
88fbee84dc
Merge branch 'vitorpamplona:main' into followset-improvements
2025-10-03 14:39:45 +00:00
Vitor Pamplona
21c1d705a1
Only downloads DMs if the account is writeable
2025-10-03 09:18:53 -04:00
Vitor Pamplona
97668513b5
Fixes passing onClosed messages forward from NostrClient
2025-10-03 09:11:28 -04:00
Vitor Pamplona
f6213c2d9a
Slightly better user profile post filter
2025-10-03 08:25:19 -04:00
Vitor Pamplona
85b234d372
Don't show default relays in the relay screen as a user-chosen list
2025-10-03 08:10:13 -04:00
Vitor Pamplona
28df59c00d
Expand the number of notes tracked by the EOSE event to 10000
2025-10-02 17:55:43 -04:00
Vitor Pamplona
bc8e18a01b
Initial test cases for NostrClient and extensions
2025-10-02 17:54:56 -04:00
Vitor Pamplona
1b36d7e189
Exposes the sample rate on BaseEoseManager class
2025-10-02 17:50:33 -04:00
Vitor Pamplona
5f83379459
Offers an interface to BaseEoseManager objects
2025-10-02 17:50:10 -04:00
Vitor Pamplona
90b682a38f
Avoid sending close to subs that are already closed.
2025-10-02 17:48:06 -04:00
Vitor Pamplona
c6107dd784
Starts NostrClient in active instead of waiting for a connect() call
2025-10-02 17:47:39 -04:00
Vitor Pamplona
fd6be80b7e
Offers a way to destroy subscriptions
2025-10-02 17:46:54 -04:00
Vitor Pamplona
f901f8ab8f
Must use unlimited channels to avoid blocking the OkHttp threads.
2025-10-02 17:46:35 -04:00
Vitor Pamplona
b83ea61522
Moves OKHttp relay implementations to use a Channel in order to guarantee incoming message order.
2025-10-02 17:45:58 -04:00
Vitor Pamplona
168caf0ec6
Fixes comment
2025-10-02 17:42:33 -04:00
Vitor Pamplona
04f5e8738a
Forces an updateFilter at the start of new subs.
2025-10-02 16:54:34 -04:00
Vitor Pamplona
c8f51380aa
Fixes error messages in BasicRelayClient
2025-10-02 16:41:47 -04:00
Vitor Pamplona
612dd175b3
Creates the relay on sending new requests instead of waiting for updatePool method.
2025-10-02 16:40:45 -04:00
Vitor Pamplona
a56d9631ed
Solves the issue of not connecting in the first time reconnect is called
2025-10-02 16:40:16 -04:00
Vitor Pamplona
1fd5ba0451
Adds ease of use functions for the downloadFirst Event extension method
2025-10-02 16:39:47 -04:00
Vitor Pamplona
132c00d434
Fixes suspending on coroutineScope and never returning bug
2025-10-02 16:39:20 -04:00
Vitor Pamplona
47cc8fc4ae
Improves log class for JVM
2025-10-02 16:38:34 -04:00
David Kaspar
e12c52ec2c
Merge pull request #1506 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-02 21:16:19 +01:00
Crowdin Bot
34cd26b004
New Crowdin translations by GitHub Action
2025-10-02 19:54:33 +00:00
Vitor Pamplona
1c82417a0a
Updating the documentation on the use of Quartz
2025-10-02 15:53:10 -04:00
Vitor Pamplona
c3b87e83cb
Merge pull request #1505 from davotoula/update-translations
...
update translations
2025-10-02 13:39:02 -04:00
davotoula
e72a588dab
update CS, DE, SE, PT
2025-10-02 19:11:53 +02:00
David Kaspar
3033a4cbc8
Merge pull request #1504 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-10-01 17:10:27 +01:00
Crowdin Bot
ec82f89225
New Crowdin translations by GitHub Action
2025-10-01 15:30:00 +00:00
Vitor Pamplona
d7cf8305d3
Merge pull request #1503 from davotoula/smarter-video-compression--h265
...
Smarter video compression: h265
2025-10-01 11:28:34 -04:00
davotoula
7c41da0c4c
Update lightcompressor to release 1.5.0
2025-10-01 16:57:21 +02:00
davotoula
59be0986eb
Fix bug: useH265 parameter wasn't passed to compressor
2025-10-01 15:44:52 +02:00
davotoula
4554813d72
Add codec based multiplier (h265 = 0.7x)
2025-10-01 15:44:52 +02:00
davotoula
7d69122409
remove unused imports
2025-09-30 22:10:24 +02:00
davotoula
a6e306f3de
Update to use lightcompressor library version that supports h265
...
Add h265 toggle to NewMediaView.kt and ImageVideoDescription.kt
Touch many files to add optional h265 boolean (default is false)
2025-09-30 22:02:18 +02:00
KotlinGeekDev
f6b3fdcab4
Refactor UI to adapt to correct way of managing follow sets.
2025-09-30 15:38:16 +01:00
KotlinGeekDev
dfb683e00d
Continue refactoring of models to make things correct.
2025-09-30 15:37:02 +01:00
Vitor Pamplona
bb1d805080
Removes the need to use kotlinx.datetime on quartz
2025-09-29 18:06:58 -04:00
Vitor Pamplona
c936e91ec8
Merge pull request #1499 from KotlinGeekDev/follows-and-followsets-unified
...
Unification of follows and follow sets.
2025-09-29 13:47:39 -04:00
Vitor Pamplona
5d2e718b93
Merge pull request #1502 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-29 13:47:31 -04:00
Crowdin Bot
4cffd6d868
New Crowdin translations by GitHub Action
2025-09-29 17:25:18 +00:00
Vitor Pamplona
26005a062d
Updates Quartz instructions to Maven
2025-09-29 13:23:57 -04:00
KotlinGeekDev
80906f2c5a
Refactor models to take into account mixed lists, due to misunderstanding on my part.
2025-09-29 11:17:12 +01:00
Vitor Pamplona
631f1d9cfc
Makes the relayDB not private in HintIndexer
2025-09-26 16:10:30 -04:00
Vitor Pamplona
a8a6a10d6e
With filter serialization, prints kinds before anything else to help debug
2025-09-26 16:10:04 -04:00
Vitor Pamplona
401a3c47d9
Removes unnecessary log of object
2025-09-26 16:09:33 -04:00
Vitor Pamplona
ff0a4eb88f
Fixes userList of the FollowList state
2025-09-26 16:09:07 -04:00
Vitor Pamplona
1384a68ee3
Dumps the number of relay hints urls in the DB
2025-09-26 16:08:37 -04:00
Vitor Pamplona
86e50ac984
Logs the early start of the Application for benchmarking purposes
2025-09-26 16:08:22 -04:00
KotlinGeekDev
d2d811f670
Just use remember{} instead of adding derivedStateOf{} to avoid weird state issues.
2025-09-26 16:21:13 +01:00
KotlinGeekDev
61459187d7
Fix duplicate copyright and use derivedStateOf for followSet presence checking variable.
2025-09-26 15:46:29 +01:00
KotlinGeekDev
509d703226
Merge branch 'vitorpamplona:main' into follows-and-followsets-unified
2025-09-26 12:20:47 +00:00
Vitor Pamplona
194ba08df0
Merge pull request #1498 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-26 08:20:19 -04:00
KotlinGeekDev
bf1188addf
Merge branch 'vitorpamplona:main' into follows-and-followsets-unified
2025-09-26 12:12:28 +00:00
Crowdin Bot
7ddce17bdd
New Crowdin translations by GitHub Action
2025-09-26 12:07:45 +00:00
Vitor Pamplona
ee8ac08845
Merge pull request #1496 from davotoula/smarter-video-compression--sub-1mbps
...
Smarter video compression - switch to LightCompressor-enhanced
2025-09-26 08:06:19 -04:00
KotlinGeekDev
45192d1cf7
Remove statements to avoid polluting the logs. Modify the timing on the flow producer.
2025-09-26 12:32:44 +01:00
KotlinGeekDev
9c024e334b
Replace first hack with a better solution for determining a follow.
...
Add FollowSetState to MergedFollowListsState and modify it to take into account users from follow sets when displaying a user's follows feed.
2025-09-26 12:24:42 +01:00
KotlinGeekDev
058278956b
Merge remote-tracking branch 'origin/follows-and-followsets-unified' into follows-and-followsets-unified
2025-09-26 10:55:48 +01:00
KotlinGeekDev
564cebea9d
Merge branch 'vitorpamplona:main' into follows-and-followsets-unified
2025-09-26 09:55:31 +00:00
davotoula
4fc9386393
Combine calculation of videoBitrateInBps, resizer to use compressionRules only once
2025-09-25 23:06:16 +02:00
KotlinGeekDev
6368d17d09
Refactor: Create FollowSetState and move functionality from other places to it. Modify usages accordingly.
2025-09-25 21:39:02 +01:00
KotlinGeekDev
b694e143d0
Finish renaming refactor.
2025-09-25 21:37:33 +01:00
KotlinGeekDev
4b60c3e20b
Refactor: From List -> Set, and Viewmodel rename as well. Move FollowSet and related classes to model package.
2025-09-25 21:36:34 +01:00
davotoula
6e4e432adf
Use new bps api of lightcompressorlibrary fork
2025-09-25 22:01:25 +02:00
davotoula
4c3eaf972c
move to LightCompressor-enhanced fork
...
corrected image vs video compressor library names
2025-09-25 22:01:25 +02:00
KotlinGeekDev
ba0fc67a94
First hack for bolting follow sets onto follows, for determining if a user follows another.
2025-09-25 18:24:31 +01:00
Vitor Pamplona
f31292a201
Updates compose, navigation, windowCore and tests
2025-09-25 12:59:24 -04:00
Vitor Pamplona
1f6135d45d
Updates markdown parser to the latest
2025-09-25 12:53:45 -04:00
Vitor Pamplona
d04cf97418
Better logs on BasicRelayClient
2025-09-24 19:24:27 -04:00
Vitor Pamplona
8466020137
Increase the delay to update filters
2025-09-24 14:34:35 -04:00
Vitor Pamplona
54afc2c4dc
Remove logs
2025-09-24 14:34:24 -04:00
Vitor Pamplona
ed7fa2a80f
removes log
2025-09-24 12:43:15 -04:00
Vitor Pamplona
06f94150f9
Okhttp log helper class.
2025-09-24 12:43:04 -04:00
Vitor Pamplona
361e46c99f
Limits the number of posts coming from big relays with too many authors to 500 max
2025-09-24 12:38:48 -04:00
Vitor Pamplona
6ba60dce3f
Throws an error if the RelayStats cannot be created.
2025-09-24 12:38:01 -04:00
Vitor Pamplona
f9e0c82fc8
No need to import 500 communities for each relay it connects to
2025-09-24 12:37:35 -04:00
Vitor Pamplona
45b7b5601b
Ups the max requests thread allowed to support people with over 1000 follows
2025-09-24 12:37:04 -04:00
Vitor Pamplona
ccf64687a8
Separates index relays from the default and put it into the hint-based queries for unkown users.
2025-09-24 12:36:39 -04:00
Vitor Pamplona
0ba3385771
Merge pull request #1494 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-24 08:41:08 -04:00
Vitor Pamplona
381692a0a2
Merge pull request #1491 from KotlinGeekDev/set-management-fixes
...
Set management UI fixes
2025-09-24 08:40:58 -04:00
Crowdin Bot
206f8847fc
New Crowdin translations by GitHub Action
2025-09-24 12:39:55 +00:00
Vitor Pamplona
5b969d92f3
Merge pull request #1492 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-24 08:38:36 -04:00
Vitor Pamplona
621290ec33
Merge pull request #1493 from greenart7c3/main
...
Show a dialog to select a signer when using multiple signers
2025-09-24 08:38:20 -04:00
Crowdin Bot
94a2d9e07d
New Crowdin translations by GitHub Action
2025-09-24 12:19:05 +00:00
Vitor Pamplona
8b60aeaa94
Merge pull request #1489 from davotoula/smarter-video-compression
...
Smarter video compression
2025-09-24 08:17:33 -04:00
greenart7c3
6391ddbbaa
Show a dialog to select a signer when using multiple signers
2025-09-24 09:09:51 -03:00
KotlinGeekDev
6ac2a7150f
Change appearance of CustomSetItem. Use horizontal dividers instead of rounded borders. Adjust padding.
2025-09-24 11:50:15 +01:00
KotlinGeekDev
ab6d0961e8
Even more size and color adjustments.
2025-09-24 11:37:25 +01:00
KotlinGeekDev
3c87925b38
Make border and padding adjustments to some components.
2025-09-24 10:57:44 +01:00
KotlinGeekDev
54963067aa
Adjust colors for some components.
2025-09-24 09:55:53 +01:00
davotoula
ec9d229392
Merge branch 'main' into smarter-video-compression
2025-09-23 23:25:23 +02:00
Vitor Pamplona
ce81157dad
Adds a maven publishing to ship quartz
2025-09-23 15:16:26 -04:00
Vitor Pamplona
0499dcc647
Refining the test case to avoid json comparisons
2025-09-23 13:57:34 -04:00
Vitor Pamplona
748085078d
Fixes imports for Tlv tests
2025-09-23 13:46:04 -04:00
Vitor Pamplona
fadd9c1940
Creates a shared JVM-test module and moves the jackson inlining tests there
2025-09-23 13:45:48 -04:00
Vitor Pamplona
313e2519b2
Fixes the fdroid version of the new translation component api
2025-09-23 13:33:55 -04:00
Vitor Pamplona
d8c403d3d5
Removes the list view model from the LoginPage
2025-09-23 13:26:04 -04:00
Vitor Pamplona
b30d87266d
Improves borders for zap messages in notifications
2025-09-23 13:11:15 -04:00
Vitor Pamplona
f9204d37f2
Updates vico charts
2025-09-23 12:36:12 -04:00
Vitor Pamplona
d3f1db4367
Updates std lib
2025-09-23 12:34:02 -04:00
Vitor Pamplona
9851c4b6be
Updates firebase and lifecycleRuntime
2025-09-23 11:32:48 -04:00
Vitor Pamplona
811ad5e00a
Merge pull request #1169 from KotlinGeekDev/profiles-list-management
...
List/Set management: Part 1 - Profiles.
2025-09-23 11:20:21 -04:00
KotlinGeekDev
f2ca1d78da
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-23 14:00:49 +00:00
KotlinGeekDev
00d5e2fed3
Move strings to stringResources. Refactor names for consistency. Some cleanup.
2025-09-23 14:51:05 +01:00
David Kaspar
807eda8401
Merge pull request #1490 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-23 13:21:59 +01:00
Crowdin Bot
6cffda09bb
New Crowdin translations by GitHub Action
2025-09-23 11:59:59 +00:00
Vitor Pamplona
1c0766cc76
Merge pull request #1480 from davotoula/add-feed-indicator-to-live-bubbles
...
Add feed indicator to live bubbles
2025-09-23 07:58:26 -04:00
KotlinGeekDev
5175c61171
Merge branch 'upstream-main' into profiles-list-management
2025-09-23 12:24:28 +01:00
KotlinGeekDev
3f8abd74ba
Merge branch 'main' of https://github.com/vitorpamplona/amethyst into upstream-main
2025-09-23 12:22:45 +01:00
KotlinGeekDev
04b8f6cca2
Move Fab back action button to separate component. Adjust colors for the fabs in CustomListsScreen.
2025-09-23 12:19:04 +01:00
KotlinGeekDev
ec10d53195
Add menu option for adding an author to a follow set from a note.
2025-09-23 12:16:58 +01:00
davotoula
ccc5d03d84
converted VideoCompressionHelper to singleton
2025-09-23 11:28:09 +02:00
davotoula
e5df870ace
move framerate adjustment into getBitrateMbpsInt to prevent ,precision errors
...
Clean up logging
2025-09-23 10:24:48 +02:00
davotoula
b030486e7e
fixes after rebase
2025-09-23 09:55:03 +02:00
davotoula
544d6d3933
remove plan
2025-09-23 09:25:20 +02:00
davotoula
db9160a6c2
finally block ensures release() is called even if exceptions occur
2025-09-23 09:25:20 +02:00
davotoula
41a233d175
fix for library bug. Temp file name with "_temp" is returned instead of final file name
2025-09-23 09:25:19 +02:00
davotoula
b6dd6a988b
change to enum for video resolutions
2025-09-23 09:25:19 +02:00
davotoula
9af1e10ec2
refactor:
...
Safe file size lookup using OpenableColumns.SIZE
if (continuation.isActive) before resuming.
Better logging levels (Log.e for errors, Log.w for warnings).
Configurable compression timeout
2025-09-23 09:25:19 +02:00
davotoula
ed758ef13e
remove unused code
2025-09-23 09:25:18 +02:00
davotoula
947f59fa6f
add bitrate multiplier for 60fps content
...
fix toast when new file larger than old
2025-09-23 09:25:18 +02:00
davotoula
524ead2eac
move video compression into helper
2025-09-23 09:25:16 +02:00
davotoula
49dc63c876
Sanity check: if compressed file is larger than original, return original
2025-09-23 09:24:25 +02:00
davotoula
8588c9a6fc
update plan
2025-09-23 09:24:25 +02:00
davotoula
f805b70ec0
added log statements and a toast
2025-09-23 09:24:22 +02:00
davotoula
f5202dd8a9
added log statements
2025-09-23 09:22:13 +02:00
davotoula
97d6c791c0
determine resizer and bitrate from input source combined with our compression rules
...
use 1 as lowest BitrateMbps
2025-09-23 09:22:09 +02:00
davotoula
87f224b6b8
get video resolution, framerate and rotation
2025-09-23 09:21:32 +02:00
davotoula
931c6681c6
added compression rules
2025-09-23 09:21:32 +02:00
davotoula
96b8c77bcd
there is a plan
2025-09-23 09:21:32 +02:00
David Kaspar
366534d1d5
Merge pull request #1488 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-23 08:11:41 +01:00
Crowdin Bot
054cfa0de9
New Crowdin translations by GitHub Action
2025-09-23 00:07:59 +00:00
Vitor Pamplona
d93a8d94d2
Reduces number of Notifications from random relays.
2025-09-22 20:05:07 -04:00
Vitor Pamplona
0026668aca
Merging with upstream
2025-09-22 19:49:26 -04:00
Vitor Pamplona
7a280a3cde
- Migrates Quartz from Android to CommonMain
...
- Fully converts OpenTimestamp Java codebase to Kotlin, migrating the sync and async HTTP call interfaces to OkHttp and coroutines
- Redesigns parsing of relay commands, messages and filters for performance in Jackson.
- Starts the use of KotlinX Serialization when speed is not a requirement
- Migrates all Jackson field annotations to Kotlin Serialization
- Migrates Regex use in Quarts to Kotlin's Regex class
- Migrates Base64 from Android to Kotlin
- Migrates UUID from Android/Java to Kotlin
- Migrates LRUCache usage from Android/Java to Kotlin collections
- Migrates all String to bytearray conversions to Kotlin methods
- Migrates all System.arraycopy calls to kotlin native ones.
- Separates parsing code from the data classes Companion objects
- Exposes Rfc3986 normalizations to each platform.
- Exposes URI parsing classes to each platform.
- Exposes URL Encoders to each platform.
- Exposes BigDecimal to each platform.
- Exposes the Url Detector to each platform.
- Exposes MacInstances to each platform
- Exposes Diggest instances to each platform.
- Exposes a BitSet to each platform.
- Exposes GZip to each platform.
- Exposes Secp256k1 to each platform.
- Exposes SecureRandom to each platform.
- Exposes Time in seconds to each platform.
- Exposes the LargeCache to each platform.
- Exposes AES CBC and AES GCM encryption/decryption to each platform
- Migrate test assertions to Kotlin Tests
- Exposes Address class to each platform because of the Parceleable
- Creates our own ByteArrayOutputStream.
- Removes Lock features inside the Bloomfilters because we don't need data consistency/
- Migrates UserMetadata parser from Jackson to Kotlin serialization
- Removes the need for Static methods in each tag.
- Adds an event template serializer
- Adds KotlinX Datetime to migrate some of the date-based logs
- Adds support for LibSodium in the JVM platform
- Creates a shared test build for iOS targets
- Fixes several usages of Reflection when serializing classes
- Fixes a bug on loading RelayDB for the HintBloom filter test
- Increases the Bloom filter space to better use hints in the app.
- Removes support for iOS in x86
- Creates a Jackson mapper just for NIP-55, which stays in the Android build only.
- Keeps the event store in the android build as well.
- Removes @Syncronized tags in favor of Mutexes.
- Improved sendAndWaitForResponse NostrClient method to properly account for returns from each relay.
- Removes the need for GlobalScope and async calls in the downloadFirstEvent method.
- Restructures the parser and serialization of the relay messages and commands for performance with Jackson
- Removes the dependency on Jackson's error classes across the codebase.
- Moves the hint to quote tag extension methods to their own packages.
- Speeds up the generation of Bech32 addresses
- Migrates NIP-6 and Blossom uploads to use Kotlin Serialization
2025-09-22 19:44:51 -04:00
KotlinGeekDev
3eb02cbbd8
implement a fix for when a follow set becomes empty(or is empty), which is probably a Nostr limitation.
2025-09-22 15:44:11 +01:00
KotlinGeekDev
1e18edfc02
Refactor FollowSetsManagementDialog UI to correctly adapt to follow set state. Small adjustment in the NostrUserListFeedViewModel.
2025-09-22 15:41:17 +01:00
KotlinGeekDev
9f5301d30a
Make a different menu style for new list creation in FollowSetsManagementDialog. Use toBestDisplayName() instead of manual method(which was the same anyways).
2025-09-22 14:24:15 +01:00
KotlinGeekDev
a07ebc6e12
Update addFollowSet() method to optionally create a list with first member.
2025-09-22 14:20:59 +01:00
KotlinGeekDev
3301371d82
Fix color of Fabs in CustomListsScreen.
2025-09-22 14:19:10 +01:00
Vitor Pamplona
7949fc66b2
Fixes test case cast
2025-09-22 09:17:54 -04:00
davotoula
1d0f584c3e
use produceState instead of LaunchedEffect
2025-09-22 13:58:48 +02:00
KotlinGeekDev
6a3ebc1d95
Move FollowSetsManagementDialog to correct package. Refactor accordingly.
2025-09-19 18:22:41 +01:00
KotlinGeekDev
e10c429de0
Completely change the UI for list management when adding/removing a profile from lists.
2025-09-19 18:15:18 +01:00
KotlinGeekDev
e4a8a512d2
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-19 15:23:13 +00:00
David Kaspar
8373f6ba19
Merge branch 'vitorpamplona:main' into add-feed-indicator-to-live-bubbles
2025-09-18 21:12:14 +01:00
Vitor Pamplona
d2d5ade84e
Merge pull request #1485 from davotoula/fix-for-orientation-issue-following-removing-windowSizeClass-from-global-settings
...
Fix for properly switch between single and two-pane layouts on rotation
2025-09-18 14:45:23 -04:00
Vitor Pamplona
3acdde7c53
Merge pull request #1483 from davotoula/reduce-sonar-code-quality-warnings
...
Reduce sonar code quality warnings
2025-09-18 14:45:02 -04:00
Vitor Pamplona
897396ff24
Merge pull request #1484 from davotoula/remove-void-cat-from-default-servers
...
remove void.cat from default servers
2025-09-18 14:44:00 -04:00
davotoula
ee39b3ae18
Fix for properly switch between single and two-pane layouts on rotation
2025-09-18 20:37:56 +02:00
David Kaspar
6c892ba733
Merge branch 'vitorpamplona:main' into add-feed-indicator-to-live-bubbles
2025-09-18 15:55:20 +01:00
davotoula
64cf81b523
remove void.cat from default servers
2025-09-18 16:33:32 +02:00
KotlinGeekDev
acade3c762
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-18 13:32:24 +00:00
davotoula
4cd86c8b1c
return the boolean results from file(npub).delete()
2025-09-18 15:16:40 +02:00
davotoula
fdf372719c
Replace with interface delegation using "by" in the class header
...
Replace abstract class with an interface
2025-09-18 15:16:40 +02:00
davotoula
50f173e406
replace repeated text string with top-level constant
2025-09-18 15:16:40 +02:00
Vitor Pamplona
edc7f49ce2
Merge pull request #1482 from davotoula/investigate-disappearing-ping-in-ms-on-relays-screen
...
Fix disappearing stats on relay screen
2025-09-18 08:12:06 -04:00
davotoula
b20eb860ff
Increase LruCache max size from 100 to 1,000 since we have so many more relays active with outbox
2025-09-17 20:38:40 +02:00
Vitor Pamplona
aba60a87d6
Merge pull request #1481 from davotoula/remove-unused-imports
...
Remove unused imports and fix a test
2025-09-17 12:16:04 -04:00
davotoula
4f3b7b24f2
remove unused imports
2025-09-17 16:19:40 +02:00
davotoula
6f44d7c28a
remove unused imports amethyst
...
Fix ThreadDualAxisChartAssemblerTest (not sure how it was not breaking the build)
2025-09-17 16:10:23 +02:00
Vitor Pamplona
a96ab764b3
Updates all dependencies
2025-09-17 09:08:49 -04:00
Vitor Pamplona
1be46b7167
Merge pull request #1478 from davotoula/reduce-max-requets-when-in-emulator
...
Reduce max requests when in emulator
2025-09-17 09:06:14 -04:00
Vitor Pamplona
5c601d74b9
Merge branch 'main' into reduce-max-requets-when-in-emulator
2025-09-17 09:06:00 -04:00
davotoula
2027c7d77d
use default settings (64) when in emulator
2025-09-17 15:01:46 +02:00
Vitor Pamplona
faffe2a936
About 30-40% event hashing performance boost
2025-09-17 08:40:06 -04:00
Vitor Pamplona
c375fa0ab8
Adds another catch to get object errors when parsing NIP-28 metadata
2025-09-17 08:40:06 -04:00
Vitor Pamplona
123eca1f90
Fixes NPE on the invoice parser
2025-09-17 08:40:06 -04:00
Vitor Pamplona
83e87c2cf4
Adds an event id hash check that doesn't create a separate bytearray to compare between the incoming hex from the relay and the recalculated byte array from SHA256.
2025-09-17 08:40:06 -04:00
davotoula
f4501d799d
Added withContext(Dispatchers.IO) for network call
2025-09-17 14:29:42 +02:00
davotoula
5796052f36
added live/offline status indicator for the DisplayLiveBubbles method
...
Checks streaming URLs for LiveActivitiesChannel and relay URLs for both channel types
2025-09-17 14:29:42 +02:00
davotoula
c1012bd859
let's remove the maxRequestsPerHost increase, can be done in a separate PR
2025-09-17 11:22:28 +02:00
davotoula
6440b86a5e
remove commented out code
2025-09-17 11:10:40 +02:00
davotoula
dddf65e60f
Added test for emulator to set maxRequests to 32 to prevent crashing emulator
...
Increased maxRequestsPerHost in release version to 20 from default 5 to allow for more concurrent connections to a relay (subscribing to timeline + mentions + DMs + profile updates + notifications, etc..)
2025-09-17 11:10:10 +02:00
David Kaspar
80c884a4d1
Merge pull request #1477 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-17 06:10:11 +01:00
Crowdin Bot
497b019093
New Crowdin translations by GitHub Action
2025-09-16 20:57:54 +00:00
Vitor Pamplona
03b320e5b7
Merge pull request #1476 from davotoula/fix-benchmark-apk-location
...
resolve intermittent CI build failures - fix benchmark apk location
2025-09-16 16:56:43 -04:00
davotoula
00c0472155
remove second identical(?) test run
2025-09-16 18:38:46 +02:00
davotoula
8a66276755
fix benchmark apk location
2025-09-16 18:06:14 +02:00
KotlinGeekDev
6eab098f2e
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-16 13:02:13 +00:00
Vitor Pamplona
eaf8cb3384
Don't check for the max size in string anymore
2025-09-15 17:25:47 -04:00
Vitor Pamplona
cd0b1b65fb
Merge expanding and checking Hmac functions to avoid re-creating the Mac instance.
2025-09-15 17:25:36 -04:00
Vitor Pamplona
e329b096ba
Moves the message key to the HKDF function
2025-09-15 16:21:11 -04:00
Vitor Pamplona
239cac430e
Adds a test for native vs libsodium chacha20
2025-09-15 16:15:07 -04:00
Vitor Pamplona
24a5750155
Generalizes fixed key setup
2025-09-15 16:14:43 -04:00
Vitor Pamplona
cb5299e265
Simple refactoring
2025-09-15 16:14:09 -04:00
Vitor Pamplona
c3c8b87b91
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-15 15:15:56 -04:00
Vitor Pamplona
98aaef61c7
Faster Hkdf functions with less array copying and allocations (which can be impactful if the ciphertext is large)
2025-09-15 15:15:44 -04:00
KotlinGeekDev
1d3dadace2
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-15 18:39:36 +00:00
Vitor Pamplona
bd70058f78
Avoids creating a byte array and recreating it again inside of the Mac instance.
2025-09-15 12:30:56 -04:00
Vitor Pamplona
67f9557081
Reduces the need to keep the memory for checking the Mac and decrypting at the same time, allowing the GC to run after the check was correct.
2025-09-15 12:30:26 -04:00
Vitor Pamplona
689066fd44
Benchmark for NIP-44 operations
2025-09-15 12:29:26 -04:00
David Kaspar
cdd5995513
Merge pull request #1474 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-15 17:11:16 +01:00
Crowdin Bot
0c4cd4f940
New Crowdin translations by GitHub Action
2025-09-15 16:09:54 +00:00
Vitor Pamplona
c84554576c
Fixes flow.value warnings.
2025-09-15 12:08:04 -04:00
Vitor Pamplona
7616d01166
Implements NIP-44 extension for bigger payloads https://github.com/nostr-protocol/nips/pull/1907
2025-09-15 11:58:43 -04:00
Vitor Pamplona
60b71a5561
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-15 08:51:41 -04:00
Vitor Pamplona
a7b89cb778
Removing unused imports
2025-09-15 08:50:16 -04:00
David Kaspar
6b18711fe6
Merge pull request #1473 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-15 13:49:59 +01:00
Crowdin Bot
f0b95a3593
New Crowdin translations by GitHub Action
2025-09-15 12:42:18 +00:00
Vitor Pamplona
52cf9e1576
Merge pull request #1468 from davotoula/gallery-view-for-multiple-media
...
Gallery view for multiple images
2025-09-15 08:40:48 -04:00
davotoula
43f8053b30
Extracted Parsing logic into helper class
2025-09-14 13:19:12 +02:00
davotoula
74cc9535ac
Added a data structure for ParagraphImageAnalysis
...
Single pass analysis
All image-related decisions are made based on the single analysis result
2025-09-14 12:12:44 +02:00
davotoula
7e80ed2af9
Fix for images are mixed with text in a single paragraph
...
nevent1qqs04pmdf8guxpyhjuvpeg72ccwuzje7vhlm09szxl2d8x28cse5fzgpz9mhxue69uhkummnw3ezuamfdejj7q3qwl89d7yazg500lehg08p45dj2jzhhyqg2erj067458e3wd30djnsxpqqqqqqzmdjgxd
2025-09-14 11:40:20 +02:00
davotoula
1788dfc0b9
Merge branch 'refs/heads/main' into gallery-view-for-multiple-media
2025-09-13 23:32:49 +02:00
davotoula
8f0a829a4d
Optimised collectConsecutiveImageParagraphs: continue statements for early loop continuation
2025-09-13 23:32:17 +02:00
davotoula
bfc920ca04
Added logging of image gallery computation time
2025-09-13 21:09:27 +02:00
davotoula
a21b6115c7
Single pass to avoid multiple intermediate lists
...
O(n) traversal (no drop/takeWhile/filter allocations)
Mutable buffer for collecting images
2025-09-13 20:44:00 +02:00
davotoula
8e39da347a
don't use image gallery for secret message
2025-09-13 18:16:43 +02:00
Vitor Pamplona
58277cf717
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-13 10:51:28 -04:00
Vitor Pamplona
7ef6da1a17
Merge pull request #1470 from davotoula/fix-for-trying-to-share-when-image-not-loaded
...
Fix for crash when attempting to share an image that is still loading
2025-09-13 10:51:11 -04:00
Vitor Pamplona
ec48977a6f
Merge pull request #1471 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-13 10:50:29 -04:00
Vitor Pamplona
c5b60c3bd8
Refactor the UISharedPreferences into two files
2025-09-13 10:50:19 -04:00
Crowdin Bot
613978d7ba
New Crowdin translations by GitHub Action
2025-09-13 14:48:30 +00:00
Vitor Pamplona
afd20d3f8f
Avoids using JSON parsers with DataStore to speed up loading time (loading the parser itself takes ~300ms)
2025-09-13 10:46:27 -04:00
KotlinGeekDev
ea07e52e63
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-12 22:52:03 +00:00
Vitor Pamplona
da469754c4
Adds a All User Follows to fix: https://github.com/vitorpamplona/amethyst/issues/1431
2025-09-12 16:18:12 -04:00
davotoula
6dd2f47fc9
catch exception when sharing image
...
Show toast
2025-09-12 21:39:57 +02:00
Vitor Pamplona
47d201f936
Fixes unnecessary typecasting from long to int in created ats
2025-09-12 15:08:10 -04:00
Vitor Pamplona
46fec1d480
Adds a payment failed enum
2025-09-12 14:24:11 -04:00
Vitor Pamplona
557ba959e2
Fixes crash on dont translate from
2025-09-12 14:17:41 -04:00
Vitor Pamplona
e121b2849c
Fixes subject calculations on rendering
2025-09-12 13:58:37 -04:00
Vitor Pamplona
2e16a1dca6
Fixes a bug when comparing int and long in the comparator
2025-09-12 13:36:25 -04:00
Vitor Pamplona
33155efa99
Bugfix in loading communities from Global
2025-09-12 12:52:36 -04:00
Vitor Pamplona
bd3eed4a29
No need to duplicate these relays anymore
2025-09-12 12:52:13 -04:00
Vitor Pamplona
ac48705980
Fixes showing blog posts in the future
2025-09-12 12:39:12 -04:00
Vitor Pamplona
bc10d7184f
Fixes mark as read when drafts are the latest message in the chat
2025-09-12 11:37:58 -04:00
Vitor Pamplona
0886af4386
Migrates memory counters from Long to Int
2025-09-12 11:11:16 -04:00
Vitor Pamplona
3628091511
Applying Memory trimming service to all logged in accounts.
2025-09-12 10:09:25 -04:00
KotlinGeekDev
f5061e470a
Merge upstream-adjusted changes.
2025-09-12 14:20:36 +01:00
KotlinGeekDev
a0ba3802d9
Merge upstream changes and adjust.
2025-09-12 14:14:52 +01:00
KotlinGeekDev
4118e3d45d
Initialize NostrUserListVM at LoggedInPage level, to reuse it at different places(in prep for other UI changes).
2025-09-12 13:48:59 +01:00
KotlinGeekDev
f850d5291e
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2025-09-12 13:37:53 +01:00
David Kaspar
cb3bc605bc
Merge pull request #1469 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-12 11:49:40 +01:00
davotoula
16e3cba651
found a place where image gallery was used for single images
2025-09-12 12:14:05 +02:00
davotoula
ee9e102eb2
removed lazy component from 20+ images case to avoid nesting lazy components
2025-09-12 10:54:17 +02:00
Crowdin Bot
f01895b3e9
New Crowdin translations by GitHub Action
2025-09-11 23:05:11 +00:00
Vitor Pamplona
00a3918d20
Fixes F-droid build
2025-09-11 19:02:58 -04:00
Vitor Pamplona
35a123a185
No need for this log
2025-09-11 18:53:03 -04:00
Vitor Pamplona
c9dc30d976
- Only shows live stream bubbles that are not 24/7
...
- Only shows user pictures of the active users in the past 15 minutes.
2025-09-11 18:52:14 -04:00
Vitor Pamplona
c06c03928e
Fixes the use of index relays and search relays to load users and events as well as become the default for global feeds.
2025-09-11 18:36:42 -04:00
Vitor Pamplona
1f8d0295d5
- Separates Application dependencies into an AppModules class to create only after the OnCreate event.
...
- Switches TorSettings to be per Application and not per Account anymore
- Since TorSettings is now global, moves the okHttpClient determinations out of the Account-based classes into the Application.
- Since TorSettings is now global, set's up Coil's image loader only once when creating the Application
- Moves UISettings state to App Modules instead of viewmodel
- Migrates TorSettings and UISettings to DataStore
- Accounts now have their own coroutine scopes to allow cancellation when they are unloaded/logged off
- New tor evaluator service for relay connections now uses all account's trusted relays and dm relays at the same time.
- Migrates composable-state-based UISettings to Flow-based UI settings, while observing connectivity status
- Removes the displayFeatures and windowSizeClass from the shared model
- Fixes not requesting Notification Permissions for APIs older than Tiramisu in the FDroid flavor
- Moves the NIP-11 document cache from singleton to the App Modules
- Avoids using AccountViewModel to check NIP-11 Relay documents
- Moves the UI Settings usage in composables to functions that do not observe the state since they don't need to refresh the screen when changed.
- Refactors UI Settings screen to separate components and remove the sharedViewModel
- Only starts Internal Tor if that option is selected in the TorSettings.
- Turn TorSettings into a data class to observe changes to it
- Drops the SharedPreferences ViewModel to use UISettingsFlow directly from App Modules
- Reorganizes OTS Events after simplification of the OkHttp based on TorSettings.
2025-09-11 18:04:10 -04:00
davotoula
8f1027b55d
refactor
...
Removed duplicate GalleryImage boilerplate.
Use .chunked()
Pull out constants (ASPECT_RATIO, IMAGE_SPACING).
2025-09-11 21:52:36 +02:00
davotoula
4dace5aaf8
refactor using takeWhile
...
Fix edge case with white space before images
2025-09-11 21:03:06 +02:00
davotoula
8cb9d13567
Use constrained LazyVerticalGrid with calculated height for more than 20 images for performance reasons
...
added vertical spacing for some padding
Fixing scrollable gallery issue
2025-09-11 21:01:12 +02:00
davotoula
f092326dcd
Fixing scrollable gallery issue
2025-09-11 20:58:39 +02:00
davotoula
1f6d7d3fd2
Simplify RenderRegularWithGallery
...
Simplify collectConsecutiveImageParagraphs: just return the end index
Extracting common signature parameters into a RenderContext data class
Extracting GalleryImage helper function
2025-09-11 20:58:15 +02:00
davotoula
062182a7ec
fix for when images are separated by empty lines
...
refactor to reduce duplication:
Extract RenderParagraphWithFlowRow
Extract collectConsecutiveImageParagraphs
2025-09-11 20:50:21 +02:00
davotoula
9534582141
Collect batches of images
...
Send them to new image gallery
2025-09-11 20:25:05 +02:00
Vitor Pamplona
a078df6159
Fixes parameters on the findEarliestOtsForNote
2025-09-11 11:28:46 -04:00
Vitor Pamplona
90a5c15ee9
Moves the OTS processor from Account's decrypt process to Application since it doesn't need the account information.
2025-09-11 11:27:29 -04:00
Vitor Pamplona
bb9a03ec5b
Fixes invalid hexes on preview
2025-09-11 11:23:45 -04:00
Vitor Pamplona
825d890921
Removes the otsFinding method from accountViewModel, since it is not account dependent.
2025-09-11 11:19:27 -04:00
Vitor Pamplona
05c364eff4
removes unnecessary import
2025-09-11 11:17:08 -04:00
Vitor Pamplona
404d0ab40e
Removes the dependency on windowSizeClass and displayFeatures to be passed in the global settings of the app (which is activity independenty)
2025-09-11 11:16:26 -04:00
Vitor Pamplona
bf88e376de
Generalizes the dependencies from Application to Context
2025-09-11 11:12:20 -04:00
Vitor Pamplona
1e74a5769d
Passes appcontext down on MediaSession Pool to avoid the direct dependency on Amethyst
2025-09-11 11:09:36 -04:00
Vitor Pamplona
e1f7fae70e
Removes dependency in the Amethyst class from Playback calculator
2025-09-11 11:08:04 -04:00
Vitor Pamplona
5127907acd
Makes the root okhttp client for an Empty manager a lazy property to allow loading in Preview screens
2025-09-11 11:07:00 -04:00
Vitor Pamplona
2eda4d40e8
Makes max exoplayer pool size to a variable in the class
2025-09-11 11:06:09 -04:00
Vitor Pamplona
7f428a9976
Switches account cache to a flow
2025-09-11 11:05:03 -04:00
Vitor Pamplona
4347a1b104
Generalizes the type of OtsResolver needed by OtsState
2025-09-11 11:03:05 -04:00
Vitor Pamplona
abd6e6f2ac
Makes the torControl option nullable to allow an Orbot-based Active flow
2025-09-11 11:02:25 -04:00
Vitor Pamplona
1af5daffcf
Fixes the default Tor Settings
2025-09-11 10:58:35 -04:00
Vitor Pamplona
0e04425095
Fixes the option switching animations when loading the screen.
2025-09-11 10:57:49 -04:00
Vitor Pamplona
bbbdc05243
Fixes animations when selecting Tor options in the privacy screen
2025-09-11 10:54:22 -04:00
Vitor Pamplona
d4c39bd9cb
Adds a flow to TorSettings so that any change to the inner properties can be tracked.
2025-09-11 10:46:26 -04:00
Vitor Pamplona
11597d2448
Documents OTS methods
2025-09-11 10:45:35 -04:00
Vitor Pamplona
5c3ea0a302
removes duplicated copyright notice
2025-09-11 10:45:18 -04:00
Vitor Pamplona
0c65176ecc
Adds a DefaultOtsResolver builder using the internal web request classes from java.
2025-09-11 10:45:02 -04:00
KotlinGeekDev
e72bb5044b
Adjust size of delete button for a Follow set item.
2025-09-11 15:02:38 +01:00
KotlinGeekDev
e8d04a2205
Modify Follow and Unfollow buttons to only change looks when in profile actions.
2025-09-11 15:01:27 +01:00
KotlinGeekDev
31328089cb
FollowSetScreen: -Make a separate component for the title and description.
...
- Fix onBroadcastList, making sure to get the latest changes to the set before broadcast.
-Make a separate component for FollowSet list items, and make the delete button look a bit better(?).
NostrUserListVM: - Minor cleanup.
2025-09-11 14:32:58 +01:00
KotlinGeekDev
bd41354009
Make some UI adjustments for the list creation dialog.
2025-09-11 14:05:28 +01:00
KotlinGeekDev
bac3c575cb
Make some UI adjustments for the list rename dialog.
2025-09-11 14:03:29 +01:00
KotlinGeekDev
3c4865c4b0
Parse follow set descriptions as-is.
2025-09-11 14:01:12 +01:00
Vitor Pamplona
ba2707e7b4
Changes the name of the nav to avoid confusing the auto import
2025-09-10 19:59:48 -04:00
Vitor Pamplona
f9590055b0
Removes dependency on the application class from DecryptAndIndexProcessor
2025-09-09 12:17:28 -04:00
Vitor Pamplona
dc97e5004e
Uses local copy of cache instead of global singleton
2025-09-09 12:16:52 -04:00
Vitor Pamplona
4fb629e893
Fixes not sending the live stream events anywhere when the stream doesn't have a relay set declared.
2025-09-09 11:25:59 -04:00
Vitor Pamplona
44a34ffcfe
Removes livestream chats from the home bubbles that are placed after the live stream is done
2025-09-09 11:25:30 -04:00
Vitor Pamplona
f00207d53c
Fixes reply routes when clicking in the Conversations tab when the event is a PublicChat, LiveStream or Ephemeral Chat
2025-09-09 10:28:49 -04:00
Vitor Pamplona
d25e6cd07b
Small speed up with contains of a char and not a string
2025-09-09 10:28:01 -04:00
Vitor Pamplona
bbec0d93d2
Avoids breaking the contract (changes during sorting)
2025-09-08 19:38:18 -04:00
Vitor Pamplona
4158d3bd45
Fixes logs for account
2025-09-08 18:47:31 -04:00
Vitor Pamplona
49e4f7bb46
Fixes feed filter update when changing the top nav filter
2025-09-08 18:03:01 -04:00
Vitor Pamplona
4249b9f872
Fixes not having author picture in the long form previews
2025-09-08 18:01:26 -04:00
Vitor Pamplona
eac2e54953
Merge pull request #1467 from davotoula/prevent-resource-leaks-with-streams
...
Prevent resource leaks with streams
2025-09-08 17:27:47 -04:00
Vitor Pamplona
2455a34987
Moves account saving from StateViewModel to Account
2025-09-08 17:22:54 -04:00
Vitor Pamplona
ba0ce3366c
Fixes f-droid code
2025-09-08 16:58:14 -04:00
Vitor Pamplona
ccf9f47305
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-08 16:50:06 -04:00
Vitor Pamplona
95cf3fb6eb
Changing the DVM feed to sort by follows that liked or zapped the DVM
2025-09-08 16:49:30 -04:00
Vitor Pamplona
81dbebc5a4
Fixes deletion computation in the update of feeds (it was not considering the a-tag's date and deleting newer events than the deletion request)
2025-09-08 16:49:09 -04:00
Vitor Pamplona
26599fe24f
Removes dependency on the viewModel on AccountFeedStates
2025-09-08 15:58:50 -04:00
Vitor Pamplona
ed1ea4d289
Removing the dependency on an application class from AccountViewModel
2025-09-08 15:50:54 -04:00
Vitor Pamplona
e0764da095
Creates an interface for the DualHttpClientManager
2025-09-08 15:50:28 -04:00
Vitor Pamplona
4c8456c4af
Fixes the crash on starting when the contentResolver is not ready yet.
2025-09-08 15:50:07 -04:00
Vitor Pamplona
ac2609b4f6
Finish migration to INostrClient
2025-09-08 15:45:50 -04:00
Vitor Pamplona
67e2189676
Moves the event processor to the Account class
2025-09-08 15:06:15 -04:00
Vitor Pamplona
222615a116
Establishing a scope for each account loaded.
2025-09-08 14:37:45 -04:00
davotoula
8f623ebb91
add TODO to investigate. Double closing of stream most often is ignored.
2025-09-08 20:32:28 +02:00
davotoula
adc4aa7906
cleaner code
2025-09-08 20:32:28 +02:00
davotoula
ec362ea0ee
Use .use for streams
...
cleaner code
2025-09-08 20:32:28 +02:00
davotoula
e66e71a05c
clener code
2025-09-08 20:32:28 +02:00
davotoula
9be55eda07
close FileInputStreams to prevent resource leak
2025-09-08 20:32:28 +02:00
David Kaspar
16b5d44c3d
Merge pull request #1466 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-08 18:38:01 +01:00
Vitor Pamplona
93a639fea5
Modifies the Notification processor to use full accounts and their cached structrues again.
2025-09-08 13:29:02 -04:00
Vitor Pamplona
360f71c79a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-08 13:28:23 -04:00
Crowdin Bot
1f38ae5deb
New Crowdin translations by GitHub Action
2025-09-08 17:26:27 +00:00
Vitor Pamplona
f633d57277
Merge pull request #1465 from greenart7c3/main
...
When using intents check if it's rejected
2025-09-08 13:25:19 -04:00
greenart7c3
196a7de6a3
When using intents check if it's rejected
2025-09-08 14:05:00 -03:00
David Kaspar
4c1d0ac60c
Merge pull request #1464 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-08 07:58:20 +01:00
Crowdin Bot
1bdf7d9884
New Crowdin translations by GitHub Action
2025-09-08 06:57:03 +00:00
David Kaspar
9e1d2c89bb
Merge pull request #1463 from davotoula/update-translations
...
added CZ, DE translations
2025-09-08 07:55:46 +01:00
davotoula
a58dc09b80
added CZ, DE translations
2025-09-08 08:34:16 +02:00
David Kaspar
91f85a1e1c
Merge pull request #1462 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-08 07:05:42 +01:00
Crowdin Bot
cf9d630032
New Crowdin translations by GitHub Action
2025-09-08 06:03:52 +00:00
David Kaspar
f55b0f528c
Merge pull request #1461 from davotoula/update-translations
...
updated PT, CZ, SE, GE translations
2025-09-08 07:02:34 +01:00
davotoula
463762f268
added PT, CZ, SE, GE translations
2025-09-07 19:17:53 +02:00
Vitor Pamplona
82770c204c
Merge pull request #1460 from davotoula/update-secp256k1
...
update secp256k1KmpJniAndroid to 0.19.0
2025-09-07 12:56:13 -04:00
Vitor Pamplona
0621cfb46c
Small correction in the method name
2025-09-07 12:23:34 -04:00
davotoula
1f1a7eb12c
update secp256k1KmpJniAndroid to 0.19.0
2025-09-07 17:59:08 +02:00
Vitor Pamplona
93e2f66559
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-06 11:59:38 -04:00
Vitor Pamplona
cc2b836cd5
Migrates Account management to an Application class.
2025-09-06 11:59:01 -04:00
Vitor Pamplona
fd2a227674
Fixes the new theme parameter
2025-09-06 11:59:01 -04:00
Vitor Pamplona
67937b9fbc
Nicer way to create the account view model
2025-09-06 11:59:01 -04:00
Vitor Pamplona
ea58b4fa3d
Adds a dependency on Account and to the NWC state to avoid linking directly with the Application class
2025-09-06 11:59:01 -04:00
Vitor Pamplona
7087fb85f0
Changes the Theme class to only take the preferred theme directly.
2025-09-06 11:59:01 -04:00
Vitor Pamplona
caf325f240
Sets the instance of the Application class before anything else
2025-09-06 11:59:01 -04:00
Vitor Pamplona
18b2fdb7e4
Removes one of the Application dependencies in viewmodel
2025-09-06 11:59:01 -04:00
Vitor Pamplona
66eef96ccb
Offers way to load the Application class from Context
2025-09-06 11:59:01 -04:00
Vitor Pamplona
757806341c
Adds an isMobileOrFalse flow in connectivity
2025-09-06 11:59:01 -04:00
Vitor Pamplona
69e3d2d0d8
Creates an interface for NostrClient
2025-09-06 11:59:01 -04:00
Vitor Pamplona
a03ba7b260
Refactors zap the devs card view
2025-09-06 11:59:01 -04:00
Vitor Pamplona
51f81dce73
Merge pull request #1459 from davotoula/main
...
Setting JvmTarget to 21 for quartz
2025-09-06 11:57:43 -04:00
davotoula
32d2ee698a
fix for missing lazysodium
2025-09-06 15:53:11 +02:00
davotoula
8aaea960f0
Set quartz JVM target to 1.8 to allow for lower requirements for building library
2025-09-06 15:34:06 +02:00
davotoula
ab9ee36263
Setting JvmTarget to 21 for quartz to fix build/push issue due to mixed Java versions when using Java 23 locally
2025-09-05 20:01:49 +02:00
KotlinGeekDev
f9cf348f8f
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-05 12:56:23 +00:00
Vitor Pamplona
254ac1a1cb
Trying to remove firebase analytics
2025-09-04 21:05:06 -04:00
Vitor Pamplona
2ffa029790
Small refactoring on NotificationUtils
2025-09-04 21:04:43 -04:00
Vitor Pamplona
b0e27d0748
Forces relay status updates when connecting and disconnecting
2025-09-04 21:02:20 -04:00
Vitor Pamplona
a4569675c2
Merge pull request #1458 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-04 11:16:18 -04:00
Crowdin Bot
88457eb101
New Crowdin translations by GitHub Action
2025-09-04 15:13:49 +00:00
Vitor Pamplona
103ef01be4
Adds support for NIP-53 Meeting room to quartz
2025-09-04 11:10:54 -04:00
Vitor Pamplona
fcef6df7db
Merge pull request #1457 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-09-03 18:10:34 -04:00
Crowdin Bot
19c24af592
New Crowdin translations by GitHub Action
2025-09-03 22:05:06 +00:00
Vitor Pamplona
7de119dd4f
removes logs
2025-09-03 17:48:24 -04:00
Vitor Pamplona
8d73bf2cc4
Makes the new Video events non replaceable, while keeping the old ones in the replaceable
2025-09-03 17:44:40 -04:00
Vitor Pamplona
8131f3db39
Update AGP
2025-09-03 16:57:38 -04:00
Vitor Pamplona
e4e52ec4e6
Unify outbox calculation in the RelayOutbox loader.
2025-09-03 16:51:27 -04:00
Vitor Pamplona
43c9df23c4
Removes common mistakes from the outbox list from follows
2025-09-03 16:37:30 -04:00
Vitor Pamplona
85fb6dcc83
Avoids breaking line in the relay info top nav bar title
2025-09-03 16:35:10 -04:00
Vitor Pamplona
c9cdc74c91
Removes duplicated Loading of Relay Info
2025-09-03 15:45:21 -04:00
Vitor Pamplona
c64e65ddb4
Migrates to use suspending routines for OTS, statuses and edits
2025-09-02 19:20:44 -04:00
Vitor Pamplona
c46cf79501
Correctly sorts by online status when the app has already cached the status of a streaming
2025-09-02 18:34:21 -04:00
Vitor Pamplona
eef0adc6f9
Resets streaming url check if offline and entering a chat of that streaming
2025-09-02 18:30:47 -04:00
Vitor Pamplona
480ef63aed
adds a border on the users of a given relay in the connected relay list
2025-09-02 18:30:01 -04:00
Vitor Pamplona
7a807e94af
Exposes active filters per relay on the Nostr Client for debugging purposes
2025-09-02 18:28:41 -04:00
Vitor Pamplona
116bd1ae29
Removes any relay url that has the null byte, regardless of size
2025-09-02 18:28:14 -04:00
Vitor Pamplona
fb5c20d8da
Abandoning the precision of Mills to seconds on the isOnline Check
2025-09-02 18:27:46 -04:00
Vitor Pamplona
0bc0f503be
Reduces errors when trying to parse unparseable NIP-11s
2025-09-02 17:34:15 -04:00
KotlinGeekDev
70c0668962
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-02 21:23:29 +00:00
Vitor Pamplona
f6d283dafb
Refining the performance of the QuickAction menu bar
2025-09-02 15:32:28 -04:00
Vitor Pamplona
7048a1da50
Fixes invalid dependency on Quartz
2025-09-02 15:30:57 -04:00
Vitor Pamplona
36b541e0c7
Fixes NPE when updating a metadata with null name
2025-09-02 14:35:43 -04:00
Vitor Pamplona
501fa25e98
v1.03.0
2025-09-02 14:01:15 -04:00
Vitor Pamplona
b2516bbae9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-09-02 13:43:56 -04:00
Vitor Pamplona
fcd56fdb3a
Improves list of visible authors on live stream bubbles
2025-09-02 13:26:19 -04:00
Vitor Pamplona
8db90728aa
Removes wss://%2A%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00.isekco.re/
2025-09-02 12:37:38 -04:00
Vitor Pamplona
35146cc794
Adds the error code to avoid testing it again
2025-09-02 12:36:43 -04:00
KotlinGeekDev
bc395a09bd
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-09-01 17:28:50 +00:00
Vitor Pamplona
b6cd8d7b05
Merge pull request #1453 from KotlinGeekDev/quartz-kmp-build-fixes
...
Fix Quartz build issues.
2025-09-01 12:29:58 -04:00
KotlinGeekDev
822edf1273
Re-enable publish in androidTarget KMP section, as it works in conjunction with the Android publish block.
2025-09-01 16:47:56 +01:00
KotlinGeekDev
2f2919090e
Disable publishing in androidTarget KMP configuration. Re-enable in Android block, and use updated syntax.
2025-09-01 16:40:36 +01:00
KotlinGeekDev
edf5b28e06
Verifying some changes.
2025-09-01 16:26:57 +01:00
KotlinGeekDev
c828299793
Update sourceset folder names.
2025-09-01 15:24:22 +01:00
KotlinGeekDev
cf13d24c93
Revert to using androidLibrary plugin until KMP publishing guidance is updated. Use default sourcesets for Android.
2025-09-01 15:22:53 +01:00
Vitor Pamplona
56f93170e5
Fixes product title when in a quoted post
2025-08-31 21:25:08 -04:00
Vitor Pamplona
ed4839bc4d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-31 12:27:57 -04:00
Vitor Pamplona
b8c39ca5b2
Updating firebase
2025-08-31 12:23:32 -04:00
Vitor Pamplona
5397e4e22e
Moves SoftCache logs to the app
2025-08-31 12:10:51 -04:00
Vitor Pamplona
ea7a2f3426
Fixes live flag when the URL is not available anymore.
2025-08-31 12:09:01 -04:00
Vitor Pamplona
f2ae8afe3b
Merge pull request #1450 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-31 11:26:43 -04:00
Crowdin Bot
ee235ce682
New Crowdin translations by GitHub Action
2025-08-31 15:17:12 +00:00
Vitor Pamplona
408a9725e0
Fixes bug on opening the Relay Settings page with duplicated Trusted and Blocked relays.
2025-08-31 11:13:56 -04:00
Vitor Pamplona
1112fa96aa
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-30 14:22:45 -04:00
Vitor Pamplona
7da309c9cf
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-30 14:22:33 -04:00
Vitor Pamplona
caf4b5ca0b
Merge pull request #1449 from newrizen/English-strings.xml
...
Update english strings.xml
2025-08-30 14:18:32 -04:00
Neil Rizen
c8d6a46444
Update english strings.xml
...
According to PR #1444 , commit 64df323 , which changed the hyphen that was being applied to all languages to a space, this is the adjustment made in English and will be followed for other languages.
[pt_rbr already adjusted]
2025-08-30 15:08:35 -03:00
Vitor Pamplona
dd5ea51575
Updates the User Profile's Relay List to an outbox version
2025-08-30 13:49:24 -04:00
Vitor Pamplona
9d4c690760
Adds a follow list state from kind 3 to keep following users in memory.
2025-08-30 13:18:04 -04:00
Vitor Pamplona
d7a3cf94b7
Moves from RelationshipStatus to ContactCard as per NIP update
2025-08-30 13:11:29 -04:00
Vitor Pamplona
a063107a15
Adds a normalized parser to all nip65 relays
2025-08-30 12:45:32 -04:00
Vitor Pamplona
f06fc8a9cb
Merge pull request #1448 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-30 11:05:21 -04:00
Crowdin Bot
0c386811e0
New Crowdin translations by GitHub Action
2025-08-30 15:02:29 +00:00
Vitor Pamplona
4c34c6b8e3
Simple fix on url normalization
2025-08-30 10:59:53 -04:00
David Kaspar
4c43399cce
Merge pull request #1447 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-30 15:44:31 +01:00
Crowdin Bot
b8ffb01073
New Crowdin translations by GitHub Action
2025-08-30 13:35:16 +00:00
Vitor Pamplona
50275548b8
Merge pull request #1443 from davotoula/capture-and-post-video
...
Capture and post video
2025-08-30 09:34:14 -04:00
Vitor Pamplona
64df3236ce
Merge pull request #1444 from newrizen/Fix-TranslatableRichTextViewer.kt
...
Fix hyphen applied in all languages in TranslatableRichTextViewer.kt
2025-08-30 09:33:45 -04:00
Vitor Pamplona
c5a7293120
Merge pull request #1445 from davotoula/remove-unused-imports-amethyst
...
remove unused imports [amethyst]
2025-08-30 09:33:24 -04:00
Vitor Pamplona
4a969cb77c
Merge pull request #1446 from davotoula/remove-unused-imports-quartz
...
remove unused imports [quartz]
2025-08-30 09:33:17 -04:00
davotoula
8fffe3f662
remove unused imports
2025-08-30 09:10:28 +01:00
davotoula
f5722eb963
remove unused imports
2025-08-30 08:25:30 +01:00
Neil Rizen
f5289cb3d3
Update TranslatableRichTextViewer.kt
...
Changed the hyphen to a space to move the word "auto-translated" (and its translations) to "translations_auto" string and "from" (and its translations) to "translated_from" string, as this hyphen only exists in some languages.
2025-08-29 21:52:48 -03:00
Vitor Pamplona
0064a4c596
Trying to avoid an NPE in the maxOfOrNull iterator
2025-08-29 17:58:39 -04:00
Vitor Pamplona
e9d9ef197f
Activates live streams to the top feed bubble
2025-08-29 16:55:29 -04:00
Vitor Pamplona
a5a6c875fa
Adds a listener to check the use of custom TTS Engines
2025-08-29 12:27:17 -04:00
Vitor Pamplona
8e8521fd6d
Assemble report properties as a table and crash as a code block
2025-08-29 10:02:39 -04:00
davotoula
e387e04b6d
Added "record and post video" button to GenericCommentPostScreen.kt (GeoHashTag post and HashTag post)
2025-08-29 14:47:25 +01:00
davotoula
001167ff23
Added "record and post video" button to NewProductScreen
2025-08-29 14:38:19 +01:00
Vitor Pamplona
449a3f541e
Improves the design of the Crash Report permission screen with a cancel button.
...
Deleted copy stack to clipboard
2025-08-29 09:36:33 -04:00
Vitor Pamplona
3b59b11e8b
Ignores out of memory exceptions because the stack trace is irrelevant in those cases.
2025-08-29 09:35:05 -04:00
Vitor Pamplona
aaae806505
Makes the exception name the first line in the report
2025-08-29 09:34:41 -04:00
Vitor Pamplona
458a7c7377
Adds support for expirations in DMs
2025-08-29 09:34:26 -04:00
davotoula
c95ab2d6b7
Added "record and post video" button to NewPublicMessageScreen (I'm not sure it's used)
2025-08-29 14:27:59 +01:00
davotoula
6a3aae7dbc
Added "record and post video" button to NewGroupDMScreen
2025-08-29 14:14:03 +01:00
davotoula
9179e18b06
Added "record and post video" button to media tab
2025-08-29 14:06:39 +01:00
Vitor Pamplona
ecf530d512
Merge pull request #1442 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-29 08:02:42 -04:00
Crowdin Bot
51f7081214
New Crowdin translations by GitHub Action
2025-08-29 11:41:25 +00:00
Vitor Pamplona
7f7debbb73
v1.02.1
2025-08-29 07:38:42 -04:00
Vitor Pamplona
60377c0c35
Fixes inability to delete relays from certain relay lists.
2025-08-29 07:38:18 -04:00
Vitor Pamplona
a594d741b1
Creates an additional pointer for Account lists to make sure the GC doesn't clear instances that are only stored in the LocalCache's WeakReference DB.
2025-08-29 07:37:24 -04:00
davotoula
3dd791fbbe
Change LOW video compression to use VERY_LOW from lightcompressorlibrary for better streaming experience
...
LOW: 20% of original
VERY_LOW: 10% of original
2025-08-29 10:35:27 +01:00
davotoula
87afb7f491
refactor getVideoUri and getPhotoUri to reduce duplication
2025-08-29 10:33:39 +01:00
davotoula
5f8519d737
added translations
2025-08-29 09:19:58 +01:00
davotoula
f83166e576
Add take video functionality
...
Add take video button to new post screen
I18N
2025-08-29 09:13:26 +01:00
Vitor Pamplona
df85c3969c
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-28 18:19:49 -04:00
Vitor Pamplona
e4311ddfa3
Creates a bootstrap relay list for inbox that doesn't have nostr.wine to avoid sending posts there and getting the notify
2025-08-28 18:12:55 -04:00
Vitor Pamplona
3a9fd925e1
Merge pull request #1440 from davotoula/upgrade-agp
...
Upgrade agp and add JvmTarget.JVM_21 to Quartz
2025-08-28 18:08:39 -04:00
davotoula
dbcca9cbd2
Use JvmTarget JVM_1_8 for quartz to be more forgiving about requirements.
2025-08-28 22:48:18 +01:00
davotoula
ef250eb0f1
Consistent JvmTarget JVM_21 across all modules
2025-08-28 22:17:44 +01:00
davotoula
8c26af7d40
upgrade agp to 8.12.2
2025-08-28 22:17:44 +01:00
Vitor Pamplona
0fe01696a5
v1.02.0
2025-08-28 17:02:55 -04:00
Vitor Pamplona
624bef21b1
Adds NIP-17 crash report.
2025-08-28 16:59:46 -04:00
Vitor Pamplona
8493c95e07
Fixes the wrong import
2025-08-28 15:54:14 -04:00
Vitor Pamplona
f7eb043aac
Avoids comparisons with the torConnection as part of the data class
2025-08-28 14:23:26 -04:00
Vitor Pamplona
b80685dcfb
Protects this flow against lots of similar emissions
2025-08-28 14:17:58 -04:00
Vitor Pamplona
0dc18cc98c
Reduces the size of log messages
2025-08-28 13:53:22 -04:00
Vitor Pamplona
c366384a83
ignores notebook file
2025-08-28 13:09:08 -04:00
KotlinGeekDev
3cfe195561
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-28 15:43:27 +00:00
Vitor Pamplona
c298147ad9
updates google services json
2025-08-28 11:18:01 -04:00
Vitor Pamplona
16e9d43da8
Removes DB migration
2025-08-28 11:17:49 -04:00
KotlinGeekDev
e3cfa76843
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-28 15:08:48 +00:00
Vitor Pamplona
da5816a6c6
Fixes crash when pasting an invalid NIP-47 uri into the zap settings
2025-08-28 10:41:22 -04:00
Vitor Pamplona
4be1a143e6
Solving parsing issue with NWC
2025-08-28 10:35:44 -04:00
Vitor Pamplona
85ee48e003
Fixes crash when loading a user without a name
2025-08-28 10:32:29 -04:00
Vitor Pamplona
f536f8e88e
Fixes readonly crash on DVMs
2025-08-28 10:32:16 -04:00
Vitor Pamplona
918a575cfd
Speeds up first time logins by not waiting for Tor
2025-08-28 10:24:54 -04:00
KotlinGeekDev
a23bc875cf
Merge latest upstream changes.
2025-08-28 14:42:53 +01:00
KotlinGeekDev
92fac53705
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2025-08-28 14:42:09 +01:00
KotlinGeekDev
1b011acbd7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst ite resolve branch.
2025-08-28 14:38:56 +01:00
KotlinGeekDev
f651dd964d
Refactor FollowSetScreen parameters. Add new toast message type that includes an action to perform on dismissal.
2025-08-28 14:27:50 +01:00
KotlinGeekDev
53b74e6f82
Add Nav route for FollowSetScreen. Refactor other places accordingly. Make minor cleanup.
2025-08-28 14:25:39 +01:00
KotlinGeekDev
c1a5052cbb
Fix bug in addFollowSet, and refactor to use Boolean for checking list visibility. Use runBlocking in getFollowSetNOte(for now).
2025-08-28 14:20:07 +01:00
Vitor Pamplona
56d8a83ebe
Fixing a parser benchmark
2025-08-28 08:55:15 -04:00
Vitor Pamplona
5f33fb2cea
removes unnecessary native lib
2025-08-27 21:09:42 -04:00
Vitor Pamplona
170b6cfe69
Moves test assets to resources to make it work with kmp
2025-08-27 21:09:21 -04:00
Vitor Pamplona
ce991a8aea
- Migrates NIP-49 from java to kotlin for kmp
2025-08-27 21:08:34 -04:00
Vitor Pamplona
bd5b61ee64
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-27 18:32:43 -04:00
Vitor Pamplona
494d7edc1f
Testing proguard rules on KMP quartz
2025-08-27 18:32:33 -04:00
Vitor Pamplona
8e2d684cb1
Merge pull request #1439 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-27 17:38:55 -04:00
Crowdin Bot
e994839468
New Crowdin translations by GitHub Action
2025-08-27 21:36:13 +00:00
Vitor Pamplona
76d97d6d16
Removes nostr.bg from relay options
2025-08-27 17:32:54 -04:00
Vitor Pamplona
442f75fc41
- Migrates Quartz to a KMP project
...
- Converts OpenTimestamps from java to Kotlin
- Moves OTS OkHttp setup to Quartz
2025-08-27 17:32:39 -04:00
KotlinGeekDev
3b23b9eeef
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-27 14:35:06 +00:00
Vitor Pamplona
d2214889b6
Version 1.01.0
2025-08-27 09:10:11 -04:00
Vitor Pamplona
d4da14e4fa
Moves draft deletion calculations to the default thread
2025-08-27 08:57:10 -04:00
Vitor Pamplona
56dec11901
Intercepts backhandler to save drafts
2025-08-27 08:56:40 -04:00
Vitor Pamplona
8624dcf2d4
Merge pull request #1437 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-27 08:15:39 -04:00
Crowdin Bot
7edccdb236
New Crowdin translations by GitHub Action
2025-08-27 12:02:53 +00:00
Vitor Pamplona
d8fb49bd52
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-27 08:00:35 -04:00
Vitor Pamplona
108d8a2e57
Improves draft deletes in the feeds
2025-08-27 08:00:08 -04:00
Vitor Pamplona
7b6bd3579c
Merge pull request #1436 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-26 20:33:52 -04:00
Crowdin Bot
9f398b5ef8
New Crowdin translations by GitHub Action
2025-08-27 00:20:01 +00:00
Vitor Pamplona
568a175735
fixes fdroid build
2025-08-26 20:18:10 -04:00
Vitor Pamplona
aa80d1b84a
- Upgrades NIP-72 communities to NIP-22 comments
...
- Adds moderation queue feed
- Adds in-app approval procedures
- Adds drafts for community posts
- Redesigns About us section of communities.
2025-08-26 20:10:04 -04:00
KotlinGeekDev
685365eb12
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-25 20:34:00 +00:00
Vitor Pamplona
fd752a4997
Adds a restart of the registration once the Post_notification permission changes
2025-08-25 15:43:56 -04:00
Vitor Pamplona
7302d260d9
avoids sending expired events to the cloud
2025-08-25 15:43:12 -04:00
Vitor Pamplona
823540160a
Fixes some DM notification issues
2025-08-25 15:42:57 -04:00
Vitor Pamplona
0187529f8d
Removes default and bootstrapping lists from the "Trusted Relay set". This should fix the unwanted NOTIFY requests.
2025-08-25 12:16:40 -04:00
Vitor Pamplona
98453c7b65
Fixes unable to delete relays from some lists.
2025-08-25 10:26:39 -04:00
KotlinGeekDev
34a75dd28f
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-25 14:18:23 +00:00
Vitor Pamplona
f43e88eee7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-25 10:10:06 -04:00
Vitor Pamplona
4baa5bf659
Fixes https://github.com/vitorpamplona/amethyst/issues/1070
2025-08-25 10:09:39 -04:00
David Kaspar
ce1db52abb
Merge pull request #1433 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-25 14:25:14 +01:00
Crowdin Bot
cc6a9f1818
New Crowdin translations by GitHub Action
2025-08-25 13:14:18 +00:00
Vitor Pamplona
f11ab08f92
Merge pull request #1428 from davotoula/1403-accessibility-talkback-issues
...
accessibility talkback issues
2025-08-25 09:12:41 -04:00
davotoula
c93cc04409
updated imports
2025-08-23 22:58:16 +01:00
davotoula
56f299569e
added translations CS, DE, PT, SV
2025-08-23 22:24:48 +01:00
davotoula
4006aebf35
added I18n for new strings
2025-08-23 18:24:10 +01:00
davotoula
b0aa2a8c31
added accessibility Description
...
TODO: add translations
2025-08-23 17:12:23 +01:00
davotoula
03483c932c
reduce warnings:
...
remove unused nav parameter
remove unnecessary ? operator
replace .filter().first() with .first
2025-08-23 17:08:17 +01:00
David Kaspar
f3f8beeebe
Added semantics to the invisible box
...
contentDescription - provides current state info
TODO: add translations
2025-08-23 17:06:26 +01:00
David Kaspar
0381e22198
Corrected TextSpinner package
2025-08-23 17:06:05 +01:00
Vitor Pamplona
d90618f7f3
Corrected version 1.00.5
2025-08-23 11:06:45 -04:00
Vitor Pamplona
41ca6d281e
Revert "Version 1.00.5"
...
This reverts commit 83870cd06b .
2025-08-23 11:06:11 -04:00
Vitor Pamplona
1f4f1d4822
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-23 11:05:50 -04:00
Vitor Pamplona
83870cd06b
Version 1.00.5
2025-08-23 11:05:22 -04:00
Vitor Pamplona
0d4689b064
Merge pull request #1427 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-23 10:58:18 -04:00
Crowdin Bot
d2e7e171a1
New Crowdin translations by GitHub Action
2025-08-23 14:57:56 +00:00
Vitor Pamplona
aea8573693
Merge pull request #1425 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-23 10:56:53 -04:00
Vitor Pamplona
36b14f93cb
Removing multiple relays in the same line.
2025-08-23 10:49:40 -04:00
Vitor Pamplona
356a805681
Adds a child safety standards section
2025-08-22 18:15:12 -04:00
Crowdin Bot
c9e5646df2
New Crowdin translations by GitHub Action
2025-08-22 20:46:42 +00:00
Vitor Pamplona
f50a3c5bbb
Merge pull request #1424 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-22 16:45:32 -04:00
Vitor Pamplona
46fe3c2f4a
Merge pull request #1423 from newrizen/New-translation
...
Update pt_rbr strings.xml
2025-08-22 16:45:08 -04:00
Crowdin Bot
5ed0bf48a6
New Crowdin translations by GitHub Action
2025-08-22 20:31:42 +00:00
Vitor Pamplona
0f59befb03
Version 1.00.4
2025-08-22 16:29:56 -04:00
Vitor Pamplona
c1d8aac030
Fixes https://github.com/vitorpamplona/amethyst/issues/1422
2025-08-22 16:29:49 -04:00
Vitor Pamplona
0d3c60b9c2
Fixes the disappearance of drafts.
2025-08-22 16:11:30 -04:00
Vitor Pamplona
fa80912db2
Uses a separate okhttp for DM relays
2025-08-22 13:50:28 -04:00
Vitor Pamplona
f9ea1270fa
creates a separate okhttp for relays
2025-08-22 13:35:46 -04:00
Vitor Pamplona
e0ffa6d4fb
In case a user does not have an outbox list, defaults to all hints seen for that user.
2025-08-22 12:42:40 -04:00
Vitor Pamplona
3df7129f00
Deletes unused state class
2025-08-22 12:41:03 -04:00
Neil Rizen
692f77dcd1
Update pt_rbr strings.xml
...
More compact translation, with corrected spelling (there is no "automaticamente-traduzido" with dash in Portuguese, so I changed it to 'autotraduzido' and moved the dash away to use as a ':' ) and visually more pleasing.
2025-08-22 07:56:00 -03:00
Vitor Pamplona
273186ef35
version 1.00.3
2025-08-21 20:13:52 -04:00
Vitor Pamplona
b64d6c24c8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-21 20:11:54 -04:00
Vitor Pamplona
1f2a153f47
Fixes lack of feed updates for those that didn't follow any communities
2025-08-21 20:11:44 -04:00
Vitor Pamplona
a36f2cc93f
Merge pull request #1421 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-21 18:29:13 -04:00
Vitor Pamplona
499316687f
Avoids parsing bad NIP-28 objects
2025-08-21 17:19:22 -04:00
Vitor Pamplona
693a75b9ec
Don't try to decrypt appData unless it is a writeable account
2025-08-21 17:18:47 -04:00
Crowdin Bot
d0b3c9b019
New Crowdin translations by GitHub Action
2025-08-21 21:12:11 +00:00
Vitor Pamplona
d810aaa2d0
streamlines function calls on AccountViewModel
2025-08-21 17:10:10 -04:00
Vitor Pamplona
965db8b91b
trying to remove HEAD from the release build name
2025-08-21 15:13:53 -04:00
Vitor Pamplona
5f7088b7bb
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-21 14:33:27 -04:00
Vitor Pamplona
d7c80ca138
Merge pull request #1420 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-21 14:33:04 -04:00
Vitor Pamplona
75da18a30b
Version 1.00.2
2025-08-21 14:32:48 -04:00
Crowdin Bot
897e9d84cb
New Crowdin translations by GitHub Action
2025-08-21 18:31:11 +00:00
Vitor Pamplona
fe141d1ee3
Fixes crash when typing a new post without permissions to do a draft post.
2025-08-21 14:29:34 -04:00
Vitor Pamplona
4a7a09c43a
Tries to avoid crash when lacking google services in the play version.
2025-08-21 14:20:55 -04:00
Vitor Pamplona
fd26ae5543
Fixes branch name
2025-08-21 14:11:56 -04:00
Vitor Pamplona
631270fc37
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-21 14:09:43 -04:00
Vitor Pamplona
816de5bf03
Fixes community join/leave issue
2025-08-21 14:06:47 -04:00
Vitor Pamplona
1ef9902ece
Migrates top nav list to hashtag, geohash and community lists
2025-08-21 13:51:33 -04:00
Vitor Pamplona
704a08e7bb
Fixes follow/unfollow from hashtags and geohashes
2025-08-21 13:51:10 -04:00
Vitor Pamplona
ffbf2b4024
Merge pull request #1419 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-21 12:25:23 -04:00
Crowdin Bot
a33ab5c1e9
New Crowdin translations by GitHub Action
2025-08-21 16:22:29 +00:00
Vitor Pamplona
b699b30954
Version 1.00.1 to fix app name
2025-08-21 12:21:48 -04:00
Vitor Pamplona
1d1ee8670e
Fixes app name
2025-08-21 12:20:16 -04:00
Vitor Pamplona
bcdf6e5ff7
Sends only play files to the zap store.
2025-08-21 12:17:31 -04:00
Vitor Pamplona
fbb50f4147
version 1.0.0
2025-08-21 11:08:23 -04:00
Vitor Pamplona
4e13c5ab9c
Improves timeouts to download and upload files
2025-08-21 08:49:25 -04:00
Vitor Pamplona
e1a5b9c079
Waits for the player to load and sets the current position of the audio
2025-08-20 21:26:59 -04:00
Vitor Pamplona
a27acd9dc6
YakBak in PictureInPicture mode
...
New audio player UI for YakBak
2025-08-20 21:00:09 -04:00
KotlinGeekDev
a3be27723d
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-20 21:54:12 +00:00
Vitor Pamplona
2f82233b25
Higher quality audio recordings
2025-08-20 17:37:44 -04:00
Vitor Pamplona
b232f484bf
Saves all NIP-51 lists as nip-44
2025-08-20 17:32:58 -04:00
Vitor Pamplona
679f9b66ed
Allows the height of the preview to adjust to the width of the preview image
2025-08-20 17:22:04 -04:00
Vitor Pamplona
da015e3298
Enabling the display for amplitudes in an array of floats for YakBak
2025-08-20 16:00:06 -04:00
Vitor Pamplona
4065adac83
Correctly manages airplane mode changes: reconnects Tor and Relays
2025-08-20 12:16:01 -04:00
Vitor Pamplona
7339f0ea3b
Merge pull request #1418 from davotoula/update-n71-video-events
...
Support updated video events (Kind 21/22)
2025-08-20 08:32:20 -04:00
David Kaspar
1bbc67fed7
Added VideoNormalEvent (21) and VideoShortEvent (22)
...
Updated Account to post events as new 21 / 22 kinds.
Keep showing old event kinds for backwards compatibility
2025-08-20 11:16:02 +01:00
Vitor Pamplona
64f46a55f9
Because the indexer processes Notes in bulk and after the fact, it could be the case where a new draft and a deletion event happen one after the other. If we don't re-check for deletions, the app will reindex the old draft that was already deleted by the LocalCache, creating a memory leak.
2025-08-19 18:54:28 -04:00
Vitor Pamplona
5662eda54c
Finishes the routing for note edits for live, public and ephemeral chats as well as public messages.
2025-08-19 18:21:27 -04:00
Vitor Pamplona
f56d927f72
Adds 90 day expiration to all drafts.
2025-08-19 12:40:53 -04:00
Vitor Pamplona
5685f227f9
Fixes relay hints when they disagree with our findings.
2025-08-19 12:20:49 -04:00
Vitor Pamplona
d539eca8bb
Avoids chats going behind the status bar up top
2025-08-19 10:42:42 -04:00
Vitor Pamplona
415bf9f522
Corrects some of the keys for Launched effects
2025-08-19 09:02:15 -04:00
Vitor Pamplona
667c15b3a1
Checks if the relay list in NIP-28 groups is empty and uses default when needed.
2025-08-18 19:24:57 -04:00
Vitor Pamplona
f31fa4a9c6
Adds notes to channels to facilitate their loading.
2025-08-18 19:24:23 -04:00
Vitor Pamplona
3bf6e80650
update kotlin, serialization plugin, tor
2025-08-18 19:22:56 -04:00
Vitor Pamplona
3bf2f858f7
Fixes the unable to recreate user after the GC deletes it.
2025-08-18 17:24:34 -04:00
Vitor Pamplona
5c0d71f034
Avoiding concurrent errors when deleting weak references
2025-08-18 16:52:17 -04:00
KotlinGeekDev
62f2c8c01c
Remove followSetsFlow from AccountViewModel in favor of using the NostrUserListFeedViewModel. Remove unused code, and refactor accordingly.
2025-08-18 21:23:22 +01:00
Vitor Pamplona
d4d60cb1ff
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-18 15:21:06 -04:00
Vitor Pamplona
b2932cd7e3
Updates agp
2025-08-18 15:07:35 -04:00
Vitor Pamplona
9d9b5f03db
Merge pull request #1417 from greenart7c3/main
...
Change BasicOkHttpWebSocket to be like the docs
2025-08-18 13:27:52 -04:00
greenart7c3
e076f97714
Change BasicOkHttpWebSocket to be like the docs
2025-08-18 13:51:40 -03:00
KotlinGeekDev
c06408537a
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-18 16:23:06 +00:00
KotlinGeekDev
850b9afc66
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2025-08-18 17:22:26 +01:00
KotlinGeekDev
909c704bda
Improved version of NostrUserListFeedViewModel. Remove unneeded LaunchedEffect in CustomListsScreen.
2025-08-18 17:21:26 +01:00
Vitor Pamplona
f5247a5443
Moves reconnections to 1 minute not 10 seconds
2025-08-18 11:37:32 -04:00
Vitor Pamplona
92e9978859
Moves to parcelable.
...
Fixes: https://github.com/vitorpamplona/amethyst/issues/1413
2025-08-18 11:25:57 -04:00
Vitor Pamplona
3520fe89ae
Merge pull request #1414 from davotoula/1413-use-pubkeyhex-for-lazy-column-key
...
Use pubkeyhex for lazy column key instead of Address
2025-08-18 11:13:23 -04:00
Vitor Pamplona
01ed0f3fc1
Merge pull request #1415 from davotoula/target-field-specifically-for-constructor-params-for-serialization
...
Use explicit field annotation target for constructor params
2025-08-18 11:13:08 -04:00
David Kaspar
41545a156b
Use explicit annotation target for constructor params
...
See https://youtrack.jetbrains.com/issue/KT-73255 for more details
2025-08-18 10:44:42 +01:00
David Kaspar
b38e9247ce
Use pubkeyhex for lazy column key instead of Address
2025-08-17 23:02:25 +01:00
Vitor Pamplona
45ec9e3a62
Merge pull request #1411 from davotoula/reduce-duplications-large-cache
...
Reduce duplications: large cache
2025-08-16 16:14:13 -04:00
David Kaspar
c1004dc643
Use .get( instead of index to keep to code base coding style
2025-08-16 18:56:48 +01:00
David Kaspar
a72fff5f8f
Lifted out collectors from CacheCollectors object
2025-08-16 18:50:01 +01:00
Vitor Pamplona
fca4aee5f5
Adds a user list to each connected relay to know where this is coming from
2025-08-16 13:21:10 -04:00
David Kaspar
a82f4aacbe
Use val for references that do not change (eg results)
2025-08-16 18:17:27 +01:00
David Kaspar
f21c7bd258
Lint issues: remove unused methods, use indexing operator instead of .get()
2025-08-16 11:21:19 +01:00
David Kaspar
533d8b18f0
Remove duplicate functionality from Cache implementations and use instead common methods in CacheOperations utility class
...
Create override for forEach and size as they are needed internally and do slightly different things
2025-08-16 10:45:37 +01:00
David Kaspar
b069f283ac
Move common cache operations to new utility class
2025-08-16 10:38:57 +01:00
David Kaspar
eab2f96f02
remove duplicate colletors and Use collectors from new utility class
2025-08-16 10:20:52 +01:00
David Kaspar
c4b71a0aea
Move common collectors to new utility class
2025-08-16 10:09:56 +01:00
KotlinGeekDev
bcebfa58f1
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-16 01:34:30 +00:00
Vitor Pamplona
88933fba8d
Fixes the time to reconnect interval due to an error between seconds and milliseconds.
2025-08-15 18:07:12 -04:00
Vitor Pamplona
ef049e88ba
Adds a new mechanism to wake up all connections when movement is made in the app.
2025-08-15 18:06:21 -04:00
Vitor Pamplona
6f27c96aed
changes the sendEvent from forcing a connection to waiting for the time to connect.
2025-08-15 18:04:57 -04:00
Vitor Pamplona
5b605700a3
Adds 10 seconds ago
2025-08-15 18:03:57 -04:00
Vitor Pamplona
e867571ea6
Improves version finder
2025-08-15 14:39:53 -04:00
Vitor Pamplona
f4759c283e
Adds a basic OkHttp builder to Quartz (new dependency :( )
...
Adds some instructions to the basic readme.md
2025-08-15 14:33:05 -04:00
Vitor Pamplona
4887e6f3a1
Sends a disconnect signal to the clients
2025-08-15 09:43:37 -04:00
Vitor Pamplona
1392833179
no need for the scope on the cache connector
2025-08-15 09:18:42 -04:00
Vitor Pamplona
529a1f403e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-15 08:41:22 -04:00
Vitor Pamplona
c9b16309e2
Clears the socket from memory upon closing.
2025-08-15 08:40:33 -04:00
Vitor Pamplona
81db455bfb
Updates compose and fragment
2025-08-15 08:36:08 -04:00
Vitor Pamplona
c017b9cace
Merge pull request #1410 from greenart7c3/main
...
Fix non ssl connections
2025-08-15 06:57:29 -04:00
greenart7c3
25f5551a98
Fix non ssl connections
2025-08-15 07:35:01 -03:00
Vitor Pamplona
d8461c2a74
Growing the number of possibilities to download profile information from
2025-08-14 19:47:20 -04:00
Vitor Pamplona
25dec49e97
Reactivates event log
2025-08-14 18:58:33 -04:00
Vitor Pamplona
424d5ccc9c
Refactoring
2025-08-14 17:32:28 -04:00
Vitor Pamplona
422a018a1f
Fixes when posts have published_at in milliseconds.
2025-08-14 17:32:15 -04:00
Vitor Pamplona
5b8afb6f60
Updates logging for auth
2025-08-14 17:06:26 -04:00
Vitor Pamplona
38827a4db6
Uses relays where the event was seen as a source of reactions and replies
2025-08-14 16:20:53 -04:00
Vitor Pamplona
97bad5707f
Improves filter by last date of the feed
2025-08-14 16:09:26 -04:00
Vitor Pamplona
58c8ff646f
Moves the feed update to 5 seconds.
2025-08-14 16:04:27 -04:00
Vitor Pamplona
613a3b4912
Adds a limit of 1 week to load videos and hashtags on shorts
2025-08-14 16:03:48 -04:00
Vitor Pamplona
a67155ac25
Only loads notifications from random relays after the notification feed is done
2025-08-14 16:03:19 -04:00
Vitor Pamplona
ba27b68c14
Minor refactoring
2025-08-14 15:43:43 -04:00
Vitor Pamplona
dfe5f86a23
Faster PublishedAt providers
2025-08-14 11:28:03 -04:00
Vitor Pamplona
abf0c4fd70
Removes broadcasting relays from the group of relays used to find events.
2025-08-14 10:49:30 -04:00
Vitor Pamplona
ed675a4973
Merge pull request #1408 from davotoula/reduce-duplication-resuable-zap-button
...
Deduplication of code: ZapTheDevsCard, DvmContentDiscoveryScreen
2025-08-14 09:51:38 -04:00
Vitor Pamplona
6514bacf69
Merge pull request #1409 from davotoula/1406-display-app-picture-when-clicked-on-app-picture
...
Display app picture when clicked on app picture
2025-08-14 09:51:06 -04:00
David Kaspar
e682a95822
Changed ZoomableImageDialog to show app picture rather than banner
...
Moved it inside picture?.let to guard against null picture
2025-08-14 14:34:11 +01:00
David Kaspar
d367a1f281
Specify return type as non-nullable asJackson will either return a non-null value or throw an exception.
2025-08-14 11:23:23 +01:00
KotlinGeekDev
8585620045
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-14 04:22:54 +00:00
Vitor Pamplona
f5881d4248
avoids using broadcasting relays to build filters to download home data
2025-08-13 19:11:54 -04:00
Vitor Pamplona
4c0f223673
Draft event refactoring
2025-08-13 19:11:29 -04:00
David Kaspar
aae520d2e4
Created ReusableZapButton with common zap button logic
...
ZapDVMButton refactored to use ReusableZapButton with DVM-specific configuration
2025-08-13 20:59:56 +01:00
Vitor Pamplona
251e5535d0
Removes hash logs
2025-08-12 18:57:11 -04:00
Vitor Pamplona
a034b495e8
Removes checks
2025-08-12 18:57:01 -04:00
Vitor Pamplona
41c2097f3c
reduces logs
2025-08-12 18:55:55 -04:00
Vitor Pamplona
22dc037bf7
Moves to disable tor if on the background
2025-08-12 18:55:47 -04:00
Vitor Pamplona
346fb61507
Small refactoring
2025-08-12 17:55:24 -04:00
Vitor Pamplona
c17d66b7e9
Small optimization
2025-08-12 17:28:22 -04:00
Vitor Pamplona
478b2d12eb
Speeding up the parsing of relay urls
2025-08-12 17:16:14 -04:00
Vitor Pamplona
c14d976ad1
Minor refactoring
2025-08-12 17:15:23 -04:00
Vitor Pamplona
d605eb3b0a
Fixes lack of update on chats and channels due to the new indexer being decoupled form LocalCache.
2025-08-12 16:37:32 -04:00
Vitor Pamplona
25aaed80b0
Better name for the newestMessage of a chat
2025-08-12 11:43:57 -04:00
Vitor Pamplona
14582fe9b6
Recalculating subject and last message when deletes happen
2025-08-12 11:29:58 -04:00
Vitor Pamplona
7a38269449
removing unused libs
2025-08-12 11:29:34 -04:00
Vitor Pamplona
77bb34eaf8
Updates tor to 16KB-page files and firebase
2025-08-12 08:47:51 -04:00
Vitor Pamplona
d0f3dde08b
Migrates to a more obvious open/close subscription model for NostrClient
2025-08-11 10:34:10 -04:00
Vitor Pamplona
d5b9d5e80b
Closes subscription when finished by timeout.
2025-08-11 10:33:21 -04:00
KotlinGeekDev
2238f4a807
Use runBlocking in mapEventToSet(). Rework and simplify fetching in FollowSetFeedFilter. Make FollowSetActions dropdown menu more reliable.
2025-08-10 02:22:20 +01:00
KotlinGeekDev
653494e922
Cleanup/Refactor:Remove followSetNotes property from User, and refactor accordingly. Make getFollowSetNotes() return the notes.
2025-08-10 02:18:03 +01:00
Vitor Pamplona
549074ef13
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-07 18:04:42 -04:00
Vitor Pamplona
2315051504
- Makes zap calculation a sync routine
...
- Optimizes the display of the yellow zap when the zap event comes before the pay payment confirmation
- Fixes animations for a new zap over an existing zap.
2025-08-07 18:02:31 -04:00
Vitor Pamplona
8ba96ca527
Simplifies Zap animation sizes
2025-08-07 16:39:44 -04:00
Vitor Pamplona
10c5db8281
Fixes the encryption of NWC
2025-08-07 16:07:15 -04:00
KotlinGeekDev
9e7d3146fa
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-08-07 19:52:15 +00:00
Vitor Pamplona
86b4957067
Removes NWC events from notificatuions
2025-08-07 15:35:59 -04:00
Vitor Pamplona
fe19b8b4af
Merge pull request #1405 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-07 14:37:59 -04:00
Crowdin Bot
3532a0cadd
New Crowdin translations by GitHub Action
2025-08-07 18:27:02 +00:00
Vitor Pamplona
58277d9697
Moves build tools of github actions to 36
2025-08-07 14:24:45 -04:00
Vitor Pamplona
cf76ab9f0e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-07 10:13:18 -04:00
Vitor Pamplona
51d7fa3aac
Fixes missing method on build
2025-08-07 10:09:43 -04:00
Vitor Pamplona
10832e10c8
Fixes the background color behind the show more button on light mode
2025-08-07 09:50:20 -04:00
David Kaspar
1fce054c9f
Merge pull request #1404 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-07 15:27:14 +02:00
Crowdin Bot
f7b3dada05
New Crowdin translations by GitHub Action
2025-08-07 13:25:23 +00:00
Vitor Pamplona
f35376a7da
Small refactoring
2025-08-06 19:13:15 -04:00
Vitor Pamplona
d0f3630abb
Changes to show the user name before the text on public messages.
2025-08-06 18:26:11 -04:00
Vitor Pamplona
d22fc2874b
Don't show public messages on the feed, just on notifications
2025-08-06 18:25:20 -04:00
Vitor Pamplona
23b3ff9fe8
Adds missing methods to display as Public message
2025-08-06 18:09:14 -04:00
Vitor Pamplona
52ac0c184d
Passes reply preview to the new Public message screen
2025-08-06 18:07:30 -04:00
Vitor Pamplona
923ddf1c83
Shows all public message events on conversations
2025-08-06 18:05:14 -04:00
Vitor Pamplona
cc186ef91b
Fixes route maker
2025-08-06 18:04:44 -04:00
Vitor Pamplona
02def3e0b1
Doesn't pass deleted drafts ahead to the indexer anymore. It's not needed.
2025-08-06 18:02:54 -04:00
Vitor Pamplona
036b385f38
Adds a check for deletion before processing inner posts
2025-08-06 18:02:26 -04:00
Vitor Pamplona
fdff92dff9
New Public Message screen: to field should get focus if it is empty, otherwise the message field should have the focus
2025-08-06 18:01:19 -04:00
Vitor Pamplona
8c854c43be
Adds p-tags to the display of public messages so that users know they are being cited
2025-08-06 17:58:51 -04:00
Vitor Pamplona
d707a951c3
Adds an option to pass a request focus parameter to the MessageField in new post screens
2025-08-06 17:58:18 -04:00
Vitor Pamplona
b1566d8f8b
Update log descriptions to match the new deleted flow
2025-08-06 17:57:46 -04:00
Vitor Pamplona
481db7ebeb
Loads and shows public messages in the user's profile as replies to others
2025-08-06 17:57:06 -04:00
Vitor Pamplona
a18c6c0bc8
Shows public messages in the profile's mutual feed
2025-08-06 17:56:26 -04:00
Vitor Pamplona
4d6f6d0ed5
removes a launch call from an already launched coroutine
2025-08-06 17:55:52 -04:00
Vitor Pamplona
1b043603f9
Adds a method to create nprofiles without creating a relay list first
2025-08-06 17:54:34 -04:00
KotlinGeekDev
2ff56e8af8
Rename FollowList ViewModel to match it's actual use.
2025-08-06 22:17:06 +01:00
Vitor Pamplona
dddc9e1346
Simplifies the startWith check
2025-08-06 17:13:37 -04:00
KotlinGeekDev
b1e4f65be8
Remove code that was reintroduced during merge with upstream. Fix Lists route.
2025-08-06 21:45:34 +01:00
KotlinGeekDev
1ce829ba23
Bring back some lost changes, and fix styling.
2025-08-06 20:26:03 +01:00
KotlinGeekDev
e92e36ceda
Sync with upstream
2025-08-06 19:11:07 +00:00
KotlinGeekDev
b8b4377891
Upstream + adjustments.
2025-08-06 20:09:02 +01:00
Vitor Pamplona
b5662fd05a
normalizes the parameter name across all adaptive filters
2025-08-06 14:09:06 -04:00
Vitor Pamplona
726f9e2f4f
Moves target compatibility to java 21
2025-08-06 14:07:51 -04:00
KotlinGeekDev
981486f09a
Add other functions and adapt them to the code already present.
2025-08-06 18:56:15 +01:00
Vitor Pamplona
ca55472010
Increases the limit for notification events to fill up a week's worth of inbox
2025-08-06 13:20:00 -04:00
Vitor Pamplona
71bbae2f9b
Simple refactoring
2025-08-06 13:18:45 -04:00
Vitor Pamplona
1971956443
Setting up the boundary for one week ago for notifications
2025-08-06 13:18:13 -04:00
Vitor Pamplona
282935c5f3
Adds search relays as fallback for event finding activities
2025-08-06 08:55:35 -04:00
KotlinGeekDev
7f8b2a6ccf
Fix unresolved conflicts.
2025-08-06 13:34:08 +01:00
Vitor Pamplona
d4d7d58378
Maybe separate assemblies work
2025-08-05 17:42:57 -04:00
Vitor Pamplona
5d1e3e804f
Trying to see if we can get benchmark flavors out of github actions
2025-08-05 17:20:25 -04:00
Vitor Pamplona
9475978612
Fixes background of transparent posts.
2025-08-05 16:42:13 -04:00
Vitor Pamplona
c32a64fbfe
avoids indexing via DraftTags and removes notes from the reply list when they get updated.
2025-08-05 16:30:36 -04:00
Vitor Pamplona
da40de49cd
Refactors the DecryptAndIndex to avoid a service class
2025-08-05 16:30:00 -04:00
Vitor Pamplona
e237853a8f
Making the new signer work for readonly accounts
2025-08-05 16:06:52 -04:00
Vitor Pamplona
63f62167a4
Simplifying the refactoring of the DecryptAndIndexProcessor
2025-08-05 15:04:23 -04:00
Vitor Pamplona
4675212e1d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-05 12:06:17 -04:00
Vitor Pamplona
f1b15cc3c5
Cleaning up the saving draft concurrency issues.
2025-08-05 11:48:02 -04:00
Vitor Pamplona
a747f25906
Adds exception handlers for managed coroutine scopes
2025-08-05 11:47:03 -04:00
Vitor Pamplona
e72ae565d3
Adds an extra catch in case there is a decryption error
2025-08-05 11:46:29 -04:00
Vitor Pamplona
be41627c2b
Fixes geohash cache saving
2025-08-05 10:45:20 -04:00
Vitor Pamplona
426378a7ee
Merge pull request #1402 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-05 09:55:06 -04:00
Crowdin Bot
f9efc0ae2d
New Crowdin translations by GitHub Action
2025-08-05 13:51:50 +00:00
Vitor Pamplona
09dfa79dea
Merge pull request #1395 from davotoula/refactor-decrypt-and-index-processor-light
...
Refactor decrypt and index processor
2025-08-05 09:50:12 -04:00
Vitor Pamplona
8af955ce20
Adds an extra layer on the url normalization cache to avoid recomputing failed attempts before.
2025-08-04 18:18:39 -04:00
Vitor Pamplona
5b0fccb9e0
Merge pull request #1401 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-04 11:44:47 -04:00
Crowdin Bot
bef607ec41
New Crowdin translations by GitHub Action
2025-08-04 15:14:07 +00:00
Vitor Pamplona
bfbdc65bef
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-08-04 11:09:24 -04:00
Vitor Pamplona
cfb2f98f66
Merge pull request #1396 from davotoula/dynamic-version-number-based-on-branch-name
...
Dynamic version number based on branch name
2025-08-03 12:29:56 -04:00
David Kaspar
fb0597b2f4
Merge pull request #1399 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-03 18:24:23 +02:00
Crowdin Bot
c663fd0f5a
New Crowdin translations by GitHub Action
2025-08-03 16:22:02 +00:00
David Kaspar
2a8b258f80
Merge pull request #1398 from davotoula/update-translations
...
update DE
2025-08-03 18:20:53 +02:00
David Kaspar
9c0663db69
update DE
2025-08-03 18:16:24 +02:00
David Kaspar
8d8edbaf90
executes a Git command to get the current branch name.
...
If the branch is "main" or "master", returns the base version unchanged
For feature branches, appends the branch name to the version
2025-08-03 11:47:26 +02:00
David Kaspar
5420ddd338
lets pass LocalCache instead of account.cache, as it was before
2025-08-03 10:35:40 +02:00
David Kaspar
fa80cb297d
reduce lint warnings
2025-08-03 10:32:04 +02:00
David Kaspar
cdfb1db253
refactor DecryptAndIndexProcessor
...
EventProcessor: Orchestrates the processing flow
DecryptionService: Handles all decryption operations
IndexingService: Manages event indexing and relationships
ChatroomService: Manages chatroom operations
2025-08-03 10:29:05 +02:00
David Kaspar
52b87fa17a
Merge pull request #1394 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-03 10:11:31 +02:00
Crowdin Bot
f209b17811
New Crowdin translations by GitHub Action
2025-08-03 07:36:52 +00:00
David Kaspar
a3d38aab1b
Merge pull request #1391 from davotoula/update-translations
...
Update translations. CZ, SE, PT, DE
2025-08-03 09:35:39 +02:00
Vitor Pamplona
52df3cba02
Updates junit, benchmark, media3, expresso, compose, and crypto
2025-08-01 18:48:31 -04:00
David Kaspar
bb8a71f47b
Update translations. CZ, SE, PT, DE
2025-08-01 23:37:14 +02:00
Vitor Pamplona
d78d3aeab3
Merge pull request #1390 from davotoula/upgrade-agp
...
Upgrade agp to 8.12.0
2025-08-01 17:30:59 -04:00
Vitor Pamplona
7f6435ba57
Updates build tools to java 21
2025-08-01 17:07:31 -04:00
Vitor Pamplona
1a58603477
Merge pull request #1389 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-08-01 16:58:20 -04:00
David Kaspar
4b36da59ec
Upgrade agp to 8.12.0
2025-08-01 22:55:28 +02:00
Crowdin Bot
9257305820
New Crowdin translations by GitHub Action
2025-08-01 20:40:51 +00:00
Vitor Pamplona
e414c4be98
Merge pull request #1388 from vitorpamplona/full-outbox
...
Full outbox
2025-08-01 16:39:30 -04:00
Vitor Pamplona
340760513f
Better handling index cleanup when draft events get deleted
2025-08-01 16:11:24 -04:00
Vitor Pamplona
eed4350bca
Simplifying badge composables
2025-08-01 16:10:34 -04:00
Vitor Pamplona
6b946a57c2
Moves the exceptions to our own signing exceptions
2025-08-01 16:09:52 -04:00
Vitor Pamplona
26cadfee88
Fixes the index after deletions
2025-08-01 11:40:19 -04:00
Vitor Pamplona
4cd24e5363
No need for not null checks
2025-08-01 09:57:33 -04:00
Vitor Pamplona
e715a74bc4
Better indexes notes in channels and chatrooms
2025-08-01 08:30:44 -04:00
Vitor Pamplona
42738e72f7
fixes test case
2025-07-31 19:14:43 -04:00
Vitor Pamplona
add8f8eba2
Improves the rendering of the node id
2025-07-31 19:12:10 -04:00
Vitor Pamplona
e82c09e1c3
Finishes the migration of adressable ids on the local cache.
2025-07-31 19:11:55 -04:00
Vitor Pamplona
e1b5f0f7b5
Renames chatroom and message fields
2025-07-31 19:11:08 -04:00
Vitor Pamplona
7e9d5d6063
Uses new tag model on the ZapEvent
2025-07-31 19:06:34 -04:00
Vitor Pamplona
141f0ed63b
Removes unused items from Node
2025-07-31 19:06:09 -04:00
Vitor Pamplona
c5645b0ae7
Removes suspend of NostrSignerSync-based functions
2025-07-31 17:45:44 -04:00
Vitor Pamplona
fe8f519dbf
Correctly logs off from the current account when creating new accounts from inside an existing account.
2025-07-31 17:45:21 -04:00
Vitor Pamplona
14e860928b
Improves names of the repost methods
2025-07-31 17:44:04 -04:00
Vitor Pamplona
ba460e011e
Adds a lower boundary for inbox from random relays.
2025-07-31 12:22:22 -04:00
Vitor Pamplona
12f793ad51
The gentle shutdown doesn't really work. There could be too many send messages waiting to be processed.
2025-07-31 12:21:44 -04:00
Vitor Pamplona
504d582d54
Tuning limits for Global feeds
2025-07-31 11:31:36 -04:00
Vitor Pamplona
a59cd590bc
Deletes these very confusing mocks into account viewmodels for the test
2025-07-30 20:20:56 -04:00
Vitor Pamplona
2e9696745a
Avoids sending filters on new connections if the client is not active
2025-07-30 18:23:02 -04:00
Vitor Pamplona
5d4b16641e
Fixes count call
2025-07-30 18:11:11 -04:00
Vitor Pamplona
1ddc9c216b
Marks which relays have been sending unsupported events.
2025-07-30 18:06:24 -04:00
Vitor Pamplona
349dfe3d42
Slowdown updates to random relay requests.
2025-07-30 18:05:53 -04:00
Vitor Pamplona
521a41d81b
avoids logging with sub ms times
2025-07-30 17:50:21 -04:00
Vitor Pamplona
c6e103ff87
Delete unnecessary logs
2025-07-30 17:33:56 -04:00
Vitor Pamplona
e70f1fedc6
Adds a coroutine to the relay class so that we can defer processing events
2025-07-30 17:33:12 -04:00
Vitor Pamplona
651ca9a3ef
No need to update status on EOSE
2025-07-30 17:31:38 -04:00
Vitor Pamplona
bd7dba1a31
Fixes more random relay hint errors
2025-07-30 17:31:24 -04:00
Vitor Pamplona
cf1d66bc01
new parameter to only log when a given amount of ms have passed.
2025-07-30 16:50:36 -04:00
Vitor Pamplona
414e933686
Only trigger new filters if this has changed
2025-07-30 16:49:48 -04:00
Vitor Pamplona
fa53ff2c78
Adds an iMeta cache for Picture and Video kinds and speeds up the procedure to verify if a video or picture is supported.
2025-07-30 12:47:31 -04:00
Vitor Pamplona
2c6a084808
Makes sure the NostrClient stays off in the background
2025-07-30 10:37:30 -04:00
Vitor Pamplona
8abba9246c
Adds support to reply to Yaks with another voice message.
2025-07-29 20:07:28 -04:00
Vitor Pamplona
c9de32c3fa
fixes voice track bugs
2025-07-29 15:08:47 -04:00
Vitor Pamplona
35a0b04020
Adds view support for public messages
2025-07-29 15:03:44 -04:00
Vitor Pamplona
4cc5aaa49d
Adds view support for YakBak
2025-07-29 15:02:16 -04:00
Vitor Pamplona
bbf6e02609
Beginnings for the migration to DataStore
2025-07-28 17:13:57 -04:00
Vitor Pamplona
7ba2810423
Quick event store using SQLite directly.
2025-07-28 16:49:39 -04:00
Vitor Pamplona
88f9beafd3
Faster expiration calculation and tag array serialization
2025-07-28 16:48:42 -04:00
Vitor Pamplona
0116bc30e4
Creates a TagArray deserializer that interns all strings to avoid duplicated memory
2025-07-28 10:53:55 -04:00
Vitor Pamplona
a59fe59657
Sending eventDB companion to avoid recreating it all the time
2025-07-27 16:52:28 -04:00
Vitor Pamplona
e6dfa07526
Fixes expiration builder
2025-07-27 16:51:59 -04:00
Vitor Pamplona
8e3594cd75
Adds a way to delete events by address only
2025-07-27 16:25:24 -04:00
Vitor Pamplona
d5bbf4b00b
Adds basic events to the seacheable interface
2025-07-27 16:25:09 -04:00
Vitor Pamplona
dc68d6025e
Adds support for the Request to Vanish NIP - 62
2025-07-27 16:24:10 -04:00
Vitor Pamplona
f8f59abdf1
Small refactoring
2025-07-25 14:33:14 -04:00
Vitor Pamplona
3a37d5e42d
Fixes the benchmark testing cases
2025-07-25 14:29:14 -04:00
Vitor Pamplona
ca9777be83
Creates a kind type alias
2025-07-25 12:42:19 -04:00
Vitor Pamplona
e7a9890eb1
Fixes quartz test cases for the new structure
2025-07-25 12:41:43 -04:00
Vitor Pamplona
39152d4e90
Makes the metadata event and contact list addressables
2025-07-25 12:40:55 -04:00
Vitor Pamplona
96e26cfb7d
Adds a parser and assembler for NIP47
2025-07-25 12:39:55 -04:00
Vitor Pamplona
8844bb73ea
Defines a searcheable interface for events to implement and provide content for a full text search
2025-07-25 12:39:38 -04:00
Vitor Pamplona
180a1eb1db
Refactors the use of Gzip
2025-07-25 12:39:11 -04:00
Vitor Pamplona
b77127df77
Minor adjustment
2025-07-24 11:05:08 -04:00
Vitor Pamplona
803b231aaa
Moves firebase to the main module
2025-07-24 10:16:56 -04:00
Vitor Pamplona
b27a12b9b5
Finally solved the issue with @aar in gradle
2025-07-24 10:11:36 -04:00
Vitor Pamplona
e7f04ad38d
updates spotless
2025-07-24 10:01:20 -04:00
Vitor Pamplona
25e92666e0
Adjusts the gradle DSL language to the latest deprecations
2025-07-24 09:53:00 -04:00
Vitor Pamplona
e76bffd048
Updates coil, compose, firebase, jackson, lifecyle, mockk, navigation
2025-07-24 09:37:40 -04:00
Vitor Pamplona
558a060994
Merge remote-tracking branch 'origin/HEAD' into full-outbox
...
# Conflicts:
# gradle/libs.versions.toml
2025-07-24 09:27:01 -04:00
Vitor Pamplona
14055894dc
Refactoring in the relay url normalizer
2025-07-24 09:22:24 -04:00
Vitor Pamplona
a494257a27
Adds Proxy relay list and adds support for fixed list of relays.
2025-07-23 19:09:04 -04:00
Vitor Pamplona
1084d2a063
Adds an indexer relay list
2025-07-23 13:19:46 -04:00
Vitor Pamplona
57e4d76da0
Adds broadcasting relay section
2025-07-23 11:35:25 -04:00
Vitor Pamplona
5ac4314e2a
Improvements to the online check
2025-07-23 11:33:43 -04:00
Vitor Pamplona
a7dbd787f4
Creates a garbage collector-friendly note cache.
2025-07-23 10:50:51 -04:00
Vitor Pamplona
3a0d7ddac1
Removes unnecessary spec in Channel
2025-07-23 09:26:07 -04:00
Vitor Pamplona
c221506e78
Fixes square loading image on Follow packs
2025-07-23 08:50:14 -04:00
Vitor Pamplona
064a732ec8
Fixes leaving and joining channels
2025-07-23 08:44:41 -04:00
Vitor Pamplona
95f463b0aa
Showing ephemeral chats in the messages list.
...
Fixing a bug of the last message with unloaded event
2025-07-22 20:12:43 -04:00
Vitor Pamplona
6d4708bbeb
Implements a partial page system to load feeds.
2025-07-22 19:02:23 -04:00
Vitor Pamplona
1d9b2cffa2
Filtering Addressable notes from Notification's note stack
2025-07-22 15:05:17 -04:00
Vitor Pamplona
6c77bf94a8
Fixing mark as read
2025-07-22 14:09:47 -04:00
Vitor Pamplona
37ff0070ee
Solves the hanging AccountViewModel scope when Amethyst is forced closed.
2025-07-22 13:38:30 -04:00
Vitor Pamplona
0f13202f84
Corrects a bug of not showing the user's own messages on chat
2025-07-22 12:46:05 -04:00
Vitor Pamplona
a3ec4d4260
Completing Intent writing implementation
2025-07-22 10:54:24 -04:00
Vitor Pamplona
e6b5d51cda
Fixes NIP-55 return as a list of results on the intent.
2025-07-22 10:34:42 -04:00
Vitor Pamplona
8fe13717dd
Fixes trying to parse empty addresses
2025-07-22 10:34:09 -04:00
Vitor Pamplona
c7e81d1378
Refactoring Channel modules
2025-07-22 10:33:50 -04:00
Vitor Pamplona
8e6d71e422
Minimizes the dependency on the Account further by moving Tor settings to a tor Privacy State
2025-07-21 19:09:06 -04:00
Vitor Pamplona
95c6dcce5e
Moves Ots to its own state class
2025-07-21 17:34:48 -04:00
Vitor Pamplona
6066c7d06d
Removes relay lists from notifications
2025-07-21 17:33:31 -04:00
Vitor Pamplona
1c5acc00f3
More appropriate limits
2025-07-21 10:11:03 -04:00
David Kaspar
d8fd9f127d
Merge pull request #1387 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-07-20 16:12:05 +02:00
Crowdin Bot
0037d642b0
New Crowdin translations by GitHub Action
2025-07-20 14:11:35 +00:00
Vitor Pamplona
3b0c1b6d4f
Merge pull request #1386 from davotoula/upgrade-agp
...
Upgrade agp to 8.11.1
2025-07-20 10:10:29 -04:00
David Kaspar
4855e36e4c
Upgrade agp to 8.11.1
2025-07-20 11:46:26 +02:00
Vitor Pamplona
8a3bb6e1ae
Significantly reduces the limit in our filters to reduce the amount of duplicated events coming from multiple relays.
2025-07-18 18:35:52 -04:00
Vitor Pamplona
13ce0e7311
Breaks down the amount of reactions for each post to download from the amount of reactions to communities and chats themselves (which is much larger)
2025-07-18 18:34:54 -04:00
Vitor Pamplona
ee67f2ded9
Adds a subscription to download notifications from random relays in case users are not outbox ready yet.
2025-07-18 18:33:50 -04:00
Vitor Pamplona
19327b682c
Improves external signer logs
2025-07-18 17:51:43 -04:00
Vitor Pamplona
85dd9dd5a4
Fixes screen clean up in Login
2025-07-18 17:47:56 -04:00
Vitor Pamplona
9d9963d324
Fixes saving old version of event in to the cache.
2025-07-18 17:47:11 -04:00
Vitor Pamplona
58e353fb40
Moves NIP-55 calls to be suspending functions.
...
Moves NIP-55 calls to include an ID per call, not per event.
Adds error handling facilities to the Signer functions.
Moves the indexing of the decrypted objects to outside the LocalCache
Migrates Signers to become suspending functions.
Migrates Decryption caching systems to outside the Events themselves.
Migrates all NIP-51 lists to the new structure.
Migrates Drafts and NIP-04 and NIP-17 DMs to the new structure
Migrates Bookmarks to the new structure.
Changes the Room route to avoid using hashcode.
2025-07-18 17:17:27 -04:00
Vitor Pamplona
7bdb3a1a18
Fixing method name
2025-07-14 11:50:15 -04:00
Vitor Pamplona
850277fdc1
Optimize imports
2025-07-14 11:29:21 -04:00
Vitor Pamplona
597fec5c43
Removes lazy StateFlows due to inconsistent starting values.
2025-07-14 11:19:12 -04:00
Vitor Pamplona
909eb62db6
Moves private zap decryption to async, all at once.
2025-07-14 11:18:56 -04:00
Vitor Pamplona
510583e72e
Rewrites NIP-55 to start offering better error handling.
2025-07-14 11:17:59 -04:00
Vitor Pamplona
f93b08a272
Refactors master serializer name from EventMapper to JsonMapper
2025-07-11 17:10:51 -04:00
Vitor Pamplona
bb5ae5d09e
Fixes F-droid compilation due to a duplicated class from a unifiedpush crypto bug
2025-07-11 14:55:13 -04:00
Vitor Pamplona
02a9563de6
Updates spotless
2025-07-11 14:33:43 -04:00
Vitor Pamplona
15efd671ec
Reorganizes navigation and unifies topbar designs
2025-07-11 14:05:31 -04:00
Vitor Pamplona
e37d6ebd8b
Moves media server from Dialog to Screen with full route.
2025-07-11 09:22:27 -04:00
Vitor Pamplona
2ecfeb6e7f
Moves subscription management from Ammolite to Quatrz
2025-07-11 08:51:02 -04:00
Vitor Pamplona
a94c8673d5
Fixing Ephemeral Chat interface
2025-07-10 19:42:18 -04:00
Vitor Pamplona
e3acf4c250
Fixes some of the live stream flags when the event doesn't update.
2025-07-10 18:22:38 -04:00
Vitor Pamplona
dc61c5a8e4
Keeps cache of the content inside Public chat forums
2025-07-10 18:08:32 -04:00
Vitor Pamplona
f3e08bd297
No need for this OkHttp log anymore
2025-07-10 18:08:09 -04:00
Vitor Pamplona
62253d8601
Finish the migration to separate channels
2025-07-10 18:07:57 -04:00
Vitor Pamplona
5daaa6364d
Fixes issue with unable to parse text-based content in the event.
2025-07-10 18:07:01 -04:00
Vitor Pamplona
a706005cfd
Fixes recent label reuse
2025-07-10 18:06:30 -04:00
Vitor Pamplona
4eb348654f
Providing a delete fix for empty drafts.
2025-07-10 17:04:19 -04:00
Vitor Pamplona
191f1344db
Starts diskcache together with video cache
2025-07-10 17:02:31 -04:00
Vitor Pamplona
a207d80d55
Separating Reports from Metadata watching
2025-07-10 15:51:57 -04:00
Vitor Pamplona
94a7d9cf14
Makes sure the list is not empty before building the filter
2025-07-10 14:52:27 -04:00
Vitor Pamplona
f1d39b8517
Logs the relays used for deletion events and checks if it hasn't sent the deleted event to each relay already
2025-07-10 14:36:31 -04:00
Vitor Pamplona
7a14d95973
Adds more relays to the DVM inbox.
...
Sends the new EVENT only after the screen updates.
2025-07-10 14:34:09 -04:00
Vitor Pamplona
8dbb1a889e
Avoids displaying loading symbol on our cached AsyncImage implementation
2025-07-10 11:49:16 -04:00
Vitor Pamplona
ca41d4e10a
Refactoring
2025-07-10 11:13:52 -04:00
Vitor Pamplona
ee8ffcd03d
Fixes some borders of preview cards
2025-07-10 11:08:39 -04:00
Vitor Pamplona
f9189e9ec1
Further separates channels by kind in the UI
2025-07-10 10:57:42 -04:00
Vitor Pamplona
ec985d58e7
Fixes matching image borders in the loading step of preview cards
2025-07-10 09:43:36 -04:00
Vitor Pamplona
a2d16c173c
Fixing crash when the last : is not present in an address
2025-07-10 09:38:53 -04:00
Vitor Pamplona
123803edd3
Fixes reply count
2025-07-09 17:48:19 -04:00
Vitor Pamplona
35005dddad
Adds checks in the filter to highlight issues with empty or invalid filters
2025-07-09 17:20:59 -04:00
Vitor Pamplona
accc8d4439
Brute forces the finding of events.
2025-07-09 16:57:26 -04:00
Vitor Pamplona
267d4c505a
Moves OkHttp to the coroutines version and turns all their usage into suspend functions
2025-07-09 15:14:58 -04:00
Vitor Pamplona
b502ab7de8
Fixes issue on saving NIP47 address
2025-07-09 15:14:25 -04:00
Vitor Pamplona
7eb39b3c4c
Readjusts relay view on profile
2025-07-09 09:03:56 -04:00
Vitor Pamplona
17e33c61e7
Refactoring base EOSE managers to provide better logging
2025-07-09 09:03:45 -04:00
Vitor Pamplona
6851b1bb51
Only closes after removing the subscriptions to avoid resubscribing while closing.
2025-07-09 08:37:21 -04:00
Vitor Pamplona
b12e675b3a
Refactors the name of the simple relay client
2025-07-09 08:36:50 -04:00
Vitor Pamplona
cc02806390
Fixing weird version number on the left drawer
2025-07-08 19:27:43 -04:00
Vitor Pamplona
2ee1285ea1
Removes old follows in Contact lists.
2025-07-08 19:16:28 -04:00
Vitor Pamplona
c5ed0cfa60
Improves Image load screens in the preview cards
2025-07-08 18:43:10 -04:00
Vitor Pamplona
4084a72178
Minor refactoring in Account
2025-07-08 18:17:18 -04:00
Vitor Pamplona
2c3e641639
Merge branch 'full-outbox' of nostr://vitorpamplona.com/relay.ngit.dev/amethyst into full-outbox
...
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/model/Account.kt
2025-07-08 18:06:38 -04:00
Vitor Pamplona
8e0b94646a
Includes Trusted Relays in all my relays
2025-07-08 18:05:54 -04:00
Vitor Pamplona
8c4ec1dc7d
Includes Trusted Relays in all my relays
2025-07-08 17:52:56 -04:00
Vitor Pamplona
e89a04eb56
Makes sure the metadata and the Advertised Relay list goes to every connected relay.
2025-07-08 17:21:59 -04:00
Vitor Pamplona
8d14f3615d
Improves Bech32 parser to consider only the 58 chars of nsec1, npub1 and note1.
2025-07-08 15:22:55 -04:00
Vitor Pamplona
dbb9ee5379
Removing all the default since logic
2025-07-08 15:22:31 -04:00
Vitor Pamplona
0be9447bee
Reusing the parsed event to reuse cache when computing relay hints.
2025-07-08 15:22:09 -04:00
Vitor Pamplona
0d174aae30
Refining the outbox relay selection with all hints.
2025-07-08 14:34:52 -04:00
Vitor Pamplona
994363602d
Turns the relay information dialog into a route
2025-07-08 12:00:17 -04:00
Vitor Pamplona
296fa201f7
Delete Relay Selection dialog from all new post screens.
2025-07-08 11:28:30 -04:00
Vitor Pamplona
a05b2681ad
1. Fixes crash when opening the relay selection dialog
...
2. Fixes color and size of ping labels on relays
3. Removes delete button for connected relay view.
2025-07-08 10:20:54 -04:00
Vitor Pamplona
1b86c3d85b
Fixes the sending of multiple old events back to the relays that send old events to Amethyst.
2025-07-08 09:22:33 -04:00
Vitor Pamplona
2c90aa4b1e
Continues the migration to use full parsed Addresses instead of just addressIds on the Local Cache. Moves the community route to take a full address.
2025-07-08 08:54:13 -04:00
Vitor Pamplona
0fe8f6c78c
Improves debouncing when changing relays.
2025-07-07 20:40:29 -04:00
Vitor Pamplona
b800b5a664
Early support for Blocked and Trusted Relay Lists
2025-07-07 19:49:23 -04:00
Vitor Pamplona
d084714a21
Avoids logging all REQs by default.
2025-07-07 17:19:37 -04:00
Vitor Pamplona
ed2d7f57c5
Adds the incoming relay as a hint to all related keys, addresses and event ids.
2025-07-07 17:02:42 -04:00
Vitor Pamplona
eb5d113298
new map of set api
2025-07-07 13:48:39 -04:00
Vitor Pamplona
cf48516602
Makes sure Filters are not updated if the since is the only change
2025-07-07 13:37:57 -04:00
Vitor Pamplona
28d182cc55
Updates tor, okhttp and navigation compose
2025-07-03 18:26:57 -04:00
Vitor Pamplona
7eeb2ed66a
Fixes count call mistake
2025-07-03 18:26:34 -04:00
Vitor Pamplona
1e8ca6c5f0
Merge remote-tracking branch 'origin/HEAD' into full-outbox
2025-07-03 17:22:38 -04:00
Vitor Pamplona
9e72f5d55e
Fixes icon size cache on the User Profile
2025-07-03 17:14:07 -04:00
David Kaspar
1db628719b
Merge pull request #1384 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-07-03 22:04:11 +02:00
Vitor Pamplona
e4ebca29f4
Improves RelayHint normalization to make sure the NormalizedRelayUrls are indeed relays
2025-07-03 15:45:46 -04:00
Crowdin Bot
67ae61e5d4
New Crowdin translations by GitHub Action
2025-07-03 19:13:48 +00:00
Vitor Pamplona
64bad2b476
Better logs for the basic relay
2025-07-03 13:08:50 -04:00
Vitor Pamplona
cfbf113910
Fixes crash on lazy flows when uploading images before the relay list is loaded.
2025-07-03 13:08:27 -04:00
Vitor Pamplona
47e69ce045
Improves caching on the allRelays call on the Nostr Client
2025-07-03 10:30:53 -04:00
Vitor Pamplona
da3dbb0321
Fixes the Account switching issue that was calling onDispose AFTER a new user composition was run and thus closing all connections on switching
2025-07-03 10:30:19 -04:00
Vitor Pamplona
1f4ad32d23
Fixes the clearing of the mapping function between users and subscription ids when subscriptions end
2025-07-03 10:29:17 -04:00
Vitor Pamplona
69db9bdcd5
Reviews onDispose calls to make sure the onDispose is disposing the data from the previous composable, since it can happen AFTER a new composition already took place. So the references must match the old composition.
2025-07-03 10:27:47 -04:00
Vitor Pamplona
5bcaf065a3
Fixing logs for the new list of connected relays.
2025-07-03 10:19:33 -04:00
Vitor Pamplona
1fa2592563
Improves the performance and logging structures for the anti-spam filter.
2025-07-02 19:36:33 -04:00
Vitor Pamplona
ad481e1928
Removes another local relay from the list
2025-07-02 17:59:14 -04:00
Vitor Pamplona
5525bc4bd9
Increasing the thread pool for OkHttp in order to sustain more connections.
2025-07-02 17:42:46 -04:00
Vitor Pamplona
0b102df117
Removes local relays from NIP65 lists.
2025-07-02 15:50:50 -04:00
Vitor Pamplona
826718d688
Fixes author id on the outbox loader filter.
2025-07-02 15:35:47 -04:00
Vitor Pamplona
3b260d98ad
Marks if it is using Tor in each relay of the list.
2025-07-02 15:15:19 -04:00
Vitor Pamplona
e499410ddb
Fixes bug when the string has emojis and is trying to check if it is a hex or not
2025-07-02 15:12:48 -04:00
Vitor Pamplona
11d9af41bd
Normalizes the click to open relay info dialog
2025-07-02 14:52:16 -04:00
Vitor Pamplona
67dc396588
Displays all available and connected relays in the relay screen
2025-07-02 14:52:03 -04:00
Vitor Pamplona
d0e66504e4
Improves Relay Icon flow
2025-07-02 14:16:26 -04:00
Vitor Pamplona
8c11ae5c87
Avoids adding local relays to the hint index.
2025-07-02 14:13:36 -04:00
Vitor Pamplona
abd895480d
adds local servers to the "local definition" of the Normalized Url
2025-07-02 14:13:09 -04:00
Vitor Pamplona
a1a2e86c94
Reports don't offer hints
2025-07-02 14:12:24 -04:00
Vitor Pamplona
83899bda5a
Improves RelayInformation document with an empty one
2025-07-02 14:11:45 -04:00
Vitor Pamplona
29b70a52d4
Improves logs
2025-07-02 14:11:26 -04:00
Vitor Pamplona
dd5c2ca704
Making sure the order of params is right
2025-07-02 13:35:01 -04:00
Vitor Pamplona
ce7965d00e
Improves starting value of flows
2025-07-02 12:51:08 -04:00
Vitor Pamplona
bb55aea4a4
Fixing log messages
2025-07-02 12:50:17 -04:00
Vitor Pamplona
546d238db3
Reformats due to new lint
2025-07-02 10:51:13 -04:00
Vitor Pamplona
774ee20a20
Updates all dependencies
2025-07-02 10:51:03 -04:00
Vitor Pamplona
1c4b2e9d1a
Recover Send and Wait
2025-07-02 08:59:12 -04:00
Vitor Pamplona
b236938ef5
Simplify the unregistering instead of relying on errors and other states that might come from separate filters to the same relay
2025-07-02 08:59:03 -04:00
Vitor Pamplona
1615337a2c
Simplifies new try
2025-07-02 08:58:16 -04:00
Vitor Pamplona
936b17f54a
Merge remote-tracking branch 'origin/HEAD' into full-outbox
...
# Conflicts:
# ammolite/src/main/java/com/vitorpamplona/ammolite/relays/NostrClient.kt
# gradle/libs.versions.toml
2025-07-02 08:23:54 -04:00
Vitor Pamplona
0cfcfaf899
3rd large migration to outbox.
2025-07-01 20:38:18 -04:00
Vitor Pamplona
f788d031c9
Merge pull request #1380 from davotoula/684-add-auto-translate-config-to-settings
...
Add auto translate config to new user specific settings
2025-07-01 08:43:46 -04:00
Vitor Pamplona
ddc50f379d
Merge pull request #1381 from greenart7c3/main
...
Propagate Auth event to `sendAndWaitForResponse`
2025-06-30 08:11:58 -04:00
greenart7c3
bfe5fcf0b1
- Propagate Auth event to sendAndWaitForResponse
...
- Pass feed types to `sendSingle` when sending signed event
2025-06-30 08:11:10 -03:00
David Kaspar
fb9c070ee6
One more line for description
2025-06-29 18:33:30 +01:00
David Kaspar
285603cc0f
added trailing x icon to menu items to clarify removal
2025-06-29 18:28:57 +01:00
David Kaspar
65cca8aa34
Don't show users own languages
...
TODO:
Add red x to items
Rename Settings to AppSettings (routes, classes)
Add explainer
2025-06-29 17:30:02 +01:00
David Kaspar
6015ea04ce
remove selected language from dropdown
...
TODO:
Rename Settings to AppSettings (routes, classes)
Don't show users own languages
Add explainer
2025-06-26 13:27:32 +02:00
David Kaspar
fdf11d3ca3
revert dropdown
...
TODO:
Rename Settings to AppSettings (routes, classes)
Don't show users own languages
Remove language from drop down
Add explainer
2025-06-26 09:14:58 +02:00
David Kaspar
5620eb023b
added preview for UserSettingsScreen.kt
...
TODO:
Rename Settings to AppSettings (routes, classes)
Don't show users own languages
Remove language from drop down
Add explainer
2025-06-26 08:56:23 +02:00
David Kaspar
759ef44440
Remove previous implementation
...
TODO:
Rename Settings to AppSettings (routes, classes)
Don't show users own languages
Remove language from drop down
Add explainer
Change to dropdown with Xs
2025-06-26 08:16:09 +02:00
David Kaspar
f0670971ef
Wrap update call in IO scope
...
TODO:
Don't show users own languages
Remove language from drop down
Add explainer
2025-06-25 20:51:11 +02:00
David Kaspar
c59086068b
Move dont translate settings to the dedicated user settings page
2025-06-25 20:42:29 +02:00
David Kaspar
3524f7e412
Added support for multiple icons for a single row (backwards compatible)
2025-06-25 20:18:11 +02:00
David Kaspar
2e2a9bb917
Added user preferences screen
2025-06-25 18:13:43 +02:00
David Kaspar
a5c370133c
Change to show excluded languages in dropdown, no rows below
...
TODO:
Load actually excluded languages
Optimise code
Improve UI
2025-06-25 17:34:14 +02:00
David Kaspar
0495dc88fc
Add dropdown with auto translate language excludes to app settings
...
Persist changes to settings
TODO:
Load actually excluded languages
Optimise code
Improve UI
2025-06-25 17:34:14 +02:00
Vitor Pamplona
f536abb22a
Merge pull request #1378 from davotoula/main
...
Upgrade AGP and Gradle
2025-06-25 11:22:33 -04:00
David Kaspar
0bae8adebc
Upgrade AGP to 8.11.0
...
Upgrade Gradle to 8.13
2025-06-25 17:18:05 +02:00
Vitor Pamplona
3270254f47
Merge pull request #1377 from davotoula/strip-codec-from-mime-type-before-saving-video
...
bugfix: only user part before ";" in media-type before passing to ContentResolver
2025-06-25 10:53:16 -04:00
David Kaspar
dacc9f236b
strip anything after ";" in media-type before passing to ContentResolver
2025-06-25 16:33:28 +02:00
David Kaspar
cd316fb52f
Merge pull request #1376 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-06-25 14:20:16 +02:00
Crowdin Bot
bf7638eaa9
New Crowdin translations by GitHub Action
2025-06-25 12:02:19 +00:00
Vitor Pamplona
3f049a0536
Merge pull request #1375 from davotoula/fix-build-issue-android-kotlin-geohash
...
fix build: change to version b481c6a64e of android-kotlin-geohash
2025-06-25 08:00:55 -04:00
David Kaspar
86bfca99e6
change to version b481c6a64e of android-kotlin-geohash as 1.0 has disappeared from jitpack.io
2025-06-25 11:41:28 +02:00
Vitor Pamplona
e7dec1702d
Merge pull request #1369 from alltheseas/patch-2
...
Update README.md with deepwiki link
2025-06-19 09:48:04 -04:00
Vitor Pamplona
4a848b3296
Merge pull request #1372 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-06-19 09:47:52 -04:00
Crowdin Bot
2d9348b640
New Crowdin translations by GitHub Action
2025-06-19 13:46:40 +00:00
Vitor Pamplona
44108c7410
Merge pull request #1371 from greenart7c3/main
...
Add a UnsignedEventDeserializer
2025-06-19 09:45:19 -04:00
greenart7c3
9e58c2d3b9
Use EventTemplate instead of Event in BunkerRequestSign
2025-06-18 17:24:43 -03:00
greenart7c3
acf426ccdc
Add a UnsignedEventDeserializer
2025-06-18 13:28:43 -03:00
alltheseas
2889c5dae5
Update README.md with deepwiki link
...
added link to amethyst deepwiki
2025-06-09 17:13:35 -05:00
KotlinGeekDev
a38d198b70
Use background coroutines for modification operations. Use FollowSet in callbacks, rather than just the set identifier.
2025-06-07 02:42:27 +01:00
KotlinGeekDev
af2b2328cf
Generalise the implementation of PeopleListEvent.removeTag() to also support public list events. Use defaults in already dependent code.
2025-06-06 18:34:45 +01:00
Vitor Pamplona
8276156f0a
Merge pull request #1367 from davotoula/upgrade-agp
...
Upgrade AGP to 8.10.1
2025-06-05 13:02:06 -04:00
David Kaspar
6a544340cb
Upgrade AGP to 8.10.1
2025-06-05 18:52:36 +02:00
KotlinGeekDev
94243f4060
Make adjustments to UI code following the ViewModel method signatures.
2025-06-04 21:41:53 +01:00
Vitor Pamplona
5ee64b31d2
Merge pull request #1366 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-06-02 11:36:03 -04:00
Crowdin Bot
ec1dd3cc6e
New Crowdin translations by GitHub Action
2025-06-02 15:28:22 +00:00
Vitor Pamplona
ef6313696d
Merge pull request #1365 from davotoula/remove-unused-resource-ids-from-translated-files
...
remove unused string ids from translations
2025-06-02 11:27:07 -04:00
David Kaspar
ffeeebfe1e
remove unused string ids from translations
2025-06-02 16:12:42 +02:00
KotlinGeekDev
63177b15a1
Make adjustments to UI code following the ViewModel method signatures.
2025-05-30 20:26:42 +01:00
KotlinGeekDev
69ae42d344
Implement relevant methods in NostrListFeedViewModel. Remove unnecessary subclass and bring ViewModelProvider in the actual VM itself.
2025-05-30 20:21:45 +01:00
Vitor Pamplona
fcde05c91e
Merge pull request #1363 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-30 14:42:48 -04:00
Crowdin Bot
6b1662da24
New Crowdin translations by GitHub Action
2025-05-30 18:40:22 +00:00
Vitor Pamplona
5925a91e62
Merge pull request #1360 from davotoula/update-string-ids
...
update string ids to force new translations
2025-05-30 14:39:03 -04:00
KotlinGeekDev
0b3380ac6e
Use dTag instead of the note's address.
2025-05-30 19:03:21 +01:00
KotlinGeekDev
af0061ae09
Add new methods for list management to PeopleListEvent.
2025-05-30 13:57:23 +01:00
David Kaspar
d83e8007dc
Merge pull request #1362 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-28 08:29:43 +02:00
Crowdin Bot
173a27f085
New Crowdin translations by GitHub Action
2025-05-28 06:20:54 +00:00
David Kaspar
a970080478
Merge pull request #1361 from davotoula/remove-unused-imports
...
remove unused imports amethyst
2025-05-28 08:19:40 +02:00
David Kaspar
293bd2557b
remove unused imports amethyst
2025-05-28 07:42:20 +02:00
David Kaspar
dac1c3717a
update string ids to force new translations
2025-05-27 18:49:35 +02:00
Vitor Pamplona
e10332c957
- Only saves draft after the first change in the UI.
...
- Adjusts coroutine scopes to make sure it cannot be cancelled while posting
2025-05-20 18:21:19 -04:00
Vitor Pamplona
de881c23ec
Migrates button objects out of the new post screen file
2025-05-20 17:01:55 -04:00
Vitor Pamplona
fcfa2bb05a
Making NewPost Screen to be about Kind 1 and polls only
2025-05-20 16:30:35 -04:00
Vitor Pamplona
00048606fa
Small refactoring
2025-05-20 15:22:53 -04:00
Vitor Pamplona
65bab50a6d
Slight improvements on paddings and spacings
2025-05-20 15:18:32 -04:00
Vitor Pamplona
6d0b05e34d
Activates NIP-22 reply for everything but kind 1s.
2025-05-20 15:00:00 -04:00
Vitor Pamplona
195e268865
Normalizes NIP-22 viewmodel to its own entity
2025-05-20 14:23:51 -04:00
Vitor Pamplona
bb1dfee35b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-05-20 11:54:29 -04:00
Vitor Pamplona
63340d79e2
- Adds support for creating and replying to NIP-22 geo scope posts
...
- Adds support for creating and replying to NIP-22 hashtag scope posts
- Refactors NIP-73 and NIP-22 on quartz to better support scoped replies
- Creates New post screens for both hashtags and geolocated posts.
2025-05-20 11:54:21 -04:00
Vitor Pamplona
041aa1c461
Fixes hashtag search i18n and padding
2025-05-20 11:50:24 -04:00
Vitor Pamplona
1594971a60
Merge pull request #1359 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-19 18:45:48 -04:00
Crowdin Bot
12b7cf410d
New Crowdin translations by GitHub Action
2025-05-19 22:16:05 +00:00
Vitor Pamplona
a5e8bdd43a
Fixes NIP-22 identifier for geotags
2025-05-19 17:42:16 -04:00
Vitor Pamplona
ba71c95bec
Removes youtube links from the video feed
2025-05-19 17:41:50 -04:00
Vitor Pamplona
e5230d734c
Merge pull request #1358 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-17 08:18:40 -04:00
Crowdin Bot
1a45e26eb8
New Crowdin translations by GitHub Action
2025-05-17 12:17:19 +00:00
Vitor Pamplona
1b81dfd832
Merge pull request #1357 from davotoula/remove-unused-imports
...
remove unused imports
2025-05-17 08:16:03 -04:00
David Kaspar
7ee2a02227
remove unused imports
2025-05-17 08:50:04 +02:00
Vitor Pamplona
8a59904bfc
Fixes local cache strategy to create an option and not verify events from Seals.
2025-05-16 19:27:39 -04:00
Vitor Pamplona
049e1d15ce
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-05-16 17:03:04 -04:00
Vitor Pamplona
203b5e5f39
Align specific inner events with the new verification procedures inside the consume function
2025-05-16 17:02:35 -04:00
David Kaspar
0bb8349a46
Update README.md
...
Long form content view only
2025-05-16 21:33:05 +02:00
David Kaspar
725fb11ec5
Merge pull request #1356 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-16 20:29:04 +02:00
Crowdin Bot
c429a97bb4
New Crowdin translations by GitHub Action
2025-05-16 18:15:50 +00:00
Vitor Pamplona
ad12f80679
Upgrade Media3 to 1.7.1
2025-05-16 14:14:11 -04:00
Vitor Pamplona
d35e3f8daf
Removing deprecated functions
2025-05-16 14:11:12 -04:00
Vitor Pamplona
780a1ef65e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-05-16 14:05:20 -04:00
David Kaspar
c413659c87
Merge pull request #1355 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-16 19:48:21 +02:00
Crowdin Bot
23f42a025a
New Crowdin translations by GitHub Action
2025-05-16 17:40:35 +00:00
David Kaspar
ef1ac76839
Update strings.xml
...
Fixed typo
2025-05-16 18:39:14 +01:00
Vitor Pamplona
141713bd35
Minor refactoring
2025-05-16 12:55:29 -04:00
Vitor Pamplona
b5a1b84fa8
Fixes logging of the memory cache usage
2025-05-16 12:48:01 -04:00
Vitor Pamplona
1a681e1b53
Deletes encrypted component of the GiftWrap after unwrapping to avoid consuming memory needlessly
2025-05-16 12:47:35 -04:00
Vitor Pamplona
07434eb4b6
Fixes newStack bug that was only resetting the stack until the home and not to its own route
2025-05-15 17:02:15 -04:00
Vitor Pamplona
ac7084ce84
Removing debug methods from the main binary
2025-05-15 16:40:44 -04:00
Vitor Pamplona
dc6f982ae9
Adds a byte count in the event per second logger
2025-05-15 15:33:53 -04:00
Vitor Pamplona
ea9d25d13b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-05-15 11:49:34 -04:00
Vitor Pamplona
afe04969ee
Improves edge to edge margins and colors for the RelayInfoDialog
2025-05-15 11:49:25 -04:00
Vitor Pamplona
3823acef0b
Merge pull request #1354 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-15 08:38:34 -04:00
Crowdin Bot
12ac1c48bb
New Crowdin translations by GitHub Action
2025-05-15 12:37:54 +00:00
Vitor Pamplona
b345eca8ad
Merge pull request #1350 from davotoula/share-media-to-other-apps
...
Share images to other apps
2025-05-15 08:36:23 -04:00
David Kaspar
c3c8b56a39
Merge branch 'main' into share-media-to-other-apps
2025-05-15 07:41:28 +02:00
Vitor Pamplona
42e20efaa5
removing unused imports
2025-05-14 20:39:01 -04:00
Vitor Pamplona
2ef1cb5fea
Merge pull request #1353 from kirpy0x/NostrLinks
...
Open Njump, Yakihonne and Primal links in Amethyst
2025-05-14 20:33:55 -04:00
Vitor Pamplona
df2f0feef8
Improvement to the logs of RelaySpeedLogger
2025-05-14 20:32:33 -04:00
Vitor Pamplona
700813dab7
Moves LocalCache bundler to the default thread
2025-05-14 19:27:57 -04:00
kirpy
b925b12278
Open Njump, Yakihonne and Primal links in Amethyst
...
fixes: 1217
2025-05-14 17:23:58 -06:00
Vitor Pamplona
6367e9ddc9
Moving logs from SubscriptionController to the Manager to be able to distinguish between the multiple managers
2025-05-14 19:19:58 -04:00
Vitor Pamplona
dfdee1ae96
- Migrating a mix of tags from the old Tag array methods to the new Tag Object parsers.
...
- Starting to use fast methods for Tag array loops instead of the native kotlin ones.
2025-05-14 19:19:29 -04:00
Vitor Pamplona
c0ecda94a3
Uses fastAny to avoid creating an iterator
2025-05-14 18:29:03 -04:00
Vitor Pamplona
acf944ebac
Avoids item drawing mishandling of multiple incognitos in the same chat screen
2025-05-14 18:28:49 -04:00
Vitor Pamplona
3c5b9dbca6
Fixes an issue with two home screens interfering with flow collections. For some reason it was only a problem because this route matches the starting route.
2025-05-14 17:00:36 -04:00
Vitor Pamplona
e0449a9d44
Adds a list state saver to the messages screen
2025-05-14 16:52:19 -04:00
Vitor Pamplona
4ae86861f8
Removes unnecessary labels
2025-05-14 15:17:31 -04:00
Vitor Pamplona
9e13e88ae9
removes log
2025-05-14 15:00:35 -04:00
Vitor Pamplona
1ed9aa64bf
Gets rid of the update bundler for Notes, Users and Channel.
2025-05-14 15:00:06 -04:00
Vitor Pamplona
803decf5ff
Move the EOSE cache from Note to the sub assembler
2025-05-14 14:59:27 -04:00
Vitor Pamplona
6a91b68b4b
Migrates missing User filter to the new no EOSE cache manager
2025-05-14 14:56:47 -04:00
Vitor Pamplona
0f018140f0
Minor refactoring
2025-05-14 14:56:08 -04:00
Vitor Pamplona
979e02e7fa
Migrates event finder and channel finder to the new No Eose cache manager
2025-05-14 14:55:53 -04:00
Vitor Pamplona
4fc2d3a7d1
Adds a new EOSE manager that keeps one sub but no EOSE cache
2025-05-14 14:53:54 -04:00
Vitor Pamplona
d0f138e992
Generalizes the FastEOSE cache for Users
2025-05-14 14:53:30 -04:00
Vitor Pamplona
b7ac32d768
Removes unused since param for missing events in thread assemblers
2025-05-14 14:50:52 -04:00
David Kaspar
3b5d12b477
make helper method suspend, use different scope in View
2025-05-14 19:15:16 +02:00
Vitor Pamplona
6f7f8e296b
Removes the time logger for note rendering
2025-05-14 12:53:56 -04:00
David Kaspar
d6ee09ecdb
Merge branch 'main' into share-media-to-other-apps
2025-05-14 18:20:57 +02:00
David Kaspar
61970b8ce5
Update README.md
...
Split video and image capture from phone. Ticket image capture
2025-05-14 17:17:27 +01:00
Vitor Pamplona
b045d0e122
Migrates lint to the newer default version and copyright to 2025
2025-05-14 11:59:15 -04:00
Vitor Pamplona
47de821f6d
Updates coil, compose, immutable, lifecycle, navigation and zoomable
2025-05-14 11:14:33 -04:00
Vitor Pamplona
2c06df7e50
Simple refactoring for the name of the subscription cache
2025-05-14 10:43:42 -04:00
Vitor Pamplona
52d31502e6
Migrates the Subscription controller to use filters from the NostrClient instead of the past version in the controller to avoid out of sync comparisons
2025-05-14 10:08:56 -04:00
Vitor Pamplona
d7d8f02a80
Moves Content Sensitivity setting to the Security filter screen
2025-05-13 20:09:14 -04:00
Vitor Pamplona
f3e2327676
Modifies the behavior of new posts to clear the background color after 5 seconds
2025-05-13 17:21:22 -04:00
Vitor Pamplona
dba51acbd5
Merge pull request #1351 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-13 15:32:53 -04:00
Crowdin Bot
20c775913a
New Crowdin translations by GitHub Action
2025-05-13 19:24:27 +00:00
Vitor Pamplona
a42afdc78b
merge
2025-05-13 14:53:00 -04:00
Vitor Pamplona
6ecb25b8e1
- Refactors the entire EOSE caching structure.
...
- Refactors all Datasource classes into a 3 layer design with composeSubscriptions being registered, passed to a group of EOSE managers that can change eose caching capabilities based on needs, and migrates the old subscription Orchestrator into a simpler controller
- Breaks down all Datasource into multiple filter functions
- Improves EOSE support for many of the base filters like on NIP-04 DMs, notifications, etc
- Moves EOSE cache for public, non-user-dependent items like channels, hashtags, etc to their own caching system.
- Improves the Relay speed logger to better track how many events are being received, and check for duplications
2025-05-13 14:52:26 -04:00
Vitor Pamplona
0e68031227
Removes the need to track EOSE at the base user class
2025-05-13 14:47:20 -04:00
Vitor Pamplona
466f52245b
Adds an isDifferent function to avoid resending NormalFilters
2025-05-13 14:46:09 -04:00
Vitor Pamplona
09946c19b9
Turns all base Hint classes into data classes
2025-05-13 14:44:03 -04:00
Vitor Pamplona
4279ad004c
Only updates EOSE log if the time is bigger
2025-05-13 14:43:44 -04:00
Vitor Pamplona
50cde1bc3e
- Bugfix to mark relay connections as AfterEOSE when the relay client or server closes the subscription
...
- Adds an arrival time to log the time EOSEs were received in case the listener is running async processes later.
2025-05-13 14:43:28 -04:00
Vitor Pamplona
2d5732bcce
Normalizes hashtag transformations for filters.
2025-05-13 14:40:03 -04:00
David Kaspar
a848ea6135
add content param when making call using a MediaPreloadedContent. Just in case
2025-05-13 09:43:23 +02:00
David Kaspar
095d054d62
add support for gifs
2025-05-13 09:39:33 +02:00
David Kaspar
2e4c9f77e6
refactor
2025-05-13 09:39:33 +02:00
David Kaspar
7efec03056
Return file extension from ShareHelper just in case mimetype is null
...
Use content to determine whether it's an image
2025-05-12 22:26:24 +02:00
KotlinGeekDev
44b567b01f
Write down implementation for FollowSetScreen. Introduce functions(hacks, really) for making sure of the UI/UX design.
...
- Implement dialog for creating a new list.
2025-05-12 20:47:12 +01:00
David Kaspar
91b6bf6e88
localisation
2025-05-12 21:03:17 +02:00
David Kaspar
35001c0b00
moved sharing intent back to view
2025-05-12 20:56:16 +02:00
David Kaspar
ce96ab873f
added todos
2025-05-12 18:42:56 +02:00
David Kaspar
8c1888b4d5
added error handling
...
.use {} for automatic resource management with snapshots
2025-05-12 17:40:28 +02:00
David Kaspar
0192a4eb20
Add test to only share images. Other media not supported atm
2025-05-12 17:13:29 +02:00
David Kaspar
fee85a6111
remove scope launch
2025-05-12 17:06:05 +02:00
David Kaspar
13ee0a23de
Use disk cache reference from app
...
Detect image type based on magic number
2025-05-12 16:44:31 +02:00
David Kaspar
ebf1571b92
share images from coil cache to other apps
2025-05-08 18:05:06 +02:00
Vitor Pamplona
a5c63dd311
Merge pull request #1349 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-08 10:58:07 -04:00
Crowdin Bot
245b767dc8
New Crowdin translations by GitHub Action
2025-05-08 14:56:55 +00:00
Vitor Pamplona
be62d5ad7f
Merge pull request #1347 from davotoula/use-updated-markdown-to-sanitise-url-labels
...
Use new version of Markdown to sanitise url labels from # and @
2025-05-08 10:55:33 -04:00
Vitor Pamplona
dc132de18d
Merge pull request #1348 from davotoula/upgrade-agp-to-8.10.0
...
Upgrade agp to 8.10.0
2025-05-08 10:52:52 -04:00
David Kaspar
5d1515659e
remove unused imports
2025-05-08 13:13:02 +02:00
David Kaspar
6206d550e6
Upgrade agp to 8.10.0
2025-05-08 13:09:08 +02:00
David Kaspar
d7055062f3
Use new version of Markdown to sanitise url labels from # and @
2025-05-08 11:58:02 +02:00
Vitor Pamplona
bddd8914ae
Adds an EOSE manager to Channel Filters
2025-05-07 13:54:56 -04:00
Vitor Pamplona
2fc7c37270
Adds a watcher of MetadataChanges for NIP-28 that includes a since parameter for the last metadata time + 1
2025-05-07 13:48:54 -04:00
Vitor Pamplona
bc22b78f19
Refactors EOSE management for Chatroom List
2025-05-07 13:47:34 -04:00
Vitor Pamplona
e6b0b41e80
Adds a Normal Nostr filter as a PerRelay filter
2025-05-07 13:46:39 -04:00
Vitor Pamplona
8a7ce8dc07
Makes EOSE cache per user cleanable
2025-05-07 13:46:14 -04:00
Vitor Pamplona
cb4e57d6f6
remove the filter invalidation after each EOSE
2025-05-06 19:42:23 -04:00
Vitor Pamplona
a54835e4f9
Adds Eose management for the UserProfile Screen
2025-05-06 19:42:09 -04:00
Vitor Pamplona
be0a559b7d
Prints better logs for relay subscriptions
2025-05-06 19:38:13 -04:00
Vitor Pamplona
b801125ff5
Builds a speed logger to better understand data usage
2025-05-06 19:37:44 -04:00
Vitor Pamplona
4ea9d2db7d
Updates AGP to 8.10
2025-05-06 18:21:15 -04:00
Vitor Pamplona
54532de88a
Extending AsyncImage to correctly use pre-loaded aspect ratio and avoid screen jittering
2025-05-06 16:46:25 -04:00
Vitor Pamplona
ba6a7bb07f
Fixes missing content alignment on the crossfade API migration
2025-05-06 16:18:21 -04:00
Vitor Pamplona
fcd70001bf
Adds a Reads feed to the discovery tab
2025-05-06 15:48:03 -04:00
Vitor Pamplona
80d4971548
- Adds FollowSets to the discovery tabs.
...
- Refactors discovery screen, creating a package for each feature.
- Fixes Android studio previews
2025-05-06 13:23:43 -04:00
Vitor Pamplona
fbe20029f7
Move to a cache model where we defer the event's verification until the last moment before adding to cache
2025-05-06 09:45:01 -04:00
Vitor Pamplona
a05a465f69
Avoids sending an NWC filter when there are no keys subscribed to it
2025-05-06 08:56:47 -04:00
Vitor Pamplona
49c131a5cd
Adding more constraints to the channel filter
2025-05-05 19:11:54 -04:00
Vitor Pamplona
1c23600c57
Assigns the first relay when a gift-wrapped message is received
2025-05-05 18:51:45 -04:00
Vitor Pamplona
7a8766551f
unused checks
2025-05-05 18:36:13 -04:00
Vitor Pamplona
7accb5e2b9
Adds onStart calculator for live bubble authors
2025-05-05 18:34:54 -04:00
Vitor Pamplona
504f365ab3
Fixes code to mark messages as received by relays
2025-05-05 18:12:16 -04:00
Vitor Pamplona
d9b784bee5
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-05-05 17:22:53 -04:00
Vitor Pamplona
aff95853d8
Merge pull request #1346 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-05 17:21:15 -04:00
Vitor Pamplona
adcbbec5be
Removing unnecessary logs
2025-05-05 17:21:03 -04:00
Crowdin Bot
ceabf8184a
New Crowdin translations by GitHub Action
2025-05-05 21:10:39 +00:00
Vitor Pamplona
7aa71fad3f
Caches app icons as painters
2025-05-05 17:08:47 -04:00
Vitor Pamplona
15dfbb2f31
Fixes the test case for emojis
2025-05-03 16:33:28 -04:00
Vitor Pamplona
0d53a30371
Disable event logger for now
2025-05-03 16:33:08 -04:00
Vitor Pamplona
38bb39a407
Fixes bug when trying to detect the charset of the first 1024 bytes of the page. Since this is an invalid HTML, it was crashing here.
2025-05-03 16:15:20 -04:00
Vitor Pamplona
560a9ba471
Fixes some log messages
2025-05-02 21:23:44 -04:00
Vitor Pamplona
38d3194e87
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/model/Account.kt
2025-05-02 21:19:14 -04:00
Vitor Pamplona
462fda1b5c
Updates accompanist, jackson, mockk, secp256, zoomable
2025-05-02 21:18:40 -04:00
Vitor Pamplona
63a009f36d
- Adds support for Ephemeral Chats from coolr.chat
...
- Adds support for following ephemeral chats
- Adds support for live events at the top of the feed.
- Adds support for NIP-51, kind:10005 public chat lists
- Adds support for Channel feeds
- Moves following of NIP-28 chats from the Contact List to kind: 10005
- Disables following of events at the Contact list
- Improves gallery display to slightly override profile pictures when in list
- Starts the Account refactoring by moving custom Emoji, EphemeralList and PublicChat lists to their own packages
- Refactors NIP-51 lists to use common classes of private tags instead of general list classes.
- Starts to separate all Public chats into their own database.
- Removes old account upgrades from the local storage
- Refactors url NIP-11 loading and unifies icon
- Reduces the dependency of Relay classes in the LocalCache, Notes and User classes
2025-05-02 21:18:10 -04:00
David Kaspar
c3dc8104e9
Merge pull request #1340 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-05-02 15:27:21 +02:00
Crowdin Bot
23fbb53c96
New Crowdin translations by GitHub Action
2025-05-02 13:20:35 +00:00
Vitor Pamplona
1fe55ece5d
Merge pull request #1339 from davotoula/missing-at-for-profile-links-in-markdown
...
Missing at for profile links in markdown and fix typo preventing opening of hashtags from markdown notes
2025-05-02 09:19:03 -04:00
David Kaspar
bb9435e637
Remove unused imports
2025-05-02 15:05:20 +02:00
David Kaspar
67e3a92d68
cleanup
2025-05-02 15:00:27 +02:00
David Kaspar
32439b5feb
bugfix: fix typo preventing opening of hashtags from markdown notes
2025-05-02 15:00:06 +02:00
David Kaspar
136a4061d7
prepend clickable user with @ sign
2025-05-02 14:59:32 +02:00
Vitor Pamplona
b06e53f59d
Fixes lack of update for Discovery filters when resuming
2025-04-30 15:24:00 -04:00
Vitor Pamplona
9c79ef08c7
Moves logging out of quartz Relay class
2025-04-30 14:00:08 -04:00
KotlinGeekDev
5a6cfad848
Separate components out into their logical groups(by file). Add new icons for public/private list creation, and add FloatingActionButtons for each. Add test code for iterating on changes quickly(TEMPORARY).
2025-04-30 17:11:28 +01:00
Vitor Pamplona
43b761c98c
Slight improvement in the UI to view follow packs
2025-04-29 17:38:00 -04:00
Vitor Pamplona
626bfc95cb
- Adds support for Follow packs
...
- Enables top filter by pack as well.
2025-04-29 17:24:03 -04:00
Vitor Pamplona
9df0f6c368
Moves Coil's image loader choice to a subscription on account.
2025-04-29 16:04:16 -04:00
Vitor Pamplona
7c68ffaf6e
Delete unused flows
2025-04-29 15:55:57 -04:00
Vitor Pamplona
ee1d37dd5b
Merge pull request #1338 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-29 14:39:17 -04:00
Crowdin Bot
ed6d0f6c0f
New Crowdin translations by GitHub Action
2025-04-29 18:37:53 +00:00
Vitor Pamplona
533e7d661f
Presubscribe to the bottom navigation items in the start up of the app.
2025-04-29 14:36:01 -04:00
Vitor Pamplona
932664c9f9
Avoids crashes when fetching base64 and blurhash images
2025-04-29 14:33:55 -04:00
David Kaspar
3d89ed567b
Merge pull request #1337 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-29 06:11:07 +02:00
Crowdin Bot
62e2e2ac65
New Crowdin translations by GitHub Action
2025-04-29 01:16:39 +00:00
Vitor Pamplona
1c8a6d1234
- Separates new Product Screen from the generic new Post screen.
...
- Adds New product button on the Marketplace tab
- Adds imeta tags for images and urls inside the content of the Classifieds.
- Shows multiple images on the post and thread view.
- Removes the option for NIP-95 images on Classifieds.
- Creates a new route for new products
- Adjusts quarts to process images with iMeta tags
2025-04-28 21:13:41 -04:00
Vitor Pamplona
c07592f399
Migrates Relay selection dialog to full bleed layout
2025-04-28 20:58:23 -04:00
Vitor Pamplona
96b1565de7
Removes duplicated draft save on DM
2025-04-28 20:57:11 -04:00
Vitor Pamplona
ee675d06f6
Merge pull request #1336 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-26 11:05:50 -04:00
Crowdin Bot
7c02b5b58f
New Crowdin translations by GitHub Action
2025-04-26 15:00:51 +00:00
Vitor Pamplona
4c7ef8ecff
Caches the processing of preview urls for the new post screen
...
Fixes a bug on saving MediaType on Android's stack
2025-04-26 10:58:45 -04:00
Vitor Pamplona
99cef643e1
Improves the visual of multiple previews on the new post screen
2025-04-26 10:58:17 -04:00
Vitor Pamplona
08025f7df7
Adds a special case for loading previews with just 1 item in the new post screen
2025-04-25 17:41:06 -04:00
Vitor Pamplona
92eff02f0a
Removes the hack to reduce memory usage by deleting the .content when saving the event to cache.
2025-04-25 17:04:16 -04:00
Vitor Pamplona
539d20b397
Adds an error log for the new on account view model processor
2025-04-25 17:03:26 -04:00
Vitor Pamplona
b51e5f4383
better relay reconnecting logic
2025-04-25 17:02:58 -04:00
Vitor Pamplona
0c54f9aa10
Renders the new comment tag on highlights.
2025-04-25 16:58:41 -04:00
Vitor Pamplona
c98e23add7
Merging
2025-04-25 15:07:52 -04:00
Vitor Pamplona
e4cc65969a
Merge pull request #1332 from davotoula/reduce-compiler-warnings-amethyst
...
Reduce compiler warnings: amethyst module
2025-04-25 12:16:40 -04:00
Vitor Pamplona
aef7d91a6b
Moves privacy option from dialog to route
2025-04-25 12:14:44 -04:00
David Kaspar
d874e798c6
remove unused imports
2025-04-25 17:10:25 +02:00
Vitor Pamplona
390e0615d1
Removing these disabled lock behavior code until we get it working
2025-04-25 11:10:04 -04:00
David Kaspar
e40ca09f7c
Use default locale for capitalisation in UI strings (use ROOT for IDs/Hashes for consistency)
2025-04-25 17:00:16 +02:00
David Kaspar
96436912bb
Safe checked casting
2025-04-25 16:03:16 +02:00
David Kaspar
97290cea48
Replace String.capitalize with replaceFirstChar
2025-04-25 16:02:59 +02:00
David Kaspar
ad2387f8e9
Add @OptIns
...
Change to auto mirrored icons
Remove unnecessary inline
2025-04-25 15:59:54 +02:00
KotlinGeekDev
0693e4412f
Re-arrange components so as to better fit the ListOptionsButton.
2025-04-25 14:20:24 +01:00
KotlinGeekDev
b52943a826
Add stub for GeneralBookmarks tab. Use a different icon for representing private lists. Add dropdown menu for follow set component(for actions such as delete, rename, etc).
2025-04-25 13:42:39 +01:00
Vitor Pamplona
d25e89f41d
Removes pull to refresh hack since we can now fully migrate
2025-04-24 19:36:47 -04:00
Vitor Pamplona
04712468aa
Removing unused nip-05
2025-04-24 19:14:35 -04:00
Vitor Pamplona
354fc34fbb
New default banner
2025-04-24 19:08:58 -04:00
Vitor Pamplona
026943439a
reverting x
2025-04-24 18:51:34 -04:00
Vitor Pamplona
46cb7eb640
Removes text select icon
2025-04-24 18:50:16 -04:00
Vitor Pamplona
f465844009
Removes old icons and migrates some to the Icons package
2025-04-24 18:49:05 -04:00
Vitor Pamplona
eebbda547d
Trying again to fix the hyphen
2025-04-24 18:25:09 -04:00
Vitor Pamplona
122603080e
Removed unused function
2025-04-24 18:21:30 -04:00
Vitor Pamplona
aff0369b04
updating firebase
2025-04-24 18:14:02 -04:00
Vitor Pamplona
1c1db6fa1e
Removes unused copytext dialog
2025-04-24 18:10:52 -04:00
Vitor Pamplona
187d77c138
Marks GlobalScope as optin
2025-04-24 18:07:22 -04:00
Vitor Pamplona
950d0bcc93
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-04-24 18:06:49 -04:00
Vitor Pamplona
0d66ceb1a4
Merge pull request #1330 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-24 18:06:39 -04:00
Vitor Pamplona
8e0563ed3a
Migrate animateItemPlacement to new API
2025-04-24 17:46:13 -04:00
Crowdin Bot
02870d0cd3
New Crowdin translations by GitHub Action
2025-04-24 21:41:05 +00:00
Vitor Pamplona
9d3a6d3f1d
migrates compose bom and media3
2025-04-24 17:40:38 -04:00
Vitor Pamplona
2c85260ab1
Removes the old ic_verified
2025-04-24 17:39:00 -04:00
Vitor Pamplona
ecebc68e11
avoiding deprecated .put api
2025-04-24 17:36:27 -04:00
Vitor Pamplona
07c3a3ffe5
Fixes unchecked cast and other opt-in tags on observers
2025-04-24 17:35:34 -04:00
Vitor Pamplona
c0f486db82
Hyphen can be replaced with dash
2025-04-24 17:35:11 -04:00
Vitor Pamplona
e0990ae38e
Merge pull request #1329 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-24 17:22:02 -04:00
Crowdin Bot
7005158821
New Crowdin translations by GitHub Action
2025-04-24 21:19:22 +00:00
Vitor Pamplona
9922fa117f
Reverting svg sizes because of app icon issues
2025-04-24 17:16:31 -04:00
Vitor Pamplona
723b4b5e9f
Removes dependency on a modifier for SettingsCategory
2025-04-24 16:58:40 -04:00
Vitor Pamplona
2d64eb0cb3
Refactors Add and Remove button to remove dependency on a specific modifier.
2025-04-24 16:58:22 -04:00
Vitor Pamplona
6a91ede54c
Fixes the lack of locale when creating percentages on zap split screens.
2025-04-24 16:57:44 -04:00
Vitor Pamplona
8d91b97962
Migrates CircularProgresIndicator to the newer version
2025-04-24 16:57:24 -04:00
Vitor Pamplona
bf47c1b431
No need to check for API version in this function, since we check outside of it
2025-04-24 16:56:46 -04:00
Vitor Pamplona
f5a504077c
Keeps the transparency settings for statusbar and navigation for now.
2025-04-24 16:55:21 -04:00
Vitor Pamplona
95afed5045
Only request for notification permissions after API 33
2025-04-24 16:54:52 -04:00
Vitor Pamplona
dcccc1de3a
Last Uri.parse fix
2025-04-24 16:54:31 -04:00
Vitor Pamplona
5095c9f480
Migrating from ContextCompat.startActivity to context.startActivity
2025-04-24 16:54:17 -04:00
Vitor Pamplona
30c4e3c646
Fixes deprecated URI parse function warnings
2025-04-24 16:52:25 -04:00
Vitor Pamplona
d04f6c977e
Migrates to the new capitalization function
2025-04-24 16:50:48 -04:00
Vitor Pamplona
7d97b73356
Fixes mutable state builders with primitive types warning.
2025-04-24 16:48:56 -04:00
Vitor Pamplona
be3eb4314b
Fixes casting warnings on viewmodels
2025-04-24 16:46:34 -04:00
Vitor Pamplona
f7abc6e1ee
Suppress modifiers on ColorScheme.
2025-04-24 16:44:30 -04:00
Vitor Pamplona
c16b93c06a
Reduces viewport to 200dp for performance
2025-04-24 16:44:10 -04:00
Vitor Pamplona
82af2644a6
Removes unnecessary label to v26
2025-04-24 16:43:50 -04:00
Vitor Pamplona
7d2b2ee674
normalizing strings
2025-04-24 16:43:28 -04:00
Vitor Pamplona
fdc95a656f
Ignore permissions to use our services.
2025-04-24 16:42:43 -04:00
Vitor Pamplona
7b040933d5
Merge
2025-04-24 14:35:57 -04:00
Vitor Pamplona
067f353e50
Finish the migration from LiveData to Flow
...
Moves most of the flow updates away from the Main thread.
Removes the need to use the Main thread to access Account.userProfile
2025-04-24 14:35:22 -04:00
Vitor Pamplona
2f3c282ef5
Merge pull request #1328 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-24 08:45:03 -04:00
Crowdin Bot
0c8564157b
New Crowdin translations by GitHub Action
2025-04-24 12:43:11 +00:00
Vitor Pamplona
d6160ea6c2
Merge pull request #1327 from davotoula/upgrade-agp
...
upgrade agp to 8.9.2
2025-04-24 08:41:41 -04:00
David Kaspar
0fc04490fd
upgrade agp to 8.9.2
2025-04-24 10:44:11 +02:00
Vitor Pamplona
e375b09a24
Fixes missing gallery of reactions
2025-04-23 18:52:43 -04:00
Vitor Pamplona
802e04445d
Adds logging message to hunt down some slow screens
2025-04-23 17:15:21 -04:00
Vitor Pamplona
ca8faa062f
Caches translations to avoid blinking text every time the user comes back to an older screen.
2025-04-23 16:44:35 -04:00
Vitor Pamplona
d6d34b2a88
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-04-23 16:24:57 -04:00
Vitor Pamplona
a84371a0b3
- Restructures the old static datasource model into dynamic filter assemblers.
...
- Moves filter assemblers, viewModels and DAL classes to their own packages.
- Creates Composable observers for Users and Notes
- Deletes most of the secondary LiveData objects in the move to Flow
- Manipulates nostr filters depending on the account of the current screen, not a global account.
- Unifies all FilterAssembly lifecycle watchers to a few classes.
- Prepares to separate The Nostr Client as an Engine of Amethyst.
- Moves the pre-caching processor of new events from the datasource to the accountViewModel
- Reorganizes search to be per-screen basis
- Moves authentication to a fixed Coordinator class for all accounts in all relays.
- Moves NOTIFY command to its own coordinator class for all accounts
- Moves the connection between filters and cache to its own class.
- Significantly reduces the dependency on a single ServiceManager class.
2025-04-23 16:24:41 -04:00
Vitor Pamplona
411b49d68f
Merge pull request #1326 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-23 16:04:46 -04:00
Crowdin Bot
f8fd935a4e
New Crowdin translations by GitHub Action
2025-04-23 19:45:34 +00:00
Vitor Pamplona
62be469cd8
Merge pull request #1325 from greenart7c3/main
...
Filter special characters when decoding bech32
2025-04-23 15:44:08 -04:00
greenart7c3
b42d05ae7a
Filter unicode characters
2025-04-23 16:17:13 -03:00
KotlinGeekDev
3a5e6dbe90
Use a tabbed layout for the different types of lists/sets, and migrate follow sets. Use empty info for next tab(labeled bookmarks).
2025-04-21 18:27:25 +01:00
KotlinGeekDev
2aa2605b48
Migrate Lists route to new navigation setup.
2025-04-18 14:24:51 +01:00
KotlinGeekDev
f97c97e00e
Merge modified upstream changes.
2025-04-15 11:43:10 +01:00
KotlinGeekDev
dc22c7ea76
Keep local changes for later refactoring. Apply styling fixes.
2025-04-15 11:42:41 +01:00
KotlinGeekDev
acc59d2b40
Manual merge, due to other unfinished work.
2025-04-15 11:39:25 +01:00
KotlinGeekDev
4d45f86e06
Add CuratedBookmarkList type. Introduce FollowSetScreen.
2025-04-15 11:17:31 +01:00
KotlinGeekDev
0dae538c31
Use better naming for the view models, reflecting their true nature, and preparing for future work here.
2025-04-14 17:45:44 +01:00
Vitor Pamplona
e007a02d84
Merge pull request #1320 from davotoula/circle-around-profile-picture-in-drawer
...
contrasting circle around profile picture
2025-04-13 11:13:03 -04:00
David Kaspar
cbd5a8a7ee
contrasting circle around profile picture
...
remove unused import
2025-04-13 09:59:43 +02:00
Vitor Pamplona
fd1c5d5887
Merge pull request #1319 from davotoula/1318-profile-qr-code-screen-changes
...
corrected profile picture border colour
2025-04-12 11:18:12 -04:00
David Kaspar
043196be10
Update bug_report.md
...
Added app flavour field (play vs fdroid)
bump versions
2025-04-12 15:56:51 +01:00
David Kaspar
66927ca70c
corrected profile picture border colour
2025-04-12 16:02:35 +02:00
Vitor Pamplona
faf0f6dc1a
Updates mockk, coroutines, zoomable and vico
2025-04-10 14:06:25 -04:00
Vitor Pamplona
5abb5f2f80
Merge pull request #1317 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-10 10:00:00 -04:00
Crowdin Bot
37b84108a7
New Crowdin translations by GitHub Action
2025-04-10 13:48:08 +00:00
Vitor Pamplona
5edc945341
Updates Compose, CoreKtx and SecurityKtx
2025-04-10 09:45:21 -04:00
Vitor Pamplona
3833f5f822
- Refactoring services to be part of the App Lifecycle,
...
- Migrated services to Flows that are active while their flows remain subscribed
- Improved OTS Decoupling
- Moved OTS verification procedures from the local cache to the data source
- Migrated the forceProxy options to lambdas that return an OkHttpClient
- Isolated Connectivity services, from Compose to Flow
- Isolated Tor services, from Compose to Tor (only starts if the Tor option is marked as internal)
- Isolated Memory trimming services, from Compose to Flow
- Isolated Image Caching services, from Compose to Flow
- Isolated Video Caching services
- Isolated Logging services
- Isolated NIP-95 Caching services
- Isolated Pokey receiver services
- Improved support for Tor in push notifications
- Isolated OkHttpClient services as flows
- Reduced the coupling of Context objects with singleton objects.
- Migrated UserFeedStates, StringFeedStates and ZapFeedStates to MutableStateFlow, avoiding feed updates on Main
- Forces a reconnect into relays that lost connection if any tor, connectivity or account changes
- Speeds up Base64 parser
2025-04-09 18:51:17 -04:00
Vitor Pamplona
652373bd01
Remove the warning saying the app name is being replaced on benchmark.
2025-04-09 16:28:18 -04:00
Vitor Pamplona
e883a46f53
Fixes deprecated warning
2025-04-09 16:20:14 -04:00
Vitor Pamplona
2b7cfa5560
Better name for the Blurhash class to avoid mistakes with its field.
2025-04-03 20:50:43 -04:00
Vitor Pamplona
ed860454a7
Moves activities to be singleInstance to avoid multiple startups when receiving share events from other apps.
2025-04-03 20:46:39 -04:00
Vitor Pamplona
ed0435061c
Moves to cover all classes in the proguard.
2025-04-03 20:45:25 -04:00
Vitor Pamplona
223865827f
Fixes tagging issue on new post.
2025-04-03 13:54:23 -04:00
Vitor Pamplona
ec25ef3f82
Adds flowerstr
2025-04-03 09:02:31 -04:00
Vitor Pamplona
7c4911f2dc
Converts old ClickableTexts into new Compose Texts with clickable spans
2025-04-02 20:37:14 -04:00
Vitor Pamplona
4ac046fe39
Migrates Navigation to Compose Navigation.
2025-04-02 17:39:16 -04:00
Vitor Pamplona
bfd5845022
Updates Firebase and CBOR
2025-04-01 19:26:10 -04:00
Vitor Pamplona
d288010a83
Move the stringresource setup out of the Activity
2025-04-01 19:13:35 -04:00
Vitor Pamplona
834efe02bc
Refactors SharedSettings state to:
...
- Minimize recompositions
- Improve code quality
2025-04-01 18:59:53 -04:00
Vitor Pamplona
1bd32c854c
Makes sure the tryLogin function only runs if it is not already logged in (compostables might call it more times)
2025-04-01 18:58:15 -04:00
Vitor Pamplona
d08998736f
Removes unecessary preview items from Cashu components.
2025-04-01 18:57:40 -04:00
Vitor Pamplona
a5f9b865ec
Makes ZapAmount viewmodel stable
2025-04-01 18:57:17 -04:00
Vitor Pamplona
375931d4f9
Modernizing the edit access to LocalPreferences.
2025-04-01 18:53:30 -04:00
Vitor Pamplona
7e3f64fc61
Performance: Avoids saving the first collection on login
2025-04-01 18:51:29 -04:00
Vitor Pamplona
09024fbc61
Performance: Avoids creating OkHttp proxies directly on the OnCreate
2025-04-01 18:50:08 -04:00
Vitor Pamplona
a530ced594
Performance: Avoids creating a SharedSettings ViewModel on Galery
2025-04-01 18:49:26 -04:00
Vitor Pamplona
3089524a1f
Cleaning up from the previous commit
2025-04-01 16:50:55 -04:00
Vitor Pamplona
5aa2aa4d54
Merge translations
2025-04-01 16:36:03 -04:00
Vitor Pamplona
12235216ff
Moves The WIFI/Mobile data connection watcher to the compose.
...
Moves Relay Connection Manager to the Compose
Adds a 30 second delay to approve events on Amber
2025-04-01 16:35:46 -04:00
Vitor Pamplona
35b9648bab
Merge pull request #1316 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-04-01 15:06:31 -04:00
Vitor Pamplona
cf2959d42e
Refactors logged in page into its own package
2025-04-01 14:03:17 -04:00
Crowdin Bot
b5164d5dd0
New Crowdin translations by GitHub Action
2025-04-01 18:01:18 +00:00
Vitor Pamplona
05cb055b1d
Migrates FDroid's push system to match Play services
2025-04-01 13:58:57 -04:00
Vitor Pamplona
f6bd12058f
removes firebase logging
2025-04-01 11:56:55 -04:00
Vitor Pamplona
99ef1fc168
Removes Tor leaks when loading thumbnails for vides automatically from the ExoPlayer
2025-04-01 11:56:47 -04:00
Vitor Pamplona
bd02515209
Moves push registration notification into Compose after login to make sure we use the tor configuration of the active user.
2025-04-01 11:18:15 -04:00
Vitor Pamplona
b3f1b093ed
Tor now listens to port changes and restart connections when it does change.
2025-03-31 20:32:15 -04:00
KotlinGeekDev
7d90b9f87b
Remove map in FollowSetFeedFilter, in favor of retrieving note from cache if modification is needed. Amend FollowSet to carry the address of the note. Add Refreshable for the Lists screen.
2025-03-31 21:31:50 +01:00
KotlinGeekDev
28093256e7
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2025-03-31 21:19:28 +01:00
KotlinGeekDev
d7d8554626
Make naming clearer. Some refactoring. Add a function to retrieve the not corresponding to a follow set.
2025-03-31 21:19:05 +01:00
KotlinGeekDev
bfa673ca2c
Make naming clearer. Some refactoring. Add a function to retrieve the not corresponding to a follow set.
2025-03-31 21:15:06 +01:00
KotlinGeekDev
82f8fe96a1
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-31 17:50:33 +00:00
Vitor Pamplona
491d269f75
Merge pull request #1315 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-31 11:30:04 -04:00
Crowdin Bot
c79243a912
New Crowdin translations by GitHub Action
2025-03-31 15:11:49 +00:00
Vitor Pamplona
b762907d69
adds a mutex to make sure memory clearing only happens once at a time.
2025-03-31 11:09:23 -04:00
Vitor Pamplona
396831456c
- Tor Cleanup:
...
- Only starts Tor when the "Internal" option is selected on the privacy settings
- Adds a mutex to make sure tor only starts once.
- Fixes bug when setting port before the service is running
- Moves tor start and stop to Compose actions, instead of activity
- Adds a 5 second delay before disconnecting Tor on the App's onPause
2025-03-31 11:09:04 -04:00
KotlinGeekDev
c57153221c
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-30 23:05:31 +00:00
Vitor Pamplona
31e961c64f
Fixes Video cropping due to rotated Exif metadata.
2025-03-30 10:51:32 -04:00
Vitor Pamplona
8baf9ad914
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-29 16:07:19 -04:00
Vitor Pamplona
c2b0154bb5
Fixes mark as seen when drafts are the last post in messages
2025-03-29 16:07:11 -04:00
Vitor Pamplona
c2b19c670b
Merge pull request #1314 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-29 15:33:38 -04:00
Crowdin Bot
f97cfa81ca
New Crowdin translations by GitHub Action
2025-03-29 19:22:34 +00:00
Vitor Pamplona
21643b781c
Fixing language codes
2025-03-29 15:02:52 -04:00
Vitor Pamplona
5961db5c77
Testing the removal of generic Arabic translation to a language-country pair
2025-03-29 14:43:23 -04:00
Vitor Pamplona
99d5e9f1f7
Merge pull request #1313 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-29 14:38:55 -04:00
Crowdin Bot
818116d57b
New Crowdin translations by GitHub Action
2025-03-29 18:36:37 +00:00
Vitor Pamplona
ef1e743fe2
removes language mapping for crowdin
2025-03-29 14:35:28 -04:00
Vitor Pamplona
df9568b667
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-29 12:25:54 -04:00
Vitor Pamplona
b5649e2607
Fixes: https://github.com/vitorpamplona/amethyst/issues/1309
2025-03-29 12:25:48 -04:00
Vitor Pamplona
92033b16d2
Updates Media, Camera, Compose and benchmark libs
2025-03-29 12:23:20 -04:00
Vitor Pamplona
9a440513ef
Merge pull request #1312 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-29 11:11:05 -04:00
Crowdin Bot
89aa4a6f95
New Crowdin translations by GitHub Action
2025-03-29 15:02:23 +00:00
Vitor Pamplona
5ac73bbeba
- Retries to reverse geolocate if fails due to the services long startup time.
...
- Adds support for the new and old ways to use reverse geolocation services.
- Hits all existing providers for location updates instead of just the network ones
- Uses past last known locations to kick start the cache.
- Improves logging to check potential failures in production.
2025-03-29 11:00:37 -04:00
KotlinGeekDev
ab32518b8e
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-28 23:02:13 +00:00
Vitor Pamplona
76eee177a8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-28 13:48:31 -04:00
Vitor Pamplona
4124724fb1
- Creates a new Group DM screen and moves DMs (NIP-17 and NIP-04) away from the New Post Screen.
...
- Separates all DM attachments as their own objects and holds them in cache until the message is sent.
- Adds previews for any number of urls, events and media uploads on new post screens.
- Adds zap split, zap raiser, geolocation symbols for DMs and channel messages
- Separates each component that can be added to a new post into its own package.
- Unifies processing for User Suggestions, Emoji Suggestions, Url Previews, location, draft versions, among text inputs
2025-03-28 13:48:22 -04:00
KotlinGeekDev
24a9d7659a
Merge branch 'upstream-main' into profiles-list-management
...
Merge upstream changes.
2025-03-28 12:12:25 +01:00
KotlinGeekDev
85fb56bb22
Updates to conflict-causing files.
2025-03-28 12:10:58 +01:00
Vitor Pamplona
7921745fd9
Merge pull request #1311 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-27 17:54:50 -04:00
Crowdin Bot
c24c23f003
New Crowdin translations by GitHub Action
2025-03-27 21:41:53 +00:00
Vitor Pamplona
8a6b71e913
Fixing google services.json for benchmark app
2025-03-27 17:39:10 -04:00
KotlinGeekDev
c1f14cea2e
Use a general type to represent lists, NostrList. Make FollowSet a subclass. Rename ListType to ListVisibility. Refactor accordingly.
2025-03-27 18:47:57 +01:00
Vitor Pamplona
29d046a094
Updates zoomable, vico, firebase, jackson and jna
2025-03-26 12:36:38 -04:00
Vitor Pamplona
c0423032c3
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-26 11:24:17 -04:00
Vitor Pamplona
fd7ff57a37
Merge pull request #1307 from davotoula/1301-use-note-renderer-for-file-header-and-video-events
...
Use CheckNewAndRenderNote method for FileHeaderEvent, FileStorageHeaderEvent and VideoEvent(s)
2025-03-26 11:23:41 -04:00
Vitor Pamplona
9a0a164ab5
Merge pull request #1308 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-26 11:22:51 -04:00
Vitor Pamplona
b35fd24a93
Fixes QR Code screen padding
2025-03-26 11:22:38 -04:00
Vitor Pamplona
aac366c690
- Migrates "Show Anyway" and "Show More" buttons to lighter version (Tonal)
...
- Improves tonal rendering on Light theme
- Lightens card surfaces
- Adjusts surfaceTint on Dark theme to match the elevation differences on the Light theme
2025-03-26 11:22:27 -04:00
Crowdin Bot
04a161dc47
New Crowdin translations by GitHub Action
2025-03-26 15:20:27 +00:00
David Kaspar
0d623b2ecc
Use CheckNewAndRenderNote method for FileHeaderEvent, FileStorageHeaderEvent and VideoEvent(s)
2025-03-26 12:20:59 +00:00
Vitor Pamplona
aa9f1b6c4f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-25 19:36:47 -04:00
Vitor Pamplona
8f77ecd891
Improves the rendering of the channel metadata changes
...
Redesigns the expandable top bar for NIP-28 chats
2025-03-25 19:36:39 -04:00
Vitor Pamplona
c4ab506c87
Merge pull request #1305 from davotoula/1292-url-decode-text-shared-to-app
...
use existing helper function that URL decodes message text
2025-03-25 18:06:42 -04:00
Vitor Pamplona
e75b451b79
Merge pull request #1306 from davotoula/remove-fdroid-from-readme
...
Update README.md
2025-03-25 18:05:44 -04:00
David Kaspar
7ad47bb137
Update README.md
...
remove fdroid from readme
2025-03-25 21:55:12 +00:00
David Kaspar
5518293813
use existing helper function that URL decodes message text
2025-03-25 20:38:08 +00:00
Vitor Pamplona
a23ad2dde7
Moves relay screens to it's own master package on the UI and reorganizes subpackages
2025-03-25 15:17:59 -04:00
Vitor Pamplona
b74bf44141
- Migrates NIP-28 creation to its own route.
...
- Adds picture upload for NIP-28 metadata
- Adds support for relay hints on NIP-28
- Improves edit field for chats
- Improves keyboard support for relay lists edit fields
2025-03-25 14:36:12 -04:00
KotlinGeekDev
f2a06184b4
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-25 10:53:49 +00:00
Vitor Pamplona
84f10da006
Forces the root post in a thread to be observed at all times. That guarantees thread loading even if relays are slow and the user is scrolling.
2025-03-24 18:02:55 -04:00
Vitor Pamplona
d2c19cbbb4
Merge pull request #1300 from davotoula/sniff-content-type-from-extension-when-empty-in-response-headers
...
Sniff content type from extension when empty in response headers
2025-03-24 17:50:22 -04:00
Vitor Pamplona
ef582eceb6
Merge pull request #1303 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-24 17:49:27 -04:00
Crowdin Bot
258815d349
New Crowdin translations by GitHub Action
2025-03-24 21:36:42 +00:00
Vitor Pamplona
1b40e70058
Fixing the Notification order for multiple playbacks
2025-03-24 17:33:53 -04:00
Vitor Pamplona
43f1796058
Updates AGP
2025-03-24 17:33:17 -04:00
Vitor Pamplona
53803eb878
Merge pull request #1302 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-24 16:13:11 -04:00
Crowdin Bot
7b5a2d1312
New Crowdin translations by GitHub Action
2025-03-24 20:12:36 +00:00
Vitor Pamplona
8f9a4557b5
Enable Picture in Picture videos
2025-03-24 16:10:14 -04:00
KotlinGeekDev
2ae9d272f4
Use Set rather than List, to avoid duplication. Introduce follow sets flow, and use it in FollowSetsActionMenu.
2025-03-22 21:02:10 +01:00
KotlinGeekDev
1d90e37f71
Fix mixup in follow set categorization logic.
2025-03-22 19:55:53 +01:00
KotlinGeekDev
c802c395a6
Unify the underlying implementation for follow sets and use it in both profile actions and CustomListsScreen.
2025-03-21 13:04:16 +01:00
KotlinGeekDev
fa7425e114
Remove unnecessary delay call.
2025-03-20 17:30:01 +01:00
KotlinGeekDev
5af094ab9b
Re-introduce the follow sets action menu(with test data) in ProfileActions.
2025-03-20 15:56:11 +01:00
KotlinGeekDev
74ccbb3d07
Re-introduce the follow sets action menu(in a separate file, this time).
2025-03-20 15:47:23 +01:00
KotlinGeekDev
d9c3badf8a
Re-introduce button styling changes(border shape).
2025-03-20 15:11:33 +01:00
David Kaspar
cdf2b10fd2
trim inline meta data to fix sniffing (required for DM messages)
2025-03-18 12:55:31 +00:00
KotlinGeekDev
dde59d4741
Switch to nameOrTitle() for follow set titles.
2025-03-18 13:49:35 +01:00
David Kaspar
2f29a21d72
cleaner code saveContentDefault: use apply for clarity
2025-03-18 12:29:03 +00:00
David Kaspar
93ed81dedb
cleaner code saveDownloadingIfNeeded: refactor to use when and remove unnecessary null-safe calls
2025-03-18 12:14:57 +00:00
KotlinGeekDev
3e0f8a81b4
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-18 12:05:14 +00:00
David Kaspar
bcd636b46e
sniff content type from extension when empty in response
2025-03-18 11:50:33 +00:00
Vitor Pamplona
6fd5f36ff5
Fix: Removes kind 30078 from search
2025-03-17 20:22:11 -04:00
Vitor Pamplona
4b79122899
Fixes the content type after image compression.
2025-03-17 20:07:25 -04:00
Vitor Pamplona
1df4d1db10
Removes debugging red border for full screen video
2025-03-17 14:30:17 -04:00
Vitor Pamplona
804194c3f5
Opens the fullscreen video playback with the right aspect ratio
2025-03-17 14:27:36 -04:00
Vitor Pamplona
fc159c4d1a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-17 14:27:20 -04:00
Vitor Pamplona
754b648877
Removing unnecessary playback logs
2025-03-17 14:27:13 -04:00
Vitor Pamplona
c1606c54be
Merge pull request #1299 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-17 14:04:48 -04:00
Crowdin Bot
82864c2069
New Crowdin translations by GitHub Action
2025-03-17 17:58:07 +00:00
Vitor Pamplona
3dc2a4a2d3
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-17 13:55:50 -04:00
Vitor Pamplona
7d1a8652cf
Merge pull request #1298 from davotoula/1297-trim-inline-meta-data-before-saving-file
...
Trim meta data from file name before saving file to disk
2025-03-17 13:55:40 -04:00
Vitor Pamplona
96ac674eaa
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-17 13:55:18 -04:00
Vitor Pamplona
664ea86e6c
Adds tor classes to the proguard exceptions
2025-03-17 13:55:12 -04:00
Vitor Pamplona
5aa2eb4499
Makes the bechmark build its own package name to facilitate testing in real phones.
2025-03-17 13:54:57 -04:00
Vitor Pamplona
0b9a44ab9b
adds icon for Android studio
2025-03-17 13:53:42 -04:00
Vitor Pamplona
e3e35fa1eb
- Refactoring playback service and its client.
...
- Created a pool of ExoPlayers to avoid creating new instances when scrolling.
- More accurately tracks MediaSessions
- Splits Caching layers into their own files
- Splits VideoView into multiple files
- Specializes the old Playback Manager into pools.
- Reorganizes video playback dependencies inside a single package.
- Structures callback uris to be per media item as opposed to per controller.
2025-03-17 13:53:26 -04:00
David Kaspar
221c58126c
moved the trimming of inline meta-data to where File is created
2025-03-16 21:36:13 +00:00
David Kaspar
2cdf5d6673
trim meta data from file name before saving file to disk
2025-03-16 21:05:09 +00:00
Vitor Pamplona
2d5697cc9a
Merge pull request #1296 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-15 14:25:09 -04:00
Crowdin Bot
d4ae290364
New Crowdin translations by GitHub Action
2025-03-15 16:46:06 +00:00
Vitor Pamplona
a690359541
Merge pull request #1295 from davotoula/1294-failed-to-save-the-image
...
Failed to save the image
2025-03-15 12:44:50 -04:00
David Kaspar
b3fa6401f6
Remove accidental import of okio.use
2025-03-15 13:58:04 +00:00
David Kaspar
b58d74138d
cleaner code
2025-03-15 13:27:46 +00:00
David Kaspar
e6c413b176
Get mime type from extension if mime type in response header is null for a application/octet-stream content type
2025-03-15 13:13:46 +00:00
KotlinGeekDev
c9dbe7d203
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-14 23:18:09 +00:00
Vitor Pamplona
c1399d129e
Migrates from old keyboard option interface
2025-03-14 14:20:08 -04:00
Vitor Pamplona
337a5e3cae
Adds a flag to avoid new linting warnings
2025-03-14 14:12:12 -04:00
Vitor Pamplona
32b184a9cd
Improves lightning error messages
2025-03-14 13:57:44 -04:00
Vitor Pamplona
fd538ebde1
Improves multiple error dialogs appearing when zapping from the reactions bar in the feed.
2025-03-14 13:57:33 -04:00
Vitor Pamplona
d76de0123a
Forces aspect ratio of when loading an image to minimize resizing of the UI after the image is loaded.
2025-03-14 10:27:13 -04:00
Vitor Pamplona
de2b1a6c95
Optimizes caching for hidden chars on emoji
2025-03-14 10:24:03 -04:00
Vitor Pamplona
311964ce33
Caches video and image aspect ratios to recompose with the correct size
2025-03-13 19:30:57 -04:00
Vitor Pamplona
4d4c7d5b72
Moves DVM's last announcement restriction from 90 days to 365 days
2025-03-13 17:38:05 -04:00
Vitor Pamplona
66535e11ce
- Removes the TAG_SIZE constant on all tags because each parser might use a different size. There is no minimum size for tags.
...
- Moves the tag parsing checks to use ensure.
- Explicitly writes matching methods to avoid hiding complexity beyond utility functions.
2025-03-13 17:24:20 -04:00
Vitor Pamplona
682dc62703
Updates zoomable, vico and mockk
2025-03-13 10:47:31 -04:00
Vitor Pamplona
ba7bd0bd8a
Migrates to AGP 8.9
2025-03-13 09:21:50 -04:00
Vitor Pamplona
64b42ede7c
Updates compose, firebase, navigation
2025-03-13 09:04:54 -04:00
Vitor Pamplona
8afe1ae537
Marks PrivateOutbox contents as encrypted
2025-03-13 09:04:39 -04:00
Vitor Pamplona
258a550e15
updating android studio
2025-03-13 09:00:44 -04:00
Vitor Pamplona
1603a7473a
Adds support for Harassment reports.
2025-03-12 15:51:17 -04:00
Vitor Pamplona
ba6786cdcf
Updates nip70 Protected Tags to the new structure
2025-03-12 14:51:47 -04:00
Vitor Pamplona
b017e03728
Updates NIP-56 to the newest tag structure for Quartz
2025-03-12 14:51:23 -04:00
Vitor Pamplona
5766bb1887
First idea without changing NIP-44
2025-03-12 09:41:18 -04:00
KotlinGeekDev
aae0e1bb4b
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-03-11 23:59:51 +00:00
Vitor Pamplona
40bc651860
Making sure iMetas are unique
2025-03-11 14:27:58 -04:00
Vitor Pamplona
8a779e7f3c
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-11 14:26:29 -04:00
Vitor Pamplona
350e2a5a90
Fixes loading iMeta from drafts and reset them after use
2025-03-11 14:17:59 -04:00
Vitor Pamplona
a75e268466
Merge pull request #1291 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-11 14:00:21 -04:00
Crowdin Bot
2fd456e33d
New Crowdin translations by GitHub Action
2025-03-11 17:58:06 +00:00
Vitor Pamplona
64f7401b46
Fixes not including iMeta tags on public chats
2025-03-11 13:57:56 -04:00
Vitor Pamplona
5dcb1350ac
Losing the test case for unit tests in CI
2025-03-11 13:57:39 -04:00
Vitor Pamplona
3aa370d746
Fixes bug that the room changes after citing a user on NIP-17
2025-03-11 13:46:55 -04:00
Vitor Pamplona
583855de4f
Generalizes the chat upload UI and applies it to channels
2025-03-11 13:46:36 -04:00
KotlinGeekDev
4855126d6d
Fix some imports and remove unneeded functions(as per the upstream code).
2025-03-11 13:56:16 +01:00
KotlinGeekDev
3b140b16eb
Merge pull request #4 from vitorpamplona/main
...
Merge upstream changes.
2025-03-11 11:47:57 +00:00
Vitor Pamplona
05acc19c9a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-10 20:34:42 -04:00
Vitor Pamplona
71f6fe2375
Merge pull request #1290 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-10 20:33:58 -04:00
Vitor Pamplona
286730c50d
Adds name to the rendering of people lists in the feed
2025-03-10 20:33:42 -04:00
Crowdin Bot
57d6145677
New Crowdin translations by GitHub Action
2025-03-11 00:06:10 +00:00
Vitor Pamplona
94c78c6327
Minor refactoring of chat screen components.
2025-03-10 20:04:18 -04:00
Vitor Pamplona
7d2b7789d3
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-10 19:33:19 -04:00
Vitor Pamplona
fe55ee1818
Starts the migration of public chats to the new structure
...
Starts the migration of drafts to the new structure
2025-03-10 19:33:12 -04:00
Vitor Pamplona
58b6be73ee
as per https://github.com/nostr-protocol/nips/pull/1836
2025-03-10 18:32:43 -04:00
KotlinGeekDev
9f23bd034c
Merge changes from upstream.
2025-03-08 00:52:38 +01:00
KotlinGeekDev
33d690c403
Updates to conflict-causing files.
2025-03-08 00:52:10 +01:00
KotlinGeekDev
1dcbcc04d2
Fix merge-related conflicts.
2025-03-08 00:49:18 +01:00
David Kaspar
cd646951cf
Merge pull request #1289 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-07 20:42:39 +00:00
Crowdin Bot
3789ba6c07
New Crowdin translations by GitHub Action
2025-03-07 20:13:11 +00:00
Vitor Pamplona
429f9f81c4
re organizing the private dm composables
2025-03-07 15:11:17 -05:00
Vitor Pamplona
639e2bb645
Updates our base textfield and moves to it's a more general package
2025-03-07 10:52:28 -05:00
David Kaspar
797bea9e72
Merge pull request #1285 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-06 21:40:09 +00:00
Crowdin Bot
1c28aa30f0
New Crowdin translations by GitHub Action
2025-03-06 21:28:31 +00:00
Vitor Pamplona
52e67c9ab6
Uses NIP-22 to reply to Highlights
2025-03-06 16:25:57 -05:00
Vitor Pamplona
fa9ff0c52a
Uses NIP-22 to reply to Long form posts.
2025-03-06 16:25:47 -05:00
Vitor Pamplona
9cd73c2663
Adding secret emojis to reactions
2025-03-05 18:24:03 -05:00
Vitor Pamplona
8722f37fa5
Improving the UI of the Custom Emoji page.
2025-03-05 16:56:34 -05:00
Vitor Pamplona
987d8fa5dc
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
# Conflicts:
# quartz/src/main/java/com/vitorpamplona/quartz/experimental/interactiveStories/tags/RootSceneTag.kt
# quartz/src/main/java/com/vitorpamplona/quartz/experimental/interactiveStories/tags/StoryOptionTag.kt
# quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/addressables/ATag.kt
# quartz/src/main/java/com/vitorpamplona/quartz/nip18Reposts/quotes/QAddressableTag.kt
# quartz/src/main/java/com/vitorpamplona/quartz/nip89AppHandlers/recommendation/tags/RecommendationTag.kt
2025-03-05 16:14:50 -05:00
Vitor Pamplona
f4d06eee6d
Simplifying conditionals for the ATag parser
2025-03-05 16:13:33 -05:00
Vitor Pamplona
e2459e3fbd
Simplifying conditionals for the ATag parser
2025-03-05 15:58:55 -05:00
Vitor Pamplona
9adc7a7adf
Fixing padding to match the line padding
2025-03-05 15:40:49 -05:00
Vitor Pamplona
d474bb0016
fixes misaligned mute card on notifications
2025-03-05 15:37:57 -05:00
Vitor Pamplona
3942847d16
Refactors chats into public, private and list views for tablets and phones
2025-03-05 15:30:02 -05:00
Vitor Pamplona
2b2b219536
no message
2025-03-05 15:29:16 -05:00
Vitor Pamplona
91c19dc2a1
Adds a wait and display function to make sure the image url doesn't appear while the image is loading from disk
2025-03-05 15:26:52 -05:00
Vitor Pamplona
0536c141b7
Speeding up the loading of emojis
2025-03-05 15:23:37 -05:00
Vitor Pamplona
16331d268d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-03-05 13:40:59 -05:00
Vitor Pamplona
7e2724ea31
adds support for secret emojis
2025-03-05 13:40:51 -05:00
Vitor Pamplona
8facd02e33
Merge pull request #1284 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-03-04 18:02:13 -05:00
Crowdin Bot
90872b2160
New Crowdin translations by GitHub Action
2025-03-04 23:00:16 +00:00
Vitor Pamplona
0580aef4a2
- Migrates NIP-17 DM new message model to its own model and disable some of the generic behavior from new posts.
...
- Fixes a bug on edits showing a previous edit.
- Refactors user suggestions and lastword procedures
- Adds a DM inline reply from other parts of the app, like on notification.
- Hides Retweet button from DMs on Notifications
- Fixes colors for drafts in chats.
- Adds a nav function that computes the destination only after the user clicks on it and on a coroutine.
2025-03-04 17:57:47 -05:00
Vitor Pamplona
1a001e7bb3
Moves GeohashPrecision class to Quartz
2025-03-01 18:24:55 -05:00
Vitor Pamplona
4b91cfe809
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-02-28 15:26:58 -05:00
Vitor Pamplona
3d5d7b4987
adds nostr elites as a default global relay
2025-02-27 19:15:55 -05:00
Vitor Pamplona
ca0b6ef2ba
Fixing error message on relay notices
2025-02-27 19:15:40 -05:00
Vitor Pamplona
3103b51cf4
Merge pull request #1281 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-27 18:45:33 -05:00
Crowdin Bot
8bbc017f91
New Crowdin translations by GitHub Action
2025-02-27 23:37:03 +00:00
Vitor Pamplona
0df07ddfcb
- Adds support for https://github.com/nostr-protocol/nips/pull/1770
...
- Improves signer utils for testing
- Improves test cases for User metadata
2025-02-27 18:34:10 -05:00
Vitor Pamplona
8f0879b8e5
Updates agp, activity compose, accompanist, navigation and zoomable
2025-02-26 15:55:39 -05:00
Vitor Pamplona
f5ac8faa45
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-02-25 19:27:20 -05:00
Vitor Pamplona
40aa469866
Fixes unable to click in the last tab of the profile
2025-02-25 18:26:01 -05:00
Vitor Pamplona
d2590b969b
Merge pull request #1280 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-25 18:20:05 -05:00
Crowdin Bot
2de3ba82cc
New Crowdin translations by GitHub Action
2025-02-25 23:18:41 +00:00
Vitor Pamplona
b3dec691d7
losing up the probability to make tests pass
2025-02-25 18:16:20 -05:00
Vitor Pamplona
b40b37b6ac
Adds the logged in user' posts to a user in the user's profile.
...
Refactors the user profile screen in many packages.
2025-02-25 18:09:04 -05:00
Vitor Pamplona
e6cd3a99c5
Fixes bug on saving Encrypted files on DMs.
...
Fixes bug when using partial downloads to display videos on DMs.
2025-02-25 16:43:15 -05:00
Vitor Pamplona
d5d289a834
Uses note.toEventUri to make sure the relay hint is correct
...
Avoids crash when adding an event to gallery without a relay hint.
2025-02-24 20:46:33 -05:00
Vitor Pamplona
a2d9f31a8a
Assigning hints to NIPs until NIP-53
...
Speeding up Bech32 and Hex processing
Updating Boosts and Reposts to the new way of declaring tags
Renaming the SHA256 hash tag from NIP94 to not confuse with # hashtags
2025-02-24 17:09:08 -05:00
Vitor Pamplona
3790325a0f
uses const val for faster MurMur
2025-02-22 16:19:01 -05:00
Vitor Pamplona
96f57b2c90
Fixes tag name on ImageTag
2025-02-22 16:18:46 -05:00
Vitor Pamplona
4b10dd58df
It's slightly faster to reject params in one line than on many.
2025-02-22 16:17:10 -05:00
Vitor Pamplona
dc4240a8f5
Increasing the amount of addresses
2025-02-20 18:06:17 -05:00
Vitor Pamplona
3220d793b4
Using a linked set for the relayDB is faster to loop through on mightContain
2025-02-20 17:44:36 -05:00
Vitor Pamplona
84a52a1ce0
Speeding MurMur up
...
Adding more test cases
Mapping out memory used by filter
2025-02-20 17:10:24 -05:00
Vitor Pamplona
aaf86bf53e
Adds a Bloom-based hint indexer with MurMur hash
2025-02-20 14:07:10 -05:00
Vitor Pamplona
94e0f4ed02
Performance improvements on the PoW miner
2025-02-18 20:44:24 -05:00
Vitor Pamplona
af29133272
Simplifies the benchmark for PoW
2025-02-18 19:00:05 -05:00
Vitor Pamplona
06240b1f15
Updates libsecp256k
2025-02-18 18:14:52 -05:00
Vitor Pamplona
d47ec06b19
Deleting the experimental serializer test
2025-02-18 17:51:34 -05:00
Vitor Pamplona
9689acb5f3
Deletes experimental serializer on NIP-01
...
Moves classes to the appropriate packages on NIP-01
Adds a PoW miner to quartz.
Adds a PoW commit evaluator as a bytearray of the ID
2025-02-18 17:47:34 -05:00
Vitor Pamplona
bcb3838e85
Fixes isTagged for events
2025-02-18 12:04:39 -05:00
Vitor Pamplona
4fcf962c71
Fixes r-tag migration
2025-02-18 12:00:22 -05:00
Vitor Pamplona
2de4bb1adc
Reverses ATag Generalization (It just made things more complicated)
2025-02-18 11:51:16 -05:00
Vitor Pamplona
9e1a2bb1e4
Removes the notion of generic Address references
2025-02-18 11:29:52 -05:00
Vitor Pamplona
8720b00d4f
Separates the random benchmark from the Sign/Verify benchmarks
2025-02-18 10:19:51 -05:00
Vitor Pamplona
9c35008fc4
Moves Sha256 to a pool of digests to double the hashing performance
2025-02-18 09:40:17 -05:00
Vitor Pamplona
fad08830a1
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-02-17 19:13:14 -05:00
Vitor Pamplona
6d9964a1cb
Decoupling NIP01 methods from CryptoUtils
...
Decoupling Encryption and Decryptions from CryptoUtils
Decoupling live instances of JNI bindings for Secp and LibSodium from CryptoUtils
Decoupling key cache from CryptoUtils
Reorganizes NIP-04 to match new package structure
Adjusts test structures to match
2025-02-17 19:13:05 -05:00
Vitor Pamplona
70ced84dc3
Merge pull request #1278 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-17 18:59:34 -05:00
Crowdin Bot
50da982b36
New Crowdin translations by GitHub Action
2025-02-17 19:14:58 +00:00
Vitor Pamplona
7ad8b2ce46
Migrates LocalCache from being based on ATags to Addresses, removing the need to use memory space to store relay hints
2025-02-17 14:12:54 -05:00
Vitor Pamplona
94ffe783e9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-02-17 11:18:47 -05:00
Vitor Pamplona
41e47fa71d
Fixes running new events on the main thread.
2025-02-17 11:17:38 -05:00
Vitor Pamplona
08dd634eae
Fixes crash when evaluating the isHex function for an emoji
2025-02-17 11:12:47 -05:00
David Kaspar
cb3aa6c329
Merge pull request #1277 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-16 19:42:57 +01:00
Crowdin Bot
4e2e24c7ab
New Crowdin translations by GitHub Action
2025-02-16 16:55:21 +00:00
Vitor Pamplona
67106e8a11
Renames PoW processor to parser
2025-02-16 11:53:23 -05:00
Vitor Pamplona
06c7ea0123
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-02-14 16:31:33 -05:00
Vitor Pamplona
8022ac525f
Makes sure deletions happen in the background thread.
2025-02-14 16:29:10 -05:00
Vitor Pamplona
534f1ed8cd
Adds Tim Bourma's test case
2025-02-14 16:28:56 -05:00
Vitor Pamplona
793b3fcd16
Renames PoW Parser to open space for the PoW creator
2025-02-14 16:28:40 -05:00
Vitor Pamplona
a4f84227b6
Merge pull request #1276 from MoonDusk1996/main
...
fix wrong word
2025-02-14 14:48:26 -05:00
Dusk
e921f26d5f
fix wrong word
2025-02-14 13:34:59 -04:00
David Kaspar
0c3a792a84
Merge pull request #1275 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-14 17:15:44 +01:00
Crowdin Bot
6481fcbecd
New Crowdin translations by GitHub Action
2025-02-14 16:07:00 +00:00
Vitor Pamplona
0f6c3b9a3a
Moves to vico chart 2.0
2025-02-14 11:05:00 -05:00
Vitor Pamplona
dcb0e31cd6
Updating activity compose, coil, combosebom, firebasebom, fragmentktx, kotlinserialization, mockk and navigation compose
2025-02-13 19:02:15 -05:00
Vitor Pamplona
09cff7c930
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-02-13 19:01:37 -05:00
Vitor Pamplona
cb121835f5
Stops using vico's forEach custom function (it's going to be deleted in the next version)
2025-02-13 19:01:30 -05:00
Vitor Pamplona
0610416f61
Updates AGP to 8.8.1
2025-02-13 17:59:23 -05:00
Vitor Pamplona
f0116ad06e
Merge pull request #1274 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-13 17:55:17 -05:00
Crowdin Bot
89664a2813
New Crowdin translations by GitHub Action
2025-02-13 22:49:05 +00:00
Vitor Pamplona
9f465d3296
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
# Conflicts:
# amethyst/src/main/res/values-uz-rUZ/strings.xml
2025-02-13 17:40:00 -05:00
Vitor Pamplona
9c21a8a7da
Massive refactoring of Quartz to:
...
- Define each tag in their own class.
- Allow extension functions to additional responsibilities to other classes
- Migrate from hardcoded tag filters in events to the Tag's parser and assemble functions.
- Migrate hardcoded event.create to builders that use extension functions
- Restructures threading infrastructure for NIP-10
- Decouple the event signing from the Event building functions via event templates
- Create classes to represent Tags and TagArrays and use extension functions to add domain-related methods to the tag array of each nip.
- Uses external functions on event template builders to better point to which functions and which tags can be used in which event kinds.
- Separates Event kinds in packages inside each nip.
- Improves support for NIP-89
- Correctly establishes which imeta params can be used in each nip (video, picture, files)
- Decouples the iMeta builder from any nip.
- Fixes mute list word and user removal when inserted from a different client.
- Migrates the Account class to avoiding having to build each Event inside of it
2025-02-13 17:39:13 -05:00
Vitor Pamplona
0f3b3c4b2d
Adds support for NIP-73
2025-02-13 17:19:09 -05:00
Vitor Pamplona
68d4686424
Adds NostrMedia as a paid blossom relay option
2025-02-13 17:10:51 -05:00
Vitor Pamplona
e2a812a416
Merge pull request #1272 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-02-10 08:48:44 -05:00
Crowdin Bot
2eece49b9b
New Crowdin translations by GitHub Action
2025-02-10 13:43:23 +00:00
Vitor Pamplona
c34c107a7c
Merge pull request #1270 from believethehype/gallery_options
...
add option for 2 profile gallery views
2025-02-10 08:41:37 -05:00
KotlinGeekDev
0fe6fd40be
Add component for displaying the number of people in the follow list. Make some minor refactoring.
2025-02-06 14:12:09 +01:00
KotlinGeekDev
e25dce32e4
Refactor to adjust to previous change. Make other little changes.
2025-02-05 15:42:46 +01:00
KotlinGeekDev
606f630cb6
Use data classes/objects for state. Only update follow sets through exposed functions.
2025-02-05 15:31:48 +01:00
dbth
e9861d80f6
add option for 2 profile gallery views
2025-02-01 21:48:26 +01:00
Vitor Pamplona
7b84c81d9c
Merge pull request #1267 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-30 14:49:30 -05:00
Crowdin Bot
9caf0d28f5
New Crowdin translations by GitHub Action
2025-01-30 19:48:11 +00:00
Vitor Pamplona
78e5f5e277
Merge pull request #1265 from davotoula/1258-exlude-FileHeaderEvent-from-search-results
...
Exclude file header events from search results
2025-01-30 14:46:55 -05:00
KotlinGeekDev
c2857664d3
Just use simple List. Remove explicit dispatcher calls in unneeded places.
2025-01-30 14:50:05 +01:00
KotlinGeekDev
a300a4b25c
Remove the tick as list indicator in favour of textual indication. Make add/remove button look slightly better.
2025-01-30 13:52:07 +01:00
KotlinGeekDev
fad545a094
Introduce user removal functionality.
2025-01-30 10:00:25 +01:00
KotlinGeekDev
a066285667
Make some visual changes to the add/remove user button, and move the add callback to the right place.
2025-01-29 23:45:52 +01:00
David Kaspar
1bd52f163f
extract logical expression for which notes to exclude from search results
2025-01-28 11:55:17 +01:00
KotlinGeekDev
d13bf43de0
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2025-01-28 11:42:40 +01:00
KotlinGeekDev
7325644689
Fix some code after upstream changes.
2025-01-28 11:42:05 +01:00
David Kaspar
d825995ef4
Exclude FileHeaderEvent from note search results (direct note id search and free text)
2025-01-28 11:39:46 +01:00
KotlinGeekDev
4b7b5f1276
Merge branch 'upstream' into profiles-list-management
...
Sync with upstream
2025-01-28 11:20:12 +01:00
KotlinGeekDev
467b8d4184
Merge upstream, cont'd.
2025-01-28 10:18:03 +01:00
Vitor Pamplona
3e1e3e80fb
Merge pull request #1264 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-25 08:55:44 -05:00
Crowdin Bot
951a3a73d0
New Crowdin translations by GitHub Action
2025-01-25 13:54:41 +00:00
Vitor Pamplona
8a9fdd2c34
Merge pull request #1263 from davotoula/ugrade-gradle-and-agp
...
upgrade gradle to 8.10.2
2025-01-25 08:53:29 -05:00
David Kaspar
5dbba6d06d
upgrade gradle to 8.10.2
...
upgrade agp to 8.8.0
2025-01-25 09:18:57 +00:00
Vitor Pamplona
5ee754c71a
Allows the choice of limits on Count
2025-01-15 13:16:44 -05:00
Vitor Pamplona
a739329ab8
Merge pull request #1257 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-15 11:54:44 -05:00
Crowdin Bot
c12febf980
New Crowdin translations by GitHub Action
2025-01-15 16:49:57 +00:00
Vitor Pamplona
c25d64558e
- Normalizes the use of ETag
...
- Creates a BaseReplaceable event to avoid duplicates of empty d tags.
2025-01-15 11:48:01 -05:00
Vitor Pamplona
5a3c821da4
make sure the pow functions are static in java
2025-01-15 10:11:17 -05:00
Vitor Pamplona
b90aac496e
Moves PoW tag to the new style of tag builders.
2025-01-15 10:10:10 -05:00
Vitor Pamplona
4b52cdb101
Updates NIP-14 subjects to the new style of extension functions
2025-01-15 10:09:52 -05:00
Vitor Pamplona
4a4f03c12b
Refactor proxyTag function names
2025-01-15 09:56:15 -05:00
Vitor Pamplona
1f9aeddb57
Adds support for NIP-48 to Quartz
2025-01-15 09:17:32 -05:00
Vitor Pamplona
f3b049382e
Renames Gossip to Rumor to match names on the NIP-59
2025-01-15 08:58:08 -05:00
Vitor Pamplona
d1c64a0d15
Removing additional dependencies in the base Event class
2025-01-15 08:53:13 -05:00
Vitor Pamplona
8e25271bd6
Improves the documentation of the TagArray functions
2025-01-15 08:39:41 -05:00
Vitor Pamplona
0029df4575
Merge pull request #1256 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-14 19:44:32 -05:00
Crowdin Bot
b0e029cd59
New Crowdin translations by GitHub Action
2025-01-15 00:37:17 +00:00
Vitor Pamplona
d19ae56afa
- Migrates Zap splits, zapraisers, subject, alts and content warning to their own packages.
...
- Adds protected event tags
2025-01-14 19:35:16 -05:00
Vitor Pamplona
502d39c893
Generalizes the hashtag and index tag parser for the content as well as the way to pass params to build them on create.
2025-01-14 16:59:53 -05:00
Vitor Pamplona
4f774ae3c5
Simple refactoring to avoid empty challenges.
2025-01-14 16:58:16 -05:00
Vitor Pamplona
86a9fb2af5
Moves the relay structure to quartz
2025-01-14 12:09:25 -05:00
Vitor Pamplona
e36e49cc88
Breakes the Command and Message parsers out of the Relay class
2025-01-14 11:47:52 -05:00
Vitor Pamplona
3ac303c724
Starts the work to filter events that return from the relay to make sure they match the subscription submitted
2025-01-13 19:42:43 -05:00
Vitor Pamplona
e3e90229ce
Separates Typed Relay class from a SimpleRelay class to prepare to move to Quartz
2025-01-13 19:15:20 -05:00
Vitor Pamplona
9b0f24ba94
Removing duplicated permission for the camera
2025-01-13 13:03:40 -05:00
Vitor Pamplona
7f6b0ef7c2
Fixes package names for filters that moved to quartz
2025-01-13 13:03:22 -05:00
Vitor Pamplona
5c805d7551
Fixes greek name for Backup keys
2025-01-13 12:46:23 -05:00
Vitor Pamplona
57fe3740fc
Moves limits and Filters to quartz
2025-01-13 12:46:15 -05:00
Vitor Pamplona
b871954293
Moves NIP96 parsing test to Quartz
2025-01-13 12:23:57 -05:00
Vitor Pamplona
d66e8d4cde
refactoring android tests to match refactoring of package names
...
moving some nip96 stuff to quartz
2025-01-13 12:20:02 -05:00
Vitor Pamplona
103210ade4
Moves pow test to pow package
2025-01-13 10:44:15 -05:00
Vitor Pamplona
0d4936cf4b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2025-01-13 10:38:53 -05:00
Vitor Pamplona
d2b731e372
Massive refactoring of quartz to prepare for nip-based packages.
2025-01-13 10:38:45 -05:00
Vitor Pamplona
ceba31ec61
Merge pull request #1255 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-13 09:51:50 -05:00
Crowdin Bot
9684940265
New Crowdin translations by GitHub Action
2025-01-13 14:49:44 +00:00
Vitor Pamplona
dd7387a3f5
Merge pull request #1254 from greenart7c3/main
...
Move profile edit dialog to a screen
2025-01-13 09:48:13 -05:00
greenart7c3
020ead3c3f
Move profile edit dialog to a screen
2025-01-08 10:47:32 -03:00
Vitor Pamplona
1430ba4745
Moves Event ID hashing to a new class
2025-01-06 15:13:14 -05:00
Vitor Pamplona
5f577df819
Refactors SHA-256 methods to its own class
2025-01-06 12:56:57 -05:00
Vitor Pamplona
0971b716e1
Refactors secure random to extension class
2025-01-06 12:56:29 -05:00
Vitor Pamplona
53458ab484
Avoids showing youtube videos on the feed since we can't play them
2025-01-06 12:54:08 -05:00
Vitor Pamplona
879f70fcbb
Merge pull request #1252 from greenart7c3/main
...
Add some missing functions to NostrClient
2025-01-05 14:23:40 -05:00
greenart7c3
eb93664968
Add getRelay
2025-01-05 14:43:44 -03:00
Vitor Pamplona
9816577f00
v0.94.3
2025-01-05 12:16:06 -05:00
Vitor Pamplona
306ce9a36c
Adds iMeta tags to GIF urls
2025-01-05 12:14:28 -05:00
greenart7c3
10459b0a7a
Add getAll
2025-01-05 13:58:48 -03:00
Vitor Pamplona
f1d61daa04
Merge pull request #1250 from geovnn/main
...
Keep note state across LazyColumns recompositions
2025-01-05 11:23:43 -05:00
Vitor Pamplona
1ca0abf30d
Minor refactoring: uploaders can do image and videos.
2025-01-05 11:22:40 -05:00
Vitor Pamplona
d0a9c1ccd0
Fixes: Only close the upload screen if the video upload is a success on the Media tab
2025-01-05 11:22:15 -05:00
Vitor Pamplona
617f1ba2a6
Fixes the extra empty kind 20 post when uploading videos.
2025-01-05 11:21:32 -05:00
Giovanni Gatti
f1141e698e
Use rememberSaveable to keep note state across LazyColumns recompositions
2025-01-05 00:52:53 +01:00
Vitor Pamplona
f94feebbd7
v0.94.2
2025-01-04 17:47:13 -05:00
Vitor Pamplona
82d006f65e
letter change to avoid mixing with other log messages
2025-01-04 17:44:43 -05:00
Vitor Pamplona
3a553fa550
Updates JNA and URI Normalizer
2025-01-04 17:41:47 -05:00
Vitor Pamplona
1e9c3a47a4
Merge pull request #1249 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-04 17:40:46 -05:00
Crowdin Bot
3d9b4431ad
New Crowdin translations by GitHub Action
2025-01-04 22:37:25 +00:00
Vitor Pamplona
6522d74253
Fixes the Tor leaks for relays and some image content.
2025-01-04 17:35:34 -05:00
KotlinGeekDev
410888b271
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-01-04 21:34:56 +00:00
Vitor Pamplona
8a8ae4fb8b
Merge pull request #1248 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-03 20:39:08 -05:00
Crowdin Bot
6cac5fa5e4
New Crowdin translations by GitHub Action
2025-01-04 01:38:36 +00:00
Vitor Pamplona
aa3063acae
v0.94.1
2025-01-03 20:36:26 -05:00
Vitor Pamplona
46de90ea65
Removing the unecessary loading of the emoji suggestions when creating the new post view model
2025-01-03 20:36:18 -05:00
Vitor Pamplona
aa44560714
Adds support for Custom Reaction selection on new posts and direct GIF url usage.
2025-01-03 20:29:31 -05:00
Vitor Pamplona
c9a6b63f67
v0.94.0
2025-01-03 11:02:15 -05:00
David Kaspar
47211e9136
Merge pull request #1247 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-03 15:29:44 +00:00
Crowdin Bot
cfbcc49940
New Crowdin translations by GitHub Action
2025-01-03 15:28:37 +00:00
Vitor Pamplona
b4a497fd11
Merge pull request #1246 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-03 10:27:22 -05:00
Crowdin Bot
9aa287f96a
New Crowdin translations by GitHub Action
2025-01-03 15:16:06 +00:00
David Kaspar
a6880f339c
Merge pull request #1245 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-03 15:14:36 +00:00
Crowdin Bot
43996499ba
New Crowdin translations by GitHub Action
2025-01-03 15:13:40 +00:00
Vitor Pamplona
5c0c1acc4a
Allowing multiple images on a single event to be displayed in the Profile gallery
2025-01-03 10:11:10 -05:00
KotlinGeekDev
920241abab
Merge branch 'vitorpamplona:main' into profiles-list-management
2025-01-03 14:38:02 +00:00
Vitor Pamplona
4bfacbc11e
Improves the spacing in the layout of the gallery
2025-01-02 19:42:17 -05:00
Vitor Pamplona
633c9e8dcf
Merge pull request #1244 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-02 19:04:53 -05:00
Crowdin Bot
0f2a4d104c
New Crowdin translations by GitHub Action
2025-01-02 23:55:24 +00:00
Vitor Pamplona
fb92d2da2f
Merge pull request #1243 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-02 18:54:30 -05:00
Vitor Pamplona
d29e90fe8f
Adjusts the top bar when uploading media to DMs to match the chat top bar
2025-01-02 18:53:44 -05:00
Crowdin Bot
27329b7a0f
New Crowdin translations by GitHub Action
2025-01-02 23:11:04 +00:00
Vitor Pamplona
577ef6437f
removes logs
2025-01-02 18:09:27 -05:00
Vitor Pamplona
dbe593db98
Adds a server and compression selection screen when uploading images on DMs
2025-01-02 18:06:41 -05:00
Vitor Pamplona
ff9509b649
Refactors user suggestion views
2025-01-02 17:58:06 -05:00
Vitor Pamplona
2772bdff8b
Increases the number of active playbacks on the screen
2025-01-02 10:52:17 -05:00
Vitor Pamplona
c6869eaff6
Merge pull request #1242 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2025-01-02 09:04:49 -05:00
Crowdin Bot
663f5f282e
New Crowdin translations by GitHub Action
2025-01-02 13:57:39 +00:00
Vitor Pamplona
9f147f03c7
Fixes https://github.com/vitorpamplona/amethyst/issues/1241
2025-01-02 08:55:42 -05:00
KotlinGeekDev
8ca827a816
Merge branch 'vitorpamplona-main' into profiles-list-management
...
Merge upstream changes.
2025-01-01 13:39:19 +01:00
KotlinGeekDev
b2dd2a2adb
Merge upstream with local changes.
2025-01-01 13:29:00 +01:00
KotlinGeekDev
7166439b97
Arrange the placement of list status indicators.
2025-01-01 13:06:56 +01:00
Vitor Pamplona
0ceccb23c6
Avoids cutting off some of the payables in the Pay intent screen
2024-12-31 16:21:35 -05:00
Vitor Pamplona
ee65169896
Final touches of the new error message dashboard
2024-12-31 16:21:14 -05:00
Vitor Pamplona
6ac930c241
Don't show the "message the user" button when the problem is local
2024-12-31 16:20:53 -05:00
Vitor Pamplona
a09b8c5862
Moves to using cancellable coroutines to avoid cancelling the parent group all together.
2024-12-31 16:20:10 -05:00
Vitor Pamplona
160d4722c0
Refactoring Zap Error message screen to allow sending messages directly to each receiver with an error
2024-12-31 15:51:31 -05:00
Vitor Pamplona
497ae937fd
Fixes the navigation padding on Samsung devices for the Shorts tab.
2024-12-30 20:32:53 -05:00
Vitor Pamplona
b366aee1a9
Makes sure to keep the chat's input on top of the system nav
2024-12-30 20:13:38 -05:00
Vitor Pamplona
09539ac22a
adds new rules for proguard
2024-12-30 19:57:31 -05:00
Vitor Pamplona
e1e3a0e6a0
Expands the Around me filter to 50km
2024-12-30 19:57:20 -05:00
Vitor Pamplona
54e6be8ef3
Fixes notes appearing of replies for some recipes
2024-12-30 16:03:00 -05:00
Vitor Pamplona
e8462fe67f
Fully removing the swipe to delete from right to left.
2024-12-30 15:56:24 -05:00
Vitor Pamplona
626daa9967
Refactoring
2024-12-30 15:43:09 -05:00
Vitor Pamplona
266d4cb34f
Solves crashing when a p-tag contains only "ffff"
2024-12-30 15:42:54 -05:00
Vitor Pamplona
fc72e20da7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-30 08:51:24 -05:00
Vitor Pamplona
594abd1d7a
Updates zoomable
2024-12-30 08:51:14 -05:00
Vitor Pamplona
a0d8a770b7
Merge pull request #1239 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-30 08:50:31 -05:00
Crowdin Bot
fc7b44b9d0
New Crowdin translations by GitHub Action
2024-12-30 13:39:56 +00:00
Vitor Pamplona
00eb4e364a
Merge pull request #1238 from davotoula/display-toast-on-media-download-start
...
Display toast on media download start
2024-12-30 08:38:31 -05:00
David Kaspar
e88a36187d
added translations
2024-12-30 14:16:30 +01:00
David Kaspar
21d80518c9
strings refactor
2024-12-30 14:07:06 +01:00
David Kaspar
7999608f28
added translatable strings
2024-12-30 14:03:28 +01:00
David Kaspar
ee20508e4b
added video download started toast
2024-12-30 13:56:39 +01:00
David Kaspar
1231a1483f
Corrected "added to profile gallery" toast text
2024-12-30 13:45:02 +01:00
David Kaspar
f8dd82f592
added a first toast for start of image download
2024-12-30 13:21:11 +01:00
Vitor Pamplona
ca00e6a302
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-28 16:43:34 -05:00
Vitor Pamplona
aeba5d1b51
delete unnecessary comment
2024-12-28 16:43:05 -05:00
Vitor Pamplona
3e014e7b0f
Merge pull request #1237 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-28 15:32:06 -05:00
Crowdin Bot
95cda8ec08
New Crowdin translations by GitHub Action
2024-12-28 20:20:54 +00:00
Vitor Pamplona
1f3a818922
Remove crossfades and double composition on image success
2024-12-28 15:15:52 -05:00
Vitor Pamplona
7fe02fcf2c
Disables delete draft from swipe from right to left. Only left to right remains available.
2024-12-27 18:25:24 -05:00
Vitor Pamplona
1c52887e3a
Merge pull request #1236 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-27 17:02:07 -05:00
Crowdin Bot
62d95e2128
New Crowdin translations by GitHub Action
2024-12-27 21:52:27 +00:00
Vitor Pamplona
d0961d08da
Fixes edge to edge issues when the keyboard is shown.
2024-12-27 16:49:43 -05:00
Vitor Pamplona
f38383d4e4
Removes debugging logs
2024-12-25 11:09:20 -05:00
Vitor Pamplona
739a073d4e
Updates Vico, mockk, kotlin and adaptive acompanist
2024-12-24 18:22:53 -05:00
Vitor Pamplona
a195167a56
Fixes keyboard overriding the relay settings screen
2024-12-24 17:55:26 -05:00
Vitor Pamplona
72c089858d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-24 16:05:43 -05:00
Vitor Pamplona
92fcf05557
Fixes double quotes on NIP-28 Channel messages
2024-12-24 15:53:45 -05:00
Vitor Pamplona
73d38f6257
Merge pull request #1233 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-24 11:31:53 -05:00
Crowdin Bot
48d8e418e8
New Crowdin translations by GitHub Action
2024-12-24 16:30:04 +00:00
Vitor Pamplona
ff427d0fde
Fixes image upload testing.
2024-12-24 11:27:44 -05:00
Vitor Pamplona
6807554d1d
Merge pull request #1232 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-23 20:40:49 -05:00
Crowdin Bot
433a15cf0a
New Crowdin translations by GitHub Action
2024-12-24 01:33:04 +00:00
Vitor Pamplona
94c74a1e0c
Adds support for encrypted media uploads on NIP-17 DMs
2024-12-23 20:30:22 -05:00
Vitor Pamplona
f839565152
Refactors Ammolite to remove the dependency on OkHttp to prepare for KTor and multiplatform settings.
...
- This also reduces the Singleton coupling between Client and RelayPool.
To migrate, create a NostrClient instance on your Application class and update your code to access that `client` instance.
2024-12-20 15:36:50 -05:00
Vitor Pamplona
d9c14a78a7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-18 20:55:55 -05:00
Vitor Pamplona
a9d87883d2
Integrates with Pokey's Broadcast receiver.
2024-12-18 20:55:45 -05:00
Vitor Pamplona
66e7559ddb
Merge pull request #1231 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-18 20:32:34 -05:00
Crowdin Bot
2cd9a7dca6
New Crowdin translations by GitHub Action
2024-12-19 01:10:26 +00:00
Vitor Pamplona
123239443d
organize imports
2024-12-18 20:08:27 -05:00
Vitor Pamplona
76ce8f2974
Fixes bug that resets localhost relay settings.
2024-12-18 18:38:26 -05:00
Vitor Pamplona
e002e5c10f
Merge pull request #1229 from davotoula/account-backup-qr-code
...
Account backup qr codes
2024-12-18 18:28:13 -05:00
Vitor Pamplona
d101397166
Merge pull request #1230 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-18 17:58:02 -05:00
Crowdin Bot
2fd96da7c7
New Crowdin translations by GitHub Action
2024-12-18 22:48:35 +00:00
Vitor Pamplona
06bc1922cb
Fixes tests
2024-12-18 17:27:20 -05:00
David Kaspar
9f1b5a3c1a
added content description to QR code icons
2024-12-18 23:23:57 +01:00
David Kaspar
4f4da12aa7
refactor QrCodeButton methods to avoid duplications
2024-12-18 23:06:37 +01:00
Vitor Pamplona
17495631f7
Simplifies a bit of the game controller icon
2024-12-18 17:01:29 -05:00
Vitor Pamplona
0041d87645
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-18 16:53:11 -05:00
Vitor Pamplona
579f63935a
- Adds support for multiple media uploads at the same time.
...
- Adds support to display PictureEvents with multiple images at the same time
- Improves Uploading feedback for the NewPost screen
- 10x better performance on Blurhash generation
- Fixes cosine caching on Blurhash
- Removes troublesome dependency on blurhash encoder liberary
- Restructures contentScale for Images and Video dialogs
- Refactors Media Uploaders to improve code reuse
- Refactors iMeta usage on Quartz to move away from NIP-94
2024-12-18 16:52:50 -05:00
David Kaspar
b273e6dd4f
rearrange code for easier diff
2024-12-18 22:52:01 +01:00
David Kaspar
eec8212070
added keyguard to qr code encrypted key export
2024-12-18 20:54:14 +01:00
David Kaspar
af5f136e6c
added keyguard to qr code key export
2024-12-18 20:18:23 +01:00
David Kaspar
12d646e8a9
Move QR code next to button
2024-12-18 15:08:06 +01:00
David Kaspar
bd26fcfafd
Clean up layout
2024-12-18 14:54:09 +01:00
David Kaspar
ca05b768df
Added QR code private key export dialog
2024-12-18 14:43:23 +01:00
Vitor Pamplona
b75024e1fb
Merge pull request #1227 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-16 10:10:44 -05:00
Crowdin Bot
816c598971
New Crowdin translations by GitHub Action
2024-12-16 15:08:47 +00:00
Vitor Pamplona
5636748cf8
Merge pull request #1223 from davotoula/add-custom-hashtag-icon-gamestr
...
Added Gamestr custom hashtag icon
2024-12-16 10:07:25 -05:00
Vitor Pamplona
3defc4d45b
Merge pull request #1226 from greenart7c3/main
...
Fix download and loading icon not showing when text overflow
2024-12-16 10:06:17 -05:00
greenart7c3
ee16324673
Fix download and loading icon not showing when text overflow
2024-12-16 10:40:18 -03:00
David Kaspar
dfabd7afdd
Added Gamestr custom hashtag icon
2024-12-15 21:52:30 +01:00
Vitor Pamplona
728768632c
Update Compose Bom, firebase, navigation compose and android camera libs
2024-12-12 14:16:58 -05:00
Vitor Pamplona
c2243c53cf
Optimizes user search to account for names that start with the typed prefix
2024-12-10 19:07:37 -05:00
Vitor Pamplona
5aed1cee2c
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-10 18:46:08 -05:00
Vitor Pamplona
8809593bbc
- adds an account switcher to the notification click
...
- removes the use of nostr: for notifications
- enables a new screen to be routed when new logins happen
2024-12-10 18:45:59 -05:00
Vitor Pamplona
83e942a7be
Fixes lack of notification when a new account is logged into the app and before the app restarts.
2024-12-10 18:39:45 -05:00
Vitor Pamplona
1ee6316e92
Merge pull request #1221 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-10 15:28:07 -05:00
Crowdin Bot
357ca9b6eb
New Crowdin translations by GitHub Action
2024-12-10 20:16:01 +00:00
Vitor Pamplona
b0f5e77077
Merge pull request #1220 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-10 15:14:39 -05:00
Crowdin Bot
1b7b8fa268
New Crowdin translations by GitHub Action
2024-12-10 19:22:17 +00:00
Vitor Pamplona
82d8411ac6
Merge pull request #1219 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-10 14:21:00 -05:00
Crowdin Bot
684b78d2df
New Crowdin translations by GitHub Action
2024-12-10 19:19:46 +00:00
Vitor Pamplona
8b80ac13db
Fixes displaying an old result when coming back to a DVM screen
2024-12-10 14:17:50 -05:00
Vitor Pamplona
83235dab69
Removes contract of the old image picker
2024-12-10 14:17:15 -05:00
Vitor Pamplona
b01f46b2ee
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-09 14:59:44 -05:00
Vitor Pamplona
6a787f2774
Moves relayToAdd from the Object to a param in the relay screen
2024-12-09 14:59:35 -05:00
Vitor Pamplona
53206cc0b2
Merge pull request #1218 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-09 14:43:09 -05:00
Crowdin Bot
7cb6854489
New Crowdin translations by GitHub Action
2024-12-09 19:32:52 +00:00
Vitor Pamplona
95966e5874
Merge pull request #1214 from greenart7c3/main
...
Move relay dialog to a route
2024-12-09 14:31:24 -05:00
Vitor Pamplona
723979f185
Merge pull request #1216 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-07 18:10:42 -05:00
Crowdin Bot
b989bc0236
New Crowdin translations by GitHub Action
2024-12-07 23:01:56 +00:00
Vitor Pamplona
54ab8f1448
Merge pull request #1215 from davotoula/improve-accessibility-add-content-descriptions
...
Improve accessibility add content descriptions
2024-12-07 18:00:18 -05:00
David Kaspar
1b0ff52c61
translations
2024-12-07 21:29:34 +01:00
David Kaspar
46b70b719a
re-add key to LaunchedEffect
2024-12-07 21:21:47 +01:00
David Kaspar
1972cdeafb
Add content description to custom emojis
2024-12-07 21:06:21 +01:00
David Kaspar
39a7d98651
Add content description to icon in app definition
2024-12-07 16:56:24 +01:00
greenart7c3
a93910f8cb
Move relay dialog to a route
2024-12-07 11:17:38 -03:00
David Kaspar
314cbe1a32
Add content description to recommended apps icons - refactored
2024-12-07 15:14:46 +01:00
David Kaspar
54d0ec806d
Add content description to recommended apps icons
2024-12-07 15:12:27 +01:00
David Kaspar
6faab55a55
Add content description to pushpin icon (just in case)
2024-12-07 14:38:58 +01:00
David Kaspar
8b5366f9e2
Add description to relay list selector in NewMediaView
2024-12-07 14:11:09 +01:00
Vitor Pamplona
15b527c58d
Fixes blurhash rendering
2024-12-06 18:13:40 -05:00
Vitor Pamplona
e501101062
Merge pull request #1213 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-06 15:57:41 -05:00
Crowdin Bot
15411edfa6
New Crowdin translations by GitHub Action
2024-12-06 20:07:57 +00:00
Vitor Pamplona
e65346d268
Move gallery previews to it's own package. Avoid reusing VideoView
2024-12-06 15:05:59 -05:00
Vitor Pamplona
01b880c4a5
Simplifies the Gallery stack
2024-12-06 13:41:03 -05:00
Vitor Pamplona
0d6760360f
Fixes the bugs from migrating video events to imeta tags
2024-12-06 10:19:55 -05:00
Vitor Pamplona
4610519bb3
- Removes pull to refresh from gallery
2024-12-06 10:17:37 -05:00
Vitor Pamplona
905655461d
Adds kind picture and video events to the user profile gallery subscription.
2024-12-06 10:16:54 -05:00
Vitor Pamplona
f759acf66e
Merge pull request #1210 from believethehype/olas-profile-with-legacy
...
Extend NIP93 Profile Gallery with Nip68 Events
2024-12-06 08:22:22 -05:00
Vitor Pamplona
8979706a81
Merge pull request #1212 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-06 08:21:02 -05:00
Crowdin Bot
0db664fabc
New Crowdin translations by GitHub Action
2024-12-06 13:19:06 +00:00
Vitor Pamplona
c33fee59a2
Delete unused constant
2024-12-05 18:03:40 -05:00
Vitor Pamplona
eb36489094
Adds basic support for RelationshipStatus to Quartz
2024-12-05 17:55:59 -05:00
Vitor Pamplona
51ce509928
Simple refactoring to newer versions of the clickable text
2024-12-05 17:55:36 -05:00
Vitor Pamplona
0dd306b7fa
Separates event class that manages general lists and abstracts another intermediary class that manages private tag arrays in its content.
2024-12-05 17:55:10 -05:00
Vitor Pamplona
8a6f830e29
Removes invalid import
2024-12-05 17:26:47 -05:00
Vitor Pamplona
bcb9ba26ab
Improves search by npubs to use all relays.
2024-12-05 17:14:16 -05:00
Vitor Pamplona
3aa15889c1
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-12-05 17:12:50 -05:00
Vitor Pamplona
b47d9ad4d9
- Migrates Video events to imeta tags
...
- Removes youtu.be links from the video feed.
- Checks for video file types in uppercase as well as lowercase
2024-12-05 16:41:43 -05:00
David Kaspar
b504a2c0d4
Merge pull request #1211 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-05 17:33:30 +01:00
Crowdin Bot
69c9e84dc2
New Crowdin translations by GitHub Action
2024-12-05 15:54:05 +00:00
Vitor Pamplona
81591d6f76
v0.93.1
2024-12-05 10:48:52 -05:00
Believethehype
d2187995b8
Update strings.xml
2024-12-04 18:06:33 +01:00
Believethehype
a3257a365b
hybrid solution nip68 / nip93
...
it keeps the nip93 gallery as before, but also adds all nip68 media to the gallery
2024-12-04 17:56:06 +01:00
Vitor Pamplona
9180eeb59f
Merge pull request #1209 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-03 16:10:21 -05:00
Crowdin Bot
b24983b232
New Crowdin translations by GitHub Action
2024-12-03 20:56:03 +00:00
Vitor Pamplona
fe3246c94e
Fixes video rotation screen in full size while playing
2024-12-03 15:53:17 -05:00
Vitor Pamplona
b9883093ac
Improving performance of the Hex encoder.
2024-12-03 14:07:13 -05:00
Vitor Pamplona
869debaf9d
Fixes Satellite's blossom upload
2024-12-02 20:05:13 -05:00
Vitor Pamplona
6a522f5c92
updates AGP
2024-12-02 18:03:47 -05:00
Vitor Pamplona
ae13725db5
Improves the Discovery block UI
2024-12-02 17:45:44 -05:00
Vitor Pamplona
95774ddca5
Merge pull request #1207 from believethehype/main
...
Content DVMS: show amount and personalized status in feed
2024-12-02 16:04:39 -05:00
Believethehype
56450cf6c5
Merge branch 'main' of https://github.com/believethehype/amethyst
2024-12-02 22:02:49 +01:00
Believethehype
2da1dda019
Merge remote-tracking branch 'upstream/main'
2024-12-02 22:00:24 +01:00
dbth
fb73f6153f
Merge branch 'main' into main
2024-12-02 22:00:16 +01:00
Believethehype
62807336fd
DVM: show amount and personalized in feed
2024-12-02 21:56:13 +01:00
Vitor Pamplona
fddb9b16ab
updates jackson and secp256k1
2024-12-02 15:32:19 -05:00
Vitor Pamplona
0dcce5a987
Fixes lack of reactions on video feeds
2024-12-02 15:31:59 -05:00
Vitor Pamplona
16cf3c850a
Merge pull request #1205 from believethehype/main
...
DVM: adapt nip89 naming, show picture then image (legacy)
2024-12-02 14:09:23 -05:00
Vitor Pamplona
2b17e9303a
Merge pull request #1206 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-12-02 14:05:51 -05:00
Crowdin Bot
61d9145310
New Crowdin translations by GitHub Action
2024-12-02 18:59:15 +00:00
Vitor Pamplona
40921d4b03
fixes badge crash
2024-12-02 13:56:38 -05:00
Believethehype
e0e898d4b1
DVM: adapt nip89 naming, show picture then image (legacy)
2024-12-02 19:55:02 +01:00
Vitor Pamplona
bd2005ec6e
Fixes screen mispositioning when rotating full screen video/image dialogs.
2024-11-29 16:40:07 -05:00
Vitor Pamplona
2c825d5380
Remove unecessary log
2024-11-29 16:32:04 -05:00
Vitor Pamplona
7fe522307a
Fixes the bug on not having the video feed at the top when loading the app from scratch.
2024-11-29 15:12:54 -05:00
Vitor Pamplona
9660c739f3
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-11-29 14:50:39 -05:00
Vitor Pamplona
9025741c13
deletes unecessary logs
2024-11-29 14:50:28 -05:00
Vitor Pamplona
0ef851e4bb
Merge pull request #1201 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-29 14:41:13 -05:00
Crowdin Bot
7204d337e8
New Crowdin translations by GitHub Action
2024-11-29 19:39:34 +00:00
Vitor Pamplona
cb538bc6a3
Fixes missing reply order when the direct reply is also included as a quote.
2024-11-29 14:31:31 -05:00
Vitor Pamplona
d0b0f441b1
Fixes image testing.
2024-11-27 15:42:31 -05:00
Vitor Pamplona
ddd7f19f38
Merge pull request #1198 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-27 12:09:28 -05:00
Crowdin Bot
e46c8f4c15
New Crowdin translations by GitHub Action
2024-11-27 17:02:57 +00:00
Vitor Pamplona
6b390dad30
Merge pull request #1197 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-27 12:01:24 -05:00
Crowdin Bot
50e067fbf0
New Crowdin translations by GitHub Action
2024-11-27 16:43:19 +00:00
Vitor Pamplona
04da076d95
Adds NIP-22 as replies to Interactive Stories.
2024-11-27 11:41:13 -05:00
David Kaspar
fd88dfed7d
Merge pull request #1196 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-27 17:04:41 +01:00
Crowdin Bot
22905bc04e
New Crowdin translations by GitHub Action
2024-11-27 15:40:29 +00:00
Vitor Pamplona
c02ced7855
Merge pull request #1195 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-27 10:39:14 -05:00
Crowdin Bot
ea1145c890
New Crowdin translations by GitHub Action
2024-11-27 15:36:35 +00:00
Vitor Pamplona
043c8eff57
Merge pull request #1194 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-27 10:35:14 -05:00
Vitor Pamplona
fbb036da4a
v0.93.0
2024-11-27 10:33:59 -05:00
Crowdin Bot
71d30f83ea
New Crowdin translations by GitHub Action
2024-11-27 15:26:37 +00:00
Vitor Pamplona
9a0c998654
Fixes "null" strings on profile fields.
2024-11-27 10:24:09 -05:00
Vitor Pamplona
88082b1ba3
Updates media and coil
2024-11-27 09:19:17 -05:00
Vitor Pamplona
ad2b2e6d02
Merge pull request #1193 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-27 09:16:25 -05:00
Crowdin Bot
5044a687fa
New Crowdin translations by GitHub Action
2024-11-27 14:02:42 +00:00
Vitor Pamplona
298d4bb237
removes unnecessary metadata
2024-11-27 08:59:23 -05:00
Vitor Pamplona
9c180cb87a
Merge pull request #1192 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-26 19:10:54 -05:00
Crowdin Bot
2e3f2044d5
New Crowdin translations by GitHub Action
2024-11-27 00:09:32 +00:00
Vitor Pamplona
bdf012f641
Adds support for Interactive Stories
2024-11-26 19:07:12 -05:00
Vitor Pamplona
034ee46543
Refactors additional factories
2024-11-26 09:28:42 -05:00
Vitor Pamplona
6a17f94cb1
Merge pull request #1190 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-25 14:31:56 -05:00
Crowdin Bot
233059d544
New Crowdin translations by GitHub Action
2024-11-25 19:31:18 +00:00
Vitor Pamplona
7bd9b6a1ec
Moves to the new Android Image/Video Picker
2024-11-25 14:24:17 -05:00
Vitor Pamplona
04e77daaab
Light chat bubbles
2024-11-22 19:17:50 -05:00
Vitor Pamplona
308048c352
Adds date separators on chats
2024-11-22 18:08:30 -05:00
Vitor Pamplona
3f1173a42a
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-11-22 17:01:57 -05:00
Vitor Pamplona
39726142ae
Fixes account creation that follows itself.
2024-11-22 17:01:50 -05:00
Vitor Pamplona
025cbeed07
Merge pull request #1189 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-22 16:33:33 -05:00
Crowdin Bot
8a1550cbd9
New Crowdin translations by GitHub Action
2024-11-22 21:20:34 +00:00
Vitor Pamplona
49148ddc76
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-11-22 16:18:01 -05:00
Vitor Pamplona
d0e870e1b8
Adds Custom Empty Feed Screen for notifications
2024-11-22 16:17:55 -05:00
Vitor Pamplona
dbb2bfa512
Merge pull request #1188 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-22 12:26:35 -05:00
Crowdin Bot
d6b66c65fa
New Crowdin translations by GitHub Action
2024-11-22 16:36:21 +00:00
Vitor Pamplona
9a3d365243
Fixes: https://github.com/vitorpamplona/amethyst/issues/1186
2024-11-22 11:33:51 -05:00
Vitor Pamplona
3b30d5493d
Merge pull request #1184 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-21 18:58:17 -05:00
Crowdin Bot
7bfd1a9107
New Crowdin translations by GitHub Action
2024-11-21 23:53:47 +00:00
Vitor Pamplona
2c9e2de524
Adds support for Blossom media servers.
2024-11-21 18:51:43 -05:00
Vitor Pamplona
c89c5eb4b0
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-11-21 15:46:16 -05:00
Vitor Pamplona
5c5eb53395
Fixes translations of http urls
2024-11-21 15:46:07 -05:00
Vitor Pamplona
55f0092e03
Merge pull request #1185 from davotoula/enable-unfollow-in-note-dropdown
...
Enable unfollow in note dropdown
2024-11-21 15:32:44 -05:00
Vitor Pamplona
54d9ac5730
no need for identifier anymore
2024-11-21 15:15:03 -05:00
David Kaspar
d9a9137d89
cleaner code
2024-11-21 21:02:31 +01:00
David Kaspar
7beff8c835
Add unfollow to NoteDropDownMenu
2024-11-21 20:58:40 +01:00
Vitor Pamplona
4a80a16473
Adds support for pronouns when the user makes them available.
2024-11-21 11:19:13 -05:00
Vitor Pamplona
b3e3b70dd0
Marks which events can receive Comment replies as root scopes.
2024-11-19 18:01:56 -05:00
Vitor Pamplona
03662b9d1b
Migrates Video feed new posts from NIP-94 to Video and Picture events.
2024-11-19 17:54:51 -05:00
Vitor Pamplona
d33421fce4
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-11-19 15:37:11 -05:00
Vitor Pamplona
4db6f5531c
Adds support for Instagram feeds. https://github.com/nostr-protocol/nips/pull/1551
2024-11-19 15:36:30 -05:00
Vitor Pamplona
72ea4a44a2
Merge pull request #1183 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-19 09:31:20 -05:00
Crowdin Bot
022a9f6f6c
New Crowdin translations by GitHub Action
2024-11-19 14:25:24 +00:00
Vitor Pamplona
248848799c
Fully Deprecates note1, removing the last usages of the standard
2024-11-19 09:22:37 -05:00
Vitor Pamplona
72f317717b
Remove the unused encryption field from NIP-94
2024-11-18 17:29:59 -05:00
Vitor Pamplona
4651074774
Fixes bug on searching for geohashes on addresses
2024-11-18 16:48:21 -05:00
Vitor Pamplona
fb058f93b6
Makes NIP-22 posts only visible to the main feed if inside the scope they were placed.
2024-11-18 16:47:47 -05:00
Vitor Pamplona
9e34e9d720
Fixes issue with the order of same-author events in a thread
2024-11-18 16:00:48 -05:00
Vitor Pamplona
04d6da28af
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-11-18 15:39:19 -05:00
Vitor Pamplona
192a43dc21
Updates compose, coil, firebase and navigation
2024-11-18 15:39:12 -05:00
Vitor Pamplona
61510ae7e3
Adds support for NIP-22 exclusive geo posts
2024-11-18 15:38:57 -05:00
KotlinGeekDev
966936bba3
Use FilterChip instead of Custom Text component for presence indication. Add some test code(to be removed later).
2024-11-18 19:57:23 +01:00
Vitor Pamplona
488286ce20
Merge pull request #1181 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-18 08:25:31 -05:00
Crowdin Bot
fab6c65e98
New Crowdin translations by GitHub Action
2024-11-18 13:22:15 +00:00
Vitor Pamplona
accde8622c
Merge pull request #1179 from davotoula/1172-hide-drafts-from-other-accounts-on-device
...
Hide drafts from other accounts on device
2024-11-18 08:20:55 -05:00
David Kaspar
4a590d67a6
move filtering of "not your drafts" to ThreadFeedFilter
2024-11-17 10:48:03 +01:00
David Kaspar
6c3200a9cc
cleaner code, change cascading ifs to when
2024-11-16 10:34:01 +01:00
David Kaspar
f16143bec3
cleaner code, fewer warnings
2024-11-16 09:29:45 +01:00
David Kaspar
8216476916
cleaner code, fewer warnings
2024-11-16 08:48:30 +01:00
David Kaspar
ffd43e448b
filter out drafts that are not same author as current account
2024-11-15 12:54:59 +01:00
Vitor Pamplona
3a566dad6b
Improves (Show More) presence to only when it actually makes a difference.
2024-11-12 13:36:59 -05:00
Vitor Pamplona
bf861d6bc5
- Improves thread preloading
...
- Fixes jumping of scroll when the thread updates
2024-11-12 12:54:41 -05:00
Vitor Pamplona
b31ace79c3
App hangs when switching to an account that was logged into with the npub just because it waits to decrypt the hidden user list.
2024-11-11 18:29:38 -05:00
Vitor Pamplona
37a92c25f0
- Unifies Location Flows and GeoHash Flows into one
...
- Make them react to changing location permissions
- Adds UI for when the location permission is rejected.
2024-11-11 17:51:42 -05:00
Vitor Pamplona
062e4af118
Updates JNA, Coil, Jackson, and Kotlin Collections
2024-11-11 14:54:38 -05:00
Vitor Pamplona
c083295f6a
Fixes error message for the signup page when the display name is blank
2024-11-11 14:53:39 -05:00
Vitor Pamplona
924baf0de3
Merge pull request #1177 from greenart7c3/main
...
Fix initial decryption of mute lists when using amber
2024-11-11 09:48:46 -05:00
greenart7c3
6015c968f5
Fix initial decryption of mutelists when using amber
2024-11-11 11:33:14 -03:00
Vitor Pamplona
3e85991f19
Merge pull request #1176 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-11 09:04:33 -05:00
Crowdin Bot
893b23e4fb
New Crowdin translations by GitHub Action
2024-11-11 13:54:10 +00:00
Vitor Pamplona
cb5d69e358
Merge pull request #1171 from davotoula/crashfix-test-for-empty-string-in-mentions
...
Crashfix: test for empty string in mentions
2024-11-11 08:52:39 -05:00
Vitor Pamplona
43688c4117
Merge pull request #1174 from davotoula/1173-add-nip05-to-hidden-words-filtering
...
Added nip05 field from user profile to be used as part of hidden words filtering
2024-11-11 08:52:28 -05:00
David Kaspar
4e4521ecef
Added nip05 field from user profile to be used as part of hidden words filtering
2024-11-10 06:51:34 +00:00
David Kaspar
7bc9205758
Added a test around NewPostViewModel.load with no mentions, valid mentions and invalid empty mentions
2024-11-08 19:15:04 +00:00
KotlinGeekDev
732ce790c2
Introduce FollowSetItem, with funny defaults for now.
2024-11-07 20:20:48 +01:00
KotlinGeekDev
276b6cbf46
Use a different icon for public lists.
2024-11-07 19:21:02 +01:00
KotlinGeekDev
c485f75206
Make custom button border naming clearer, and fix list dropdown button border.
2024-11-07 12:27:00 +01:00
David Kaspar
abf6cc00ae
test for empty string in mentions
2024-11-07 09:24:30 +00:00
KotlinGeekDev
883f7a975f
Experiment with Icon as a button. Refactor FollowButton and UnfollowButton to take into account the modified design, without affecting other components.
2024-11-06 10:56:33 +01:00
KotlinGeekDev
aa64e42bfe
Introduce FollowSetsActionMenu.
2024-11-05 21:17:08 +01:00
Vitor Pamplona
7146838f63
Better names for github jobs
2024-11-04 11:56:25 -05:00
Vitor Pamplona
1037ab33e3
fixes names of uploaded files
2024-11-04 11:31:04 -05:00
Vitor Pamplona
230fd553ae
fixes paths on github actions
2024-11-04 11:12:40 -05:00
Vitor Pamplona
eac078c42d
updates build github action to test and upload the right assets
2024-11-04 10:54:14 -05:00
Vitor Pamplona
39c9b75bf4
Moves zapstore to local image and first in the list
2024-11-04 10:15:31 -05:00
Vitor Pamplona
e076a2dbe3
Merge pull request #1167 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-04 10:12:31 -05:00
Crowdin Bot
5705a26836
New Crowdin translations by GitHub Action
2024-11-04 15:12:18 +00:00
Vitor Pamplona
740c279825
Merge pull request #1165 from davotoula/1164-launch-in-scope-to-persist-translation-prefs
...
Crash fix: Launch in Dispatchers.IO when changing translations prefs in account
2024-11-04 10:10:48 -05:00
Vitor Pamplona
718605e44b
Merge pull request #1163 from ilcompratoreconsapevole/banner
...
Added ZapStore's SVG banner that says "Get it on" linking to its repo
2024-11-04 10:09:49 -05:00
Vitor Pamplona
8df2ff839c
Merge pull request #1162 from davotoula/bugfix-images-reported-saved-as-video
...
Bugfix: images reported saved as video
2024-11-04 10:09:36 -05:00
ilcompratoreconsapevole
00be9fc595
Rewritten connection link to ZapStore's banner image to ensure reliable connection to specific repo
2024-11-03 21:38:01 +01:00
David Kaspar
7d25ab13a9
Launch in Dispatchers.IO when changing translations prefs in account
2024-11-03 16:15:54 +00:00
ilcompratoreconsapevole
d7888096e9
Added ZapStore's SVG banner that says "Get it on" linking to its repository.
2024-11-03 12:50:46 +01:00
David Kaspar
aad5aaa930
rename inner it to avoid shadowed it
2024-11-03 11:48:12 +00:00
David Kaspar
b877e4105a
Replace nested ifs with a when
2024-11-03 10:30:07 +00:00
David Kaspar
d1cd15c389
Remove unused val
2024-11-03 10:24:20 +00:00
David Kaspar
69e139e382
Remove unused @OptIn(ExperimentalFoundationApi::class)
2024-11-03 10:23:32 +00:00
David Kaspar
b2628764c9
Remove unused shadowed orientation val
2024-11-03 10:20:30 +00:00
David Kaspar
f7f0d74be1
Correct boolean operation from AND to OR
2024-11-03 10:19:29 +00:00
Vitor Pamplona
b47122d79a
Updates accompanist, kotlin serialization and mockk
2024-11-01 18:41:00 -04:00
Vitor Pamplona
635ad30de9
Let it throw in the giftwrap parser to make sure Notifications work
2024-11-01 18:40:34 -04:00
Vitor Pamplona
0884318a55
Merge pull request #1161 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-01 18:27:38 -04:00
Crowdin Bot
d8c89317d2
New Crowdin translations by GitHub Action
2024-11-01 22:20:09 +00:00
Vitor Pamplona
772987dffd
coroutines test to 1.9
2024-11-01 18:17:32 -04:00
Vitor Pamplona
61c51ee9a8
Updates AGP
2024-11-01 18:17:07 -04:00
Vitor Pamplona
f157f8eb9b
- Fixes lack of zap updates when there is a private zap the user cannot decrypt or when a nwc payment fails.
...
- Moves the parallel processing to a utils class
2024-11-01 18:16:57 -04:00
KotlinGeekDev
aed914dfcf
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-11-01 22:28:20 +01:00
KotlinGeekDev
d763f43b40
Restore function for getting follow sets(due to merge of upstream).
2024-11-01 22:27:55 +01:00
Vitor Pamplona
d96f5953d5
Moving animation size to a constant.
2024-11-01 17:27:19 -04:00
KotlinGeekDev
2fcd6af24b
Merge branch 'vitorpamplona:main' into profiles-list-management
2024-11-01 15:42:11 +00:00
Vitor Pamplona
ffb5cce509
Merge pull request #1160 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-11-01 10:35:40 -04:00
Crowdin Bot
b441292413
New Crowdin translations by GitHub Action
2024-11-01 14:16:09 +00:00
Vitor Pamplona
91748d5c39
- Adds a cache for reply levels when viewing threads.
...
- Moves the lazy list state to the view model to saving the scrolling position when navigating between multiple threads.
2024-11-01 10:10:05 -04:00
Vitor Pamplona
a825f575de
Fixes rendering of notes when the modifier changes due to new posts found and the reply level gets recalculated.
2024-11-01 10:06:09 -04:00
Vitor Pamplona
0581a3e836
Fixes reply level calculation caching.
2024-11-01 10:05:25 -04:00
KotlinGeekDev
4b76f56293
Merge branch 'vitorpamplona:main' into profiles-list-management
2024-10-31 22:15:32 +00:00
Vitor Pamplona
82f0ed8a0d
Upgrades to Coil 3
2024-10-31 16:34:22 -04:00
KotlinGeekDev
3ad26f0039
Merge branch 'vitorpamplona-main' into profiles-list-management
...
Merging upstream changes/resolving conflicts.
2024-10-31 19:42:05 +01:00
KotlinGeekDev
2366f26ac7
Merge branch 'main' of https://github.com/vitorpamplona/amethyst into vitorpamplona-main
...
merging upstream changes.
2024-10-31 19:36:20 +01:00
KotlinGeekDev
f2640deeaf
Minor refactor.
2024-10-31 19:27:15 +01:00
Vitor Pamplona
116bc108c3
Merge pull request #1158 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-31 14:07:13 -04:00
Crowdin Bot
44868ac4e6
New Crowdin translations by GitHub Action
2024-10-31 18:05:03 +00:00
Vitor Pamplona
2a24ca0787
Adds support for q tags on addresses
2024-10-31 14:02:39 -04:00
KotlinGeekDev
8f798d1003
Add some error handling in the feed filter.
2024-10-31 19:02:38 +01:00
KotlinGeekDev
a39834dc87
Use FollowSetState in in CustomListsScreen. Make other fixes.
2024-10-31 18:43:07 +01:00
KotlinGeekDev
00b7ace00b
Change followSets signature again. Refactor followSetNotesFLow().
2024-10-31 18:39:05 +01:00
KotlinGeekDev
ee8148ae50
Just use NavigationRow instead of IconRow.
2024-10-31 16:58:36 +01:00
KotlinGeekDev
63654b742a
Refactor NostrUserFollowSetFeedViewModel to use the FollowSetViewModel. Change follow sets signature. Might be changed later.
2024-10-31 16:55:13 +01:00
KotlinGeekDev
f3edc2d43b
Introduce FollowSetFeedViewModel and FollowSetState.
2024-10-31 16:48:45 +01:00
KotlinGeekDev
0e9cc54245
Refactor FollowSetFeedFilter and Account.
2024-10-31 16:45:12 +01:00
KotlinGeekDev
3d4483ed48
Move FollowSet to it's own class.
2024-10-31 16:37:05 +01:00
Vitor Pamplona
03225fc696
Merge pull request #1157 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-30 18:00:57 -04:00
Crowdin Bot
a0ab4a824b
New Crowdin translations by GitHub Action
2024-10-30 21:59:32 +00:00
Vitor Pamplona
0ba4ca13bf
Updates compose, corektx, fragment, kotlin, runtime, and android camera libs
2024-10-30 17:56:28 -04:00
Vitor Pamplona
060a242a0f
Removes logs
2024-10-30 17:55:35 -04:00
Vitor Pamplona
ae530ed813
adds extra padding for the zap setup screen
2024-10-30 16:02:00 -04:00
Vitor Pamplona
a5c4a53afe
- Adds an Around ME feed
...
- Refactors location to operate as a flow
- Refactors FeedStructures to prepare for custom feeds
- Moves Account to operate feeds with location
2024-10-30 16:01:39 -04:00
KotlinGeekDev
ddbaca383f
Navigation: Add custom lists to main app navigation control helper.
2024-10-30 15:01:27 +01:00
KotlinGeekDev
5b51e97594
Replace TODOs with provided feed state implementations.
2024-10-30 14:57:27 +01:00
KotlinGeekDev
d348e7a4ad
Introduce ListsScreen. Current implementation is focused on follows.
2024-10-30 14:51:46 +01:00
KotlinGeekDev
0b014c5c7c
Move mapping function from FollowSetFeedFilter to FollowSet.
2024-10-30 14:48:58 +01:00
KotlinGeekDev
bc7d9eef9b
Make FollowSet stable. The class may be moved to another location.
2024-10-30 13:31:37 +01:00
Vitor Pamplona
fb6137f99a
Missing string
2024-10-29 12:31:07 -04:00
Vitor Pamplona
de99c50639
Adds search.nos.today to bootstrapping relays for search
2024-10-29 12:23:09 -04:00
Vitor Pamplona
d5f8994128
Merge pull request #1156 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-29 12:16:33 -04:00
Crowdin Bot
cf02d808d6
New Crowdin translations by GitHub Action
2024-10-29 16:10:36 +00:00
Vitor Pamplona
f6aa732558
Adds DM and Search default buttons to the dialogs.
2024-10-29 12:07:15 -04:00
Vitor Pamplona
d321df79e8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-10-28 16:11:09 -04:00
Vitor Pamplona
d1b4f81083
Fixes jumpy thread view
2024-10-28 16:10:47 -04:00
Vitor Pamplona
0205f1fd12
Merge pull request #1155 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-28 10:14:42 -04:00
Crowdin Bot
d739fdac2d
New Crowdin translations by GitHub Action
2024-10-28 14:11:31 +00:00
Vitor Pamplona
4a43a87a79
Moves templates to explain that bounties matter.
2024-10-28 10:08:53 -04:00
KotlinGeekDev
7dec46f3fd
Create Viewmodel for Follow sets. Refactor User.followSets to be a collection of Notes. Adjust FollowSetFeedFilter.
2024-10-27 20:19:23 +01:00
KotlinGeekDev
caad5066ff
Refactor followSetNotesFlow() and introduce FollowSetFeedFilter.
2024-10-27 17:48:52 +01:00
KotlinGeekDev
c86ce1b1ce
Load and populate follow sets in Account(since Account is initialized in AccountViewModel anyway).
2024-10-27 00:20:35 +01:00
KotlinGeekDev
aa1175ce1d
Implement method for retrieving follow sets.
2024-10-26 18:00:09 +01:00
KotlinGeekDev
afca104b87
Add FollowSet class, and property in User.
2024-10-26 13:15:43 +01:00
Vitor Pamplona
6f31898cdc
Updates Firebase
2024-10-24 17:34:13 -04:00
Vitor Pamplona
6ebc878312
Fixes poll's background rendering with the right percentages.
2024-10-24 17:34:00 -04:00
KotlinGeekDev
c79157f415
Add description() for list events.
2024-10-24 18:12:50 +01:00
Vitor Pamplona
518e1c88ce
Adds hidden words filter to search, hashtag and geotag feeds
...
Applies hidden words even to hashtags that were not included in the content of the event.
Pre-process search to avoid showing and hiding posts after hidden words where processed by the UI.
2024-10-24 11:00:07 -04:00
Vitor Pamplona
f88985b2bf
Adds an icon to the repo
2024-10-23 18:00:23 -04:00
KotlinGeekDev
5a38267fc1
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-23 15:29:35 +01:00
KotlinGeekDev
0c9bea3c19
Add function to get all follow sets from cache.
2024-10-23 15:28:50 +01:00
Vitor Pamplona
89e1e20b40
Improves algorithm for placing the clicked note in a visible position when opening a new threads that need to load dynamically
2024-10-22 17:26:53 -04:00
Vitor Pamplona
c2e725ef5f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-10-22 17:14:36 -04:00
Vitor Pamplona
6e8c348cbc
Moves NIP-44 test model classes to a new file
2024-10-22 17:14:29 -04:00
Vitor Pamplona
84316d320d
Merge pull request #1150 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-22 15:26:36 -04:00
Crowdin Bot
87fb63af06
New Crowdin translations by GitHub Action
2024-10-22 19:00:17 +00:00
Vitor Pamplona
a3b0436d91
Uses NIP-78 to start syncing some data between instances of Amethyst
2024-10-22 14:52:11 -04:00
KotlinGeekDev
27d9b6384e
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-20 10:42:58 +01:00
Vitor Pamplona
bb430605bc
Merge pull request #1148 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-19 18:50:37 -04:00
Crowdin Bot
4c0d92f89f
New Crowdin translations by GitHub Action
2024-10-19 18:19:59 +00:00
Vitor Pamplona
f0b14edef6
v0.92.7
2024-10-19 14:17:42 -04:00
Vitor Pamplona
aae2ffebd7
Fixes the bug of unable to decrypt mute lists.
2024-10-19 14:17:17 -04:00
KotlinGeekDev
bcd220191e
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-18 09:10:46 +01:00
Vitor Pamplona
7b11d0ce81
v0.92.6
2024-10-17 17:21:20 -04:00
Vitor Pamplona
26ba75c7c9
Fixes array too big because strfry blocks more than 20 filters
2024-10-17 17:18:35 -04:00
Vitor Pamplona
67fb3bf488
Fixes margin of poll options with translation
2024-10-17 15:22:34 -04:00
Vitor Pamplona
24b29396cb
Reduces the font size for the translation label
2024-10-17 15:22:19 -04:00
Vitor Pamplona
25c3532637
Fixes poll rendering
2024-10-17 14:55:07 -04:00
KotlinGeekDev
1076e00aa0
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-17 19:39:23 +01:00
Vitor Pamplona
cff6ee457d
Fixes zapraiser progress bar
2024-10-17 14:18:40 -04:00
Vitor Pamplona
c0ba6f5b00
If the Share target intent opens with the new post screen already active, just updates the post instead of creating a new one.
2024-10-17 13:59:52 -04:00
KotlinGeekDev
9bca9187a6
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-17 09:39:33 +01:00
Vitor Pamplona
44d8b8ff33
v0.92.5
2024-10-16 17:34:10 -04:00
Vitor Pamplona
f495acb570
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-10-16 17:33:58 -04:00
Vitor Pamplona
ecfc8bcd87
Merge pull request #1144 from geovnn/main
...
Prevent clicks outside boost popup
2024-10-16 17:33:39 -04:00
Vitor Pamplona
724bea6bbb
Updates compose, benchmark, navigation, and activity
2024-10-16 17:32:33 -04:00
Giovanni Gatti
6826db13a4
Prevent clicks outside boost popup
2024-10-16 23:11:51 +02:00
Vitor Pamplona
c5dd2c5651
Fixes recreating the new post screen from intent when switching accounts.
2024-10-16 13:33:46 -04:00
KotlinGeekDev
bbeec18e0e
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-16 16:28:01 +01:00
Vitor Pamplona
236ff2d680
v0.92.4
2024-10-16 11:13:56 -04:00
Vitor Pamplona
13e2546d36
Makes Amethyst a share target for texts, images and videos.
2024-10-16 10:54:57 -04:00
KotlinGeekDev
3d11845396
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-16 15:50:14 +01:00
Vitor Pamplona
549b9f53e5
Fixes new media post dialog for the edge to edge borders
2024-10-16 09:41:02 -04:00
Vitor Pamplona
974c022aed
Fixes padding of the new new post screen
2024-10-15 17:20:16 -04:00
Vitor Pamplona
a57566dd84
Changes the new post screen to use the non-disappearing version of the scaffold.
2024-10-15 16:55:09 -04:00
Vitor Pamplona
72e86cf391
Merge pull request #1143 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-15 16:25:21 -04:00
Crowdin Bot
3b23cded56
New Crowdin translations by GitHub Action
2024-10-15 20:04:18 +00:00
Vitor Pamplona
121337eb83
Makes new post screen come in and out from the bottom
2024-10-15 16:02:20 -04:00
Vitor Pamplona
fe87d642c9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NewPostScreen.kt
2024-10-15 15:54:26 -04:00
Vitor Pamplona
b8112ff1aa
Correctly maps the write status of the outbox relays.
2024-10-15 15:53:00 -04:00
Vitor Pamplona
1eee0bd1ae
Merge pull request #1142 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-15 13:55:09 -04:00
Crowdin Bot
f48335e3be
New Crowdin translations by GitHub Action
2024-10-15 17:46:27 +00:00
Vitor Pamplona
fcc4befb22
Merge pull request #1141 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-15 13:44:54 -04:00
Crowdin Bot
e28a1896ec
New Crowdin translations by GitHub Action
2024-10-15 17:38:52 +00:00
Vitor Pamplona
f10e66e6a5
Merge pull request #1137 from geovnn/main
...
Change NewPostView to NewPostScreen to make it route based
2024-10-15 13:37:33 -04:00
Vitor Pamplona
825a227e2d
Merge pull request #1140 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-15 12:09:51 -04:00
Crowdin Bot
3446fdaf7f
New Crowdin translations by GitHub Action
2024-10-15 16:08:45 +00:00
Vitor Pamplona
9c29bf3f25
v0.92.3
2024-10-15 12:06:36 -04:00
Vitor Pamplona
9642e45775
Merge pull request #1139 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-15 12:06:23 -04:00
Crowdin Bot
58788d2cd5
New Crowdin translations by GitHub Action
2024-10-15 16:00:54 +00:00
Vitor Pamplona
d7c18341cd
Uses the same Reaction animation to also do Boosts
2024-10-15 11:58:40 -04:00
Vitor Pamplona
ee16f6c143
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-10-15 11:28:41 -04:00
Vitor Pamplona
d78b55d134
Reverts hack for fling behavior on the Vertical Pager
2024-10-15 11:28:33 -04:00
Vitor Pamplona
ff5e7359e2
Merge pull request #1138 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-15 11:05:39 -04:00
Crowdin Bot
4fd0f38402
New Crowdin translations by GitHub Action
2024-10-15 14:56:33 +00:00
Vitor Pamplona
5b516f4101
Updates to AGP 8.7.1 and SDK 35
2024-10-15 10:53:21 -04:00
Vitor Pamplona
1fc390c215
Do not bring the keyboard when the search field reappears.
2024-10-15 10:52:54 -04:00
Vitor Pamplona
2bb09f583b
Fixes Thread view when loading a reply of a thread that is not cached yet.
2024-10-15 10:45:03 -04:00
Giovanni Gatti
89de272ea1
Change NewPostView to NewPostScreen to make it route based
2024-10-14 23:19:43 +02:00
Vitor Pamplona
b4eba2da02
0.92.2
2024-10-11 19:35:52 -04:00
Vitor Pamplona
786a173ba5
Merge pull request #1133 from greenart7c3/external_signer_result
...
Check for the result field when using external signer
2024-10-11 08:08:30 -04:00
greenart7c3
5ef3c8f00e
Check for the result field when using external signer
2024-10-11 07:22:34 -03:00
Vitor Pamplona
d832351bcd
Fixes the ability to see muted lists in Shorts
2024-10-10 17:52:24 -04:00
Vitor Pamplona
9ae611831f
Enables new fields for vision prescriptions
2024-10-10 16:48:33 -04:00
Vitor Pamplona
6db287a008
Merge pull request #1131 from davotoula/prioritise-name-when-searching
...
Prioritise search results with user name starting with search term
2024-10-10 09:47:28 -04:00
David Kaspar
99641e1a12
Added comparison between search term and display name to comparator to prioritise results with search term in name
2024-10-10 14:11:13 +02:00
Vitor Pamplona
abb2f0557d
Merge pull request #1118 from davotoula/refactor-media-compressor
...
Refactor media compressor as prep for replacing 3rd party compression library
2024-10-09 16:38:29 -04:00
David Kaspar
76a66e7bd3
added test for when exception happens during compression
2024-10-09 21:46:15 +02:00
David Kaspar
6cd50a115b
Merge branch 'vitorpamplona:main' into refactor-media-compressor
2024-10-09 14:16:14 +01:00
KotlinGeekDev
34a6be67cf
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-09 13:54:29 +01:00
Vitor Pamplona
0ed34cec09
Fixes https://github.com/vitorpamplona/amethyst/issues/1130
2024-10-09 08:42:33 -04:00
David Kaspar
c5e3657bfe
added missing dot for file extension
2024-10-09 01:45:50 +02:00
David Kaspar
da47965d76
Merge branch 'main' into refactor-media-compressor
2024-10-09 00:16:35 +01:00
David Kaspar
a66417ec82
Added Unknown media type test
2024-10-09 01:07:28 +02:00
David Kaspar
62c3c93d2e
Removed splitFileName function as both file name and extension are known separately
2024-10-09 01:02:41 +02:00
David Kaspar
fbecc8b6d1
Use "use" blocks to close resources automatically
2024-10-09 00:52:35 +02:00
Vitor Pamplona
e95afa89ff
Merge pull request #1129 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-08 18:38:36 -04:00
Crowdin Bot
d6f2560c1c
New Crowdin translations by GitHub Action
2024-10-08 22:33:54 +00:00
Vitor Pamplona
d320b951ae
Fixes long term issue with the video in the Shorts feed not aligning with the padding of the screen
2024-10-08 18:31:54 -04:00
David Kaspar
af28e6d466
Use copyTo to copy streams
2024-10-09 00:15:19 +02:00
Vitor Pamplona
86e6d56dcd
Removes old logs used for debuging the previous issue
2024-10-08 17:19:35 -04:00
Vitor Pamplona
c66fa1073b
Fixes intent reopening the Zap Setup screen because it was saved in the backstack of the Home screen.
2024-10-08 16:09:09 -04:00
Vitor Pamplona
6d9bffe9e7
Disabling #1122 until we solve those little issues.
2024-10-08 15:00:25 -04:00
Vitor Pamplona
04158cec6e
Merge pull request #1128 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-08 14:43:07 -04:00
Crowdin Bot
76376a7c40
New Crowdin translations by GitHub Action
2024-10-08 18:32:53 +00:00
Vitor Pamplona
67ea0dcf7f
Faster logout processing without closing the account switcher dialog.
2024-10-08 13:59:51 -04:00
David Kaspar
cdc8850894
Refactor out file operations into seperate helper
...
Additional tests for MediaCompressor
2024-10-08 17:47:27 +02:00
David Kaspar
ce0c7c842d
Merge branch 'main' into refactor-media-compressor
2024-10-08 14:51:53 +01:00
Vitor Pamplona
f51f929079
Merging
2024-10-08 09:24:10 -04:00
Vitor Pamplona
d87d2e0ef8
Merge pull request #1127 from geovnn/main
...
Added animations
2024-10-08 09:22:40 -04:00
Giovanni Gatti
a3166f4ff3
Add animation to notification chart
2024-10-08 12:13:47 +02:00
Giovanni Gatti
9340c440f5
Add animation to FABs
2024-10-08 11:54:42 +02:00
Giovanni Gatti
a7343d5b54
Add animation to zap and reaction popups
2024-10-08 11:06:29 +02:00
Vitor Pamplona
0551b82bd9
Updates AGP and compose, fragment, navigation, benchmarking and firebase libraries.
2024-10-07 17:02:09 -04:00
Vitor Pamplona
18fca8adac
Merge pull request #1122 from KotlinGeekDev/conditional-rotation
...
Re-enable tap to fullscreen behaviour with stricter orientation checks.
2024-10-07 12:57:28 -04:00
Vitor Pamplona
5d788ed669
Merge pull request #1125 from geovnn/main
...
Prevent clicks outside reaction and zap popups
2024-10-07 12:56:57 -04:00
Giovanni Gatti
54d52e0b77
Prevent clicks outside reaction and zap popups
2024-10-07 17:38:05 +02:00
Vitor Pamplona
28c92675b2
Merge pull request #1124 from greenart7c3/main
...
Support for login with hex key when using amber
2024-10-07 08:32:59 -04:00
greenart7c3
baa9ee0562
Support for login with hex key when using amber
2024-10-07 08:50:06 -03:00
KotlinGeekDev
7326d6be93
Rotation:actually rotate if the device orientation is not locked.
2024-10-05 17:06:36 +01:00
KotlinGeekDev
3c22129c4f
Merge remote-tracking branch 'origin/profiles-list-management' into profiles-list-management
2024-10-05 13:50:00 +01:00
David Kaspar
e187e5392f
refactor "from" method
2024-10-03 14:56:03 +02:00
David Kaspar
7c8f6eb239
formatting
2024-10-03 14:56:03 +02:00
David Kaspar
6294c65ad6
Create private functions for image vs video compression and when statement to select on content type
2024-10-03 14:56:03 +02:00
David Kaspar
51d9657371
Use Pair instead of Array to split up file name
2024-10-03 14:56:03 +02:00
David Kaspar
32783794ee
Exit early if UNCOMPRESSED is selected
2024-10-03 14:56:03 +02:00
David Kaspar
e3858dc830
added kotlinx.coroutines.test library
...
added MediaCompressor first tests
2024-10-03 14:56:03 +02:00
Vitor Pamplona
38a9030963
Merge pull request #1117 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-10-03 08:28:43 -04:00
Crowdin Bot
29c0c4cf5f
New Crowdin translations by GitHub Action
2024-10-03 12:23:07 +00:00
Vitor Pamplona
dcbde81a23
Merge pull request #1116 from davotoula/update-tests-for-new-forceProxy-parameter
...
Update tests for new forceProxy param
2024-10-03 08:21:47 -04:00
David Kaspar
56e6f06fe7
add "forceProxy = false" to tests
2024-10-03 10:02:31 +02:00
KotlinGeekDev
c5be20b4d2
Add icon for Lists and create Drawer/Route entry.
2024-10-01 20:18:11 +01:00
Vitor Pamplona
342b64f0eb
Merge pull request #1114 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-30 19:18:57 -04:00
Crowdin Bot
a64a640165
New Crowdin translations by GitHub Action
2024-09-30 23:05:25 +00:00
Vitor Pamplona
6433830c32
Fixes language setting toggles
2024-09-30 18:47:45 -04:00
Vitor Pamplona
3a58819b52
Merge pull request #1112 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-28 11:54:58 -04:00
Crowdin Bot
5c7be44369
New Crowdin translations by GitHub Action
2024-09-28 15:43:33 +00:00
Vitor Pamplona
6e66d008dc
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-28 11:41:30 -04:00
Vitor Pamplona
c61c4ce16c
Improves names and icons of the left drawer.
2024-09-28 11:01:56 -04:00
Vitor Pamplona
246ce55253
Merge pull request #1111 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-28 09:49:21 -04:00
Crowdin Bot
a704c81d24
New Crowdin translations by GitHub Action
2024-09-28 13:43:32 +00:00
Vitor Pamplona
9963245ec9
Improves zap store descriptions
2024-09-28 09:40:02 -04:00
Vitor Pamplona
64016aa940
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-27 18:02:33 -04:00
Vitor Pamplona
c6462f102a
Merge pull request #1110 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-27 17:23:41 -04:00
Vitor Pamplona
b05083863d
removes the aab files
2024-09-27 17:13:44 -04:00
Crowdin Bot
86fffe6539
New Crowdin translations by GitHub Action
2024-09-27 21:13:01 +00:00
Vitor Pamplona
f94a4cfa65
Merge pull request #1109 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-27 17:11:24 -04:00
Crowdin Bot
3825642ae7
New Crowdin translations by GitHub Action
2024-09-27 19:40:05 +00:00
Vitor Pamplona
f90f81b2a5
Merge pull request #1108 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-27 15:38:46 -04:00
Crowdin Bot
bc042e52b0
New Crowdin translations by GitHub Action
2024-09-27 19:28:52 +00:00
Vitor Pamplona
d80b22fa29
Merge pull request #1107 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-27 15:27:38 -04:00
Crowdin Bot
b63ed4fdbd
New Crowdin translations by GitHub Action
2024-09-27 19:24:11 +00:00
Vitor Pamplona
397acce85b
Merge pull request #1106 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-27 15:23:01 -04:00
Crowdin Bot
5305929df3
New Crowdin translations by GitHub Action
2024-09-27 19:22:04 +00:00
Vitor Pamplona
6d4ba6d507
v0.92.1
2024-09-27 15:20:06 -04:00
Vitor Pamplona
a028c2c3fc
Fixes missing zaps on the first connection to a NWC wallet with a split payment.
2024-09-27 15:19:59 -04:00
Vitor Pamplona
86e5dfa799
Fixes access to Citrine
2024-09-27 14:38:14 -04:00
Vitor Pamplona
3aa316d262
v0.92.0
2024-09-27 11:14:45 -04:00
Vitor Pamplona
3f4efdb6d9
Merge pull request #1105 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-27 08:26:41 -04:00
Crowdin Bot
a178e5f589
New Crowdin translations by GitHub Action
2024-09-27 12:23:29 +00:00
Vitor Pamplona
cc5a6cdaf2
Merge pull request #1104 from davotoula/update_translations
...
Update de, cs, se, pt translations
2024-09-27 08:21:49 -04:00
David Kaspar
d9596335de
Update de, cs, se, pt translations
2024-09-27 09:51:41 +02:00
Vitor Pamplona
44c600dfa8
Fixes icon position on chat user pictures
2024-09-26 18:36:42 -04:00
Vitor Pamplona
a92fe0bca2
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-26 17:20:36 -04:00
Vitor Pamplona
dea9d698df
Adds privacy presets for Tor Settings
2024-09-26 17:20:29 -04:00
Vitor Pamplona
94ae7b3da1
Merge pull request #1103 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-26 15:53:03 -04:00
Crowdin Bot
da1c94f77b
New Crowdin translations by GitHub Action
2024-09-26 19:26:05 +00:00
Vitor Pamplona
64ff33e745
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-26 15:23:47 -04:00
Vitor Pamplona
8810cfde37
Adjusts Login and Sign up screens for the new Tor Settings
2024-09-26 15:23:39 -04:00
Vitor Pamplona
c7b7ad78b7
Adds mempool to verify OTS via Tor.
2024-09-26 15:23:13 -04:00
Vitor Pamplona
ff9f25ccdb
Removes unnecessary log
2024-09-26 14:42:40 -04:00
Vitor Pamplona
498595b892
Merge pull request #1102 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-26 13:48:48 -04:00
Vitor Pamplona
56878900b0
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-26 13:46:52 -04:00
Vitor Pamplona
d8d6736d55
Caches OTS web calls to avoid pinging the server repeatedly for the same event.
2024-09-26 13:45:01 -04:00
Crowdin Bot
ddc68e61d5
New Crowdin translations by GitHub Action
2024-09-26 17:43:05 +00:00
Vitor Pamplona
d4e8fc5737
Merge pull request #1101 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-26 13:41:24 -04:00
Crowdin Bot
3a7dfe7d03
New Crowdin translations by GitHub Action
2024-09-26 15:57:17 +00:00
Vitor Pamplona
d23a859f34
Improves OTS Verification error message
2024-09-26 11:55:29 -04:00
Vitor Pamplona
824cb4e5f1
@Suppress("ProduceStateDoesNotAssignValue") until we figure out what's wrong with this lint.
2024-09-26 11:36:52 -04:00
Vitor Pamplona
35aeeb571c
Fixes setting the value in the main thread
2024-09-26 11:20:51 -04:00
Vitor Pamplona
70d68c89c8
Updates compose, benchmark, firebase, navigation and lifecycle dependencies.
2024-09-26 11:20:33 -04:00
Vitor Pamplona
35a6331da2
Fixes test case
2024-09-26 10:59:50 -04:00
Vitor Pamplona
6229a0ad63
making sure to only use .onion urls if the option is active
2024-09-26 10:41:36 -04:00
Vitor Pamplona
620285596d
Show buffering when loading videos
2024-09-26 10:39:12 -04:00
Vitor Pamplona
fd2637ff42
Removes unused tor setting
2024-09-26 10:38:36 -04:00
Vitor Pamplona
afe8a06486
- Adds a new Settings page for Tor
...
- Adjusts all web calls to use Tor if that setting is enabled.
- Allows .onion urls to use Tor
- Blocks localhost from using Tor
- Moves OTS web calls to use the Tor Proxy as well.
- Starts to build all OkHttp clients from a main root node to keep the same thread pool
- Refactors the URL Preview code
- Changes ammolite to force proxy.
- Changes NIP-47 implementation to force relay for the NWC connection.
2024-09-25 17:58:37 -04:00
Vitor Pamplona
b682e90f81
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-23 21:51:23 -04:00
Vitor Pamplona
ec700ca61f
Refactoring
2024-09-23 21:51:15 -04:00
Vitor Pamplona
9b26ffd92a
Updates to AGP 8.6.1
2024-09-23 21:48:13 -04:00
Vitor Pamplona
a8ca9ab727
Merge pull request #1091 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-20 09:00:43 -04:00
Crowdin Bot
e5832f6a45
New Crowdin translations by GitHub Action
2024-09-20 12:57:12 +00:00
Vitor Pamplona
8b3035f635
Merge pull request #1090 from greenart7c3/main
...
Fix for notifications when using amber
2024-09-20 08:56:00 -04:00
greenart7c3
9f17cc50f8
Fix for notifications when using amber
2024-09-20 06:48:27 -03:00
Vitor Pamplona
d0633d07fa
Fixes inability to go back after opening a nostr link from the web into Amethyst
2024-09-18 19:47:09 -04:00
Vitor Pamplona
97b88c7ceb
Merge pull request #1088 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-18 17:38:59 -04:00
Crowdin Bot
4961a22753
New Crowdin translations by GitHub Action
2024-09-18 21:23:22 +00:00
Vitor Pamplona
45b568f6a7
updates amy bg
2024-09-18 17:21:44 -04:00
Vitor Pamplona
446859e8bd
adds amy
2024-09-18 17:16:52 -04:00
Vitor Pamplona
e1b24c22b9
adds phone mockups
2024-09-18 17:16:38 -04:00
Vitor Pamplona
e0b1c4dc3f
Sending jpg and webp version of the image
2024-09-18 16:28:07 -04:00
Vitor Pamplona
5722507b3d
Adds two designed images for the homepage
2024-09-18 16:23:13 -04:00
Vitor Pamplona
74df309527
Improving bug report template
2024-09-17 18:07:41 -04:00
Vitor Pamplona
740c6a8c33
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-17 18:07:29 -04:00
Vitor Pamplona
929a263665
Adds zapstore yaml
2024-09-17 18:07:12 -04:00
Vitor Pamplona
6f44c02b5c
Makes sure if the d component of an a-tag has :, it stays in the d-tag after parse.
2024-09-16 18:10:54 -04:00
Vitor Pamplona
bce01dc264
Merge pull request #1083 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-16 11:26:36 -04:00
Crowdin Bot
7919637e12
New Crowdin translations by GitHub Action
2024-09-16 15:25:34 +00:00
Vitor Pamplona
28da06ef01
Fixes #1084 . Opengraph parser fails when value-less properties are present.
2024-09-16 11:23:41 -04:00
Vitor Pamplona
428ed464af
Adds salt to the bloom filter
2024-09-15 14:28:49 -04:00
Vitor Pamplona
5921b712b0
Merge pull request #1082 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-13 14:17:46 -04:00
Crowdin Bot
5c9a37f01c
New Crowdin translations by GitHub Action
2024-09-13 18:12:12 +00:00
Vitor Pamplona
514a69deec
Bloom filter test case for NIP76
2024-09-13 14:06:45 -04:00
Vitor Pamplona
356cbc24d4
Merge pull request #1081 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-12 16:09:38 -04:00
Crowdin Bot
f4a2f247f7
New Crowdin translations by GitHub Action
2024-09-12 20:05:59 +00:00
Vitor Pamplona
9ee28e28b8
If already logged in and an NFC tag shows up with ncryptsec, logs in as a transient account
2024-09-12 15:57:35 -04:00
Vitor Pamplona
2457429470
Merge pull request #1078 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-12 08:15:27 -04:00
Crowdin Bot
b998381bb6
New Crowdin translations by GitHub Action
2024-09-12 12:04:40 +00:00
Vitor Pamplona
74725235b7
Merge pull request #1074 from davotoula/add-media-compression-level-uncompressed
...
Add media compression level uncompressed
2024-09-12 08:02:51 -04:00
David Kaspar
ef4d975c7c
Merge branch 'vitorpamplona:main' into add-media-compression-level-uncompressed
2024-09-12 12:40:46 +01:00
Vitor Pamplona
3fdd3f9b69
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-11 17:15:33 -04:00
Vitor Pamplona
53aa9b0017
Trying to fix upload-artifact.
2024-09-11 17:15:23 -04:00
Vitor Pamplona
a52d87a555
Merge pull request #1076 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-11 17:15:10 -04:00
Crowdin Bot
39f062fe32
New Crowdin translations by GitHub Action
2024-09-11 21:03:20 +00:00
Vitor Pamplona
b2c13089ce
adds NFC-Based transient accounts.
...
Refactors the login screen
2024-09-11 16:49:35 -04:00
David Kaspar
4ddf307b9f
added translations
2024-09-11 17:27:08 +02:00
David Kaspar
3db36d8c67
added skipping of media compressor when quality is UNCOMPRESSED
...
added media compressor logging
2024-09-11 17:27:08 +02:00
David Kaspar
bba7d3455c
enhanced nip05 logging
2024-09-11 17:27:08 +02:00
Vitor Pamplona
f086c0fe10
Merge pull request #1043 from greenart7c3/camera
...
Take pictures with camera
2024-09-10 15:32:01 -04:00
Vitor Pamplona
abc803953e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-09 19:44:33 -04:00
Vitor Pamplona
8841aa9a10
Adds Tor
2024-09-09 19:42:43 -04:00
greenart7c3
7e417f09f7
Merge remote-tracking branch 'origin/camera' into camera
2024-09-09 16:10:47 -03:00
greenart7c3
0fde6ffd30
Move camera dependencies to version catalogs
2024-09-09 16:03:35 -03:00
greenart7c3
6f291139d8
Merge branch 'main' into camera
2024-09-09 15:40:56 -03:00
greenart7c3
1e3104d489
Add camera button in the stories screen
2024-09-09 15:37:30 -03:00
greenart7c3
2e110422c8
after enabling permissions open the camera
2024-09-09 14:59:05 -03:00
Vitor Pamplona
7b7aa1932f
Merge pull request #1072 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-09 13:37:59 -04:00
Crowdin Bot
773c96997c
New Crowdin translations by GitHub Action
2024-09-09 17:37:07 +00:00
Vitor Pamplona
8f8199f489
Merge pull request #1071 from greenart7c3/main
...
Fix edit draft not working when using the quick action menu
2024-09-09 13:33:54 -04:00
greenart7c3
a63d50c24f
Merge remote-tracking branch 'origin/camera' into camera
2024-09-09 14:32:55 -03:00
greenart7c3
6af2b48d23
Add a button to take a picture from camera
2024-09-09 14:32:37 -03:00
greenart7c3
37197e1f8a
Fix edit draft not working when using the quick action menu
2024-09-09 14:25:11 -03:00
Vitor Pamplona
8ede4eb3d6
Updates navigation compose, lifecycle, fragment, activity and composeBoms
2024-09-06 17:29:06 -04:00
Vitor Pamplona
c7fcc47b11
Adds an isRefreshing status for all feeds.
2024-09-06 17:19:10 -04:00
Vitor Pamplona
f12cf93e9f
Merge pull request #1065 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-06 14:20:11 -04:00
Crowdin Bot
00e354394f
New Crowdin translations by GitHub Action
2024-09-06 18:12:34 +00:00
Vitor Pamplona
bbb548fe21
Fixes the zap options available for the Zap the Devs button.
2024-09-06 11:36:01 -04:00
Vitor Pamplona
c19e1fc56d
Fixes #1064
2024-09-06 11:19:01 -04:00
Vitor Pamplona
065cf83b68
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-06 11:00:04 -04:00
Vitor Pamplona
ca0da1dcc8
v0.91.0
2024-09-06 10:59:54 -04:00
Vitor Pamplona
58a5cbc624
Merge pull request #1063 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-06 10:12:13 -04:00
Crowdin Bot
554fef9eae
New Crowdin translations by GitHub Action
2024-09-06 14:10:20 +00:00
Vitor Pamplona
7dd76f866a
Enables the use of hidden words for all visible properties of the user
2024-09-06 10:07:41 -04:00
Vitor Pamplona
84bcc33e87
minor refactoring on variables inside the chat screen rendering.
2024-09-06 10:03:49 -04:00
Vitor Pamplona
6309aa1711
Fixes size of default banner when the profile is not loaded yet.
2024-09-06 10:02:04 -04:00
Vitor Pamplona
a8a3bc8a6b
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-05 18:00:25 -04:00
Vitor Pamplona
d2b4a859bf
Fixes Community Load up with Global filter
2024-09-05 18:00:17 -04:00
Vitor Pamplona
92d11d84a7
Merge pull request #1061 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-05 17:49:28 -04:00
Crowdin Bot
1cba6e6cdb
New Crowdin translations by GitHub Action
2024-09-05 21:41:52 +00:00
Vitor Pamplona
20115c7080
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-05 17:39:51 -04:00
Vitor Pamplona
4b3d986c5b
Moves has-new-item bottom navigation computations to use the new feed states and last read database in flows.
2024-09-05 17:39:36 -04:00
Vitor Pamplona
21112d3d46
Merge pull request #1060 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-05 15:23:45 -04:00
Crowdin Bot
ec3f307e0b
New Crowdin translations by GitHub Action
2024-09-05 19:17:01 +00:00
Vitor Pamplona
e17cfb4fdb
Simplifies the "and 2 more" translations
2024-09-05 15:11:00 -04:00
Vitor Pamplona
010305fbeb
- Disables saving m3u8 files (streaming can't be saved)
...
- Changes Error messages to not include stack traces and move them to a copy to clipboard action instead.
2024-09-05 14:36:23 -04:00
Vitor Pamplona
5af473870e
Fixes Search layout after the transition to nav
2024-09-05 14:00:39 -04:00
Vitor Pamplona
80f805617a
Adds sliding animations in all inner screens
2024-09-05 13:53:52 -04:00
Vitor Pamplona
3e1184562f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-05 13:47:33 -04:00
Vitor Pamplona
39edbd22cc
fixes #1058 language update issue
2024-09-05 13:47:23 -04:00
Vitor Pamplona
c90e615d5b
Merge pull request #1059 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-05 13:00:43 -04:00
Crowdin Bot
5e6e7a3b5f
New Crowdin translations by GitHub Action
2024-09-05 16:08:57 +00:00
Vitor Pamplona
3e23d6e526
Merge pull request #1051 from davotoula/configurable-media-compression
...
Configurable media compression
2024-09-05 12:07:33 -04:00
David Kaspar
08054e226e
Merge branch 'vitorpamplona:main' into configurable-media-compression
2024-09-05 16:02:52 +01:00
David Kaspar
cfe668ab0d
move slider value label to above slider
2024-09-05 16:58:39 +02:00
Vitor Pamplona
8f19276fac
Fixes blinking on crossfades when the system's light/dark theme is different than the app's theme.
2024-09-05 10:50:16 -04:00
Vitor Pamplona
3a3c0d74d2
Fixes the Messages layout on foldables.
2024-09-05 10:30:58 -04:00
David Kaspar
3ad21e72a9
Clean up by using Int instead of Float for compression level
2024-09-05 16:10:26 +02:00
David Kaspar
790b9359bd
Merge branch 'vitorpamplona:main' into configurable-media-compression
2024-09-05 14:32:59 +01:00
David Kaspar
e52e2bfdc9
Localise and add czech, swedish, german and PT translations
2024-09-05 15:09:19 +02:00
Vitor Pamplona
a34c763656
Merge pull request #1056 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-05 08:42:51 -04:00
Crowdin Bot
adf5bbe80f
New Crowdin translations by GitHub Action
2024-09-05 12:39:02 +00:00
Vitor Pamplona
c4c542c739
Moves the last npub to hexkey for https://github.com/nostr-protocol/nips/pull/1341
2024-09-05 08:37:15 -04:00
David Kaspar
5f0236c015
change MediaCompressor API: mandatory mediaQuality
2024-09-05 14:28:12 +02:00
David Kaspar
023c0592e8
Add compression configuration to VideoScreen uploads
2024-09-05 13:09:17 +02:00
David Kaspar
c6d2f05f15
Styling
2024-09-05 11:50:52 +02:00
David Kaspar
08e9f6625a
Merge branch 'main' into configurable-media-compression
2024-09-05 08:32:49 +01:00
David Kaspar
fcf5e972d6
Passing media quality from Slider to Compressor
...
setting media quality to MEDIUM where ui has no option for setting it (ChannelScreen, ChatroomScreen, NewUserMetadataViewModel)
2024-09-05 09:09:10 +02:00
Vitor Pamplona
20bf4dbc29
Merge pull request #1053 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-04 22:28:12 -04:00
Crowdin Bot
990c5df2b9
New Crowdin translations by GitHub Action
2024-09-05 02:21:58 +00:00
Vitor Pamplona
71af88725a
Fixes play version
2024-09-04 22:19:28 -04:00
Vitor Pamplona
fb5f5c3eba
no message
2024-09-04 22:18:00 -04:00
Vitor Pamplona
ead588314e
- Inverts Layouts to place Navigation on top of Scaffold and allow custom scaffolds per route.
...
- Finishes Edge to Edge transition
- Fixes moving buttons on the full screen dialog for images and videos.
- Restructures screens into their own packages.
- Restructures navigation functions as a single object
- Fixes padding of the backup screen
- Refactors all TopBars to use default material 3 ones.
- Refactors navigation to improve clarity
- Removes unnecessary observers from the transition in the bottom nav layouts.
2024-09-04 22:17:42 -04:00
Vitor Pamplona
fb447e441a
Merge pull request #1052 from greenart7c3/gcompatup
...
Fix token sanitization when using gcompatup
2024-09-04 13:37:42 -04:00
greenart7c3
3d61343905
Fix token sanitization when using gcompatup
2024-09-04 13:58:55 -03:00
David Kaspar
7e4d9fb708
added media quality slider
2024-09-04 12:32:33 +02:00
Vitor Pamplona
0217fd3eb3
Moves the profile zap to threads
2024-09-03 17:29:41 -04:00
Vitor Pamplona
96fa6f39b0
Fixes ime padding issues when using physical keyboards on the message screens.
2024-09-03 17:28:07 -04:00
Vitor Pamplona
b6bb214532
Fixes text field recompositions because of new keyboard actions
2024-09-03 15:55:52 -04:00
Vitor Pamplona
ee160b76a8
Updates zoomable and kotlin serialization
2024-09-03 15:54:54 -04:00
Vitor Pamplona
2fd9d6610a
Normalizes cache directories in the Application class
2024-09-03 15:31:16 -04:00
David Kaspar
272f99be17
added logging
2024-09-03 20:44:39 +02:00
David Kaspar
b8246d7cd4
fixing type
2024-09-03 19:23:47 +02:00
David Kaspar
981d93f2fc
making MediaCompressor configurable
2024-09-03 19:18:10 +02:00
Vitor Pamplona
1166fe92e9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-09-03 11:45:27 -04:00
Vitor Pamplona
b700d4e9bf
Fixes missing Private Home/Outbox relay list after loading from backup
2024-09-03 11:43:17 -04:00
Vitor Pamplona
0b41d09fda
Merge pull request #1050 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-02 16:00:29 -04:00
Crowdin Bot
61c145a68f
New Crowdin translations by GitHub Action
2024-09-02 19:29:46 +00:00
Vitor Pamplona
4103342f99
Updates to AGP 8.6.0
2024-09-02 15:24:39 -04:00
Vitor Pamplona
e48ed607ff
Fixes #1049
2024-09-02 14:56:24 -04:00
Vitor Pamplona
d5a98db67c
v0.90.6
2024-09-02 10:05:07 -04:00
Vitor Pamplona
72412b9d03
Merge
2024-09-02 10:04:38 -04:00
Vitor Pamplona
b5b90c80e9
Revert "v0.90.6"
...
This reverts commit 2ca5186aef .
2024-09-02 10:03:15 -04:00
Vitor Pamplona
c1077f689d
Merge pull request #1046 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-02 10:02:32 -04:00
Crowdin Bot
8b26a84564
New Crowdin translations by GitHub Action
2024-09-02 14:00:35 +00:00
Vitor Pamplona
2ca5186aef
v0.90.6
2024-09-02 10:00:28 -04:00
Vitor Pamplona
064e211154
Merge pull request #1045 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-02 09:59:23 -04:00
Vitor Pamplona
2e8ab35f05
Merge pull request #1042 from greenart7c3/clickable_url
...
Long press to copy relay url
2024-09-02 09:59:14 -04:00
Crowdin Bot
df429b976f
New Crowdin translations by GitHub Action
2024-09-02 13:59:11 +00:00
Vitor Pamplona
d40995c338
Merge pull request #1039 from davotoula/1038-Profile-Lightning-payment-is-100x-too-large
...
millisats were incorrectly multiplied by 1000
2024-09-02 09:57:45 -04:00
greenart7c3
bba7c257da
long press to copy relay url in the relay icons and relay row
2024-09-02 09:52:39 -03:00
greenart7c3
a03e02bfeb
Add a button to take a picture from camera
2024-09-02 08:42:46 -03:00
David Kaspar
a4a753e7b6
Rename amount to amountInMillisats to give visual clue to calling classes that millisats should be used
2024-09-02 12:26:26 +02:00
greenart7c3
53acbd8606
Long press to copy relay url
2024-09-02 07:15:59 -03:00
Vitor Pamplona
f89c1ff391
v0.90.5
2024-09-01 15:07:07 -04:00
Vitor Pamplona
471ee21749
Merge pull request #1041 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-09-01 12:38:26 -04:00
Crowdin Bot
24f7e043af
New Crowdin translations by GitHub Action
2024-09-01 16:37:46 +00:00
Vitor Pamplona
34e82dab8b
Merge pull request #1040 from davotoula/1037-tor-setting-reset-to-off-after-switching-away
...
1037 tor setting reset to off after switching away
2024-09-01 12:36:36 -04:00
David Kaspar
9fa1b8c541
Close "needsPassword.value" if statement earlier to make Orbot checkbox visible again
2024-09-01 17:09:03 +02:00
David Kaspar
1e61162f73
change the logic for saving of proxy state
2024-09-01 17:05:20 +02:00
David Kaspar
941266365e
millisats were incorrectly multiplied by 1000
2024-08-31 19:24:12 +01:00
Vitor Pamplona
b1f1466e6b
v0.90.4
2024-08-30 18:43:34 -04:00
Vitor Pamplona
55d53dbc4f
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-30 18:42:50 -04:00
Vitor Pamplona
aeaddf722b
- Fixes caching bug of NIP-96 servers
...
- Allow NIP-96 setups with relative URLs
- Displays error messages if the server has sent in the body
- Adds a test case for both
2024-08-30 18:42:41 -04:00
Vitor Pamplona
b733fbce35
Merge pull request #1036 from Dawn11111111/patch-1
...
Typo Fix on Lnaddress TextField
2024-08-30 12:05:00 -04:00
Dawn
93e9e23730
Typo Fix on Lnaddress TextField
...
Removed 'i' from lightining :)
2024-08-30 09:45:13 -06:00
Vitor Pamplona
388ccdbe75
Speeds up the filter for NWC zap payments.
2024-08-29 12:32:34 -04:00
Vitor Pamplona
255f464046
Basic code for dynamic limits
2024-08-29 10:29:46 -04:00
Vitor Pamplona
8be74649ce
Protects against empty nip04 content
2024-08-28 17:59:59 -04:00
Vitor Pamplona
b5709f9527
Adds basic support for NIP-46 events.
2024-08-28 17:39:25 -04:00
Vitor Pamplona
7d9efcd1d9
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-28 16:07:47 -04:00
Vitor Pamplona
d44f5dad18
Merge pull request #1035 from greenart7c3/main
...
Show relay ping with the relay icon
2024-08-28 16:06:50 -04:00
greenart7c3
06f37ab81d
Fix relay icons when using complete ui
2024-08-28 16:20:55 -03:00
Vitor Pamplona
cb4a73bb9c
Enables decryption by nip04 and nip44 on NostrWalletConnect objects, NIP-51 lists and NIP-04 messages
2024-08-28 15:20:25 -04:00
greenart7c3
efde14a348
Show relay ping with the relay icon
2024-08-28 16:17:08 -03:00
Vitor Pamplona
0f86e3d8fb
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-28 09:20:48 -04:00
Vitor Pamplona
1407850e81
Fixes push registration with empty token ids
2024-08-28 09:20:40 -04:00
Vitor Pamplona
d9a87f6e7c
Merge pull request #1034 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-28 08:33:37 -04:00
Crowdin Bot
5e0a49f225
New Crowdin translations by GitHub Action
2024-08-28 12:31:37 +00:00
Vitor Pamplona
3ebaf2bf1e
Fixes ZapTheDevs card not disappearing after the donation.
2024-08-28 08:29:53 -04:00
Vitor Pamplona
9ef0ceed9d
Merge pull request #1033 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-27 17:49:17 -04:00
Crowdin Bot
caa3760fd3
New Crowdin translations by GitHub Action
2024-08-27 21:46:25 +00:00
Vitor Pamplona
0b2a9e67c0
v0.90.3
2024-08-27 17:44:44 -04:00
Vitor Pamplona
931081c5e7
Exposes decryption crashing because it is used by Notification Services to check which account can decrypt a GiftWrap.
2024-08-27 17:43:12 -04:00
Vitor Pamplona
f7237b5666
Improves logs on new Notifications
2024-08-27 17:42:18 -04:00
Vitor Pamplona
d851637ea2
Fixes byte to string decoder for UnifiedPush
2024-08-27 17:41:56 -04:00
Vitor Pamplona
2d39b4edfe
Only register for endpoints if it has changed from the one in memory
2024-08-27 17:41:37 -04:00
Vitor Pamplona
5001c5bef8
There is no need to extend onReceive
2024-08-27 17:40:53 -04:00
Vitor Pamplona
6ac1db9fc8
correctly passes the endpoint to remove it
2024-08-27 17:40:35 -04:00
Vitor Pamplona
52f33d79e0
Correctly registering the distributor at startup
2024-08-27 17:38:14 -04:00
Vitor Pamplona
1a9d91cdc0
Fixes correct saving of UnifiedPush endpoints
2024-08-27 17:37:53 -04:00
Vitor Pamplona
2f444e6ec5
Moves ChatMessage components to the chatroom package
2024-08-27 16:03:15 -04:00
Vitor Pamplona
4665c488d5
Adds a small border between the author and the message of a chat bubble
2024-08-27 15:57:56 -04:00
Vitor Pamplona
42ab826d02
v0.90.2
2024-08-27 15:01:50 -04:00
Vitor Pamplona
80a3f7424b
fixes conversation tab
2024-08-27 14:52:22 -04:00
Vitor Pamplona
1bd3e347b3
Updates media 3 dependencies.
2024-08-27 14:51:30 -04:00
Vitor Pamplona
a332126e71
Quick fix for to not show error messages on Zap the Devs
2024-08-27 14:33:57 -04:00
Vitor Pamplona
d97abe6af9
v0.90.0
2024-08-27 13:48:36 -04:00
Vitor Pamplona
62d341bd8a
Publishing new user's events
2024-08-27 11:49:43 -04:00
Vitor Pamplona
a95d2e903e
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
...
# Conflicts:
# amethyst/src/main/java/com/vitorpamplona/amethyst/ui/qrcode/QrCodeDrawer.kt
2024-08-27 11:04:36 -04:00
Vitor Pamplona
2b5e62aaf7
- Improves rendering of the QR Code elements
...
- Makes the QR bigger
- Moves QR Code to rounder corners
- Moves QR Screen to use the arrow icon instead of the close button
2024-08-27 11:04:13 -04:00
Vitor Pamplona
1c3e82913f
Merge pull request #1031 from greenart7c3/main
...
Use white background for qrcodes
2024-08-27 11:02:33 -04:00
Vitor Pamplona
ceaa20fabf
Removes galleries live data
2024-08-27 08:34:25 -04:00
Vitor Pamplona
1bbabb747e
Deleting Bundled updates for Account.
2024-08-26 19:12:39 -04:00
Vitor Pamplona
914c0a2926
Making sure scopes are cancelled for accountViewModel notification dot updates.
2024-08-26 19:12:28 -04:00
Vitor Pamplona
4b249156f9
Makes sure the accountViewModel is deleted when the user switches the screen, logs off or kills the activity.
2024-08-26 18:22:34 -04:00
Vitor Pamplona
7b8c7a1a78
Simplifies flow collection for new events.
2024-08-26 18:22:12 -04:00
Vitor Pamplona
66ed26dcea
Finishes the migration of the service manager to the Application class
2024-08-26 18:21:53 -04:00
Vitor Pamplona
356740479c
Moves to hold the feed itself in a stateflow
2024-08-26 17:48:27 -04:00
Vitor Pamplona
c88dded01b
Improves stability of composables
2024-08-26 16:45:07 -04:00
Vitor Pamplona
7c974bc8ef
adds a directory for metrics as well
2024-08-26 15:27:04 -04:00
Vitor Pamplona
efbc3e3e78
removes unecessary logs
2024-08-26 14:57:16 -04:00
Vitor Pamplona
fac803e208
Merge pull request #1032 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-26 14:56:04 -04:00
Crowdin Bot
484a3d6b32
New Crowdin translations by GitHub Action
2024-08-26 18:44:35 +00:00
Vitor Pamplona
4e3b6d0299
- Adds a sync Signer to facilitate library
...
- Separates Account actions from Account state in two objects
- Changes Startup procedures to start with Account state and not the full account object
- Moves scope for flows in Account from an Application-wide scope to ViewModel scope
- Removes all LiveData objects from Account in favor of flows from the state object
- Migrates settings saving logic to flows
- Migrates PushNotification services to work without Account and only Account Settings.
- Migrates the spam filter from LiveData to Flows
- Adds Default lists for NIP-65 inbox and outbox relays
- Adds Default lists for Search relays
- Adds local backup for UserMetadata objects
- Adds local backup for Mute lists
- Adds local backup for NIP-65 relays
- Adds local backup for DM Relays
- Adds local backup for private home relays
- Rewrites state flows initializers to avoid inconsistent startups
2024-08-26 14:42:55 -04:00
Vitor Pamplona
f3161ada8d
Solves crash when opening the Relay screen with empty urls as relays.
2024-08-26 11:13:10 -04:00
greenart7c3
5c9b84476b
Use white background for qrcodes
2024-08-26 07:21:19 -03:00
Vitor Pamplona
24ea0cabda
Updates benchmark, composeBOM and firebaseBOM to the latest versions
2024-08-23 08:35:44 -04:00
Vitor Pamplona
8b617fbd60
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-22 17:27:04 -04:00
Vitor Pamplona
34149e6ce2
Merge pull request #1030 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-22 17:13:16 -04:00
Vitor Pamplona
315a662c10
Improve horizontal padding of the chat messages
2024-08-22 17:12:46 -04:00
Crowdin Bot
c373843e0f
New Crowdin translations by GitHub Action
2024-08-22 21:03:22 +00:00
Vitor Pamplona
448ea796ef
Improves caching of encrypted DMs:
...
- Migrates caching of decrypted value outside of the Event class
- Removes encrypted parts of NIP-17 from the cache
- Removes old NIP-04 messages from the cache
- Avoids deleting new NIP-17 plain text chats from memory
2024-08-22 17:01:37 -04:00
Vitor Pamplona
71b111ce8b
Fixes the download of 1000s of NIP-65 relay lists because some relays consider empty lists as null and return everything.
2024-08-22 12:24:45 -04:00
Vitor Pamplona
ae686671ba
Minimizing the number of filters for group chat metadata
2024-08-22 09:55:28 -04:00
Vitor Pamplona
6c45bb1ca1
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-21 20:32:06 -04:00
Vitor Pamplona
a05ad6e686
Adds support for NIP-35 torrents and their comments
2024-08-21 20:31:59 -04:00
Vitor Pamplona
485f7becd4
Merge pull request #1029 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-21 19:18:29 -04:00
Vitor Pamplona
83f1e523ea
Creates links to njump when events can't be found on Amethyst
2024-08-21 17:05:14 -04:00
Vitor Pamplona
a8a3c94115
clear flows before removing notes from the local cache
2024-08-21 16:32:11 -04:00
Vitor Pamplona
4d21857adf
moves the processing of nip19 links to the default thread
2024-08-21 16:31:57 -04:00
Crowdin Bot
0e7f41efe8
New Crowdin translations by GitHub Action
2024-08-21 20:09:17 +00:00
Vitor Pamplona
8d9bf60dba
Merge pull request #1028 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-21 16:08:51 -04:00
Vitor Pamplona
7c67924914
fixes imports
2024-08-21 16:07:42 -04:00
Crowdin Bot
7626839037
New Crowdin translations by GitHub Action
2024-08-21 19:59:14 +00:00
Vitor Pamplona
23825ceed5
Avoids bottom nav recompositions
2024-08-21 15:57:45 -04:00
Vitor Pamplona
8d8016e01b
Simplifies nav bar selected calculations
2024-08-21 15:51:01 -04:00
Vitor Pamplona
6668e5a178
Moves accountViewModelMock to a more appropriate file
2024-08-21 15:14:28 -04:00
Vitor Pamplona
7d6bef9576
Moves heavy computations away from IO
2024-08-21 15:00:13 -04:00
Vitor Pamplona
1aea7fbd03
Avoids remembering edit lists that will never exist.
2024-08-21 14:58:01 -04:00
Vitor Pamplona
ef96d296f8
avoids double update to the viewmodel
2024-08-21 14:53:35 -04:00
Vitor Pamplona
d4da58e14a
Improves logs when the UserMetadata cannot be parsed
2024-08-21 14:38:17 -04:00
Vitor Pamplona
f646866192
moves markasread from io to default
2024-08-21 09:20:43 -04:00
Vitor Pamplona
e0849b12e7
Merge pull request #1027 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-21 07:55:58 -04:00
Crowdin Bot
1271343582
New Crowdin translations by GitHub Action
2024-08-21 11:52:51 +00:00
Vitor Pamplona
d61d14ea75
Merge pull request #1026 from davotoula/chage-twitter-to-x
...
Change twitter proof to use x.com
2024-08-21 07:51:04 -04:00
David Kaspar
668d604aa9
use original twitter colour in x.xml because I can't get the theme switching working
2024-08-21 11:56:45 +01:00
Vitor Pamplona
6df2c3a0cf
improving speed of chatlist rendering
2024-08-20 15:23:15 -04:00
Vitor Pamplona
b0c33808e6
Adds support for MOD reports
2024-08-20 15:07:28 -04:00
Vitor Pamplona
7bd3e0beab
Improved padding and spacing for chat messages
2024-08-20 13:05:44 -04:00
Vitor Pamplona
3a70cfb9e2
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-20 09:14:56 -04:00
Vitor Pamplona
17c758f8f8
Displays PoW of commitment if present.
2024-08-20 09:14:47 -04:00
Vitor Pamplona
7cb03b939f
Merge pull request #1022 from KotlinGeekDev/fix-relay-set
...
Fix relay set event.
2024-08-20 08:57:34 -04:00
KotlinGeekDev
481ef91cb1
Change relay set kind to be NIP-51 consistent.
2024-08-20 12:13:42 +01:00
Vitor Pamplona
1183aa8d11
Changes fdroid push registration to re-register even if the saved distributor was already selected.
2024-08-19 17:58:50 -04:00
Vitor Pamplona
4023261400
Merge pull request #1020 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-19 12:07:35 -04:00
Crowdin Bot
f1433504e9
New Crowdin translations by GitHub Action
2024-08-19 16:00:50 +00:00
Vitor Pamplona
989cbb35d3
Disabling landscape rotation on full screen due to portrait videos.
2024-08-19 11:58:50 -04:00
Vitor Pamplona
9262b90096
Merge pull request #1019 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-19 11:40:22 -04:00
Crowdin Bot
ab3b7685cf
New Crowdin translations by GitHub Action
2024-08-19 15:40:02 +00:00
Vitor Pamplona
40865ac97d
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-19 11:36:39 -04:00
Vitor Pamplona
ded67964b0
Merge pull request #1018 from KotlinGeekDev/fullscreen-video-behavior
...
Change tap to fullscreen video behavior for livestreams.
2024-08-19 11:34:47 -04:00
Vitor Pamplona
e991707ddf
updates runner
2024-08-19 11:32:04 -04:00
KotlinGeekDev
1b429475aa
Remove the manual testing/debugging code. Remove the LocalConfiguration API in favour of DeviceUtils.isLandscapeMetric.
2024-08-17 18:51:07 +01:00
KotlinGeekDev
9613afb7ea
Fix ZoomableImageDialog. isFoldableOrLarge already takes into account the orientation.
2024-08-17 17:07:43 +01:00
KotlinGeekDev
26a12f2dbe
Remove the external config method and use the built-in Compose API.
...
Add some documentation.
2024-08-17 17:03:07 +01:00
KotlinGeekDev
23da02f932
Merge remote-tracking branch 'origin/fullscreen-video-behavior' into fullscreen-video-behavior
2024-08-17 15:19:47 +01:00
KotlinGeekDev
59ff9007a7
Move DeviceUtils closer to call-site. Copy code from Material3-Adaptive library(to avoid experimental annotation propagation everywhere).
...
Implement windowIsLarge to take care of device type handling(sort-of). Add some funky debug methods to make sure windowIsLarge works.
2024-08-17 14:18:48 +00:00
KotlinGeekDev
0f817dbf00
Put device in landscape mode when fullscreen button is pressed.
2024-08-17 14:18:48 +00:00
KotlinGeekDev
7ab6322886
Introduce DeviceUtils, and add functions for changing orientation, and checking for Landscape mode.
2024-08-17 14:18:48 +00:00
KotlinGeekDev
223c0c1263
Initial implementation for auto-fullscreen on rotation to landscape mode.
2024-08-17 14:18:48 +00:00
KotlinGeekDev
d3a639a2ee
Consistent naming and behavior for the video player controls.
2024-08-17 14:18:48 +00:00
KotlinGeekDev
2fb1cbe11f
Move DeviceUtils closer to call-site. Copy code from Material3-Adaptive library(to avoid experimental annotation propagation everywhere).
...
Implement windowIsLarge to take care of device type handling(sort-of). Add some funky debug methods to make sure windowIsLarge works.
2024-08-17 15:14:24 +01:00
Vitor Pamplona
29c5b45764
Moves the default zap type to a state flow and avoids passing on to the screen when using the default value.
2024-08-16 17:45:53 -04:00
Vitor Pamplona
ec83ad9d20
Removing unecessary livedata objects for translation services
2024-08-16 17:10:02 -04:00
Vitor Pamplona
239f973e89
Moves lastread routes to mutableStateFlow
2024-08-16 16:42:00 -04:00
Vitor Pamplona
6c81fbbcf9
Fixes crash when the relay url of a user is duplicated.
2024-08-16 16:00:03 -04:00
Vitor Pamplona
75e45f37b2
Migrating livedata to flow for contact list updates of the user.
2024-08-16 15:59:43 -04:00
Vitor Pamplona
0bff3462b1
Migrates the pubkeyHex from keypair to the signer.
2024-08-16 15:58:23 -04:00
Vitor Pamplona
990db68a4d
Fixes spacing of short quotes
2024-08-16 13:12:05 -04:00
Vitor Pamplona
4343c744db
Displaying stacks in error messages if they are present
2024-08-16 11:14:34 -04:00
Vitor Pamplona
5cb6f97178
linting cleanup
2024-08-16 10:48:30 -04:00
KotlinGeekDev
a8efc9d348
Put device in landscape mode when fullscreen button is pressed.
2024-08-16 14:53:40 +01:00
Vitor Pamplona
e0b667fd2d
Fixes order for the notification feed after refactoring
2024-08-16 09:41:38 -04:00
Vitor Pamplona
a8ad2437fe
refactors the Watch feed to scroll to the top
2024-08-16 09:39:15 -04:00
KotlinGeekDev
83018e621e
Introduce DeviceUtils, and add functions for changing orientation, and checking for Landscape mode.
2024-08-16 14:19:55 +01:00
Vitor Pamplona
68b15ba483
Refactors old user zap object.
2024-08-15 17:08:15 -04:00
Vitor Pamplona
7513036d47
Refactors sorting of Notifications
2024-08-15 16:16:36 -04:00
Vitor Pamplona
c82c594926
Fixes slow down when the last message on chat is a base64 image.
2024-08-15 16:02:28 -04:00
Vitor Pamplona
bd18d4b4b2
Adjusts Outbox filter as soon as a new NIP-65 relay list shows up
2024-08-15 15:17:41 -04:00
Vitor Pamplona
2f5b99a1c7
Merge pull request #1016 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-15 15:06:50 -04:00
Crowdin Bot
1be6e0ec0f
New Crowdin translations by GitHub Action
2024-08-15 18:58:39 +00:00
Vitor Pamplona
f43c0e5cf5
Moves error messages from uploading procedures to the full error dialog instead of just a toast.
2024-08-15 14:55:25 -04:00
Vitor Pamplona
d6d8719c8d
Fixes the centralization of the "and more" part of relay recommendations
2024-08-14 18:50:26 -04:00
Vitor Pamplona
7478899388
Fixes miscaching flows of the relay lists from follows.
2024-08-14 18:03:25 -04:00
Vitor Pamplona
6b193894bd
Fixes miscache of hashtag following button
2024-08-14 17:16:02 -04:00
Vitor Pamplona
69f5371ab8
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-14 17:15:36 -04:00
Vitor Pamplona
526e3db3c1
Adds more information to when error messages are not available in the relay stats.
2024-08-14 15:50:05 -04:00
Vitor Pamplona
3c9e8854eb
Merge pull request #1015 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-14 15:14:42 -04:00
Crowdin Bot
7ee0aa47a9
New Crowdin translations by GitHub Action
2024-08-14 19:07:04 +00:00
Vitor Pamplona
5fbf0462fa
No need to check for the MainThread in every updateFeedWith
2024-08-14 15:04:51 -04:00
Vitor Pamplona
eda5bc50e6
Adds a destroy method to FollowList state for consistency
2024-08-14 10:45:57 -04:00
David Kaspar
d6d26d466b
clean up code in MetadataEvent.kt
...
update x drawable
2024-08-14 08:11:28 +01:00
Vitor Pamplona
6acd3ca091
Moves follow list states to the AccountViewModel
2024-08-13 19:35:04 -04:00
Vitor Pamplona
c64d179f7f
Migrates Notification Summary to the new state model
2024-08-13 18:56:53 -04:00
Vitor Pamplona
32bc8fe667
Fixes f-droid flavor after refactoring
2024-08-13 18:35:31 -04:00
Vitor Pamplona
0a8c792d53
Moves the notification screen to the new state model instead of viewModels
2024-08-13 18:32:20 -04:00
Vitor Pamplona
c32dc61ea1
Refactoring Moving feed status from ViewModel to State objects
2024-08-13 17:32:15 -04:00
Vitor Pamplona
3af2cb52cc
adds a prune for giftwrapped messages
2024-08-13 15:11:15 -04:00
Vitor Pamplona
ddb1d7ff82
Adds context to highlight events
2024-08-13 15:08:32 -04:00
KotlinGeekDev
fd0523085d
Initial implementation for auto-fullscreen on rotation to landscape mode.
2024-08-13 10:42:49 +01:00
Vitor Pamplona
1f9fbb0c86
Revers letter spacing in inline code on Markdow
2024-08-12 15:58:17 -04:00
Vitor Pamplona
5b95a1c177
Improved logs when clearing the cache for DMs
2024-08-12 15:55:25 -04:00
Vitor Pamplona
2e144ebdf8
Adds previews to test markdown rendering
2024-08-12 15:55:01 -04:00
Vitor Pamplona
ac5f550ff3
Fixes heading sizes on markdown
2024-08-12 15:54:20 -04:00
Vitor Pamplona
9af123b709
Improves the look of inlinde code in markdown
2024-08-12 15:53:45 -04:00
Vitor Pamplona
75efd2b372
Improves badge display
2024-08-12 11:18:22 -04:00
Vitor Pamplona
2cface9ac9
Inverts spam logs
2024-08-12 11:11:23 -04:00
Vitor Pamplona
58491a97ac
Merge pull request #1012 from greenart7c3/main
...
show only 3 users in the recommended relays section
2024-08-12 09:07:21 -04:00
greenart7c3
7a86d78c50
show only 3 users in the recommended relays section
2024-08-12 09:05:08 -03:00
David Kaspar
97a00ff83c
First pass updating Twitter verification to X
2024-08-12 11:07:48 +02:00
Vitor Pamplona
4c6842faf4
v0.89.10
2024-08-09 18:47:48 -04:00
Vitor Pamplona
fad8b9df0f
Improved filter for notifications
2024-08-09 18:47:38 -04:00
Vitor Pamplona
cc52681635
Moves service manager to the Application class
2024-08-09 18:14:09 -04:00
Vitor Pamplona
939c8e95b0
Adds protections against filters with empty arrays because some relays consider that null as opposed to empty.
2024-08-09 18:13:19 -04:00
Vitor Pamplona
312501e527
AGP to 8.5.2
2024-08-09 15:25:52 -04:00
Vitor Pamplona
89638ff261
Deletes all events in maximum chunks of 200 elements to avoid the 65KB stringified JSON limit of many relays.
2024-08-09 14:35:00 -04:00
Vitor Pamplona
27d2e2309a
Fixes the clickable regions to open additional relay info on the relay list dialog.
2024-08-09 13:44:44 -04:00
Vitor Pamplona
7eaa553ebe
Allows users to select and copy the notice from the relay on the relay list dialog
2024-08-09 13:43:53 -04:00
KotlinGeekDev
8adddd0bdb
Consistent naming and behavior for the video player controls.
2024-08-09 15:26:42 +01:00
Vitor Pamplona
d8f084f886
Merge pull request #1009 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-08 18:37:10 -04:00
Crowdin Bot
5c5a23dfbb
New Crowdin translations by GitHub Action
2024-08-08 22:30:34 +00:00
Vitor Pamplona
282d4614c0
Adds zap amount cache for the memory space calculations
2024-08-08 18:19:48 -04:00
Vitor Pamplona
8ed78ea38f
Marks username as deprecated
2024-08-08 18:18:54 -04:00
Vitor Pamplona
2e7b7c5c00
improves wording on the name of relays
2024-08-08 14:35:45 -04:00
Vitor Pamplona
68cad97819
Reducing the amount of CPU memory used for images to the default.
2024-08-08 11:51:35 -04:00
Vitor Pamplona
02f7b54661
Updates translate dependencies
2024-08-08 08:31:38 -04:00
Vitor Pamplona
e887232132
v0.89.9
2024-08-07 18:39:02 -04:00
Vitor Pamplona
7bcf4e3750
Removes logs from previous commit
2024-08-07 18:34:38 -04:00
Vitor Pamplona
ed0676a5f5
Fixes the order of bookmarks (keeps the order of the event, instead of the created at)
2024-08-07 18:24:35 -04:00
Vitor Pamplona
f731c654b0
Improves the async rendering of Base64 content
2024-08-07 18:24:14 -04:00
Vitor Pamplona
b026bffe4a
Moves discovery and video lists to Outbox when Follows or relay lists are selected
2024-08-07 16:39:24 -04:00
Vitor Pamplona
a1aaec0b7d
Adds support for selecting authors based on their Outbox relays when searching for notes authored by them
2024-08-07 15:46:27 -04:00
Vitor Pamplona
6f59097ac0
Aligns default note comparator to NIP-01's created at descending and then by id ascending
2024-08-07 15:44:35 -04:00
Vitor Pamplona
263df0c895
Renames PerRelayFilter to SincePerRelay
...
Creates PerRelay interface to allow other types of filters
2024-08-07 15:44:03 -04:00
Vitor Pamplona
1ca5713494
Merge pull request #1008 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-07 12:57:34 -04:00
Crowdin Bot
b706c4e871
New Crowdin translations by GitHub Action
2024-08-07 16:04:54 +00:00
Vitor Pamplona
e8574c10bb
Keep them public to allow testing in these particular functions
2024-08-07 12:02:48 -04:00
Vitor Pamplona
7cb87ea9c5
Refactors to use native contains instead of custom lambdas on Ammolite's Filter
2024-08-07 11:58:00 -04:00
Vitor Pamplona
07e5132943
Refactors Ammolite Filters to be regular ones and creates a PerRelayFilter for the use on Amethyst.
2024-08-07 11:40:01 -04:00
Vitor Pamplona
2b1e3cfc93
Renames the MinimumRelayList to RecommendationProcessor
2024-08-07 11:39:14 -04:00
Vitor Pamplona
c17e1f0e1f
removes logs from previous commit
2024-08-06 17:14:22 -04:00
Vitor Pamplona
e88d1d0d00
Adds haptic feedback to draft deletion swipe
2024-08-06 17:13:06 -04:00
Vitor Pamplona
5fdff97cf8
Moves the ContactList cache lists to AccountViewModel, where it can be disposed more efficiently.
2024-08-06 15:36:04 -04:00
Vitor Pamplona
e5328d7975
Improves the accuracy of the Event memory counter.
2024-08-06 15:35:14 -04:00
Vitor Pamplona
71b45b96fb
Adds event factory performance test
2024-08-06 11:04:30 -04:00
Vitor Pamplona
dee28f3aa8
Merge pull request #1006 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-05 17:26:13 -04:00
Crowdin Bot
3a118bb939
New Crowdin translations by GitHub Action
2024-08-05 20:59:07 +00:00
Vitor Pamplona
971c92b27a
Adds extension possibility to Quartz's event factory
2024-08-05 16:57:21 -04:00
Vitor Pamplona
4c70065843
Moves DataSource dispatcher from IO to Default
2024-08-05 16:02:35 -04:00
Vitor Pamplona
eab69337ff
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-08-05 16:02:19 -04:00
Vitor Pamplona
ab772eb65e
Makes stringRes Stable for compose
2024-08-05 15:48:06 -04:00
Vitor Pamplona
7a6720a7ab
Merge pull request #1005 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-05 15:31:47 -04:00
Crowdin Bot
0f3dc18f7a
New Crowdin translations by GitHub Action
2024-08-05 19:16:01 +00:00
Vitor Pamplona
84df86f4b6
Removes mutiny NWC button :(
2024-08-05 15:13:35 -04:00
Vitor Pamplona
a0289a0cb4
Moves Relay viewModels to Default thread
2024-08-05 15:08:08 -04:00
Vitor Pamplona
3c034ca8af
v0.89.8
2024-08-02 16:34:51 -04:00
Vitor Pamplona
0c8c3003aa
Merge pull request #1004 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-08-02 13:37:05 -04:00
Crowdin Bot
919dabfefa
New Crowdin translations by GitHub Action
2024-08-02 16:39:19 +00:00
Vitor Pamplona
fd06193e93
Notifies relay failures after marking them as closed.
2024-08-02 12:36:54 -04:00
Vitor Pamplona
b02fa43628
Print relay writes on benchmark as well.
2024-08-02 12:35:52 -04:00
Vitor Pamplona
7fdf38d17b
Normalizes logs for the DataSources
2024-08-02 12:35:25 -04:00
Vitor Pamplona
63e036a9bb
Minimizes relay updates when rotating status events for each user.
2024-08-02 12:32:44 -04:00
Vitor Pamplona
fc98442f8b
Adds support for CashuB tokens using CBOR
2024-07-31 17:36:48 -04:00
Vitor Pamplona
3bbb780d2b
Simplifies the drawing of gallery entires without e tags.
2024-07-31 16:02:18 -04:00
Vitor Pamplona
42ceb0c404
Fixes test case for ImageUploaders
2024-07-31 15:59:07 -04:00
Vitor Pamplona
046bd7a0e9
Merge pull request #1003 from greenart7c3/main
...
Add delete all drafts button
2024-07-31 14:58:26 -04:00
Vitor Pamplona
0af0f745bf
Fixes the need for main thread note loading for galleries
2024-07-31 14:57:44 -04:00
Vitor Pamplona
b24999d78c
Basic refactoring to minimize the need for user-space params in the VideoView
2024-07-31 14:43:10 -04:00
Vitor Pamplona
d1278a4477
Better rendering for live streams that are planned but already finished.
2024-07-31 14:16:44 -04:00
greenart7c3
609ccaa635
Add delete all drafts button
2024-07-31 13:51:02 -03:00
Vitor Pamplona
4bae04ad31
Merge pull request #1001 from believethehype/better_gallery_view
...
Gallery: use FileHeader Info for rendering / faster loading
2024-07-31 10:41:19 -04:00
Believethehype
8bca729edd
Merge remote-tracking branch 'upstream/main' into better_gallery_view
2024-07-31 16:36:25 +02:00
Vitor Pamplona
2b2f04f724
Adds the callbackUri to the display uncited hashtags so that it can reuse the previously parsed post.
2024-07-31 10:21:13 -04:00
Vitor Pamplona
231af1d3d8
Fixes #993
2024-07-31 10:17:19 -04:00
Believethehype
d1b44c0ac0
remove print
2024-07-31 12:59:23 +02:00
Believethehype
f06c3f7376
massive speed up of rendering the gallery
2024-07-31 12:55:02 +02:00
Believethehype
b8e10b040d
cleanup
2024-07-31 12:02:39 +02:00
Believethehype
1a4396dbe3
removes unneded variable
2024-07-31 11:51:44 +02:00
Believethehype
856eb0da05
create GalleryFeed earlier
2024-07-31 11:40:59 +02:00
Believethehype
ceaeb8e0b9
use GalleryContentView instead of
2024-07-31 11:24:05 +02:00
Vitor Pamplona
b29ccd9746
Refactors the lambda used for content resolvers.
2024-07-30 18:16:28 -04:00
Vitor Pamplona
f82364939f
Adds icons in SVG to the docs
2024-07-30 18:16:06 -04:00
Vitor Pamplona
286583bba2
fixing the need for a new coroutine startup
2024-07-30 13:50:08 -04:00
Vitor Pamplona
bc8e5aa458
Merge pull request #997 from VASHvic/fix-clipboard-copy-edited-notes
...
Fix copying to clipboard edited notes
2024-07-30 13:47:49 -04:00
Vitor Pamplona
b393fb042f
Merge pull request #999 from believethehype/nutrendering
...
Show mint in cashu token rendering
2024-07-30 13:47:14 -04:00
Vitor Pamplona
0258c5aac2
Releasing Flows if not subscribed anymore.
2024-07-30 13:22:48 -04:00
Vitor Pamplona
a03a11c4cc
Updates depedencies
2024-07-30 13:17:53 -04:00
Vitor Pamplona
3896bbab34
Merge pull request #1000 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-07-30 09:17:19 -04:00
Crowdin Bot
5459f31000
New Crowdin translations by GitHub Action
2024-07-29 23:24:58 +00:00
Vitor Pamplona
143c3a1444
Testing that both 02 and 03 compressed keys are valid Nostr keys and can encrypt and decrypt to each other.
2024-07-29 19:23:22 -04:00
Believethehype
bfbcf11fa3
Update CashuRedeem.kt
2024-07-29 20:42:17 +02:00
VASH
25823b1f39
Fix copying to clipboard edited notes
2024-07-27 13:05:20 +02:00
Believethehype
cb02955ac6
fix order of Share ImageAction
2024-07-24 07:49:44 +02:00
Vitor Pamplona
b440661e0d
Adds the highlight to the base URL so that when the user opens the link, it highlights on the page.
2024-07-23 12:56:53 -04:00
Vitor Pamplona
38ba456a22
Signs for just one auth event to register with the push notification service instead of the dozens of events, one per relay.
2024-07-23 10:15:36 -04:00
Vitor Pamplona
bca941e045
enables crossfading between images
2024-07-23 08:47:20 -04:00
Vitor Pamplona
dbaadb4595
v0.89.7
2024-07-22 18:10:15 -04:00
Vitor Pamplona
231ca44e1c
Avoids recomposition of the entire line when changing status.
2024-07-22 18:07:44 -04:00
Vitor Pamplona
ca00c87a6e
Prints memory use in descending order by size
2024-07-22 16:59:58 -04:00
Vitor Pamplona
2a28111583
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-07-22 14:27:23 -04:00
Vitor Pamplona
4def80c914
updates the EOSE of users even if no user is found in the relay.
2024-07-22 14:27:10 -04:00
Vitor Pamplona
916ece1edb
Merge pull request #992 from greenart7c3/main
...
Remove focus from status text field when closing the drawer
2024-07-22 14:00:24 -04:00
Vitor Pamplona
3c1f57fac0
Sorts keys before making the filter.
2024-07-22 13:57:31 -04:00
greenart7c3
e166c36731
Remove focus from status text field when closing the drawer
2024-07-22 14:45:39 -03:00
Vitor Pamplona
a636f4a786
updates coil and jackson libs
2024-07-22 11:31:57 -04:00
Vitor Pamplona
bb127506c7
Merge pull request #985 from believethehype/main
...
Store additional File Metadata in Gallery Entries
2024-07-22 08:10:26 -04:00
Vitor Pamplona
92c704d227
Merge pull request #986 from greenart7c3/main
...
Add sendAndWaitForResponse to Client.kt
2024-07-22 08:10:11 -04:00
greenart7c3
e764ebbcb2
if the relay just connected send the event
2024-07-22 07:49:54 -03:00
greenart7c3
68fb34a8ad
Merge branch 'main' into main
2024-07-22 07:36:43 -03:00
greenart7c3
02683ba829
Merge remote-tracking branch 'origin/main'
2024-07-22 07:34:36 -03:00
greenart7c3
754a1b3a87
change the log of onRelayStateChange
2024-07-22 07:33:21 -03:00
Vitor Pamplona
4b58da7be7
Merge pull request #991 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-07-21 15:22:31 -04:00
Crowdin Bot
1ac9c850e4
New Crowdin translations by GitHub Action
2024-07-21 18:32:48 +00:00
Vitor Pamplona
3cc4dc1414
Merge pull request #990 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-07-21 14:31:54 -04:00
Vitor Pamplona
62ae43e863
v0.89.6
2024-07-21 14:31:17 -04:00
Crowdin Bot
8149a93f2f
New Crowdin translations by GitHub Action
2024-07-21 18:31:01 +00:00
Vitor Pamplona
5a60c3a595
Fixes stringResource cache
2024-07-21 14:29:05 -04:00
Vitor Pamplona
2ef2f0d1a5
adds the key to avoid applying to a separate navcontroller
2024-07-21 11:32:08 -04:00
Vitor Pamplona
52fef33662
run faster animations
2024-07-21 11:18:56 -04:00
Vitor Pamplona
a5c6f86b35
v0.89.5
2024-07-20 16:27:27 -04:00
Vitor Pamplona
b80008d695
Adds more memory stat dumping for production apps
2024-07-20 16:27:19 -04:00
Vitor Pamplona
fa06aefbf1
increases disk cache to 1GB and adds a memory cache policy.
2024-07-20 15:32:34 -04:00
Vitor Pamplona
ab9ede1e26
Merge pull request #987 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-07-20 15:08:00 -04:00
Crowdin Bot
479b1ab20a
New Crowdin translations by GitHub Action
2024-07-20 19:04:48 +00:00
Vitor Pamplona
8ed3f84cb7
Fixes screen rendering below the 3-button navigation
2024-07-20 15:02:57 -04:00
Vitor Pamplona
c128e43fe5
v0.89.4
2024-07-19 17:10:22 -04:00
Vitor Pamplona
f9ddf76686
action bar fix
2024-07-19 17:09:56 -04:00
Vitor Pamplona
b6cb839fe7
v0.89.3
2024-07-19 16:44:30 -04:00
Vitor Pamplona
2b6a48f391
Fixes issue with super large follow lists.
2024-07-19 16:40:46 -04:00
Vitor Pamplona
d1da863d3c
Making sure an empty relay list uses the default list from Amethyst
2024-07-19 16:14:14 -04:00
greenart7c3
99b7a8005a
Merge branch 'main' into main
2024-07-19 14:13:36 -03:00
greenart7c3
3f3367258f
return true if at least one relay replied with success
2024-07-19 13:29:09 -03:00
Vitor Pamplona
15ab955a7d
Fixes alt of NIP-96 server lists
2024-07-19 11:55:46 -04:00
greenart7c3
5cf8b5aa12
change proguard to see if now the client.listener works
2024-07-19 12:49:04 -03:00
greenart7c3
eba6d03b53
check if listeners work now
2024-07-19 12:17:26 -03:00
greenart7c3
de85239046
check if listeners work now
2024-07-19 11:56:30 -03:00
Vitor Pamplona
9176151971
Fixes auth infinite loop with nostr.wine
2024-07-19 10:45:06 -04:00
greenart7c3
cbd8acbd01
check eose too
2024-07-19 11:14:31 -03:00
greenart7c3
19c9bfa819
Merge remote-tracking branch 'origin/main'
2024-07-19 11:14:18 -03:00
greenart7c3
80c369a6ae
change default timeout to 15 seconds
2024-07-19 10:56:35 -03:00
greenart7c3
d0190c87a2
add more logs, add optional listener, fix await call
2024-07-19 10:56:35 -03:00
greenart7c3
62a2cba18b
fix lint
2024-07-19 10:56:35 -03:00
greenart7c3
59b3ff1b94
Added sendAndWaitForResponse to Client.kt
2024-07-19 10:56:35 -03:00
greenart7c3
35423e1bb6
change default timeout to 15 seconds
2024-07-19 10:52:36 -03:00
greenart7c3
e125690000
add more logs, add optional listener, fix await call
2024-07-19 10:50:59 -03:00
Vitor Pamplona
eba5ecfd91
Merge branch 'main' of https://github.com/vitorpamplona/amethyst
2024-07-19 09:47:04 -04:00
Vitor Pamplona
3e43a75acd
Fixes the keyboard overriding parts of the screen
2024-07-19 09:46:58 -04:00
greenart7c3
04bf9c07ac
fix lint
2024-07-19 08:05:04 -03:00
greenart7c3
ac58f99560
Added sendAndWaitForResponse to Client.kt
2024-07-19 07:58:12 -03:00
Believethehype
df328ff139
Store additional File Metadata in Gallery Entries
2024-07-18 17:53:37 +02:00
Vitor Pamplona
60ba7786a0
Merge pull request #984 from vitorpamplona/l10n_crowdin_translations
...
New Crowdin Translations
2024-07-18 10:54:01 -04:00
Crowdin Bot
1773ad5a88
New Crowdin translations by GitHub Action
2024-07-18 14:30:23 +00:00
Vitor Pamplona
26faa2bc69
Migrating to edge to edge in preparation for Android 15
2024-07-18 10:28:19 -04:00