Commit Graph

156 Commits

Author SHA1 Message Date
Sarto 0e8f6d7311 make build faster?! v0.14.4-rc1 2026-05-03 17:18:56 +03:30
Sarto d489387d06 fix(android): pin WebView port + persist scan-prompt server-side v0.14.3 2026-05-03 17:06:06 +03:30
Sarto 920e6077f8 fix: ensure active resolver lists are updated correctly and broadcast changes to the UI v0.14.2 v0.14.1 v0.14.0-rc4 v0.14.0 2026-05-03 13:30:31 +03:30
Sarto 6a6255bd31 refactor: update scoreboard layout to use flexbox for improved responsiveness and clarity v0.14.0-rc3 2026-05-03 11:35:31 +03:30
Sarto 6e062dbc73 test: refactor TestWriteListsInfoIncludeResolvers for clarity and structure v0.14.0-rc2 2026-05-03 00:28:31 +03:30
Sarto 8c0e9c5036 feat: introduce named active resolver lists for user-defined subsets and inapp new version download and ... v0.14.0-rc1 2026-05-03 00:03:37 +03:30
Sarto 6c1bb9f58f feat: add GitHub update check and APK handling for in-app updates 2026-05-02 17:22:28 +03:30
Sarto cee80685d7 fix: update Android APK filenames and documentation for clarity v0.13.5 2026-05-02 16:15:53 +03:30
Sarto ad1196173a fix dns media downlaod timeouts and video play in android v0.13.4 v0.13.4-rc2 2026-05-02 00:37:47 +03:30
Sarto ace8ce8627 feat: better handle back button and exit v0.13.4-rc1 2026-05-01 22:49:52 +03:30
Sarto 68009f5d92 fix some bugs! v0.13.3-rc1 2026-05-01 21:42:37 +03:30
Sarto c603442d01 fix teleport bug! v0.13.3 2026-05-01 11:48:21 +03:30
Sarto 8a3a8f318a fix: improve Telegram mode selection in setup_config for better user experience v0.13.2 2026-05-01 01:08:50 +03:30
Sarto f712bc4b85 fix: enhance media saving functionality with error handling and user feedback v0.13.2-rc2 2026-05-01 00:25:42 +03:30
Sarto 76d958bdff feat: implement media handling via native bridge for Android v0.13.2-rc1 2026-05-01 00:01:51 +03:30
Sarto fea393a627 fix: update User-Agent header for GitHub requests and improve commit messages v0.13.1-rc2 2026-04-30 23:42:15 +03:30
Sarto 643452234e fix: streamline setup_config and improve remote management handling 2026-04-30 22:57:02 +03:30
Sarto 2b8f49ad1d fix install.sh 2026-04-30 22:48:38 +03:30
Sarto c1367cf779 fix bash file 2026-04-30 22:41:02 +03:30
Sarto ef90c0d72b ratelimit v0.13.1-rc1 2026-04-30 22:07:20 +03:30
Sarto 0defe0489b fix: enhance error handling in GitHub raw fetch with detailed rate limit and auth error context v0.13.0-rc9 2026-04-30 21:23:14 +03:30
Sarto 7834f0f598 fix: update Android build process to use cgo for DNS resolution and streamline HTTP client configuration v0.13.0-rc8 2026-04-30 20:52:06 +03:30
Sarto 503852fce9 feat: implement custom HTTP client for GitHub relay with fallback DNS support v0.13.0-rc7 2026-04-30 19:45:43 +03:30
Sarto ceb108c83a fix: update GitHub relay max file size to 15 MB and adjust TTL in setup script v0.13.0-rc6 2026-04-30 18:42:36 +03:30
Sarto 7e7f569dc2 fix: improve handling of GitHub prerelease detection and enhance setup configuration prompts v0.13.0-rc5 2026-04-30 17:47:12 +03:30
Sarto e7afe19925 fix: enable CGO for Android arm builds and configure NDK clang v0.13.0-rc4 2026-04-30 17:24:18 +03:30
Sarto f6329a5706 fix: update build workflow for Android and refine UPX installation conditions v0.13.0-rc3 v0.13.0-rc2 2026-04-30 17:09:49 +03:30
Sarto 989fec3cec feat: relays for download media v0.13.0 v0.13.0-rc1 2026-04-30 16:57:11 +03:30
Sarto b4e9cd8714 feat: media download with DNS query 2026-04-29 01:45:27 +03:30
Sarto 11946c0147 fix: enhance "new messages" handling with sticky separator and improved lastSeen timestamp management #35 v0.12.2 2026-04-27 14:30:30 +03:30
Sarto 2f5a735203 fix: improve media parsing logic for Telegram messages and add regression tests for premium emojis v0.12.1 2026-04-27 13:46:32 +03:30
Sarto 93c171d678 fix: add links to Telegram channels and setup guides in README files 2026-04-26 22:49:43 +03:30
Sarto 7999197919 fix: update download links format for build artifacts in workflow v0.12.0 2026-04-26 18:12:19 +03:30
Sarto baa17100d3 add donation 2026-04-26 18:07:30 +03:30
Sarto 052b7101fa fix: update Android APK download links and improve versioning in build process
Co-authored-by: Copilot <copilot@github.com>
v0.11.2-rc9
2026-04-26 18:00:06 +03:30
Sarto 2fe3c8b604 fix: update poll data extraction logic to ensure both question and options are present
Co-authored-by: Copilot <copilot@github.com>
v0.11.2-rc8
2026-04-26 17:38:40 +03:30
Sarto 2e9bd4df03 fix: specify localhost address for web server initialization in tests v0.11.2-rc7 v0.11.2-rc6 2026-04-26 17:11:33 +03:30
Sarto b9aefabbd1 fix: include VERSION in the output filename for the client build
Co-authored-by: Copilot <copilot@github.com>
v0.11.2-rc5
2026-04-26 17:06:36 +03:30
Sarto f40af8fbb1 feat: add host flag to configure web UI listen address
Co-authored-by: Copilot <copilot@github.com>
v0.11.2-rc4
2026-04-26 16:50:47 +03:30
Sarto 6b58b2ad0e Merge pull request #32 from sepehr-alipour/fix/mobile-nav-matchmedia
fix: use matchMedia for mobile nav to fix background restore bug
v0.11.2-rc3
2026-04-25 13:26:25 +03:30
Sepehr 2ff7cbd751 fix: use matchMedia for mobile nav to fix background restore bug
window.innerWidth can briefly report the desktop viewport width when
the page is restored from a long Android background session, causing
openChat() to skip adding chat-open even though chatIsOpen is true.

Replace all window.innerWidth checks with mobileQuery.matches so the
JS breakpoint always agrees with CSS. Also swap the resize listener
for mobileQuery.addEventListener('change') which only fires when the
breakpoint actually crosses, and add a visibilitychange handler to
re-apply chat-open when the app returns to the foreground.
2026-04-24 17:05:00 -04:00
Sarto 06bdbefe33 Merge pull request #30 from sepehr-alipour/fix/skip-upx-android-arm
fix: skip UPX for android arm build
v0.11.2-rc2
2026-04-24 20:48:47 +03:30
Sepehr 145e894f82 fix: skip UPX for android arm build
Android 10+ enforces W^X (Write XOR Execute) — UPX's self-extracting
stub allocates RWX memory at runtime, which the kernel kills immediately.
Skip UPX for the armeabi-v7a matrix entry so the binary loads cleanly.
2026-04-24 13:00:25 -04:00
Sarto e815dba9ec Merge pull request #25 from sepehr-alipour/fix/mobile-chat-layout-state
fix: restore chat-open state on viewport resize to prevent split layout bug
v0.11.2-rc1
2026-04-24 02:17:26 +03:30
Sepehr a3fc6cc133 fix: restore chat-open state on viewport resize to prevent split layout bug 2026-04-23 18:13:49 -04:00
Sarto fce8f0dd65 feat: update chat name display to support emoji and custom HTML v0.11.1 2026-04-23 11:25:45 +03:30
Sarto 452d8462c4 feat: preserve display name when merging cached messages v0.11.0 2026-04-22 17:38:10 +03:30
Sarto f753afc1db Merge pull request #20 from sepehr-alipour/feat/channel-display-name
feat: channel display names & mobile UX improvements
2026-04-22 16:15:45 +03:30
Sepehr 2bd4835674 feat: lazy background title fetch with disk cache and backoff
- Persist display names in per-channel JSON cache files (Name +
  DisplayName fields on cachedChannel). GetAllTitles reads all ch_*.json
  files; PutTitle updates a channel file in-place without losing messages.

- Replace blocking FetchTitles calls in fetchMeta and refreshChannel with
  an instant disk read (GetAllTitles) applied before the SSE broadcast,
  so channels appear with cached titles immediately on every load.

- ensureTitlesFetched runs in a single background goroutine (titlesMu +
  titlesLoading guard prevents duplicates). On success it persists titles
  and pushes an SSE update. On error or empty response it backs off for
  5 minutes so an old server does not cause endless retries.

- Block 0 of TitlesChannel now carries a uint16 total-block-count prefix
  (added in rebuildTitlesBlocks). FetchTitles reads the count from block 0
  and fetches all remaining blocks in parallel instead of sequentially.

- FetchTitles timeout raised from 10 s to 1 minute.
2026-04-21 21:19:29 -04:00
Sepehr 1496b00a94 feat: show @handle subtitle in channel list and chat header; add mobile kebab menu
- Channel list: always show @handle as subtitle below display name for Telegram channels
- Chat header: show @handle as subtitle below channel title
- Mobile (<768px): hide Search/Export buttons; show them in a ⋮ kebab menu (rightmost button)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 19:17:12 -04:00