Removes the CW decoder entirely. The feature/cw module was a verbatim
decompilation of Morse Expert 1.15 (VE3NEA, a paid Play Store app),
shipped without licence or attribution, and restricted to the armeabi-v7a
ABI only -- which blocks Google Play distribution (64-bit required since
2019-08).
Deleted:
- feature/cw: 11,519 lines of obfuscated decompiled Java,
libnativedecoderjni.so, layouts and resources
- core/domain/cw: 998 lines of unreachable Kotlin DSP plus its 300-line
test (CwStartListening and friends were never dispatched by any UI)
Cleaned up in feature/radar:
- Removed CwDecoderPanel, CwSubState, CwStatus and 6 CW actions
- Removed the CW branches and decoder plumbing from RadarViewModel
- Dropped now-unused dependencies: :feature:cw, :feature:mutual (was
declared but never imported), androidx.constraintlayout
- Removed radar_cw_* strings from en and zh
Kept deliberately: IAudioCapture, audioCapture and the RECORD_AUDIO
permission -- these are shared with SSTV and must not be removed.
CW decoding is gone until it is rewritten. See branch for the deleted
implementation if you need to reference it.
Port upstream PR #234 to fork main:
- New feature:status module (SatStatusScreen, SatStatusViewModel)
- New AmSatRepository + IAmSatRepository + SatStatus models
- RemoteSource: AMSAT API methods (getAmSatCatalog, getAmSatReports)
- MainContainer/IMainContainer: DI injection
- MainTheme: AMSAT status colors (tertiary slots)
- Chinese translations added for all AMSAT strings
- 26 unit tests passing
Note: navigation entry not included — upstream PR #234 intentionally
left it out pending UI restructuring. Add AMSAT to your nav bar or
menu as desired.
Port satlover.de dual-station pass matching feature:
- New feature/mutual module with mutual pass data model
- MutualViewModel: compute overlapping passes for two stations
- ElevationCurveChart: Canvas-based dual elevation curve with drag
- MutualScreen: input form + results with expandable cards
- Navigation: add Mutual tab to bottom navigation bar
- i18n: add Chinese/English strings for new feature