Skip to content
Snippets Groups Projects
Verified Commit f3320890 authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

Set limit for profile image, improving scrollability

parent 3a531304
No related branches found
Tags
No related merge requests found
......@@ -22,10 +22,21 @@ package de.kuschku.quasseldroid.dagger
import com.google.gson.GsonBuilder
import dagger.Module
import dagger.Provides
import de.kuschku.quasseldroid.util.avatars.MatrixApi
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
@Module
object AppModule {
@Provides
@JvmStatic
fun provideGson() = GsonBuilder().setPrettyPrinting().create()
@Provides
@JvmStatic
fun provideMatrixApi() = Retrofit.Builder()
.baseUrl("https://matrix.org/")
.addConverterFactory(GsonConverterFactory.create(GsonBuilder().setLenient().create()))
.build()
.create(MatrixApi::class.java)
}
......@@ -33,7 +33,6 @@ import android.widget.Toast
import androidx.lifecycle.Observer
import butterknife.BindView
import butterknife.ButterKnife
import com.google.gson.GsonBuilder
import de.kuschku.libquassel.protocol.Buffer_Type
import de.kuschku.libquassel.quassel.BufferInfo
import de.kuschku.libquassel.quassel.syncables.IrcUser
......@@ -54,8 +53,6 @@ import de.kuschku.quasseldroid.util.ui.BetterLinkMovementMethod
import de.kuschku.quasseldroid.util.ui.LinkLongClickMenuHelper
import de.kuschku.quasseldroid.viewmodel.data.Avatar
import io.reactivex.Observable
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
import javax.inject.Inject
class UserInfoFragment : ServiceBoundFragment() {
......@@ -116,6 +113,9 @@ class UserInfoFragment : ServiceBoundFragment() {
@Inject
lateinit var messageSettings: MessageSettings
@Inject
lateinit var matrixApi: MatrixApi
private var actualUrl: String? = null
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
......@@ -123,12 +123,6 @@ class UserInfoFragment : ServiceBoundFragment() {
val view = inflater.inflate(R.layout.fragment_info_user, container, false)
ButterKnife.bind(this, view)
val matrixApi = Retrofit.Builder()
.baseUrl("https://matrix.org/")
.addConverterFactory(GsonConverterFactory.create(GsonBuilder().setLenient().create()))
.build()
.create(MatrixApi::class.java)
val openBuffer = arguments?.getBoolean("openBuffer")
val networkId2 = arguments?.getInt("networkId")
......@@ -174,11 +168,13 @@ class UserInfoFragment : ServiceBoundFragment() {
}.toLiveData().observe(this, Observer {
val processUser = { user: IrcUserInfo ->
avatar.post {
avatar.visibility = View.GONE
actualUrl = null
avatar.loadAvatars(
AvatarHelper.avatar(messageSettings, user, maxOf(avatar.width, avatar.height)),
crop = false
) { model ->
avatar.visibility = View.VISIBLE
when (model) {
is String -> {
actualUrl = model
......
......@@ -34,16 +34,26 @@
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll">
<ImageView
android:id="@+id/avatar"
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_collapseMode="parallax">
<ImageView
android:id="@+id/avatar"
android:layout_width="0dp"
android:layout_height="0dp"
android:adjustViewBounds="true"
android:contentDescription="@string/label_avatar"
android:scaleType="fitXY"
app:layout_collapseMode="parallax"
android:scaleType="centerCrop"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:src="@tools:sample/avatars" />
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
......@@ -57,6 +67,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
android:elevation="4dp"
android:orientation="vertical">
<LinearLayout style="@style/Widget.Info.Header">
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment