mirror of
https://github.com/nextcloud/android.git
synced 2024-11-27 17:46:37 +03:00
Move photo pin drawable to xml layout
Signed-off-by: ZetaTom <70907959+ZetaTom@users.noreply.github.com>
This commit is contained in:
parent
7212b092d6
commit
fc5994c243
3 changed files with 56 additions and 35 deletions
|
@ -27,7 +27,6 @@ import android.graphics.drawable.LayerDrawable
|
|||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.os.Parcelable
|
||||
import android.view.Gravity
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
|
@ -246,7 +245,7 @@ class ImageDetailFragment : Fragment(), Injectable {
|
|||
}
|
||||
|
||||
val markerOverlay = ItemizedIconOverlay(
|
||||
mutableListOf(OverlayItem("Location", "", location)),
|
||||
mutableListOf(OverlayItem(null, null, location)),
|
||||
imagePinDrawable(context),
|
||||
markerOnGestureListener(latitude, longitude),
|
||||
context
|
||||
|
@ -340,28 +339,16 @@ class ImageDetailFragment : Fragment(), Injectable {
|
|||
}
|
||||
}
|
||||
|
||||
@Suppress("MagicNumber")
|
||||
private fun imagePinDrawable(context: Context): LayerDrawable {
|
||||
val drawable = ContextCompat.getDrawable(context, R.drawable.photo_pin) as LayerDrawable
|
||||
|
||||
val bitmap =
|
||||
ThumbnailsCacheManager.getBitmapFromDiskCache(ThumbnailsCacheManager.PREFIX_THUMBNAIL + file.remoteId)
|
||||
val foreground = BitmapUtils.bitmapToCircularBitmapDrawable(resources, bitmap)
|
||||
val background = ContextCompat.getDrawable(context, R.drawable.photo_pin)
|
||||
|
||||
val layerDrawable = if (foreground != null) {
|
||||
LayerDrawable(arrayOf(background, foreground))
|
||||
} else {
|
||||
val d = ContextCompat.getDrawable(context, R.drawable.file_image)
|
||||
LayerDrawable(arrayOf(background, d))
|
||||
BitmapUtils.bitmapToCircularBitmapDrawable(resources, bitmap)?.let {
|
||||
drawable.setDrawable(1, it)
|
||||
}
|
||||
|
||||
val dp = DisplayUtils.convertDpToPixel(2f, context)
|
||||
layerDrawable.apply {
|
||||
setLayerSize(1, 38 * dp, 38 * dp)
|
||||
setLayerSize(0, 40 * dp, 47 * dp)
|
||||
setLayerInsetTop(1, dp)
|
||||
setLayerGravity(1, Gravity.CENTER_HORIZONTAL)
|
||||
}
|
||||
return layerDrawable
|
||||
return drawable
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Nextcloud Android client application
|
||||
|
||||
|
@ -18,19 +19,16 @@
|
|||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="40dp"
|
||||
android:height="46.61dp"
|
||||
android:viewportWidth="40"
|
||||
android:viewportHeight="46.61">
|
||||
<path
|
||||
android:fillColor="@color/grey_600"
|
||||
android:pathData="M1.523,20a18.477,18.477 0,1 0,36.954 0a18.477,18.477 0,1 0,-36.954 0z"
|
||||
android:strokeWidth="3.0454"
|
||||
android:strokeColor="@color/grey_600" />
|
||||
<path
|
||||
android:fillColor="@color/grey_600"
|
||||
android:pathData="m1.5,20c0,17.795 18.5,25 18.5,25s18.5,-7.205 18.5,-25"
|
||||
android:strokeWidth="3"
|
||||
android:strokeColor="@color/grey_600" />
|
||||
</vector>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item
|
||||
android:width="80dp"
|
||||
android:height="94dp"
|
||||
android:drawable="@drawable/photo_pin_background" />
|
||||
<item
|
||||
android:id="@+id/photo_pin_image"
|
||||
android:width="76dp"
|
||||
android:height="76dp"
|
||||
android:drawable="@drawable/outline_image_24"
|
||||
android:gravity="center_horizontal"
|
||||
android:top="2dp" />
|
||||
</layer-list>
|
36
app/src/main/res/drawable/photo_pin_background.xml
Normal file
36
app/src/main/res/drawable/photo_pin_background.xml
Normal file
|
@ -0,0 +1,36 @@
|
|||
<!--
|
||||
Nextcloud Android client application
|
||||
|
||||
@author ZetaTom
|
||||
Copyright (C) 2023 ZetaTom
|
||||
Copyright (C) 2023 Nextcloud GmbH
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="40dp"
|
||||
android:height="46.61dp"
|
||||
android:viewportWidth="40"
|
||||
android:viewportHeight="46.61">
|
||||
<path
|
||||
android:fillColor="@color/grey_600"
|
||||
android:pathData="M1.523,20a18.477,18.477 0,1 0,36.954 0a18.477,18.477 0,1 0,-36.954 0z"
|
||||
android:strokeWidth="3.0454"
|
||||
android:strokeColor="@color/grey_600" />
|
||||
<path
|
||||
android:fillColor="@color/grey_600"
|
||||
android:pathData="m1.5,20c0,17.795 18.5,25 18.5,25s18.5,-7.205 18.5,-25"
|
||||
android:strokeWidth="3"
|
||||
android:strokeColor="@color/grey_600" />
|
||||
</vector>
|
Loading…
Reference in a new issue