Commit Graph

12 Commits

Author SHA1 Message Date
836c870204 Force QR scanner to portrait orientation
Override the ZXing CaptureActivity orientation in the manifest to force portrait mode, preventing the scanner from switching to landscape mode.
2025-12-27 19:22:04 -05:00
4a7a48c9a4 Remove legacy XML UI code after Compose migration 2025-12-27 18:55:54 -05:00
2c8315cb5d Migrate UI to Jetpack Compose with Material 3 design
- Replace XML layouts with Compose screens for all 5 Activities
- Implement Material 3 theme with Google Blue/Green color scheme matching app icon
- Add device-aware navigation with bottom tabs for Samsung devices
- Remove action bar for modern edge-to-edge UI design
- Update Kotlin to 1.9.22 for Compose Compiler compatibility
- Add Compose dependencies and configure build system
- Implement MainViewModel for upload state management
- Create reusable dialog components for upload parameters and results
- Preserve all existing Java controllers and services (UI-only migration)
2025-12-27 18:47:29 -05:00
0e08718566 Add QR code scanning for server configuration
Adds QR code scanning functionality to both ServerSetupActivity and
SettingsActivity, allowing users to auto-fill server configuration by
scanning a QR code from the server's admin dashboard.

Changes:
- Add ZXing Android Embedded library (v4.3.0) for QR scanning
- Add CAMERA permission to AndroidManifest
- Create QrServerConfig model to parse and validate QR JSON data
- Create QrScannerUtil for shared scanning functionality
- Extend PermissionUtil with camera permission handling
- Add "Scan QR Code" button to ServerSetupActivity with hint text
- Add "Scan QR Code" button to SettingsActivity
- Add QR scan icon and string resources
- Configure Gradle Java toolchain auto-detection

The QR code contains JSON with server address, port, and client key
which are automatically populated into the input fields when scanned.
2025-12-27 14:49:01 -05:00
d32fd4690d adding first iteration of chunked file support 2025-04-16 21:41:07 -04:00
59d3518a4c getting ready for github roleout 2025-04-15 20:58:51 -04:00
2e4d02b503 cleaning up UI 2025-04-15 12:36:18 -04:00
0c04500fc2 adding setup workflow 2025-04-15 09:57:51 -04:00
e36d0616d5 adding settings screen 2025-04-15 09:52:20 -04:00
b8afe35dfc refactoring and adding a history 2025-04-14 22:37:20 -04:00
45dc412cb7 removed tinyurl logic added support for new short code logic 2025-04-14 21:37:18 -04:00
44cbf409b7 initial commit 2024-10-07 22:47:30 -04:00