commit
c6c97222f0
36 changed files with 153 additions and 26 deletions
|
@ -1,6 +1,15 @@
|
|||
Changelog
|
||||
==========
|
||||
|
||||
Version 3.6.0 *(2018-03-15)*
|
||||
----------------------------
|
||||
|
||||
* Fix duplicate files at renaming or hiding
|
||||
* Improve some third party handling
|
||||
* Optimize rotated image saving to avoid Out of memory errors
|
||||
* Optimize new item discoveries or folder refreshing
|
||||
* Many other smaller performance and UX improvements
|
||||
|
||||
Version 3.5.3 *(2018-03-03)*
|
||||
----------------------------
|
||||
|
||||
|
|
|
@ -10,8 +10,8 @@ android {
|
|||
applicationId "com.simplemobiletools.gallery"
|
||||
minSdkVersion 16
|
||||
targetSdkVersion 27
|
||||
versionCode 165
|
||||
versionName "3.5.3"
|
||||
versionCode 166
|
||||
versionName "3.6.0"
|
||||
multiDexEnabled true
|
||||
setProperty("archivesBaseName", "gallery")
|
||||
}
|
||||
|
@ -46,7 +46,7 @@ ext {
|
|||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.simplemobiletools:commons:3.16.1'
|
||||
implementation 'com.simplemobiletools:commons:3.16.10'
|
||||
implementation 'com.theartofdev.edmodo:android-image-cropper:2.6.0'
|
||||
implementation 'com.android.support:multidex:1.0.3'
|
||||
implementation 'com.google.code.gson:gson:2.8.2'
|
||||
|
|
|
@ -13,7 +13,6 @@ import android.view.Menu
|
|||
import android.view.MenuItem
|
||||
import android.view.ViewGroup
|
||||
import android.widget.FrameLayout
|
||||
import com.google.gson.Gson
|
||||
import com.simplemobiletools.commons.dialogs.CreateNewFolderDialog
|
||||
import com.simplemobiletools.commons.dialogs.FilePickerDialog
|
||||
import com.simplemobiletools.commons.dialogs.NewAppDialog
|
||||
|
@ -61,6 +60,7 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
private var mLoadedInitialPhotos = false
|
||||
private var mIsPasswordProtectionPending = false
|
||||
private var mLatestMediaId = 0L
|
||||
private var mLatestMediaDateId = 0L
|
||||
private var mLastMediaHandler = Handler()
|
||||
private var mTempShowHiddenHandler = Handler()
|
||||
private var mCurrAsyncTask: GetDirectoriesAsynctask? = null
|
||||
|
@ -103,10 +103,10 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
setupLatestMediaId()
|
||||
|
||||
// notify the users about the Contacts app
|
||||
if (System.currentTimeMillis() < 1521015000000 && !config.wasNewAppShown && config.appRunCount > 100 && config.appRunCount % 50 != 0 && !isPackageInstalled(CONTACTS_PACKAGE)) {
|
||||
/*if (System.currentTimeMillis() < 1521015000000 && !config.wasNewAppShown && config.appRunCount > 100 && config.appRunCount % 50 != 0 && !isPackageInstalled(CONTACTS_PACKAGE)) {
|
||||
config.wasNewAppShown = true
|
||||
NewAppDialog(this, CONTACTS_PACKAGE, "Simple Contacts")
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
override fun onStart() {
|
||||
|
@ -166,7 +166,6 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
storeDirectories()
|
||||
directories_refresh_layout.isRefreshing = false
|
||||
mIsGettingDirs = false
|
||||
storeStateVariables()
|
||||
|
@ -572,7 +571,9 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
|
||||
private fun gotDirectories(newDirs: ArrayList<Directory>, isFromCache: Boolean) {
|
||||
if (!isFromCache) {
|
||||
setupLatestMediaId()
|
||||
Thread {
|
||||
checkFolderContentChange(newDirs)
|
||||
}.start()
|
||||
}
|
||||
|
||||
val dirs = getSortedDirectories(newDirs)
|
||||
|
@ -599,10 +600,21 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
}
|
||||
}
|
||||
|
||||
private fun checkFolderContentChange(newDirs: ArrayList<Directory>) {
|
||||
newDirs.forEach {
|
||||
val storedShortDirValue = config.loadFolderMediaShort(it.path)
|
||||
if (storedShortDirValue != it.toString()) {
|
||||
config.saveFolderMediaShort(it.path, it.toString())
|
||||
if (storedShortDirValue.isNotEmpty()) {
|
||||
updateStoredFolderItems(it.path)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun storeDirectories() {
|
||||
if (!config.temporarilyShowHidden && config.tempFolderPath.isEmpty()) {
|
||||
val directories = Gson().toJson(mDirs)
|
||||
config.directories = directories
|
||||
storeDirectoryItems(mDirs)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -653,6 +665,7 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
Thread {
|
||||
if (hasPermission(PERMISSION_READ_STORAGE)) {
|
||||
mLatestMediaId = getLatestMediaId()
|
||||
mLatestMediaDateId = getLatestMediaByDateId()
|
||||
}
|
||||
}.start()
|
||||
}
|
||||
|
@ -662,16 +675,18 @@ class MainActivity : SimpleActivity(), DirectoryAdapter.DirOperationsListener {
|
|||
return
|
||||
}
|
||||
|
||||
mLastMediaHandler.removeCallbacksAndMessages(null)
|
||||
mLastMediaHandler.postDelayed({
|
||||
Thread {
|
||||
val mediaId = getLatestMediaId()
|
||||
if (mLatestMediaId != mediaId) {
|
||||
val mediaDateId = getLatestMediaByDateId()
|
||||
if (mLatestMediaId != mediaId || mLatestMediaDateId != mediaDateId) {
|
||||
mLatestMediaId = mediaId
|
||||
mLatestMediaDateId = mediaDateId
|
||||
runOnUiThread {
|
||||
getDirectories()
|
||||
}
|
||||
} else {
|
||||
mLastMediaHandler.removeCallbacksAndMessages(null)
|
||||
checkLastMediaChanged()
|
||||
}
|
||||
}.start()
|
||||
|
|
|
@ -20,7 +20,6 @@ import com.bumptech.glide.Glide
|
|||
import com.bumptech.glide.request.RequestOptions
|
||||
import com.bumptech.glide.request.target.SimpleTarget
|
||||
import com.bumptech.glide.request.transition.Transition
|
||||
import com.google.gson.Gson
|
||||
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
|
||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
|
@ -45,7 +44,6 @@ import java.io.File
|
|||
import java.io.IOException
|
||||
|
||||
class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener {
|
||||
private val SAVE_MEDIA_CNT = 80
|
||||
private val LAST_MEDIA_CHECK_PERIOD = 3000L
|
||||
|
||||
private var mPath = ""
|
||||
|
@ -58,6 +56,7 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener {
|
|||
private var mLoadedInitialPhotos = false
|
||||
private var mIsSearchOpen = false
|
||||
private var mLatestMediaId = 0L
|
||||
private var mLatestMediaDateId = 0L
|
||||
private var mLastMediaHandler = Handler()
|
||||
private var mTempShowHiddenHandler = Handler()
|
||||
private var mCurrAsyncTask: GetMediaAsynctask? = null
|
||||
|
@ -359,8 +358,10 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener {
|
|||
mLastMediaHandler.postDelayed({
|
||||
Thread {
|
||||
val mediaId = getLatestMediaId()
|
||||
if (mLatestMediaId != mediaId) {
|
||||
val mediaDateId = getLatestMediaByDateId()
|
||||
if (mLatestMediaId != mediaId || mLatestMediaDateId != mediaDateId) {
|
||||
mLatestMediaId = mediaId
|
||||
mLatestMediaDateId = mediaDateId
|
||||
runOnUiThread {
|
||||
getMedia()
|
||||
}
|
||||
|
@ -632,6 +633,7 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener {
|
|||
private fun gotMedia(media: ArrayList<Medium>, isFromCache: Boolean = false) {
|
||||
Thread {
|
||||
mLatestMediaId = getLatestMediaId()
|
||||
mLatestMediaDateId = getLatestMediaByDateId()
|
||||
}.start()
|
||||
|
||||
mIsGettingMedia = false
|
||||
|
@ -660,13 +662,7 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener {
|
|||
private fun storeFolder() {
|
||||
if (!config.temporarilyShowHidden) {
|
||||
Thread {
|
||||
try {
|
||||
val subList = mMedia.subList(0, Math.min(SAVE_MEDIA_CNT, mMedia.size))
|
||||
val json = Gson().toJson(subList)
|
||||
config.saveFolderMedia(mPath, json)
|
||||
} catch (ignored: Exception) {
|
||||
} catch (ignored: OutOfMemoryError) {
|
||||
}
|
||||
storeFolderItems(mPath, mMedia)
|
||||
}.start()
|
||||
}
|
||||
}
|
||||
|
@ -679,6 +675,8 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener {
|
|||
} else if (mMedia.isEmpty()) {
|
||||
deleteDirectoryIfEmpty()
|
||||
finish()
|
||||
} else {
|
||||
updateStoredDirectories()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -534,7 +534,6 @@ class ViewPagerActivity : SimpleActivity(), ViewPager.OnPageChangeListener, View
|
|||
val tmpFile = File(filesDir, ".tmp_${newPath.getFilenameFromPath()}")
|
||||
|
||||
try {
|
||||
val bitmap = BitmapFactory.decodeFile(oldPath)
|
||||
getFileOutputStream(tmpFile.toFileDirItem(applicationContext)) {
|
||||
if (it == null) {
|
||||
toast(R.string.unknown_error_occurred)
|
||||
|
@ -546,6 +545,7 @@ class ViewPagerActivity : SimpleActivity(), ViewPager.OnPageChangeListener, View
|
|||
copyFile(getCurrentFile(), tmpFile)
|
||||
saveExifRotation(ExifInterface(tmpFile.absolutePath))
|
||||
} else {
|
||||
val bitmap = BitmapFactory.decodeFile(oldPath)
|
||||
saveFile(tmpFile, bitmap, it as FileOutputStream)
|
||||
}
|
||||
|
||||
|
|
|
@ -187,6 +187,7 @@ class MediaAdapter(activity: BaseSimpleActivity, var media: MutableList<Medium>,
|
|||
val fileDirItems = paths.map { FileDirItem(it, it.getFilenameFromPath()) } as ArrayList
|
||||
activity.tryCopyMoveFilesTo(fileDirItems, isCopyOperation) {
|
||||
config.tempFolderPath = ""
|
||||
activity.applicationContext.updateStoredFolderItems(it)
|
||||
if (!isCopyOperation) {
|
||||
listener?.refreshItems()
|
||||
}
|
||||
|
@ -234,6 +235,7 @@ class MediaAdapter(activity: BaseSimpleActivity, var media: MutableList<Medium>,
|
|||
media.removeAll(removeMedia)
|
||||
listener?.deleteFiles(fileDirItems)
|
||||
removeSelectedItems()
|
||||
updateStoredFolderItems()
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -243,6 +245,14 @@ class MediaAdapter(activity: BaseSimpleActivity, var media: MutableList<Medium>,
|
|||
return selectedMedia
|
||||
}
|
||||
|
||||
private fun updateStoredFolderItems() {
|
||||
Thread {
|
||||
if (media.isNotEmpty()) {
|
||||
activity.applicationContext.storeFolderItems(media.first().path.getParentPath().trimEnd('/'), media as ArrayList<Medium>)
|
||||
}
|
||||
}.start()
|
||||
}
|
||||
|
||||
fun updateMedia(newMedia: ArrayList<Medium>) {
|
||||
if (newMedia.hashCode() != currentMediaHash) {
|
||||
currentMediaHash = newMedia.hashCode()
|
||||
|
|
|
@ -83,6 +83,7 @@ fun SimpleActivity.launchAbout() {
|
|||
FAQItem(R.string.faq_7_title, R.string.faq_7_text),
|
||||
FAQItem(R.string.faq_8_title, R.string.faq_8_text),
|
||||
FAQItem(R.string.faq_9_title, R.string.faq_9_text),
|
||||
FAQItem(R.string.faq_10_title, R.string.faq_10_text),
|
||||
FAQItem(R.string.faq_2_title_commons, R.string.faq_2_text_commons))
|
||||
|
||||
startAboutActivity(R.string.app_name, LICENSE_GLIDE or LICENSE_CROPPER or LICENSE_MULTISELECT or LICENSE_RTL
|
||||
|
@ -183,7 +184,7 @@ fun Activity.loadImage(type: Int, path: String, target: MySquareImageView, horiz
|
|||
}
|
||||
}
|
||||
|
||||
fun BaseSimpleActivity.tryCopyMoveFilesTo(fileDirItems: ArrayList<FileDirItem>, isCopyOperation: Boolean, callback: () -> Unit) {
|
||||
fun BaseSimpleActivity.tryCopyMoveFilesTo(fileDirItems: ArrayList<FileDirItem>, isCopyOperation: Boolean, callback: (destinationPath: String) -> Unit) {
|
||||
if (fileDirItems.isEmpty()) {
|
||||
toast(R.string.unknown_error_occurred)
|
||||
return
|
||||
|
|
|
@ -9,13 +9,19 @@ import android.media.AudioManager
|
|||
import android.os.Build
|
||||
import android.provider.MediaStore
|
||||
import android.view.WindowManager
|
||||
import com.google.gson.Gson
|
||||
import com.simplemobiletools.commons.extensions.getStringValue
|
||||
import com.simplemobiletools.commons.extensions.humanizePath
|
||||
import com.simplemobiletools.commons.helpers.OTG_PATH
|
||||
import com.simplemobiletools.gallery.activities.SettingsActivity
|
||||
import com.simplemobiletools.gallery.asynctasks.GetDirectoriesAsynctask
|
||||
import com.simplemobiletools.gallery.asynctasks.GetMediaAsynctask
|
||||
import com.simplemobiletools.gallery.helpers.Config
|
||||
import com.simplemobiletools.gallery.helpers.NOMEDIA
|
||||
import com.simplemobiletools.gallery.helpers.SAVE_DIRS_CNT
|
||||
import com.simplemobiletools.gallery.helpers.SAVE_MEDIA_CNT
|
||||
import com.simplemobiletools.gallery.models.Directory
|
||||
import com.simplemobiletools.gallery.models.Medium
|
||||
import java.io.File
|
||||
|
||||
val Context.portrait get() = resources.configuration.orientation == Configuration.ORIENTATION_PORTRAIT
|
||||
|
@ -128,3 +134,33 @@ fun Context.isPathInMediaStore(path: String): Boolean {
|
|||
}
|
||||
return false
|
||||
}
|
||||
|
||||
fun Context.updateStoredFolderItems(path: String) {
|
||||
GetMediaAsynctask(this, path, false, false, false) {
|
||||
storeFolderItems(path, it)
|
||||
}.execute()
|
||||
}
|
||||
|
||||
fun Context.storeFolderItems(path: String, items: ArrayList<Medium>) {
|
||||
try {
|
||||
val subList = items.subList(0, Math.min(SAVE_MEDIA_CNT, items.size))
|
||||
val json = Gson().toJson(subList)
|
||||
config.saveFolderMedia(path, json)
|
||||
} catch (ignored: Exception) {
|
||||
} catch (ignored: OutOfMemoryError) {
|
||||
}
|
||||
}
|
||||
|
||||
fun Context.updateStoredDirectories() {
|
||||
GetDirectoriesAsynctask(this, false, false) {
|
||||
if (!config.temporarilyShowHidden) {
|
||||
storeDirectoryItems(it)
|
||||
}
|
||||
}.execute()
|
||||
}
|
||||
|
||||
fun Context.storeDirectoryItems(items: ArrayList<Directory>) {
|
||||
val subList = items.subList(0, Math.min(SAVE_DIRS_CNT, items.size))
|
||||
val directories = Gson().toJson(subList)
|
||||
config.directories = directories
|
||||
}
|
||||
|
|
|
@ -255,7 +255,7 @@ class PhotoFragment : ViewPagerFragment() {
|
|||
.apply(options)
|
||||
.listener(object : RequestListener<Bitmap> {
|
||||
override fun onLoadFailed(e: GlideException?, model: Any?, target: Target<Bitmap>?, isFirstResource: Boolean): Boolean {
|
||||
if (!useHalfResolution && e?.rootCauses?.first() is OutOfMemoryError) {
|
||||
if (!useHalfResolution && e?.rootCauses?.firstOrNull() is OutOfMemoryError) {
|
||||
useHalfResolution = true
|
||||
Handler().post {
|
||||
loadBitmap(degrees)
|
||||
|
|
|
@ -124,6 +124,12 @@ class Config(context: Context) : BaseConfig(context) {
|
|||
|
||||
fun loadFolderMedia(path: String) = prefs.getString(SAVE_FOLDER_PREFIX + path, "")
|
||||
|
||||
fun saveFolderMediaShort(path: String, value: String) {
|
||||
prefs.edit().putString(SAVE_FOLDER_SHORT_PREFIX + path, value).apply()
|
||||
}
|
||||
|
||||
fun loadFolderMediaShort(path: String) = prefs.getString(SAVE_FOLDER_SHORT_PREFIX + path, "")
|
||||
|
||||
var autoplayVideos: Boolean
|
||||
get() = prefs.getBoolean(AUTOPLAY_VIDEOS, false)
|
||||
set(autoplay) = prefs.edit().putBoolean(AUTOPLAY_VIDEOS, autoplay).apply()
|
||||
|
|
|
@ -26,6 +26,7 @@ const val MEDIA_HORIZONTAL_COLUMN_CNT = "media_horizontal_column_cnt"
|
|||
const val MEDIA_LANDSCAPE_HORIZONTAL_COLUMN_CNT = "media_landscape_horizontal_column_cnt"
|
||||
const val SHOW_ALL = "show_all" // display images and videos from all folders together
|
||||
const val SAVE_FOLDER_PREFIX = "folder2_"
|
||||
const val SAVE_FOLDER_SHORT_PREFIX = "folder_short_"
|
||||
const val HIDE_FOLDER_TOOLTIP_SHOWN = "hide_folder_tooltip_shown"
|
||||
const val EXCLUDED_FOLDERS = "excluded_folders"
|
||||
const val INCLUDED_FOLDERS = "included_folders"
|
||||
|
@ -65,6 +66,8 @@ const val MAX_COLUMN_COUNT = 20
|
|||
const val SHOW_TEMP_HIDDEN_DURATION = 600000L
|
||||
const val CLICK_MAX_DURATION = 150
|
||||
const val DRAG_THRESHOLD = 8
|
||||
const val SAVE_DIRS_CNT = 60
|
||||
const val SAVE_MEDIA_CNT = 80
|
||||
|
||||
const val DIRECTORY = "directory"
|
||||
const val MEDIUM = "medium"
|
||||
|
|
|
@ -168,6 +168,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
Això farà que només les carpetes seleccionades siguin visibles, ja que tant excloure com incloure són recursius i si una carpeta està exclosa i inclosa, es mostrarà.</string>
|
||||
<string name="faq_9_title">Les imatges a pantalla completa tenen artefactes estranys, puc millorar d\'alguna manera la qualitat?</string>
|
||||
<string name="faq_9_text">Sí, hi ha un commutador a la configuració que diu \"Substituïu imatges ampliades i de gran qualitat\", podeu fer-ho. Millora la qualitat de les imatges, però es borraran una vegada que intenteu fer zoom massa.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
Dadurch werden nur die ausgewählten Ordner sichtbar, da Auschliessen und Einbeziehen rekursiv erfolgen und wenn ein Ordner ausgeschlossen und einbezogen wurde, wird er dennoch angezeigt.</string>
|
||||
<string name="faq_9_title">Vollbildfotos haben seltsame Artefakte. Kann ich die Qualität verbessern?</string>
|
||||
<string name="faq_9_text">Ja, es gibt einen Schalter in den Einstellungen gekennzeichnet mit \"Stark zoombare Bilder durch Bilder mit hoher Qualität ersetzen\". Dieser wird die Bildqualität verbessern, aber sie werden bei sehr hoher Zoomstufe unscharf.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
Esto hará que solo las carpetas seleccionadas sean visibles, ya que tanto la exclusión como la inclusión son recursivas y si una carpeta está excluida e incluida, aparecerá.</string>
|
||||
<string name="faq_9_title">Las imágenes a pantalla completa tienen artefactos extraños, ¿puedo de alguna manera mejorar la calidad?</string>
|
||||
<string name="faq_9_text">Sí, hay una alternancia en Configuración que dice \"Reemplazar imágenes con zoom profundo con las de mejor calidad\", puedes usar eso. Mejorará la calidad de las imágenes, pero se volverán borrosas una vez que intente ampliar demasiado.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -163,7 +163,8 @@
|
|||
<string name="faq_8_text">Ajouter un répértoire dans les dossiers inclus n\'exclut rien automatiquement. Pour ce faire, il faut aller dans « Paramètres » puis « Gérer les dossiers exclus », exclure le répertoire racine \"/\", puis ajouter les répertoires souhaités dans « Paramètres » puis « Gérer les répertoires inclus ». Seuls les répertoires selectionnés seront visibles, du fait que les exclusions et inclusions sont récursives, et si un répertoire est à la fois exclus et inclus, il sera affiché.</string>
|
||||
<string name="faq_9_title">Les images en plein écran contiennent des artéfacts, est-ce possible d\'améliorer la qualité ?</string>
|
||||
<string name="faq_9_text">Oui, il existe dans « Paramètres » une option « Remplacer les images zoomables profondes par des images de meilleure qualité », mais les images seront alors floues si vous zoomez trop.</string>
|
||||
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
Esto fará visibles só aos cartafoles escollidos, como tanto excluír e incluír son recursivos e si está excluído e logo incluído, será mostrado.</string>
|
||||
<string name="faq_9_title">As imaxes a pantalla completa teñen píxeles extranos, podo mellorar a calidade da imaxe?</string>
|
||||
<string name="faq_9_text">Si, hai unha opción en Axustes que di \"Substituír imaxes con un gran zoom con imaxes de mellor calidade\", pode usar eso. mellorará a calidade das imaxes, mais farase máis borrosaxa si intenta facer moito zoom.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -162,6 +162,8 @@
|
|||
<string name="faq_8_text">Przejdź do sekcji z wykluczonymi folderami w ustawieniach aplikacji, dodaj tam folder główny (\"/\"), a następnie dodaj pożądane foldery w sekcji z dołączonymi folderami.</string>
|
||||
<string name="faq_9_title">Zdjęcia w widoku pełnoekranowym mają dziwne artefakty. Jak mogę to naprawić?</string>
|
||||
<string name="faq_9_text">U ustawieniach aplikacji włącz opcję \'Zamieniaj powiększalne obrazy na te o lepszej jakości\'. Poprawi ona jakość zdjęć, jednak przy bardzo dużych powiększeniach mogą się stać one zbyt rozmazane.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
Это сделает видимыми только выбранные папки, так как исключение и включение являются рекурсивными, и если папка исключена и включена, то она будет отображаться.</string>
|
||||
<string name="faq_9_title">Полноэкранные изображения имеют странные артефакты, можно как-то улучшить качество?</string>
|
||||
<string name="faq_9_text">Да, в настройках есть переключатель \"Заменять масштабируемые изображения высококачественными\", использовуйте его. Это улучшит качество изображений, но они будут размыты, если вы попытаетесь сильно увеличить масштаб отображения.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
To spôsobí, že budú zobrazené iba vyžiadané priečinky, keďže aj vylúčenie, aj pridanie fungujú rekurzívne a ak je priečinok vylúčený, aj pridaný, bude viditeľný.</string>
|
||||
<string name="faq_9_title">Fotky na celú obrazovku majú zhoršenú kvalitu, viem ju nejak zlepšiť?</string>
|
||||
<string name="faq_9_text">Áno, v nastaveniach je prepínač s textom \"Nahradiť hlboko priblížiteľné obrázky s obrázkami s lepšou kvalitou\", môžete ho skúsiť. Spôsobí to vyššiu kvalitu obrázkov, po priblížení sa ale budú rozmazávať oveľa skôr.</string>
|
||||
<string name="faq_10_title">Dá sa s touto aplikáciou orezať obrázky?</string>
|
||||
<string name="faq_10_text">Áno, orezanie je možné v editore, potiahnutím rohov obrázkov. Do editoru sa môžete dostať buď dlhým podržaním náhľadu obrázku a zvolením menu položky Upraviť, alebo zvolením Upraviť pri celoobrazovkovom režime.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
那樣的話就只有選擇的資料夾可見。因為排除和包含都是遞迴的,如果一個資料夾被排除又被包含,則會顯示出來。</string>
|
||||
<string name="faq_9_title">全螢幕圖片有雜質,我有辦法提高品質嗎?</string>
|
||||
<string name="faq_9_text">可啊,[設定]內有個開關叫做「可深度縮放的圖片用品質更佳的來取代」,你能用用看。這會提高圖片的品質,不過一旦你放大太多就會模糊掉。</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
|
@ -164,6 +164,8 @@
|
|||
That will make only the selected folders visible, as both excluding and including are recursive and if a folder is both excluded and included, it will show up.</string>
|
||||
<string name="faq_9_title">Fullscreen images have weird artifacts, can I somehow improve the quality?</string>
|
||||
<string name="faq_9_text">Yea, there is a toggle in Settings saying \"Replace deep zoomable images with better quality ones\", you can use that. It will improve the quality of the images, but they will get blurred once you try zooming in too much.</string>
|
||||
<string name="faq_10_title">Can I crop images with this app?</string>
|
||||
<string name="faq_10_text">Yes, you can crop images in the editor, by dragging the image corners. You can get to the editor either by long pressing an image thumbnail and selecting Edit, or selecting Edit from the fullscreen view.</string>
|
||||
|
||||
<!-- Strings displayed only on Google Playstore. Optional, but good to have -->
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
|
|
Loading…
Reference in a new issue