Skip to content

Commit 2535b08

Browse files
authored
Merge pull request #5226 from element-hq/feature/bma/renameLogo
Rename custom_logo to onboarding_logo
2 parents 6e64409 + ab5dd27 commit 2535b08

File tree

8 files changed

+50
-25
lines changed

8 files changed

+50
-25
lines changed
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,18 @@ import io.element.android.libraries.di.AppScope
1414
import io.element.android.libraries.di.ApplicationContext
1515
import javax.inject.Inject
1616

17-
fun interface CustomLogoResIdProvider {
17+
fun interface OnBoardingLogoResIdProvider {
1818
fun get(): Int?
1919
}
2020

2121
@ContributesBinding(AppScope::class)
22-
class DefaultCustomLogoResIdProvider @Inject constructor(
22+
class DefaultOnBoardingLogoResIdProvider @Inject constructor(
2323
@ApplicationContext private val context: Context,
24-
) : CustomLogoResIdProvider {
24+
) : OnBoardingLogoResIdProvider {
2525
@SuppressLint("DiscouragedApi")
2626
override fun get(): Int? {
2727
val resId = context.resources
28-
.getIdentifier("custom_logo", "drawable", context.packageName)
28+
.getIdentifier("onboarding_logo", "drawable", context.packageName)
2929
.takeIf { it != 0 }
3030
return resId
3131
}

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/onboarding/OnBoardingPresenter.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ class OnBoardingPresenter @AssistedInject constructor(
3636
private val defaultAccountProviderAccessControl: DefaultAccountProviderAccessControl,
3737
private val rageshakeFeatureAvailability: RageshakeFeatureAvailability,
3838
private val loginHelper: LoginHelper,
39-
private val customLogoResIdProvider: CustomLogoResIdProvider,
39+
private val onBoardingLogoResIdProvider: OnBoardingLogoResIdProvider,
4040
) : Presenter<OnBoardingState> {
4141
@AssistedFactory
4242
interface Factory {
@@ -82,8 +82,8 @@ class OnBoardingPresenter @AssistedInject constructor(
8282
}
8383
val canReportBug by remember { rageshakeFeatureAvailability.isAvailable() }.collectAsState(false)
8484
var showReportBug by rememberSaveable { mutableStateOf(false) }
85-
val customLogoResId = remember {
86-
customLogoResIdProvider.get()
85+
val onBoardingLogoResId = remember {
86+
onBoardingLogoResIdProvider.get()
8787
}
8888

8989
val loginMode by loginHelper.collectLoginMode()
@@ -116,7 +116,7 @@ class OnBoardingPresenter @AssistedInject constructor(
116116
canReportBug = canReportBug && showReportBug,
117117
loginMode = loginMode,
118118
version = buildMeta.versionName,
119-
customLogoResId = customLogoResId,
119+
onBoardingLogoResId = onBoardingLogoResId,
120120
eventSink = ::handleEvent,
121121
)
122122
}

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/onboarding/OnBoardingState.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ data class OnBoardingState(
2020
val canReportBug: Boolean,
2121
val version: String,
2222
@DrawableRes
23-
val customLogoResId: Int?,
23+
val onBoardingLogoResId: Int?,
2424
val loginMode: AsyncData<LoginMode>,
2525
val eventSink: (OnBoardingEvents) -> Unit,
2626
) {

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/onboarding/OnBoardingStateProvider.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,6 @@ fun anOnBoardingState(
4747
canReportBug = canReportBug,
4848
version = version,
4949
loginMode = loginMode,
50-
customLogoResId = customLogoResId,
50+
onBoardingLogoResId = customLogoResId,
5151
eventSink = eventSink,
5252
)

features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/onboarding/OnBoardingView.kt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,11 @@ fun OnBoardingView(
7070
) {
7171
OnBoardingPage(
7272
modifier = modifier,
73-
renderBackground = state.customLogoResId == null,
73+
renderBackground = state.onBoardingLogoResId == null,
7474
content = {
75-
if (state.customLogoResId != null) {
76-
OnBoardingSimpleLogo(
77-
customLogoResId = state.customLogoResId,
75+
if (state.onBoardingLogoResId != null) {
76+
OnBoardingLogo(
77+
onBoardingLogoResId = state.onBoardingLogoResId,
7878
)
7979
} else {
8080
OnBoardingContent(state = state)
@@ -150,8 +150,8 @@ private fun OnBoardingContent(state: OnBoardingState) {
150150
}
151151

152152
@Composable
153-
private fun OnBoardingSimpleLogo(
154-
customLogoResId: Int,
153+
private fun OnBoardingLogo(
154+
onBoardingLogoResId: Int,
155155
modifier: Modifier = Modifier,
156156
) {
157157
Box(
@@ -161,7 +161,7 @@ private fun OnBoardingSimpleLogo(
161161
contentAlignment = Alignment.Center,
162162
) {
163163
Image(
164-
painter = painterResource(id = customLogoResId),
164+
painter = painterResource(id = onBoardingLogoResId),
165165
contentDescription = null
166166
)
167167
}

features/login/impl/src/main/res/raw/keep.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
~ Please see LICENSE files in the repository root for full details.
66
-->
77
<!--
8-
Note: one or several custom_logo drawable can be added at build time. Ensure that these
9-
resource are not stripped out by the resource shrinker.
8+
Note: one or several onboarding_logo drawables can be added at build time. Ensure that these
9+
resources are not stripped out by the resource shrinker.
1010
-->
1111
<resources xmlns:tools="http://schemas.android.com/tools"
12-
tools:keep="@drawable/custom_logo" />
12+
tools:keep="@drawable/onboarding_logo" />
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/*
2+
* Copyright 2025 New Vector Ltd.
3+
*
4+
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
5+
* Please see LICENSE files in the repository root for full details.
6+
*/
7+
8+
package io.element.android.features.login.impl.screens.onboarding
9+
10+
import androidx.test.ext.junit.runners.AndroidJUnit4
11+
import androidx.test.platform.app.InstrumentationRegistry
12+
import com.google.common.truth.Truth.assertThat
13+
import org.junit.Test
14+
import org.junit.runner.RunWith
15+
16+
@RunWith(AndroidJUnit4::class)
17+
class DefaultOnBoardingLogoResIdProviderTest {
18+
@Test
19+
fun `when onboarding_logo resource does not exist, get() returns null`() {
20+
val context = InstrumentationRegistry.getInstrumentation().context
21+
val sut = DefaultOnBoardingLogoResIdProvider(context)
22+
val result = sut.get()
23+
assertThat(result).isNull()
24+
}
25+
}

features/login/impl/src/test/kotlin/io/element/android/features/login/impl/screens/onboarding/OnBoardingPresenterTest.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,14 +85,14 @@ class OnBoardingPresenterTest {
8585
}
8686

8787
@Test
88-
fun `present - custom logo`() = runTest {
88+
fun `present - on boarding logo`() = runTest {
8989
val presenter = createPresenter(
90-
customLogoResIdProvider = CustomLogoResIdProvider { 42 },
90+
onBoardingLogoResIdProvider = OnBoardingLogoResIdProvider { 42 },
9191
)
9292
presenter.test {
9393
skipItems(1)
9494
val initialState = awaitItem()
95-
assertThat(initialState.customLogoResId).isEqualTo(42)
95+
assertThat(initialState.onBoardingLogoResId).isEqualTo(42)
9696
}
9797
}
9898

@@ -236,7 +236,7 @@ private fun createPresenter(
236236
wellknownRetriever: WellknownRetriever = FakeWellknownRetriever(),
237237
rageshakeFeatureAvailability: () -> Flow<Boolean> = { flowOf(true) },
238238
loginHelper: LoginHelper = createLoginHelper(),
239-
customLogoResIdProvider: CustomLogoResIdProvider = CustomLogoResIdProvider { null },
239+
onBoardingLogoResIdProvider: OnBoardingLogoResIdProvider = OnBoardingLogoResIdProvider { null },
240240
) = OnBoardingPresenter(
241241
params = params,
242242
buildMeta = buildMeta,
@@ -247,7 +247,7 @@ private fun createPresenter(
247247
),
248248
rageshakeFeatureAvailability = rageshakeFeatureAvailability,
249249
loginHelper = loginHelper,
250-
customLogoResIdProvider = customLogoResIdProvider,
250+
onBoardingLogoResIdProvider = onBoardingLogoResIdProvider,
251251
)
252252

253253
fun createLoginHelper(

0 commit comments

Comments
 (0)