Commit graph

11 commits

Author SHA1 Message Date
instant992
47f9aef160 Sponsor: GhostCloud labeling, curved gloss streak, support link & top sponsors
- Bulletin now reads 'Sponsor GhostCloud' + granted for 444+ rubles (en/ru)
- Heart highlight reworked: thin curved streak sweeping diagonally instead
  of an orbiting blob; palette tuned closer to the reference
- SponsorHelper.loadTopSponsors() hits mobile donors/leaderboard via X-Tg-Id
- New FoxSponsorsActivity lists the top sponsors
- Neko settings: 'Support the project' (t.me/vpnghostbot) + 'Top sponsors'
2026-06-09 09:54:31 +04:00
instant992
9b81a463a6 Sponsor heart: glossy 3D look with moving specular highlight
Replace the flat linear rainbow sweep with a glossy sticker-style heart:
diagonal purple/blue-to-orange base, soft purple glow, bottom shade, and
a moving glossy highlight orbiting inside plus a fixed top-left specular
dot for an iridescent emoji feel.
2026-06-09 09:27:11 +04:00
instant992
7eeae7fe82 Sponsor heart: rainbow gradient + restore custom emoji status
- Make the shimmering heart a full rainbow spectrum (was single-hue)
- Move heart to rightDrawable2 so the custom emoji status / premium star
  returns to its normal slot next to the name
- Add clickable rightDrawable2 support to SimpleTextView so tapping the
  heart still opens the explanation bulletin
2026-06-09 09:00:56 +04:00
instant992
323c1ff10e Sponsor badge: shimmering heart + tap-to-explain bulletin
- Replace static star with self-animating iridescent ShimmerHeartDrawable
- Move badge to clickable rightDrawable slot; tap shows a Nekogram-style
  bulletin explaining why the badge was granted
- Add en/ru strings; drop unused vector resource
2026-06-09 08:35:21 +04:00
instant992
e926e7afc6 Fix sponsor check endpoint path (/api/auth/mobile/me)
The auth_mobile router is mounted with prefix /api/auth, so the
bare /mobile/me path returned 404. Use the full path.
2026-06-09 08:09:14 +04:00
instant992
51bde550b9 Add sponsor badge next to own name on profile
- SponsorHelper queries FoxCloud /mobile/me by Telegram ID (X-Tg-Id) and caches is_sponsor per account
- Self profile shows a sponsor badge next to the name when is_sponsor is true
- Reactive refresh via new NotificationCenter.sponsorStatusUpdated global event

Verified: TMessagesProj compileReleaseJavaWithJavac succeeds.
2026-06-09 04:34:19 +04:00
instant992
d200a290f8 Support multiple named built-in proxies (5 LTE + 2 WiFi)
- XrayServers now holds a structured server list with per-entry name and local port
- XrayController builds built-in proxies from the list (createBuiltinProxies/byPort)
- ProxyInfo gains builtinName; proxy list shows the configured name
- Built-in proxies keep the same protection: read-only, not editable/shareable
- Credentials stay in git-ignored XrayServers.java; template updated

Verified: TMessagesProj compileReleaseJavaWithJavac succeeds.
2026-06-09 03:42:14 +04:00
instant992
d79c149e3e Add in-app download and silent install for GitHub updates
- ApkInstaller.downloadAndInstall downloads APK by URL with a progress dialog
- Reuses existing PackageInstaller silent-install pipeline via shared File path
- Update dialogs now download in-app instead of opening a browser
- Add UpdateDownloading string

Verified: TMessagesProj compileReleaseJavaWithJavac succeeds.
2026-06-09 03:24:22 +04:00
instant992
12792f77f3 Switch update checker to GitHub Releases
- UpdateHelper now fetches latest release from GitHub API instead of helper bot
- Compares dotted version names, prefers arm64 APK asset, falls back to release page
- Keeps TL_help_appUpdate output contract so existing update UI works unchanged
- Decouples ConfigHelper from update check
2026-06-09 03:00:30 +04:00
instant992
42a780f702 Disable helper-bot data channel, harden WebApp null-check, update branding
- Extra.getHelperBot() returns null on empty username (closes data channel)
- WebAppHelper: guard against null helper bot to prevent NPE
- Disable anti-repackaging signature check for rebranded fork
- Update launcher icons and branding assets
2026-06-09 02:33:57 +04:00
instant992
8e79f2ee9c FoxiGram: Telegram client with built-in Xray VLESS proxy
Based on Nekogram. Key additions:
- Rebrand to FoxiGram (app name, APK name, applicationId com.foxigram.app)
- Embedded Xray (VLESS+Reality) proxy client via JNI libxray.so
- Bundled hidden one-tap proxies (LTE + WiFi), read-only in UI
- Auto-restore proxy on restart, rebind to active network (LTE/WiFi)
- Server credentials externalized to git-ignored XrayServers.java (+ template)
- libxray Go source included; compiled .so, keystore, google-services.json ignored
2026-06-08 16:41:07 +04:00