Skip to content

Commit e7597fb

Browse files
committed
fix : scaleImage
1 parent 2c35533 commit e7597fb

File tree

15 files changed

+158
-21
lines changed

15 files changed

+158
-21
lines changed

buildSrc/src/main/java/Dependencies.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ object Modules {
1313
}
1414

1515
object Releases {
16-
val versionCode = 13
17-
val versionName = "1.4"
16+
val versionCode = 14
17+
val versionName = "1.5"
1818
}
1919

2020
object Versions {

data/src/main/java/com/ddd/data/manager/FirebaseRepositoryImple.kt

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@ class FirebaseRepositoryImpl @Inject constructor(
2020
private val db: DatabaseReference,
2121
private val auth: FirebaseAuth
2222
) : FirebaseRepository {
23+
24+
override fun signOut() {
25+
auth.signOut()
26+
}
27+
2328
override fun saveUser(email: String, name: String, position: String, isManager: Boolean) {
2429
db.child(QUERY_USERS)
2530
.child(auth.currentUser?.uid.orEmpty())
@@ -30,7 +35,7 @@ class FirebaseRepositoryImpl @Inject constructor(
3035
db.child(QUERY_USERS)
3136
.child(uuid)
3237
.child(QUERY_MANAGER)
33-
.addListenerForSingleValueEvent(object : ValueEventListener {
38+
.addValueEventListener(object : ValueEventListener {
3439
override fun onCancelled(error: DatabaseError) {
3540
error(DDDException.NotFindDataBaseData(MessageManager.ERROR_NOT_FOUND_FIREBASE_DATABASE_DATA))
3641
}
@@ -64,7 +69,7 @@ class FirebaseRepositoryImpl @Inject constructor(
6469

6570
override fun getCurriculum(getItems: (List<DomainEntity.Curriculum>) -> Unit) {
6671
db.child("curriculum")
67-
.addListenerForSingleValueEvent(object : ValueEventListener {
72+
.addValueEventListener(object : ValueEventListener {
6873
override fun onCancelled(p0: DatabaseError) {}
6974

7075
override fun onDataChange(data: DataSnapshot) {
@@ -84,8 +89,8 @@ class FirebaseRepositoryImpl @Inject constructor(
8489

8590
override fun getBannerData(getItems: (DomainEntity.Banner) -> Unit) {
8691
db.child("banner")
87-
.addListenerForSingleValueEvent(object : ValueEventListener {
88-
override fun onCancelled(p0: DatabaseError) {}
92+
.addValueEventListener(object : ValueEventListener {
93+
override fun onCancelled(p0: DatabaseError) = Unit
8994

9095
override fun onDataChange(data: DataSnapshot) {
9196
val title = (data.child("title").value as String)

domain/src/main/java/com/ddd/domain/FirebaseRepository.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import com.ddd.common.DDDException
44
import com.ddd.domain.entity.DomainEntity
55

66
interface FirebaseRepository {
7+
fun signOut()
78
fun saveUser(email: String, name: String, position: String, isManager: Boolean)
89
fun isManager(uuid: String, result: (Boolean) -> Unit, error: (DDDException) -> Unit)
910
fun saveAttendance(

domain/src/main/java/com/ddd/domain/LoginUseCase.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.ddd.domain
22

3-
import android.util.Log
43
import androidx.lifecycle.MutableLiveData
54
import com.google.firebase.auth.FirebaseAuth
65
import kotlinx.coroutines.Dispatchers
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.ddd.domain
2+
3+
import javax.inject.Inject
4+
5+
class LogoutUseCase @Inject constructor(private val repository: FirebaseRepository) {
6+
7+
operator fun invoke() = repository.signOut()
8+
}

presentation/build.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,6 @@ dependencies {
3636
implementation Libraries.lottie
3737
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta2'
3838
implementation 'com.firebaseui:firebase-ui-storage:3.3.0'
39+
40+
implementation 'com.davemorrissey.labs:subsampling-scale-image-view-androidx:3.10.0'
3941
}

presentation/src/main/AndroidManifest.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
package="com.ddd.presentation">
44

55
<application>
6-
<activity android:name=".ui.manager.ManagerActivity"/>
6+
<activity android:name=".ui.main.ImageDetailActivity"></activity>
7+
<activity android:name=".ui.manager.ManagerActivity" />
78
<activity android:name=".ui.tutorial.TutorialActivity" />
89
<activity android:name=".ui.splash.SplashActivity" />
910
<activity android:name=".ui.signup.SignUpActivity" />
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.ddd.presentation.ui.main
2+
3+
import android.graphics.Bitmap
4+
import android.graphics.drawable.Drawable
5+
import androidx.appcompat.app.AppCompatActivity
6+
import android.os.Bundle
7+
import com.bumptech.glide.Glide
8+
import com.bumptech.glide.request.target.CustomTarget
9+
import com.bumptech.glide.request.target.SimpleTarget
10+
import com.bumptech.glide.request.transition.Transition
11+
import com.davemorrissey.labs.subscaleview.ImageSource
12+
import com.ddd.presentation.R
13+
import com.google.firebase.storage.FirebaseStorage
14+
import kotlinx.android.synthetic.main.activity_image_detail.*
15+
import kotlinx.android.synthetic.main.activity_main.*
16+
17+
class ImageDetailActivity : AppCompatActivity() {
18+
override fun onCreate(savedInstanceState: Bundle?) {
19+
super.onCreate(savedInstanceState)
20+
setContentView(R.layout.activity_image_detail)
21+
22+
val url = FirebaseStorage.getInstance().getReference("banner/banner.png")
23+
try {
24+
Glide.with(this).asBitmap().load(url).into(object : CustomTarget<Bitmap>() {
25+
override fun onLoadCleared(placeholder: Drawable?) = Unit
26+
27+
override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
28+
img.setImage(ImageSource.bitmap(resource))
29+
}
30+
})
31+
} catch (e: Exception) {
32+
e.printStackTrace()
33+
}
34+
}
35+
}

presentation/src/main/java/com/ddd/presentation/ui/main/MainActivity.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,18 @@ class MainActivity : BaseActivity<MainViewModel, ActivityMainBinding>() {
3939
ob(viewModel.liveResult, ::result)
4040

4141
val url = FirebaseStorage.getInstance().getReference("banner/banner.png")
42-
try{
42+
try {
4343
Glide.with(this).load(url).into(img_card)
44-
}catch (e:Exception){
44+
} catch (e: Exception) {
4545
e.printStackTrace()
4646
}
4747
}
4848

4949
fun result(result: MainViewModel.Result) {
5050
when (result) {
51+
is MainViewModel.Result.MoveDetailImage -> {
52+
Intent(this, ImageDetailActivity::class.java).let(::startActivity)
53+
}
5154
is MainViewModel.Result.Banner -> {
5255
tv_title.text = result.title
5356
tv_subtitle.text = result.subTitle

presentation/src/main/java/com/ddd/presentation/ui/main/MainViewModel.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ class MainViewModel @Inject constructor(
2525
data class InitQRCode(val qrcode: Bitmap) : Result()
2626
data class Curriculum(val items: List<DomainEntity.Curriculum>) : Result()
2727
data class LoginActivity<T>(val nextActivity: Class<T>) : Result()
28+
object MoveDetailImage: Result()
2829
}
2930

3031
private val _liveResult = MutableLiveData<Result>()
@@ -49,8 +50,7 @@ class MainViewModel @Inject constructor(
4950
}
5051
}
5152

52-
fun tempLogout() {
53-
auth.signOut()
53+
fun onClickDetailImage(){
54+
_liveResult.value = Result.MoveDetailImage
5455
}
55-
5656
}

0 commit comments

Comments
 (0)