task(0a00ccbd-6f98-4730-adf2-6f1e864823de): Mount M2 project workbench home and modernize M1 layouts

- FeatureMount: HOME tab now mounts ProjectWorkspaceFragment; delete placeholder HomeFragment
- app/build.gradle.kts + libs.versions.toml: add androidx recyclerview and swiperefreshlayout for project list and pull-to-refresh
- NetworkModule: register ProjectApi (M2 2.5.1.1 GetProjectList) via provideProjectApi
- SessionRepository: add SessionState.Restoring as initial state so cold start renders neutral loading instead of prompting login
- MineFragment/layout: consumer-grade flow with horizontal identity card (whole card acts as login CTA when signed out), config warning card, grouped settings rows; drop back button and manual refresh entry
- MineViewModel: remove manual refresh(); session restore is now automatic on cold start
- LoginFragment/layout: MaterialToolbar back, segmented MaterialButtonToggleGroup for account/SMS mode, TextInputLayout floating-label inputs, linear progress below button
- ConfigFragment/ChangePasswordFragment layouts: unify back navigation to Toolbar, switch plain EditTexts to TextInputLayout, replace ProgressBar with LinearProgressIndicator
- strings.xml: add M2 home workbench copy and mine/login labels; remove unused action_back, mine_login, mine_refresh, mine_config_ready, mine_logout_confirm
This commit is contained in:
阿猫
2026-09-03 23:50:20 +08:00
parent dec274b1af
commit ddd5009bb1
29 changed files with 1668 additions and 431 deletions

View File

@@ -57,6 +57,8 @@ dependencies {
implementation(libs.androidx.fragment.ktx)
implementation(libs.androidx.splashscreen)
implementation(libs.google.material)
implementation(libs.androidx.recyclerview)
implementation(libs.androidx.swiperefreshlayout)
implementation(libs.androidx.lifecycle.runtime)
implementation(libs.androidx.lifecycle.viewmodel)