Skip to content

Commit b9b1316

Browse files
committed
Beta 2 pre-release
1 parent ec9cbf7 commit b9b1316

34 files changed

+1702
-549
lines changed

.idea/codeStyles/Project.xml

Lines changed: 117 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/codeStyles/codeStyleConfig.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/build.gradle.kts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,18 @@ plugins {
66

77
android {
88
namespace = "com.troplo.privateuploader"
9-
compileSdk = 33
9+
compileSdk = 34
1010

1111
defaultConfig {
1212
applicationId = "com.troplo.privateuploader"
1313
minSdk = 26
14-
targetSdk = 33
14+
targetSdk = 34
1515
versionCode = 1
16-
versionName = "1.0"
16+
versionName = "1.0.2"
1717
multiDexEnabled = true
1818
buildConfigField("String", "SERVER_URL", "\"https://privateuploader.com\"")
1919
buildConfigField("String", "BUILD_TIME", "\"${System.currentTimeMillis()}\"")
20+
buildConfigField("Integer", "BETA_VERSION", "2")
2021

2122
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
2223
vectorDrawables {
@@ -61,6 +62,7 @@ android {
6162

6263
dependencies {
6364
// TPU
65+
implementation("androidx.compose.runtime:runtime-tracing:1.0.0-alpha03")
6466
implementation("io.coil-kt:coil-gif:2.4.0")
6567
implementation("io.coil-kt:coil-compose:2.4.0")
6668
implementation("com.github.X1nto:OverlappingPanelsCompose:1.2.0")
@@ -84,7 +86,7 @@ dependencies {
8486
implementation("androidx.navigation:navigation-compose:2.6.0")
8587

8688
// Material Design 3
87-
implementation("androidx.compose.material3:material3")
89+
implementation("androidx.compose.material3:material3:1.2.0-alpha03")
8890
// For SwipeableState
8991
implementation("androidx.compose.material:material:1.4.3")
9092
// or only import the main APIs for the underlying toolkit systems,

app/src/main/java/com/troplo/privateuploader/MainActivity.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package com.troplo.privateuploader
33
import android.app.Activity
44
import android.content.Intent
55
import android.os.Bundle
6+
import android.os.StrictMode
67
import androidx.activity.ComponentActivity
78
import androidx.activity.compose.setContent
89
import androidx.activity.result.contract.ActivityResultContracts
@@ -18,11 +19,13 @@ import java.util.Collections
1819

1920
class MainActivity : ComponentActivity() {
2021
override fun onCreate(savedInstanceState: Bundle?) {
22+
// if(BuildConfig.DEBUG) StrictMode.enableDefaults();
2123
val token = SessionManager(this).getAuthToken()
2224
var user: User? = null
2325

2426
if(token != null) {
25-
TpuApi.retrofitService.getUser(token).enqueue(object : retrofit2.Callback<User> {
27+
TpuApi.init(token, this)
28+
TpuApi.retrofitService.getUser().enqueue(object : retrofit2.Callback<User> {
2629
override fun onResponse(
2730
call: retrofit2.Call<User>,
2831
response: retrofit2.Response<User>
@@ -50,6 +53,7 @@ class MainActivity : ComponentActivity() {
5053
}
5154
})
5255
} else {
56+
TpuApi.init("", this)
5357
setContent {
5458
PrivateUploaderTheme {
5559
MainScreen(user)

app/src/main/java/com/troplo/privateuploader/MainScreen.kt

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,10 @@ import androidx.navigation.compose.rememberNavController
2424
import com.troplo.privateuploader.api.ChatStore
2525
import com.troplo.privateuploader.api.SessionManager
2626
import com.troplo.privateuploader.api.SocketHandler
27-
import com.troplo.privateuploader.api.UserHandler
27+
import com.troplo.privateuploader.api.stores.UserStore
2828
import com.troplo.privateuploader.components.chat.MemberSidebar
2929
import com.troplo.privateuploader.components.core.BottomBarNav
30+
import com.troplo.privateuploader.components.core.ConnectingBanner
3031
import com.troplo.privateuploader.components.core.NavGraph
3132
import com.troplo.privateuploader.components.core.NavRoute
3233
import com.troplo.privateuploader.components.core.OverlappingPanels
@@ -43,11 +44,12 @@ fun MainScreen(user: User?) {
4344
val token = SessionManager(context).getAuthToken()
4445
if (token != null) {
4546
SocketHandler.initializeSocket(token, context)
46-
UserHandler.initializeUser(token)
47+
UserStore.initializeUser(token)
4748
}
4849
val navController = rememberNavController()
4950
val panelState = rememberOverlappingPanelsState()
5051
var closePanels by remember { mutableStateOf(false) }
52+
// track socket connection status
5153
val closePanelsFunc = {
5254
closePanels = true
5355
}
@@ -58,13 +60,18 @@ fun MainScreen(user: User?) {
5860
}
5961
}
6062
Scaffold(
61-
topBar = { TopBarNav(navController = navController, user = user) },
63+
topBar = {
64+
if(!SocketHandler.connected.value) {
65+
ConnectingBanner()
66+
}
67+
TopBarNav(navController = navController, user = user)
68+
},
6269
bottomBar = { BottomBarNav(navController = navController, panelState = panelState, closePanels = closePanelsFunc) },
6370
) { paddingValues ->
6471
OverlappingPanels(
6572
modifier = Modifier.fillMaxSize(),
6673
panelsState = panelState,
67-
gesturesEnabled = true,
74+
gesturesEnabled = navController.currentDestination?.route?.startsWith("chat/") == true,
6875
panelStart = {
6976
PanelSurface {
7077
ModalDrawerSheet(

0 commit comments

Comments
 (0)