diff --git a/CHANGELOG.md b/CHANGELOG.md
index e25283681..df7fbcc68 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,29 @@
Changelog
==========
+Version 6.11.2 *(2019-12-21)*
+----------------------------
+
+ * Added a few more aspect ratios in the editor
+ * Remember the last used editor brush settings
+ * Properly refresh the cache of edited images
+
+Version 6.11.1 *(2019-12-18)*
+----------------------------
+
+ * Removing Text Design from the editor, it takes up too much space
+
+Version 6.11.0 *(2019-12-17)*
+----------------------------
+
+ * Fully replaced the photo editor with a powerful third party library
+ * Added some crashfixes and stability improvements
+
+Version 6.10.8 *(2019-12-17)*
+----------------------------
+
+ * Added some crashfixes and stability improvements
+
Version 6.10.7 *(2019-12-12)*
----------------------------
diff --git a/app/build.gradle b/app/build.gradle
index 7fc2026cd..bf5d66967 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -5,7 +5,9 @@ apply plugin: 'kotlin-kapt'
def keystorePropertiesFile = rootProject.file("keystore.properties")
def keystoreProperties = new Properties()
-keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
+if (keystorePropertiesFile.exists()) {
+ keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
+}
android {
compileSdkVersion 28
@@ -15,30 +17,35 @@ android {
applicationId "com.simplemobiletools.gallery.pro"
minSdkVersion 21
targetSdkVersion 28
- versionCode 275
- versionName "6.10.7"
+ versionCode 282
+ versionName "6.11.2"
multiDexEnabled true
setProperty("archivesBaseName", "gallery")
vectorDrawables.useSupportLibrary = true
}
signingConfigs {
- release {
- keyAlias keystoreProperties['keyAlias']
- keyPassword keystoreProperties['keyPassword']
- storeFile file(keystoreProperties['storeFile'])
- storePassword keystoreProperties['storePassword']
+ if (keystorePropertiesFile.exists()) {
+ release {
+ keyAlias keystoreProperties['keyAlias']
+ keyPassword keystoreProperties['keyPassword']
+ storeFile file(keystoreProperties['storeFile'])
+ storePassword keystoreProperties['storePassword']
+ }
}
}
buildTypes {
debug {
- applicationIdSuffix ".debug"
+ // we cannot change the original package name, else PhotoEditorSDK won't work
+ //applicationIdSuffix ".debug"
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
- signingConfig signingConfigs.release
+ if (keystorePropertiesFile.exists()) {
+ signingConfig signingConfigs.release
+ }
}
}
@@ -62,7 +69,7 @@ android {
}
dependencies {
- implementation 'com.simplemobiletools:commons:5.20.10'
+ implementation 'com.simplemobiletools:commons:5.21.0'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.8.0'
implementation 'androidx.multidex:multidex:2.0.1'
implementation 'it.sephiroth.android.exif:library:1.0.1'
@@ -72,11 +79,10 @@ dependencies {
implementation 'com.google.vr:sdk-panowidget:1.180.0'
implementation 'com.google.vr:sdk-videowidget:1.180.0'
implementation 'org.apache.sanselan:sanselan:0.97-incubator'
- implementation 'info.androidhive:imagefilters:1.0.7'
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'com.caverock:androidsvg-aar:1.3'
- implementation 'com.github.tibbi:gestureviews:a2208ce9d9'
- implementation 'com.github.tibbi:subsampling-scale-image-view:4f032440aa'
+ implementation 'com.github.tibbi:gestureviews:8dccb8450b'
+ implementation 'com.github.tibbi:subsampling-scale-image-view:d404e74e39'
kapt 'com.github.bumptech.glide:compiler:4.10.0'
@@ -84,3 +90,26 @@ dependencies {
implementation 'androidx.room:room-runtime:2.2.2'
annotationProcessor 'androidx.room:room-compiler:2.2.2'
}
+
+// Apply the PESDKPlugin
+apply plugin: 'ly.img.android.pesdk'
+
+pesdkConfig {
+ licencePath 'pesdk_license'
+
+ supportLibVersion "28.0.0"
+
+ modules {
+ include 'ly.img.android.pesdk.ui.mobile_ui:core'
+ include 'ly.img.android.pesdk.ui.mobile_ui:text'
+ include 'ly.img.android.pesdk.ui.mobile_ui:focus'
+ include 'ly.img.android.pesdk.ui.mobile_ui:brush'
+ include 'ly.img.android.pesdk.ui.mobile_ui:filter'
+ include 'ly.img.android.pesdk.ui.mobile_ui:transform'
+ include 'ly.img.android.pesdk.ui.mobile_ui:adjustment'
+
+ // Add asset packs if you need
+ include 'ly.img.android.pesdk.assets:font-basic'
+ include 'ly.img.android.pesdk.assets:filter-basic'
+ }
+}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index a95a3ba3b..11b2f5c91 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -10,6 +10,9 @@
+
@@ -198,7 +201,7 @@
@@ -207,6 +210,11 @@
+
+
+
diff --git a/app/src/main/assets/pesdk_license b/app/src/main/assets/pesdk_license
new file mode 100644
index 000000000..764680c1d
--- /dev/null
+++ b/app/src/main/assets/pesdk_license
@@ -0,0 +1 @@
+{"api_token":"aulo3T5M9uyXgeJauoiJjw","app_identifiers":["com.simplemobiletools.gallery.pro"],"available_actions":[],"domains":["https://api.photoeditorsdk.com"],"enterprise_license":false,"expires_at":null,"features":["camera","library","export","customassets","whitelabel","adjustment","brush","filter","focus","text","textdesign","transform"],"issued_at":1576163964,"minimum_sdk_version":"1.0","owner":"Tikap s.r.o.","platform":"Android","products":["pesdk"],"version":"2.4","signature":"JvD7pjiy3iomgGW7XgEaHCs7aWxTIRl/PN7dp1muFSpE6S+IVmKDfSR5+enE2Tdh2EFC/3lyVuG7S5FcyOyxeXtyfKW/+H2y8Oem6VQzgTlYus8Eacz3/mk+GShUq+C+xQvbp5cWB/prScOZHPOaiZCu531rFYOGfwgaThtpawtG4B6wxvRWfjJor8fbsIHzEQnUnsEKsQR4UhwAUQvpDnCE0JtuP0CAxFyP03XfLlwIGhbUiCbaHh/kcG3IVzeQxSjjjsefu3rCtjYbm0eZKLbgsCvbNoVv2p011P2XN1pAu1uTMFscD74FbAFAgO12vYHfJ4iQE6cmZBiVSIJftJw3Gawj91NsiJbnLmPSqwSuUApatE5pMAff443s7ML32rHj+gD2IQ3oAHowGtbyofC0LrLPxaIMZEcd9Ttfk3ujn001rvekVXk6Uj/l3P3RpyLs6FHpMMSHo5nAk7ab7MYeR6PZfWDE+ggM1sqWV5fd4rh9qd36ioJgGaL6OnYCh/2t1xeMrFG2aw55hhjZPjxw3yfTvbJrOs1p0G503nkPCzRn4TCvPefkFDquAFCQaVmIJuFi51j4HA34o2E4Twru2SkI0od5ewHE5+hAR+9JalOaZWN/kLi59B9VrAEfskYmfVszqIpekpAyloMPYrpBseUDlWVCqbJIlyQt564="}
\ No newline at end of file
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/EditActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/EditActivity.kt
index 8d3532271..bdcc630f5 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/EditActivity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/EditActivity.kt
@@ -6,7 +6,6 @@ import android.content.Intent
import android.graphics.Bitmap
import android.graphics.Bitmap.CompressFormat
import android.graphics.Color
-import android.graphics.Point
import android.media.ExifInterface
import android.net.Uri
import android.os.Build
@@ -15,16 +14,6 @@ import android.provider.MediaStore
import android.view.Menu
import android.view.MenuItem
import android.widget.RelativeLayout
-import androidx.recyclerview.widget.LinearLayoutManager
-import com.bumptech.glide.Glide
-import com.bumptech.glide.load.DataSource
-import com.bumptech.glide.load.DecodeFormat
-import com.bumptech.glide.load.engine.DiskCacheStrategy
-import com.bumptech.glide.load.engine.GlideException
-import com.bumptech.glide.request.RequestListener
-import com.bumptech.glide.request.RequestOptions
-import com.bumptech.glide.request.target.Target
-import com.simplemobiletools.commons.dialogs.ColorPickerDialog
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_STORAGE
@@ -34,62 +23,29 @@ import com.simplemobiletools.commons.helpers.isNougatPlus
import com.simplemobiletools.commons.models.FileDirItem
import com.simplemobiletools.gallery.pro.BuildConfig
import com.simplemobiletools.gallery.pro.R
-import com.simplemobiletools.gallery.pro.adapters.FiltersAdapter
import com.simplemobiletools.gallery.pro.dialogs.OtherAspectRatioDialog
-import com.simplemobiletools.gallery.pro.dialogs.ResizeDialog
-import com.simplemobiletools.gallery.pro.dialogs.SaveAsDialog
import com.simplemobiletools.gallery.pro.extensions.config
import com.simplemobiletools.gallery.pro.extensions.fixDateTaken
-import com.simplemobiletools.gallery.pro.extensions.openEditor
import com.simplemobiletools.gallery.pro.helpers.*
-import com.simplemobiletools.gallery.pro.models.FilterItem
import com.theartofdev.edmodo.cropper.CropImageView
-import com.zomato.photofilters.FilterPack
-import com.zomato.photofilters.imageprocessors.Filter
import kotlinx.android.synthetic.main.activity_edit.*
import kotlinx.android.synthetic.main.bottom_actions_aspect_ratio.*
-import kotlinx.android.synthetic.main.bottom_editor_actions_filter.*
import kotlinx.android.synthetic.main.bottom_editor_crop_rotate_actions.*
-import kotlinx.android.synthetic.main.bottom_editor_draw_actions.*
-import kotlinx.android.synthetic.main.bottom_editor_primary_actions.*
import java.io.*
class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener {
- companion object {
- init {
- System.loadLibrary("NativeImageProcessor")
- }
- }
-
private val TEMP_FOLDER_NAME = "images"
private val ASPECT_X = "aspectX"
private val ASPECT_Y = "aspectY"
- private val CROP = "crop"
-
- // constants for bottom primary action groups
- private val PRIMARY_ACTION_NONE = 0
- private val PRIMARY_ACTION_FILTER = 1
- private val PRIMARY_ACTION_CROP_ROTATE = 2
- private val PRIMARY_ACTION_DRAW = 3
-
- private val CROP_ROTATE_NONE = 0
- private val CROP_ROTATE_ASPECT_RATIO = 1
private lateinit var uri: Uri
private lateinit var saveUri: Uri
private var resizeWidth = 0
private var resizeHeight = 0
- private var drawColor = 0
private var lastOtherAspectRatio: Pair? = null
- private var currPrimaryAction = PRIMARY_ACTION_NONE
- private var currCropRotateAction = CROP_ROTATE_ASPECT_RATIO
private var currAspectRatio = ASPECT_RATIO_FREE
- private var isCropIntent = false
- private var isEditingWithThirdParty = false
private var isSharingBitmap = false
- private var wasDrawCanvasPositioned = false
private var oldExif: ExifInterface? = null
- private var filterInitialBitmap: Bitmap? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@@ -109,19 +65,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
}
}
- override fun onResume() {
- super.onResume()
- isEditingWithThirdParty = false
- bottom_draw_width.setColors(config.textColor, getAdjustedPrimaryColor(), config.backgroundColor)
- }
-
- override fun onStop() {
- super.onStop()
- if (isEditingWithThirdParty) {
- finish()
- }
- }
-
override fun onCreateOptionsMenu(menu: Menu): Boolean {
menuInflater.inflate(R.menu.menu_editor, menu)
updateMenuItemColors(menu)
@@ -131,7 +74,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.itemId) {
R.id.save_as -> saveImage()
- R.id.edit -> editWith()
R.id.share -> shareImage()
else -> return super.onOptionsItemSelected(item)
}
@@ -170,14 +112,9 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
else -> uri
}
- isCropIntent = intent.extras?.get(CROP) == "true"
- if (isCropIntent) {
- bottom_editor_primary_actions.beGone()
- (bottom_editor_crop_rotate_actions.layoutParams as RelativeLayout.LayoutParams).addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 1)
- }
-
- loadDefaultImageView()
- setupBottomActions()
+ (bottom_editor_crop_rotate_actions.layoutParams as RelativeLayout.LayoutParams).addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 1)
+ setupCropRotateActionButtons()
+ setupAspectRatioButtons()
if (config.lastEditorCropAspectRatio == ASPECT_RATIO_OTHER) {
if (config.lastEditorCropOtherAspectRatioX == 0f) {
@@ -190,115 +127,26 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
lastOtherAspectRatio = Pair(config.lastEditorCropOtherAspectRatioX, config.lastEditorCropOtherAspectRatioY)
}
+
updateAspectRatio(config.lastEditorCropAspectRatio)
crop_image_view.guidelines = CropImageView.Guidelines.ON
- bottom_aspect_ratios.beVisible()
- }
-
- private fun loadDefaultImageView() {
- default_image_view.beVisible()
- crop_image_view.beGone()
- editor_draw_canvas.beGone()
-
- val options = RequestOptions()
- .skipMemoryCache(true)
- .diskCacheStrategy(DiskCacheStrategy.NONE)
-
- Glide.with(this)
- .asBitmap()
- .load(uri)
- .apply(options)
- .listener(object : RequestListener {
- override fun onLoadFailed(e: GlideException?, model: Any?, target: Target?, isFirstResource: Boolean) = false
-
- override fun onResourceReady(bitmap: Bitmap?, model: Any?, target: Target?, dataSource: DataSource?, isFirstResource: Boolean): Boolean {
- val currentFilter = getFiltersAdapter()?.getCurrentFilter()
- if (filterInitialBitmap == null) {
- loadCropImageView()
- bottomCropRotateClicked()
- }
-
- if (filterInitialBitmap != null && currentFilter != null && currentFilter.filter.name != getString(R.string.none)) {
- default_image_view.onGlobalLayout {
- applyFilter(currentFilter)
- }
- } else {
- filterInitialBitmap = bitmap
- }
-
- if (isCropIntent) {
- bottom_primary_filter.beGone()
- bottom_primary_draw.beGone()
- }
-
- return false
- }
- }).into(default_image_view)
+ loadCropImageView()
}
private fun loadCropImageView() {
- default_image_view.beGone()
- editor_draw_canvas.beGone()
crop_image_view.apply {
- beVisible()
setOnCropImageCompleteListener(this@EditActivity)
setImageUriAsync(uri)
guidelines = CropImageView.Guidelines.ON
- if (isCropIntent && shouldCropSquare()) {
- currAspectRatio = ASPECT_RATIO_ONE_ONE
+ if (shouldCropSquare()) {
+ updateAspectRatio(ASPECT_RATIO_ONE_ONE)
setFixedAspectRatio(true)
- bottom_aspect_ratio.beGone()
+ bottom_aspect_ratios.beGone()
}
}
}
- private fun loadDrawCanvas() {
- default_image_view.beGone()
- crop_image_view.beGone()
- editor_draw_canvas.beVisible()
-
- if (!wasDrawCanvasPositioned) {
- wasDrawCanvasPositioned = true
- editor_draw_canvas.onGlobalLayout {
- ensureBackgroundThread {
- fillCanvasBackground()
- }
- }
- }
- }
-
- private fun fillCanvasBackground() {
- val size = Point()
- windowManager.defaultDisplay.getSize(size)
- val options = RequestOptions()
- .format(DecodeFormat.PREFER_ARGB_8888)
- .skipMemoryCache(true)
- .diskCacheStrategy(DiskCacheStrategy.NONE)
- .fitCenter()
-
- try {
- val builder = Glide.with(applicationContext)
- .asBitmap()
- .load(uri)
- .apply(options)
- .into(editor_draw_canvas.width, editor_draw_canvas.height)
-
- val bitmap = builder.get()
- runOnUiThread {
- editor_draw_canvas.apply {
- updateBackgroundBitmap(bitmap)
- layoutParams.width = bitmap.width
- layoutParams.height = bitmap.height
- y = (height - bitmap.height) / 2f
- requestLayout()
- }
- }
- } catch (e: Exception) {
- showErrorToast(e)
- }
- }
-
@TargetApi(Build.VERSION_CODES.N)
private fun saveImage() {
var inputStream: InputStream? = null
@@ -312,66 +160,14 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
inputStream?.close()
}
- if (crop_image_view.isVisible()) {
- crop_image_view.getCroppedImageAsync()
- } else if (editor_draw_canvas.isVisible()) {
- val bitmap = editor_draw_canvas.getBitmap()
- if (saveUri.scheme == "file") {
- SaveAsDialog(this, saveUri.path!!, true) {
- saveBitmapToFile(bitmap, it, true)
- }
- } else if (saveUri.scheme == "content") {
- val filePathGetter = getNewFilePath()
- SaveAsDialog(this, filePathGetter.first, filePathGetter.second) {
- saveBitmapToFile(bitmap, it, true)
- }
- }
- } else {
- val currentFilter = getFiltersAdapter()?.getCurrentFilter() ?: return
- val filePathGetter = getNewFilePath()
- SaveAsDialog(this, filePathGetter.first, filePathGetter.second) {
- toast(R.string.saving)
-
- // clean up everything to free as much memory as possible
- default_image_view.setImageResource(0)
- crop_image_view.setImageBitmap(null)
- bottom_actions_filter_list.adapter = null
- bottom_actions_filter_list.beGone()
-
- ensureBackgroundThread {
- try {
- val originalBitmap = Glide.with(applicationContext).asBitmap().load(uri).submit(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL).get()
- currentFilter.filter.processFilter(originalBitmap)
- saveBitmapToFile(originalBitmap, it, false)
- } catch (e: OutOfMemoryError) {
- toast(R.string.out_of_memory_error)
- }
- }
- }
- }
+ crop_image_view.getCroppedImageAsync()
}
private fun shareImage() {
ensureBackgroundThread {
- when {
- default_image_view.isVisible() -> {
- val currentFilter = getFiltersAdapter()?.getCurrentFilter()
- if (currentFilter == null) {
- toast(R.string.unknown_error_occurred)
- return@ensureBackgroundThread
- }
-
- val originalBitmap = Glide.with(applicationContext).asBitmap().load(uri).submit(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL).get()
- currentFilter.filter.processFilter(originalBitmap)
- shareBitmap(originalBitmap)
- }
- crop_image_view.isVisible() -> {
- isSharingBitmap = true
- runOnUiThread {
- crop_image_view.getCroppedImageAsync()
- }
- }
- editor_draw_canvas.isVisible() -> shareBitmap(editor_draw_canvas.getBitmap())
+ isSharingBitmap = true
+ runOnUiThread {
+ crop_image_view.getCroppedImageAsync()
}
}
}
@@ -416,66 +212,11 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
}
}
- private fun getFiltersAdapter() = bottom_actions_filter_list.adapter as? FiltersAdapter
-
- private fun setupBottomActions() {
- setupPrimaryActionButtons()
- setupCropRotateActionButtons()
- setupAspectRatioButtons()
- setupDrawButtons()
- }
-
- private fun setupPrimaryActionButtons() {
- bottom_primary_filter.setOnClickListener {
- bottomFilterClicked()
- }
-
- bottom_primary_crop_rotate.setOnClickListener {
- bottomCropRotateClicked()
- }
-
- bottom_primary_draw.setOnClickListener {
- bottomDrawClicked()
- }
- }
-
- private fun bottomFilterClicked() {
- currPrimaryAction = if (currPrimaryAction == PRIMARY_ACTION_FILTER) {
- PRIMARY_ACTION_NONE
- } else {
- PRIMARY_ACTION_FILTER
- }
- updatePrimaryActionButtons()
- }
-
- private fun bottomCropRotateClicked() {
- currPrimaryAction = if (currPrimaryAction == PRIMARY_ACTION_CROP_ROTATE) {
- PRIMARY_ACTION_NONE
- } else {
- PRIMARY_ACTION_CROP_ROTATE
- }
- updatePrimaryActionButtons()
- }
-
- private fun bottomDrawClicked() {
- currPrimaryAction = if (currPrimaryAction == PRIMARY_ACTION_DRAW) {
- PRIMARY_ACTION_NONE
- } else {
- PRIMARY_ACTION_DRAW
- }
- updatePrimaryActionButtons()
- }
-
private fun setupCropRotateActionButtons() {
bottom_rotate.setOnClickListener {
crop_image_view.rotateImage(90)
}
- bottom_resize.beGoneIf(isCropIntent)
- bottom_resize.setOnClickListener {
- resizeImage()
- }
-
bottom_flip_horizontally.setOnClickListener {
crop_image_view.flipImageHorizontally()
}
@@ -483,19 +224,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
bottom_flip_vertically.setOnClickListener {
crop_image_view.flipImageVertically()
}
-
- bottom_aspect_ratio.setOnClickListener {
- currCropRotateAction = if (currCropRotateAction == CROP_ROTATE_ASPECT_RATIO) {
- crop_image_view.guidelines = CropImageView.Guidelines.OFF
- bottom_aspect_ratios.beGone()
- CROP_ROTATE_NONE
- } else {
- crop_image_view.guidelines = CropImageView.Guidelines.ON
- bottom_aspect_ratios.beVisible()
- CROP_ROTATE_ASPECT_RATIO
- }
- updateCropRotateActionButtons()
- }
}
private fun setupAspectRatioButtons() {
@@ -527,126 +255,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
updateAspectRatioButtons()
}
- private fun setupDrawButtons() {
- updateDrawColor(config.lastEditorDrawColor)
- bottom_draw_width.progress = config.lastEditorBrushSize
- updateBrushSize(config.lastEditorBrushSize)
-
- bottom_draw_color_clickable.setOnClickListener {
- ColorPickerDialog(this, drawColor) { wasPositivePressed, color ->
- if (wasPositivePressed) {
- updateDrawColor(color)
- }
- }
- }
-
- bottom_draw_width.onSeekBarChangeListener {
- config.lastEditorBrushSize = it
- updateBrushSize(it)
- }
-
- bottom_draw_undo.setOnClickListener {
- editor_draw_canvas.undo()
- }
- }
-
- private fun updateBrushSize(percent: Int) {
- editor_draw_canvas.updateBrushSize(percent)
- val scale = Math.max(0.03f, percent / 100f)
- bottom_draw_color.scaleX = scale
- bottom_draw_color.scaleY = scale
- }
-
- private fun updatePrimaryActionButtons() {
- if (crop_image_view.isGone() && currPrimaryAction == PRIMARY_ACTION_CROP_ROTATE) {
- loadCropImageView()
- } else if (default_image_view.isGone() && currPrimaryAction == PRIMARY_ACTION_FILTER) {
- loadDefaultImageView()
- } else if (editor_draw_canvas.isGone() && currPrimaryAction == PRIMARY_ACTION_DRAW) {
- loadDrawCanvas()
- }
-
- arrayOf(bottom_primary_filter, bottom_primary_crop_rotate, bottom_primary_draw).forEach {
- it.applyColorFilter(Color.WHITE)
- }
-
- val currentPrimaryActionButton = when (currPrimaryAction) {
- PRIMARY_ACTION_FILTER -> bottom_primary_filter
- PRIMARY_ACTION_CROP_ROTATE -> bottom_primary_crop_rotate
- PRIMARY_ACTION_DRAW -> bottom_primary_draw
- else -> null
- }
-
- currentPrimaryActionButton?.applyColorFilter(getAdjustedPrimaryColor())
- bottom_editor_filter_actions.beVisibleIf(currPrimaryAction == PRIMARY_ACTION_FILTER)
- bottom_editor_crop_rotate_actions.beVisibleIf(currPrimaryAction == PRIMARY_ACTION_CROP_ROTATE)
- bottom_editor_draw_actions.beVisibleIf(currPrimaryAction == PRIMARY_ACTION_DRAW)
-
- if (currPrimaryAction == PRIMARY_ACTION_FILTER && bottom_actions_filter_list.adapter == null) {
- ensureBackgroundThread {
- val thumbnailSize = resources.getDimension(R.dimen.bottom_filters_thumbnail_size).toInt()
-
- val bitmap = try {
- Glide.with(this)
- .asBitmap()
- .load(uri).listener(object : RequestListener {
- override fun onLoadFailed(e: GlideException?, model: Any?, target: Target?, isFirstResource: Boolean): Boolean {
- showErrorToast(e.toString())
- return false
- }
-
- override fun onResourceReady(resource: Bitmap?, model: Any?, target: Target?, dataSource: DataSource?, isFirstResource: Boolean) = false
- })
- .submit(thumbnailSize, thumbnailSize)
- .get()
- } catch (e: GlideException) {
- showErrorToast(e)
- finish()
- return@ensureBackgroundThread
- }
-
- runOnUiThread {
- val filterThumbnailsManager = FilterThumbnailsManager()
- filterThumbnailsManager.clearThumbs()
-
- val noFilter = Filter(getString(R.string.none))
- filterThumbnailsManager.addThumb(FilterItem(bitmap, noFilter))
-
- FilterPack.getFilterPack(this).forEach {
- val filterItem = FilterItem(bitmap, it)
- filterThumbnailsManager.addThumb(filterItem)
- }
-
- val filterItems = filterThumbnailsManager.processThumbs()
- val adapter = FiltersAdapter(applicationContext, filterItems) {
- val layoutManager = bottom_actions_filter_list.layoutManager as LinearLayoutManager
- applyFilter(filterItems[it])
-
- if (it == layoutManager.findLastCompletelyVisibleItemPosition() || it == layoutManager.findLastVisibleItemPosition()) {
- bottom_actions_filter_list.smoothScrollBy(thumbnailSize, 0)
- } else if (it == layoutManager.findFirstCompletelyVisibleItemPosition() || it == layoutManager.findFirstVisibleItemPosition()) {
- bottom_actions_filter_list.smoothScrollBy(-thumbnailSize, 0)
- }
- }
-
- bottom_actions_filter_list.adapter = adapter
- adapter.notifyDataSetChanged()
- }
- }
- }
-
- if (currPrimaryAction != PRIMARY_ACTION_CROP_ROTATE) {
- bottom_aspect_ratios.beGone()
- currCropRotateAction = CROP_ROTATE_NONE
- }
- updateCropRotateActionButtons()
- }
-
- private fun applyFilter(filterItem: FilterItem) {
- val newBitmap = Bitmap.createBitmap(filterInitialBitmap!!)
- default_image_view.setImageBitmap(filterItem.filter.processFilter(newBitmap))
- }
-
private fun updateAspectRatio(aspectRatio: Int) {
currAspectRatio = aspectRatio
config.lastEditorCropAspectRatio = aspectRatio
@@ -684,40 +292,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
currentAspectRatioButton.setTextColor(getAdjustedPrimaryColor())
}
- private fun updateCropRotateActionButtons() {
- arrayOf(bottom_aspect_ratio).forEach {
- it.applyColorFilter(Color.WHITE)
- }
-
- val primaryActionView = when (currCropRotateAction) {
- CROP_ROTATE_ASPECT_RATIO -> bottom_aspect_ratio
- else -> null
- }
-
- primaryActionView?.applyColorFilter(getAdjustedPrimaryColor())
- }
-
- private fun updateDrawColor(color: Int) {
- drawColor = color
- bottom_draw_color.applyColorFilter(color)
- config.lastEditorDrawColor = color
- editor_draw_canvas.updateColor(color)
- }
-
- private fun resizeImage() {
- val point = getAreaSize()
- if (point == null) {
- toast(R.string.unknown_error_occurred)
- return
- }
-
- ResizeDialog(this, point) {
- resizeWidth = it.x
- resizeHeight = it.y
- crop_image_view.getCroppedImageAsync()
- }
- }
-
private fun shouldCropSquare(): Boolean {
val extras = intent.extras
return if (extras != null && extras.containsKey(ASPECT_X) && extras.containsKey(ASPECT_Y)) {
@@ -727,16 +301,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
}
}
- private fun getAreaSize(): Point? {
- val rect = crop_image_view.cropRect ?: return null
- val rotation = crop_image_view.rotatedDegrees
- return if (rotation == 0 || rotation == 180) {
- Point(rect.width(), rect.height())
- } else {
- Point(rect.height(), rect.width())
- }
- }
-
override fun onCropImageComplete(view: CropImageView, result: CropImageView.CropResult) {
if (result.error == null) {
val bitmap = result.bitmap
@@ -746,72 +310,35 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
return
}
- if (isCropIntent) {
- if (saveUri.scheme == "file") {
- saveBitmapToFile(bitmap, saveUri.path!!, true)
- } else {
- var inputStream: InputStream? = null
- var outputStream: OutputStream? = null
- try {
- val stream = ByteArrayOutputStream()
- bitmap.compress(CompressFormat.JPEG, 100, stream)
- inputStream = ByteArrayInputStream(stream.toByteArray())
- outputStream = contentResolver.openOutputStream(saveUri)
- inputStream.copyTo(outputStream!!)
- } finally {
- inputStream?.close()
- outputStream?.close()
- }
-
- Intent().apply {
- data = saveUri
- addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
- setResult(RESULT_OK, this)
- }
- finish()
- }
- } else if (saveUri.scheme == "file") {
- SaveAsDialog(this, saveUri.path!!, true) {
- saveBitmapToFile(bitmap, it, true)
- }
- } else if (saveUri.scheme == "content") {
- val filePathGetter = getNewFilePath()
- SaveAsDialog(this, filePathGetter.first, filePathGetter.second) {
- saveBitmapToFile(bitmap, it, true)
- }
+ if (saveUri.scheme == "file") {
+ saveBitmapToFile(bitmap, saveUri.path!!)
} else {
- toast(R.string.unknown_file_location)
+ var inputStream: InputStream? = null
+ var outputStream: OutputStream? = null
+ try {
+ val stream = ByteArrayOutputStream()
+ bitmap.compress(CompressFormat.JPEG, 100, stream)
+ inputStream = ByteArrayInputStream(stream.toByteArray())
+ outputStream = contentResolver.openOutputStream(saveUri)
+ inputStream.copyTo(outputStream!!)
+ } finally {
+ inputStream?.close()
+ outputStream?.close()
+ }
+
+ Intent().apply {
+ data = saveUri
+ addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
+ setResult(RESULT_OK, this)
+ }
+ finish()
}
} else {
toast("${getString(R.string.image_editing_failed)}: ${result.error.message}")
}
}
- private fun getNewFilePath(): Pair {
- var newPath = applicationContext.getRealPathFromURI(saveUri) ?: ""
- if (newPath.startsWith("/mnt/")) {
- newPath = ""
- }
-
- var shouldAppendFilename = true
- if (newPath.isEmpty()) {
- val filename = applicationContext.getFilenameFromContentUri(saveUri) ?: ""
- if (filename.isNotEmpty()) {
- val path = if (intent.extras?.containsKey(REAL_FILE_PATH) == true) intent.getStringExtra(REAL_FILE_PATH).getParentPath() else internalStoragePath
- newPath = "$path/$filename"
- shouldAppendFilename = false
- }
- }
-
- if (newPath.isEmpty()) {
- newPath = "$internalStoragePath/${getCurrentFormattedDateTime()}.${saveUri.toString().getFilenameExtension()}"
- shouldAppendFilename = false
- }
-
- return Pair(newPath, shouldAppendFilename)
- }
-
- private fun saveBitmapToFile(bitmap: Bitmap, path: String, showSavingToast: Boolean) {
+ private fun saveBitmapToFile(bitmap: Bitmap, path: String) {
if (!packageName.contains("slootelibomelpmis".reversed(), true)) {
if (baseConfig.appRunCount > 100) {
val label = "sknahT .moc.slootelibomelpmis.www morf eno lanigiro eht daolnwod ytefas nwo ruoy roF .ppa eht fo noisrev ekaf a gnisu era uoY".reversed()
@@ -830,7 +357,7 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
val fileDirItem = FileDirItem(path, path.getFilenameFromPath())
getFileOutputStream(fileDirItem, true) {
if (it != null) {
- saveBitmap(file, bitmap, it, showSavingToast)
+ saveBitmap(file, bitmap, it)
} else {
toast(R.string.image_editing_failed)
}
@@ -844,10 +371,8 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
}
@TargetApi(Build.VERSION_CODES.N)
- private fun saveBitmap(file: File, bitmap: Bitmap, out: OutputStream, showSavingToast: Boolean) {
- if (showSavingToast) {
- toast(R.string.saving)
- }
+ private fun saveBitmap(file: File, bitmap: Bitmap, out: OutputStream) {
+ toast(R.string.saving)
if (resizeWidth > 0 && resizeHeight > 0) {
val resized = Bitmap.createScaledBitmap(bitmap, resizeWidth, resizeHeight, false)
@@ -869,11 +394,6 @@ class EditActivity : SimpleActivity(), CropImageView.OnCropImageCompleteListener
out.close()
}
- private fun editWith() {
- openEditor(uri.toString(), true)
- isEditingWithThirdParty = true
- }
-
private fun scanFinalPath(path: String) {
val paths = arrayListOf(path)
rescanPaths(paths) {
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MainActivity.kt
index ad9dce178..cf7ee98bf 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MainActivity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/MainActivity.kt
@@ -1290,6 +1290,7 @@ class MainActivity : SimpleActivity(), DirectoryOperationsListener {
add(Release(221, R.string.release_221))
add(Release(225, R.string.release_225))
add(Release(258, R.string.release_258))
+ add(Release(277, R.string.release_277))
checkWhatsNew(this, BuildConfig.VERSION_CODE)
}
}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/NewEditActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/NewEditActivity.kt
new file mode 100644
index 000000000..3bf62b5c7
--- /dev/null
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/NewEditActivity.kt
@@ -0,0 +1,232 @@
+package com.simplemobiletools.gallery.pro.activities
+
+import android.app.Activity
+import android.content.Intent
+import android.net.Uri
+import android.os.Bundle
+import android.provider.MediaStore
+import androidx.core.util.Pair
+import com.simplemobiletools.commons.asynctasks.CopyMoveTask
+import com.simplemobiletools.commons.extensions.*
+import com.simplemobiletools.commons.helpers.CONFLICT_OVERWRITE
+import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_STORAGE
+import com.simplemobiletools.commons.helpers.REAL_FILE_PATH
+import com.simplemobiletools.commons.interfaces.CopyMoveListener
+import com.simplemobiletools.commons.models.FileDirItem
+import com.simplemobiletools.gallery.pro.R
+import com.simplemobiletools.gallery.pro.dialogs.SaveAsDialog
+import com.simplemobiletools.gallery.pro.extensions.config
+import com.simplemobiletools.gallery.pro.extensions.fixDateTaken
+import ly.img.android.pesdk.assets.filter.basic.FilterPackBasic
+import ly.img.android.pesdk.assets.font.basic.FontPackBasic
+import ly.img.android.pesdk.backend.model.config.CropAspectAsset
+import ly.img.android.pesdk.backend.model.state.BrushSettings
+import ly.img.android.pesdk.backend.model.state.EditorLoadSettings
+import ly.img.android.pesdk.backend.model.state.EditorSaveSettings
+import ly.img.android.pesdk.backend.model.state.manager.SettingsList
+import ly.img.android.pesdk.ui.activity.PhotoEditorBuilder
+import ly.img.android.pesdk.ui.model.state.*
+import ly.img.android.pesdk.ui.panels.item.CropAspectItem
+import ly.img.android.pesdk.ui.panels.item.ToggleAspectItem
+import ly.img.android.pesdk.ui.panels.item.ToolItem
+import java.io.File
+import java.util.*
+import kotlin.collections.LinkedHashMap
+import kotlin.collections.set
+
+class NewEditActivity : SimpleActivity() {
+ private val PESDK_EDIT_IMAGE = 1
+ private val SETTINGS_LIST = "SETTINGS_LIST"
+ private val SOURCE_IMAGE_PATH = "SOURCE_IMAGE_PATH"
+ private val RESULT_IMAGE_PATH = "RESULT_IMAGE_PATH"
+ private var sourceFileLastModified = 0L
+ private var destinationFilePath = ""
+ private var imagePathFromEditor = "" // delete the file stored at the internal app storage (the editor saves it there) in case moving to the selected location fails
+
+ private lateinit var uri: Uri
+ private lateinit var saveUri: Uri
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ setContentView(R.layout.activity_new_edit)
+
+ if (checkAppSideloading()) {
+ return
+ }
+
+ handlePermission(PERMISSION_WRITE_STORAGE) {
+ if (it) {
+ initEditActivity()
+ } else {
+ toast(R.string.no_storage_permissions)
+ finish()
+ }
+ }
+ }
+
+ private fun initEditActivity() {
+ if (intent.data == null) {
+ toast(R.string.invalid_image_path)
+ finish()
+ return
+ }
+
+ uri = intent.data!!
+ if (uri.scheme != "file" && uri.scheme != "content") {
+ toast(R.string.unknown_file_location)
+ finish()
+ return
+ }
+
+ if (intent.extras?.containsKey(REAL_FILE_PATH) == true) {
+ val realPath = intent.extras!!.getString(REAL_FILE_PATH)
+ uri = when {
+ isPathOnOTG(realPath!!) -> uri
+ realPath.startsWith("file:/") -> Uri.parse(realPath)
+ else -> Uri.fromFile(File(realPath))
+ }
+ } else {
+ (getRealPathFromURI(uri))?.apply {
+ uri = Uri.fromFile(File(this))
+ }
+ }
+
+ saveUri = when {
+ intent.extras?.containsKey(MediaStore.EXTRA_OUTPUT) == true -> intent.extras!!.get(MediaStore.EXTRA_OUTPUT) as Uri
+ else -> uri
+ }
+
+ openEditor(uri)
+ }
+
+ override fun onActivityResult(requestCode: Int, resultCode: Int, resultData: Intent?) {
+ if (requestCode == PESDK_EDIT_IMAGE) {
+ val extras = resultData?.extras
+ val source = extras?.getString(SOURCE_IMAGE_PATH, "") ?: ""
+ imagePathFromEditor = extras?.getString(RESULT_IMAGE_PATH, "") ?: ""
+
+ val settings = extras?.getParcelable(SETTINGS_LIST)
+ if (settings != null) {
+ val brush = settings.getSettingsModel(BrushSettings::class.java)
+ config.editorBrushColor = brush.brushColor
+ config.editorBrushHardness = brush.brushHardness
+ config.editorBrushSize = brush.brushSize
+ }
+
+ if (resultCode != Activity.RESULT_OK || source.isEmpty() || imagePathFromEditor.isEmpty() || source == imagePathFromEditor) {
+ finish()
+ } else {
+ // the image is stored at the internal app storage first, for example /data/user/0/com.simplemobiletools.gallery.pro/files/editor/IMG_20191207_183023.jpg
+ // first we rename it to the desired name, then move
+ SaveAsDialog(this, source, true, cancelCallback = {
+ toast(R.string.image_editing_failed)
+ finish()
+ }, callback = {
+ destinationFilePath = it
+ handleSAFDialog(destinationFilePath) {
+ if (it) {
+ sourceFileLastModified = File(source).lastModified()
+ val newFile = File("${imagePathFromEditor.getParentPath()}/${destinationFilePath.getFilenameFromPath()}")
+ File(imagePathFromEditor).renameTo(newFile)
+ val sourceFile = FileDirItem(newFile.absolutePath, newFile.name)
+
+ val conflictResolutions = LinkedHashMap()
+ conflictResolutions[destinationFilePath] = CONFLICT_OVERWRITE
+
+ val pair = Pair(arrayListOf(sourceFile), destinationFilePath.getParentPath())
+ CopyMoveTask(this, false, true, conflictResolutions, editCopyMoveListener, true).execute(pair)
+ } else {
+ toast(R.string.image_editing_failed)
+ File(imagePathFromEditor).delete()
+ finish()
+ }
+ }
+ })
+ }
+ }
+ super.onActivityResult(requestCode, resultCode, resultData)
+ }
+
+ private val editCopyMoveListener = object : CopyMoveListener {
+ override fun copySucceeded(copyOnly: Boolean, copiedAll: Boolean, destinationPath: String) {
+ if (config.keepLastModified) {
+ // add 1 s to the last modified time to properly update the thumbnail
+ updateLastModified(destinationFilePath, sourceFileLastModified + 1000)
+ }
+
+ val paths = arrayListOf(destinationFilePath)
+ rescanPaths(paths) {
+ fixDateTaken(paths, false)
+ }
+
+ setResult(Activity.RESULT_OK, intent)
+ toast(R.string.file_edited_successfully)
+ finish()
+ }
+
+ override fun copyFailed() {
+ toast(R.string.unknown_error_occurred)
+ File(imagePathFromEditor).delete()
+ finish()
+ }
+ }
+
+ private fun openEditor(inputImage: Uri) {
+ val filename = inputImage.toString().getFilenameFromPath()
+ val settingsList = createPesdkSettingsList(filename)
+
+ settingsList.getSettingsModel(EditorLoadSettings::class.java).imageSource = inputImage
+
+ PhotoEditorBuilder(this)
+ .setSettingsList(settingsList)
+ .startActivityForResult(this, PESDK_EDIT_IMAGE)
+ }
+
+ private fun createPesdkSettingsList(filename: String): SettingsList {
+ val settingsList = SettingsList()
+ settingsList.config.getAssetMap(CropAspectAsset::class.java).apply {
+ add(CropAspectAsset("my_crop_1_2", 1, 2, false))
+ add(CropAspectAsset("my_crop_2_1", 2, 1, false))
+ add(CropAspectAsset("my_crop_19_9", 19, 9, false))
+ add(CropAspectAsset("my_crop_9_19", 9, 19, false))
+ add(CropAspectAsset("my_crop_5_4", 5, 4, false))
+ add(CropAspectAsset("my_crop_4_5", 4, 5, false))
+ }
+
+ settingsList.getSettingsModel(UiConfigAspect::class.java).aspectList.apply {
+ add(ToggleAspectItem(CropAspectItem("my_crop_2_1"), CropAspectItem("my_crop_1_2")))
+ add(ToggleAspectItem(CropAspectItem("my_crop_19_9"), CropAspectItem("my_crop_9_19")))
+ add(ToggleAspectItem(CropAspectItem("my_crop_5_4"), CropAspectItem("my_crop_4_5")))
+ }
+
+ settingsList.getSettingsModel(UiConfigFilter::class.java).setFilterList(
+ FilterPackBasic.getFilterPack()
+ )
+
+ settingsList.getSettingsModel(UiConfigText::class.java).setFontList(
+ FontPackBasic.getFontPack()
+ )
+
+ settingsList.getSettingsModel(BrushSettings::class.java).apply {
+ brushColor = config.editorBrushColor
+ brushHardness = config.editorBrushHardness
+ brushSize = config.editorBrushSize
+ }
+
+ // do not use Text Design, it takes up too much space
+ val tools = settingsList.getSettingsModel(UiConfigMainMenu::class.java).toolList
+ val newTools = tools.filterNot {
+ it.name!!.isEmpty()
+ }.toMutableList() as ArrayList
+
+ settingsList.getSettingsModel(UiConfigMainMenu::class.java).setToolList(newTools)
+
+ settingsList.getSettingsModel(UiConfigTheme::class.java).theme = R.style.Imgly_Theme_NoFullscreen
+
+ settingsList.getSettingsModel(EditorSaveSettings::class.java)
+ .setOutputFilePath("$filesDir/editor/$filename")
+ .savePolicy = EditorSaveSettings.SavePolicy.RETURN_SOURCE_OR_CREATE_OUTPUT_IF_NECESSARY
+
+ return settingsList
+ }
+}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt
index 6cb5ac89d..0be79e7fe 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/SettingsActivity.kt
@@ -689,10 +689,11 @@ class SettingsActivity : SimpleActivity() {
put(LAST_EDITOR_CROP_ASPECT_RATIO, config.lastEditorCropAspectRatio)
put(LAST_EDITOR_CROP_OTHER_ASPECT_RATIO_X, config.lastEditorCropOtherAspectRatioX)
put(LAST_EDITOR_CROP_OTHER_ASPECT_RATIO_Y, config.lastEditorCropOtherAspectRatioY)
- put(LAST_EDITOR_DRAW_COLOR, config.lastEditorDrawColor)
- put(LAST_EDITOR_BRUSH_SIZE, config.lastEditorBrushSize)
put(LAST_CONFLICT_RESOLUTION, config.lastConflictResolution)
put(LAST_CONFLICT_APPLY_TO_ALL, config.lastConflictApplyToAll)
+ put(EDITOR_BRUSH_COLOR, config.editorBrushColor)
+ put(EDITOR_BRUSH_HARDNESS, config.editorBrushHardness)
+ put(EDITOR_BRUSH_SIZE, config.editorBrushSize)
put(ALBUM_COVERS, config.albumCovers)
}
@@ -812,10 +813,11 @@ class SettingsActivity : SimpleActivity() {
LAST_EDITOR_CROP_ASPECT_RATIO -> config.lastEditorCropAspectRatio = value.toInt()
LAST_EDITOR_CROP_OTHER_ASPECT_RATIO_X -> config.lastEditorCropOtherAspectRatioX = value.toString().toFloat()
LAST_EDITOR_CROP_OTHER_ASPECT_RATIO_Y -> config.lastEditorCropOtherAspectRatioY = value.toString().toFloat()
- LAST_EDITOR_DRAW_COLOR -> config.lastEditorDrawColor = value.toInt()
- LAST_EDITOR_BRUSH_SIZE -> config.lastEditorBrushSize = value.toInt()
LAST_CONFLICT_RESOLUTION -> config.lastConflictResolution = value.toInt()
LAST_CONFLICT_APPLY_TO_ALL -> config.lastConflictApplyToAll = value.toBoolean()
+ EDITOR_BRUSH_COLOR -> config.editorBrushColor = value.toInt()
+ EDITOR_BRUSH_HARDNESS -> config.editorBrushHardness = value.toString().toFloat()
+ EDITOR_BRUSH_SIZE -> config.editorBrushSize = value.toString().toFloat()
ALBUM_COVERS -> {
val existingCovers = config.parseAlbumCovers()
val existingCoverPaths = existingCovers.map { it.path }.toMutableList() as ArrayList
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/ViewPagerActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/ViewPagerActivity.kt
index 7f30b2096..0dc77ed6c 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/ViewPagerActivity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/activities/ViewPagerActivity.kt
@@ -633,7 +633,9 @@ class ViewPagerActivity : SimpleActivity(), ViewPager.OnPageChangeListener, View
val currentPath = getCurrentPath()
if (needsStupidWritePermissions(currentPath)) {
handleSAFDialog(currentPath) {
- rotateBy(degrees)
+ if (it) {
+ rotateBy(degrees)
+ }
}
} else {
rotateBy(degrees)
@@ -668,6 +670,10 @@ class ViewPagerActivity : SimpleActivity(), ViewPager.OnPageChangeListener, View
SaveAsDialog(this, currPath, false) {
val newPath = it
handleSAFDialog(it) {
+ if (!it) {
+ return@handleSAFDialog
+ }
+
toast(R.string.saving)
ensureBackgroundThread {
val photoFragment = getCurrentPhotoFragment() ?: return@ensureBackgroundThread
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/DirectoryAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/DirectoryAdapter.kt
index 4e3d29de4..abc71941e 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/DirectoryAdapter.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/DirectoryAdapter.kt
@@ -544,6 +544,10 @@ class DirectoryAdapter(activity: BaseSimpleActivity, var dirs: ArrayList(selectedKeys.size)
selectedDirs.forEach {
if (it.areFavorites() || it.isRecycleBin()) {
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/FiltersAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/FiltersAdapter.kt
deleted file mode 100644
index b614787b8..000000000
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/FiltersAdapter.kt
+++ /dev/null
@@ -1,58 +0,0 @@
-package com.simplemobiletools.gallery.pro.adapters
-
-import android.content.Context
-import android.view.LayoutInflater
-import android.view.View
-import android.view.ViewGroup
-import androidx.recyclerview.widget.RecyclerView
-import com.simplemobiletools.gallery.pro.R
-import com.simplemobiletools.gallery.pro.models.FilterItem
-import kotlinx.android.synthetic.main.editor_filter_item.view.*
-import java.util.*
-
-class FiltersAdapter(val context: Context, val filterItems: ArrayList, val itemClick: (Int) -> Unit) : RecyclerView.Adapter() {
-
- private var currentSelection = filterItems.first()
- private var strokeBackground = context.resources.getDrawable(R.drawable.stroke_background)
-
- override fun onBindViewHolder(holder: ViewHolder, position: Int) {
- holder.bindView(filterItems[position])
- }
-
- override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
- val view = LayoutInflater.from(parent.context).inflate(R.layout.editor_filter_item, parent, false)
- return ViewHolder(view)
- }
-
- override fun getItemCount() = filterItems.size
-
- fun getCurrentFilter() = currentSelection
-
- private fun setCurrentFilter(position: Int) {
- val filterItem = filterItems.getOrNull(position) ?: return
- if (currentSelection != filterItem) {
- currentSelection = filterItem
- notifyDataSetChanged()
- itemClick.invoke(position)
- }
- }
-
- inner class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
- fun bindView(filterItem: FilterItem): View {
- itemView.apply {
- editor_filter_item_label.text = filterItem.filter.name
- editor_filter_item_thumbnail.setImageBitmap(filterItem.bitmap)
- editor_filter_item_thumbnail.background = if (getCurrentFilter() == filterItem) {
- strokeBackground
- } else {
- null
- }
-
- setOnClickListener {
- setCurrentFilter(adapterPosition)
- }
- }
- return itemView
- }
- }
-}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/ManageHiddenFoldersAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/ManageHiddenFoldersAdapter.kt
index a3e2337c8..972d3e7a1 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/ManageHiddenFoldersAdapter.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/ManageHiddenFoldersAdapter.kt
@@ -81,7 +81,9 @@ class ManageHiddenFoldersAdapter(activity: BaseSimpleActivity, var folders: Arra
if (sdCardPaths.isNotEmpty()) {
activity.handleSAFDialog(sdCardPaths.first()) {
- unhideFolders(removeFolders)
+ if (it) {
+ unhideFolders(removeFolders)
+ }
}
} else {
unhideFolders(removeFolders)
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt
index 743d2127d..298a90def 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/adapters/MediaAdapter.kt
@@ -426,6 +426,10 @@ class MediaAdapter(activity: BaseSimpleActivity, var media: MutableList(selectedKeys.size)
val removeMedia = ArrayList(selectedKeys.size)
val positions = getSelectedItemPositions()
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/SaveAsDialog.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/SaveAsDialog.kt
index 614fb7bfc..a4dd80712 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/SaveAsDialog.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/dialogs/SaveAsDialog.kt
@@ -8,7 +8,8 @@ import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.gallery.pro.R
import kotlinx.android.synthetic.main.dialog_save_as.view.*
-class SaveAsDialog(val activity: BaseSimpleActivity, val path: String, val appendFilename: Boolean, val callback: (savePath: String) -> Unit) {
+class SaveAsDialog(val activity: BaseSimpleActivity, val path: String, val appendFilename: Boolean, val cancelCallback: (() -> Unit)? = null,
+ val callback: (savePath: String) -> Unit) {
init {
var realPath = path.getParentPath()
@@ -41,7 +42,8 @@ class SaveAsDialog(val activity: BaseSimpleActivity, val path: String, val appen
AlertDialog.Builder(activity)
.setPositiveButton(R.string.ok, null)
- .setNegativeButton(R.string.cancel, null)
+ .setNegativeButton(R.string.cancel) { dialog, which -> cancelCallback?.invoke() }
+ .setOnCancelListener { cancelCallback?.invoke() }
.create().apply {
activity.setupDialogStuff(view, this, R.string.save_as) {
showKeyboard(view.save_as_name)
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Activity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Activity.kt
index 8d9885c7a..bd2788697 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Activity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Activity.kt
@@ -80,7 +80,7 @@ fun Activity.launchCamera() {
fun SimpleActivity.launchAbout() {
val licenses = LICENSE_GLIDE or LICENSE_CROPPER or LICENSE_RTL or LICENSE_SUBSAMPLING or LICENSE_PATTERN or LICENSE_REPRINT or LICENSE_GIF_DRAWABLE or
- LICENSE_PICASSO or LICENSE_EXOPLAYER or LICENSE_PANORAMA_VIEW or LICENSE_SANSELAN or LICENSE_FILTERS or LICENSE_GESTURE_VIEWS
+ LICENSE_PICASSO or LICENSE_EXOPLAYER or LICENSE_PANORAMA_VIEW or LICENSE_SANSELAN or LICENSE_GESTURE_VIEWS
val faqItems = arrayListOf(
FAQItem(R.string.faq_5_title_commons, R.string.faq_5_text_commons),
@@ -138,6 +138,10 @@ fun BaseSimpleActivity.addNoMedia(path: String, callback: () -> Unit) {
if (needsStupidWritePermissions(path)) {
handleSAFDialog(file.absolutePath) {
+ if (!it) {
+ return@handleSAFDialog
+ }
+
val fileDocument = getDocumentFile(path)
if (fileDocument?.exists() == true && fileDocument.isDirectory) {
fileDocument.createFile("", NOMEDIA)
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/PhotoFragment.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/PhotoFragment.kt
index 456680c0b..212f0da68 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/PhotoFragment.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/PhotoFragment.kt
@@ -792,7 +792,7 @@ class PhotoFragment : ViewPagerFragment() {
}
private fun getExtendedDetailsY(height: Int): Float {
- val smallMargin = resources.getDimension(R.dimen.small_margin)
+ val smallMargin = context?.resources?.getDimension(R.dimen.small_margin) ?: return 0f
val fullscreenOffset = smallMargin + if (mIsFullscreen) 0 else context!!.navigationBarHeight
val actionsHeight = if (context!!.config.bottomActions && !mIsFullscreen) resources.getDimension(R.dimen.bottom_actions_height) else 0f
return context!!.realScreenSize.y - height - actionsHeight - fullscreenOffset
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt
index d120839ae..96879d3c1 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/fragments/VideoFragment.kt
@@ -471,7 +471,7 @@ class VideoFragment : ViewPagerFragment(), TextureView.SurfaceTextureListener, S
}
private fun getExtendedDetailsY(height: Int): Float {
- val smallMargin = resources.getDimension(R.dimen.small_margin)
+ val smallMargin = context?.resources?.getDimension(R.dimen.small_margin) ?: return 0f
val fullscreenOffset = smallMargin + if (mIsFullscreen) 0 else context!!.navigationBarHeight
var actionsHeight = 0f
if (!mIsFullscreen) {
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt
index 6d126dbce..4f8bce7c8 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Config.kt
@@ -475,14 +475,6 @@ class Config(context: Context) : BaseConfig(context) {
get() = prefs.getBoolean(ALLOW_ROTATING_WITH_GESTURES, true)
set(allowRotatingWithGestures) = prefs.edit().putBoolean(ALLOW_ROTATING_WITH_GESTURES, allowRotatingWithGestures).apply()
- var lastEditorDrawColor: Int
- get() = prefs.getInt(LAST_EDITOR_DRAW_COLOR, primaryColor)
- set(lastEditorDrawColor) = prefs.edit().putInt(LAST_EDITOR_DRAW_COLOR, lastEditorDrawColor).apply()
-
- var lastEditorBrushSize: Int
- get() = prefs.getInt(LAST_EDITOR_BRUSH_SIZE, 50)
- set(lastEditorBrushSize) = prefs.edit().putInt(LAST_EDITOR_BRUSH_SIZE, lastEditorBrushSize).apply()
-
var showNotch: Boolean
get() = prefs.getBoolean(SHOW_NOTCH, true)
set(showNotch) = prefs.edit().putBoolean(SHOW_NOTCH, showNotch).apply()
@@ -490,4 +482,16 @@ class Config(context: Context) : BaseConfig(context) {
var spamFoldersChecked: Boolean
get() = prefs.getBoolean(SPAM_FOLDERS_CHECKED, false)
set(spamFoldersChecked) = prefs.edit().putBoolean(SPAM_FOLDERS_CHECKED, spamFoldersChecked).apply()
+
+ var editorBrushColor: Int
+ get() = prefs.getInt(EDITOR_BRUSH_COLOR, -1)
+ set(editorBrushColor) = prefs.edit().putInt(EDITOR_BRUSH_COLOR, editorBrushColor).apply()
+
+ var editorBrushHardness: Float
+ get() = prefs.getFloat(EDITOR_BRUSH_HARDNESS, 0.5f)
+ set(editorBrushHardness) = prefs.edit().putFloat(EDITOR_BRUSH_HARDNESS, editorBrushHardness).apply()
+
+ var editorBrushSize: Float
+ get() = prefs.getFloat(EDITOR_BRUSH_SIZE, 0.05f)
+ set(editorBrushSize) = prefs.edit().putFloat(EDITOR_BRUSH_SIZE, editorBrushSize).apply()
}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt
index 5e2ab2d33..50ca3f376 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/Constants.kt
@@ -73,12 +73,13 @@ const val GROUP_DIRECT_SUBFOLDERS = "group_direct_subfolders"
const val SHOW_WIDGET_FOLDER_NAME = "show_widget_folder_name"
const val ALLOW_ONE_TO_ONE_ZOOM = "allow_one_to_one_zoom"
const val ALLOW_ROTATING_WITH_GESTURES = "allow_rotating_with_gestures"
-const val LAST_EDITOR_DRAW_COLOR = "last_editor_draw_color"
-const val LAST_EDITOR_BRUSH_SIZE = "last_editor_brush_size"
const val SHOW_NOTCH = "show_notch"
const val FILE_LOADING_PRIORITY = "file_loading_priority"
const val SPAM_FOLDERS_CHECKED = "spam_folders_checked"
const val SHOW_THUMBNAIL_FILE_TYPES = "show_thumbnail_file_types"
+const val EDITOR_BRUSH_COLOR = "editor_brush_color"
+const val EDITOR_BRUSH_HARDNESS = "editor_brush_hardness"
+const val EDITOR_BRUSH_SIZE = "editor_brush_size"
// slideshow
const val SLIDESHOW_INTERVAL = "slideshow_interval"
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/FilterThumbnailsManager.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/FilterThumbnailsManager.kt
deleted file mode 100644
index ae043ddde..000000000
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/helpers/FilterThumbnailsManager.kt
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.simplemobiletools.gallery.pro.helpers
-
-import android.graphics.Bitmap
-import com.simplemobiletools.gallery.pro.models.FilterItem
-import java.util.*
-
-class FilterThumbnailsManager {
- private var filterThumbnails = ArrayList(10)
- private var processedThumbnails = ArrayList(10)
-
- fun addThumb(filterItem: FilterItem) {
- filterThumbnails.add(filterItem)
- }
-
- fun processThumbs(): ArrayList {
- for (filterItem in filterThumbnails) {
- filterItem.bitmap = filterItem.filter.processFilter(Bitmap.createBitmap(filterItem.bitmap))
- processedThumbnails.add(filterItem)
- }
- return processedThumbnails
- }
-
- fun clearThumbs() {
- filterThumbnails = ArrayList()
- processedThumbnails = ArrayList()
- }
-}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/models/FilterItem.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/models/FilterItem.kt
deleted file mode 100644
index ce826e57e..000000000
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/models/FilterItem.kt
+++ /dev/null
@@ -1,6 +0,0 @@
-package com.simplemobiletools.gallery.pro.models
-
-import android.graphics.Bitmap
-import com.zomato.photofilters.imageprocessors.Filter
-
-data class FilterItem(var bitmap: Bitmap, val filter: Filter)
diff --git a/app/src/main/res/drawable/ic_aspect_ratio_vector.xml b/app/src/main/res/drawable/ic_aspect_ratio_vector.xml
deleted file mode 100644
index 4f30d2612..000000000
--- a/app/src/main/res/drawable/ic_aspect_ratio_vector.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
diff --git a/app/src/main/res/drawable/ic_crop_rotate_vector.xml b/app/src/main/res/drawable/ic_crop_rotate_vector.xml
deleted file mode 100644
index 09059a8b4..000000000
--- a/app/src/main/res/drawable/ic_crop_rotate_vector.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
diff --git a/app/src/main/res/drawable/ic_draw_vector.xml b/app/src/main/res/drawable/ic_draw_vector.xml
deleted file mode 100644
index 4ad8e70ee..000000000
--- a/app/src/main/res/drawable/ic_draw_vector.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
diff --git a/app/src/main/res/drawable/ic_photo_filter_vector.xml b/app/src/main/res/drawable/ic_photo_filter_vector.xml
deleted file mode 100644
index 7bf8aa41a..000000000
--- a/app/src/main/res/drawable/ic_photo_filter_vector.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
diff --git a/app/src/main/res/layout/activity_edit.xml b/app/src/main/res/layout/activity_edit.xml
index 3dffbf1bf..a4335621e 100644
--- a/app/src/main/res/layout/activity_edit.xml
+++ b/app/src/main/res/layout/activity_edit.xml
@@ -1,77 +1,38 @@
-
-
-
-
-
+ app:cropInitialCropWindowPaddingRatio="0" />
-
-
+ android:background="@drawable/gradient_background" />
-
-
+ android:layout_above="@+id/bottom_editor_crop_rotate_actions" />
-
-
+ android:layout_alignParentBottom="true"
+ android:layout_marginBottom="@dimen/medium_margin" />
diff --git a/app/src/main/res/layout/activity_new_edit.xml b/app/src/main/res/layout/activity_new_edit.xml
new file mode 100644
index 000000000..3985d5cdb
--- /dev/null
+++ b/app/src/main/res/layout/activity_new_edit.xml
@@ -0,0 +1,7 @@
+
+
diff --git a/app/src/main/res/layout/bottom_editor_actions_filter.xml b/app/src/main/res/layout/bottom_editor_actions_filter.xml
deleted file mode 100644
index 734942343..000000000
--- a/app/src/main/res/layout/bottom_editor_actions_filter.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/bottom_editor_crop_rotate_actions.xml b/app/src/main/res/layout/bottom_editor_crop_rotate_actions.xml
index 93dcbb4e6..37a93cbcb 100644
--- a/app/src/main/res/layout/bottom_editor_crop_rotate_actions.xml
+++ b/app/src/main/res/layout/bottom_editor_crop_rotate_actions.xml
@@ -16,38 +16,10 @@
android:padding="@dimen/normal_margin"
android:src="@drawable/ic_rotate_right_vector"
app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintEnd_toStartOf="@+id/bottom_resize"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent"/>
-
-
-
-
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintStart_toEndOf="@+id/bottom_rotate"
+ app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toTopOf="parent" />
diff --git a/app/src/main/res/layout/bottom_editor_draw_actions.xml b/app/src/main/res/layout/bottom_editor_draw_actions.xml
deleted file mode 100644
index 07fe2fb2c..000000000
--- a/app/src/main/res/layout/bottom_editor_draw_actions.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/bottom_editor_primary_actions.xml b/app/src/main/res/layout/bottom_editor_primary_actions.xml
deleted file mode 100644
index ed600ed0e..000000000
--- a/app/src/main/res/layout/bottom_editor_primary_actions.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/editor_filter_item.xml b/app/src/main/res/layout/editor_filter_item.xml
deleted file mode 100644
index dd3913336..000000000
--- a/app/src/main/res/layout/editor_filter_item.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/menu/menu_editor.xml b/app/src/main/res/menu/menu_editor.xml
index 16a5f7806..534116c96 100644
--- a/app/src/main/res/menu/menu_editor.xml
+++ b/app/src/main/res/menu/menu_editor.xml
@@ -6,11 +6,6 @@
android:icon="@drawable/ic_check_vector"
android:title="@string/save_as"
app:showAsAction="ifRoom"/>
-
- تبديل المفضل
تبديل رؤية الملف
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
كيف يمكنني جعل تطبيق الاستديو معرض الجهاز الإفتراضي ؟
أولا، يجب عليك العثور على المعرض الإفتراضي الحالي في قسم "التطبيقات" من إعدادات الجهاز، أبحث عن زر يقول شيئاً مثل \"فتح كافتراضي/"، ثم أنقر عليه، ثم حدد \"مسح الإعدادات الإفتراضية\". في المرة القادمة التي ستحاول فيها فتح صورة أو مقطع فيديو يجب أن تري إختيار تطبيق، حيث يمكنك تحديد تطبيق "الاستديو" وجعله التطبيق الإفتراضي.
diff --git a/app/src/main/res/values-az/strings.xml b/app/src/main/res/values-az/strings.xml
index b8c83ea2f..6ab4d33ec 100644
--- a/app/src/main/res/values-az/strings.xml
+++ b/app/src/main/res/values-az/strings.xml
@@ -202,6 +202,87 @@
Toggle favorite
Toggle file visibility
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml
index c4dc0344b..3c079f438 100644
--- a/app/src/main/res/values-ca/strings.xml
+++ b/app/src/main/res/values-ca/strings.xml
@@ -82,7 +82,7 @@
Ruta
Ruta de imatge no vàlida
Ha fallat la edició de la imatge
- File edited successfully
+ Fitxer editar satisfactoriament
Editar imatge utilitzant:
No s’ha trobat cap editor d’imatges
Ubicació de l’arxiu desconeguda
@@ -202,6 +202,87 @@
Activa favorits
Activa la visibilitat del fitxer
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Com puc fer que Simple Gallery sigui la galeria de dispositius predeterminada?
Primer heu de trobar la galeria actualment predeterminada a la secció Aplicacions de la configuració del vostre dispositiu, cerqueu un botó que digui alguna cosa semblant a \"Obrir per defecte \", feu-hi clic i seleccioneu \"Esborra valors predeterminats \".
diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml
index baf7bc05d..1200e499b 100644
--- a/app/src/main/res/values-cs/strings.xml
+++ b/app/src/main/res/values-cs/strings.xml
@@ -202,6 +202,87 @@
Přepnutí oblíbenosti
Přepnutí viditelnosti souboru
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Jak nastavím Jednoduchou Galerii jako výchozí galerii?
Nejdříve musíte najít v nastavení zařízení, v sekci Aplikace, současnou výchozí galerii, zvolit tlačítko s textem ve smyslu \"Nastavení výchozího otevírání\" a následně \"Vymazat výchozí nastavení\".
diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml
index 724f21045..03cd3e395 100644
--- a/app/src/main/res/values-da/strings.xml
+++ b/app/src/main/res/values-da/strings.xml
@@ -202,6 +202,87 @@
Favorit
Synlighed
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Hvordan kan jeg gøre Simple Gallery til min enheds standardgalleri?
Først skal du finde det nuværende standardgalleri, i Apps-sektionen af din enheds indstillinger. Kig efter en knap som hedder noget i stil med \"Åbn som standard\", klik på denne og vælg \"Ryd standarder\".
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index e8162dfb5..f22771d90 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -202,6 +202,87 @@
Favoriten umschalten
Schaltet die Sichtbarkeit von Dateien um
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Wie kann ich Schlichte Galerie als Standardanwendung auswählen?
Zunächst musst du unter \"Apps\" in den Geräteeinstellungen die aktuelle Standardgalerie finden. Suche nach einer Bedienfläche wie \"Standardmässig öffnen\", betätige diese und wähle \"Standardeinstellungen löschen\".
diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml
index 5ef9cecfa..9c154d093 100644
--- a/app/src/main/res/values-el/strings.xml
+++ b/app/src/main/res/values-el/strings.xml
@@ -82,7 +82,7 @@
Διαδρομή
Μη έγκυρη διαδρομή εικόνας
Η επεξεργασία εικόνας απέτυχε
- File edited successfully
+ Επιτυχής επεξεργασία αρχείου
Επεξεργασία εικόνας με:
Δεν βρέθηκε επεργαστής εικόνων
Άγνωστη τοποθεσία αρχείου
@@ -90,9 +90,9 @@
Περιστροφή αριστερά
Περιστροφή δεξιά
Περιστροφή κατά 180º
- Αναποδογύρισμα
- Οριζόντιο αναποδογύρισμα
- Κατακόρυφο αναποδογύρισμα
+ Περιστροφή
+ Οριζόντια περιστροφή
+ Κατακόρυφη περιστροφή
Ελεύθερο
Άλλο
@@ -103,8 +103,8 @@
Εφαρμογή ως ταπετσαρία με:
Η ταπετσαρία εφαρμόζεται...
Η ταπετσαρία εφαρμόστηκε
- Αναλογία σε κατακόρυφη προβολή
- Αναλογία σε οριζόντια προβολή
+ Αναλογία κατακόρυφης προβολής
+ Αναλογία οριζόντιας προβολής
Αρχική οθόνη
Οθόνη κλειδώματος
Αρχική και Οθόνη Κλειδώματος
@@ -122,7 +122,7 @@
Χωρίς
Εξασθένηση
Ολίσθηση
- Η εμφάνιση διαφανειών τελείωσε
+ Τέλος εμφάνισης διαφανειών
Δεν βρέθηκαν πολυμέσα για την εμφάνιση διαφανειών
@@ -151,14 +151,14 @@
Αυτόματη αναπαραγωγή βίντεο
- Απομνημόνευση της τελευταίας θέσης αναπαραγωγής βίντεο
+ Απομνημόνευση τελευταίας θέσης αναπαραγωγής βίντεο
Αλλαγή προβολής ονόματος αρχείων
Επανάληψη βίντεο
Εμφάνιση κινούμενων GIFs στα εικονίδια
Μέγιστη φωτεινότητα κατά την προβολή πλήρους οθόνης
Κόψιμο εικονιδίων σε τετράγωνα
Εμφάνιση διάρκειας βίντεο
- Περιστροφή σε πλήρη οθόνη απο
+ Περιστροφή πλήρους οθόνης σύμφωνα με
Ρυθμίσεις συστήματος
Περιστροφή συσκευής
Αναλογία εικόνας
@@ -202,6 +202,87 @@
Εναλλαγή αγαπημένων
Εναλλαγή προβολής αρχείου
+
+ Προσαρμογή
+ Επαναφορά
+ Τετράγωνο
+ Μετατροπή
+ Φίλτρο
+ Χωρίς
+ Ρυθμίσεις
+ Σκιές
+ Έκθεση
+ Φωτισμένα
+ Φωτισμός
+ Αντίθεση
+ Κορεσμός
+ Σαφήνεια
+ Γάμμα
+ Μαύρα
+ Λευκά
+ Θερμοκρασία
+ Οξύτητα
+ Επαναφορά
+ Εστίαση
+ Χωρίς
+ Ακτίνα
+ Γραμμικά
+ Καθρέπτης
+ Θόλωση
+ Κείμενο
+ Επιλογή κειμένου
+ Χρώμα κειμένου
+ Γραμ/σειρά
+ Προσθήκη
+ Επεξεργασία
+ Ίσιωμα
+ Γραμ/σειρά
+ Χρώμα
+ BG Χρώμα
+ Ευθυγράμμιση
+ Σε Γραμ/σειρά
+ Διαγραφή
+ Το κείμενό μου
+ Βούρτσα
+ Χρώμα
+ Μέγεθος
+ Σκληρότητα
+ Σε Γραμ/σειρά
+ Διαγραφή
+ Χρώμα Βούρτσας
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Πώς μπορώ να κάνω την Απλή Συλλογή προεπιλεγμένη εφαρμογή συλλογής πολυμέσων;
Αρχικά πρέπει να βρείτε την τρέχουσα προεπιλεγμένη εφαρμογή γκάλερι στις Ρυθμίσεις (τμήμα Εφαρμογών) της συσκευής. Αναζητήστε για ένα κουμπί που αναφέρει κάτι σαν \"Άνοιγμα με προεπιλογή\", πατήστε το, μετά επιλέξτε \"Καθαρισμός προεπιλεγμένων\".
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index bd4ec6c57..e1ac72856 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -4,8 +4,8 @@
Galería
Editar
Abrir cámara
- (oculto)
- (excluido)
+ (Oculto)
+ (Excluido)
Fijar carpeta
No fijar carpeta
Anclar arriba
@@ -32,13 +32,13 @@
Fijando…
Fecha fijada correctamente
Comparte una versión redimensionada
- Hey,\n\nseems like you upgraded from the old free app. You can now uninstall the old version, which has an \'Upgrade to Pro\' button at the top of the app settings.\n\nYou will only have the Recycle bin items deleted, favorite items unmarked and you will also have to reset your app settings.\n\nThanks!
+ Oye,\n\nParece que actualizaste de la aplicación gratuita vieja. Ahora puedes desinstalar la versión vieja, que tiene un botón \'Actualizar a Pro\' en la aprte superior de los ajustes de la app.\n\nSolo tendrás los elementos de la Papelera de Reciclaje eliminados, favoritos desmarcados y también tendrás que reiniciar los ajustes de la app.\n\n¡Gracias!
Cambiar a la búsqueda de archivos en todas las carpetas visibles
Filtro de medios
Imágenes
- Vídeos
+ Videos
GIFs
Imagenes RAW
SVGs
@@ -47,25 +47,25 @@
Cambiar filtros
- Esta función oculta la carpeta agregando un archivo \'.nomedia\' en ella, y ocultará también las subcarpetas. Puede mostrarlas cambiando la opción \'Mostrar carpetas ocultas\' en los Ajustes. ¿Continuar?
+ Esta función oculta la carpeta agregando un archivo \'.nomedia\' en ella, y también ocultará las subcarpetas. Puede mostrarlas modificando la opción \'Mostrar carpetas ocultas\' en los Ajustes. ¿Continuar?
Excluir
Carpetas excluidas
Gestionar carpetas excluidas
Esto excluirá la selección junto con sus subcarpetas, solamente de Simple Gallery. Puede gestionar las carpetas excluidas en los Ajustes.
¿Excluir mejor la carpeta superior?
- Excluir las carpetas las hará junto a sus subcarpetas ocultas sólo en Simple Gallery, estas seguirán siendo visibles en otras aplicaciones.\\n\\nSi desea ocultarlo de otras aplicaciones, utilice la función de Ocultar.
+ Excluir las carpetas las excluirá junto a sus subcarpetas sólo en Simple Gallery, estas seguirán siendo visibles en otras aplicaciones.\\n\\nSi desea ocultarlo de otras aplicaciones, utilice la función de \"Ocultar\".
Eliminar todo
¿Eliminar todas las carpetas de la lista de excluidas? Esto no borrará las carpetas.
Carpetas ocultas
Gestionar carpetas ocultas
- Parece que no tienes carpetas ocultas con \".nomedia\" ficheros.
+ Parece que no tienes carpetas ocultas con archivos \".nomedia\".
Carpetas incluidas
Gestionar carpetas incluidas
Agregar carpeta
Si tiene algunas carpetas que contengan multimedia, pero que no fueron reconocidas por la aplicación, puede agregarlas manualmente aquí.
- No media files have been found. You can solve it by adding the folders containing media files manually.
+ Ningún archivo multimedia ha sido encontrado. Puedes resolverlo añadiendo las carpetas que contengan archivos multimedia manualmente.
Redimensionar
@@ -82,7 +82,7 @@
Ruta
Ruta de imagen no válida
Falló la edición de imagen
- File edited successfully
+ Fichero editado satisfactoriamente
Editar imagen usando:
No se encontró editor de imágenes
Ubicación del archivo desconocida
@@ -101,7 +101,7 @@
Establecer como fondo de pantalla
Error al establecer fondo de pantalla
Establecer como fondo de pantalla con:
- Estableciendo fondo de pantalla…
+ Estableciendo fondo de pantalla...
Fondo de pantalla establecido correctamente
Relación de aspecto tipo retrato
Relación de aspecto tipo paisaje
@@ -110,19 +110,19 @@
Pantalla de inicio y de bloqueo
- Diapositivas
+ Presentación de diapositivas
Intervalo (segundos):
Incluir fotos
Incluir vídeos
Incluir GIFs
Orden aleatorio
Mover hacia atrás
- Presentación de diapositivas
+ Presentación en bucle
Animación
Ninguna
- Fusión
+ Desvanecimiento
Desplazamineto
- La diapositiva terminó
+ La presentación de diapositivas terminó
No se han encontrado medios para la presentación de diapositivas
@@ -133,15 +133,15 @@
Agrupar por
- No agrupar ficheros
+ No agrupar
Carpeta
- Último modificado
- Último modificado (diario)
- Último modificado (mensual)
- Fecha de toma
- Fecha de toma (diario)
- Fecha de toma (mensual)
- Tipo de fichero
+ Fecha de modificación
+ Fecha de modificacion (Día)
+ Fecha de modificación (Mes)
+ Fecha de creación
+ Fecha de creación (Día)
+ Fecha de creación (Mes)
+ Tipo de arhivo
Extensión
Tenga en cuenta que la agrupación y la clasificación son 2 campos independientes
@@ -151,38 +151,38 @@
Reproducir vídeos automáticamente
- Recuerde la última posición de reproducción de video
+ Recordar la última posición en la reproducción de video
Cambiar la visibilidad del nombre de archivo
- Reproducción continua de vídeos
+ Reproducir videos en bucle
Animar las miniaturas de GIFs
Brillo máximo cuando se muestra multimedia
Recortar miniaturas en cuadrados
- Mostrar duración del video
+ Mostrar la duración de los videos
Rotar multimedia en pantalla completa según
Configuración del sistema
Rotación del dispositivo
Relación de aspecto
Fondo y barra de estado negra en medios de pantalla completa
Desplazar miniaturas horizontalmente
- Ocultar automáticamente la interfaz de usuario del sistema en medios de pantalla completa
+ Ocultar la interfaz del sistema en pantalla completa
Eliminar carpetas vacias despues de borrar su contenido
- Permite controlar el brillo con gestos verticales
+ Permite controlar el brillo en las fotos con gestos verticales
Permite controlar el volumen y el brillo del video con gestos verticales
- Mostrar el conteo de medios de las carpetas en la vista principal
- Mostrar detalles extendidos sobre medios en pantalla completa
- Administrar detalles ampliados
+ Mostrar el número de archivos dentro de las carpetas en la página principal
+ Mostrar información de los archivos en pantalla completa
+ Información de lo archivos a mostrar
Permitir zoom con un dedo en pantalla completa
- Permitir el cambio instantáneo de medios haciendo clic en los lados de la pantalla
+ Deslpazarse en los medios haciendo clic en los lados de la pantalla
Permitir zoom profundo
Ocultar detalles ampliados cuando la barra de estado está oculta
- Mostrar algunos botones de acción en la parte inferior de la pantalla
+ Mostrar botones de acción en la parte inferior de la pantalla
Mostrar la papelera de reciclaje en la pantalla de carpetas
Imágenes ampliables con zoom
- Muestra imágenes con la mayor calidad posible
+ Mostrar imágenes con la mayor calidad posible
Mostrar la Papelera de reciclaje como el último elemento en la pantalla principal
Permite cerrar la vista de pantalla completa con un gesto hacia abajo.
- Permitir zoom 1:1 con dos toques dobles
- Siempre abre videos en una pantalla separada con nuevos gestos horizontales
+ Permitir zoom 1:1 con un toque doble
+ Abrir videos en una pantalla separada con nuevos gestos horizontales
Mostrar una muesca si está disponible
Permite girar con gestos
Prioridad de carga de archivos
@@ -199,8 +199,89 @@
Administrar los botones de la parte inferior
- Activar favoritos
- Activar visibilidad de fichero
+ Agregar a favoritos
+ Alternar visibilidad de archivo
+
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
¿Cómo puedo hacer que Simple Gallery sea la galería de dispositivos predeterminada?
@@ -236,54 +317,54 @@
- Simple Gallery Pro - Photo Manager & Editor
+ Simple Gallery Pro - Gestor y editor de fotos
Explore sus recuerdos sin interrupciones.
- Simple Gallery Pro is a highly customizable offline gallery. Organize & edit your photos, recover deleted files with the recycle bin, protect & hide files and view a huge variety of different photo & video formats including RAW, SVG and much more.
+ Simple Gallery Pro es una galería altamente personalizable disponible sin conexión. Organiza y edita tus fotos, recupera archivos eliminados con la papelera de reciclaje, protege y oculta archivos y mira una gran variedad de diferentes formatos de fotos y videos incluyendo RAW, SVG y muchos más.
- The app contains no ads and unnecessary permissions. As the app doesn’t require internet access either, your privacy is protected.
+ La app no contiene anuncios ni permisos innecesarios. Ya que la app tampoco requiere acceso a internet, tu privacidad está protegida.
-------------------------------------------------
- SIMPLE GALLERY PRO – FEATURES
+ SIMPLE GALLERY PRO – CARACTERÍSTICAS
-------------------------------------------------
- • Offline gallery with no ads or popups
- • Simple gallery photo editor – crop, rotate, resize, draw, filters & more
- • No internet access needed, giving you more privacy and security
- • No unnecessary permissions required
- • Quickly search images, videos & files
- • Open & view many different photo and video types (RAW, SVG, panoramic etc)
- • A variety of intuitive gestures to easily edit & organize files
- • Lots of ways to filter, group & sort files
- • Customize the appearance of Simple Gallery Pro
- • Available in 32 languages
- • Mark files as favorites for quick access
- • Protect your photos & videos with a pattern, pin or fingerprint
- • Use pin, pattern & fingerprint to protect the app launch or specific functions too
- • Recover deleted photos & videos from the recycle bin
- • Toggle visibility of files to hide photos & videos
- • Create a customizable slideshow of your files
- • View detailed information of your files (resolution, EXIF values etc)
- • Simple Gallery Pro is open source
- … and much much more!
+ • Galería disponible sin conexión sin anuncios ni ventanas emergentes
+ • Editor de fotos – Recorta, rota, redimensiona, dibuja, filtra y más
+ • Acceso a internet no necesario, dándote más privacidad y seguridad
+ • No requiere permisos innecesarios
+ • Búsqueda rápida de imágenes, videos y archivos
+ • Abre y mira muchos tipos de fotos y videos diferentes (RAW, SVG, panorámica, etc.)
+ • Variedad de gestos intuitivos para editar y organizar archivos fácilmente
+ • Montones de formas de filtrar, agrupar y ordenar archivos
+ • Personaliza la apariencia de Simple Gallery Pro
+ • Disponible en 32 lenguajes
+ • Seleccionar archivos como favoritos para acceder rápidamente
+ • Protege tus fotos y videos con patrón, pin o huella digital
+ • Usa pin, patrón y huella digital para proteger la apertura de la app o también funciones específicas
+ • Recupera fotos y videos eliminados desde la papelera de reciclaje
+ • Alterna la visibilidad de archivos para ocultar fotos y videos
+ • Crea una presentación de diapositivas personalizable de tus archivos
+ • Mira información detallada de tus archivos (Resolución, valores EXIF, etc.)
+ • Simple Gallery Pro es de código abierto
+ … ¡y mucho, mucho más!
- PHOTO GALLERY EDITOR
- Simple Gallery Pro makes it easy to edit your pictures on the fly. Crop, flip, rotate and resize your pictures. If you’re feeling a little more creative you can add filters and draw on your pictures!
+ EDITOR DE FOTOS
+ Simple Gallery Pro hace más fácil editar tus fotos rápidamente. Corta, gira, rota y redimensiona tus fotos. Si te sientes un poco más creativo, ¡Puedes añadir filtros y dibujar en tus fotos!
- SUPPORT FOR MANY FILE TYPES
- Unlike some other gallery viewers & photo organizers, Simple Gallery Pro supports a huge range of different file types including JPEG, PNG, MP4, MKV, RAW, SVG, Panoramic photos, Panoramic videos and many more.
+ SOPORTA MUCHOS TIPOS DE ARCHIVOS
+ Al contrario de otras galerías y organizadores de fotos, Simple Gallery Pro soporta un enorme rango de tipos de archivos diferentes incluyendo JPEG, PNG, MP4, MKV, RAW, SVG, fotos panorámicas, videos panorámicos y muchos más.
- HIGHLY CUSTOMIZABLE GALLERY MANAGER
- From the UI to the function buttons on the bottom toolbar, Simple Gallery Pro is highly customizable and works the way you want it to. No other gallery manager has this kind of flexibility! Thanks to being open source, we’re also available in 32 languages!
+ GALERÍA ALTAMENTE PERSONALZIABLE
+ Desde la IU hasta los botones de funciones en la barra de herramientas inferior, Simple Gallery Pro es altamente personalizable y trabaja de la forma que quieras. ¡Ninguna otra galería tiene este tipo de flexibilidad! Gracias a que es de código abierto, ¡También está disponible en 32 lenguajes!
- RECOVER DELETED PHOTOS & VIDEOS
- Accidentally deleted a precious photo or video? Don’t worry! Simple Gallery Pro features a handy recycle bin where you can recover deleted photos & videos easily.
+ RECUPERA FOTOS Y VIDEOS ELIMINADOS
+ ¿Accidentalmente eliminaste una foto o video precioso? ¡No te preocupes! Simple Gallery Pro contiene una práctica papelera de reciclaje donde puedes recuperar fácilmente fotos y videos eliminados.
- PROTECT & HIDE PHOTOS, VIDEOS & FILES
- Using pin, pattern or your device’s fingerprint scanner you can protect and hide photos, videos & entire albums. You can protect the app itself or place locks on specific functions of the app. For example, you can’t delete a file without a fingerprint scan, helping to protect your files from accidental deletion.
+ PROTEGE Y OCULTA FOTOS, VIDEOS Y ARCHIVOS
+ Usando pin, patrón o el lector de huella de tu dispositivo, puedes proteger y ocultar fotos, videos y álbumes enteros. Puedes proteger la propia aplicación o bloquear funciones específicas en la misma. Por ejemplo, no puedes eliminar un archivo sin un escaneo de huella, ayudando a proteger tus archivos de ser eliminados accidentalmente.
- Check out the full suite of Simple Tools here:
+ Mira la suite completa de Simple Tools aquí:
https://www.simplemobiletools.com
Facebook:
diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml
index e7577e94f..3a4f6ffdf 100644
--- a/app/src/main/res/values-fi/strings.xml
+++ b/app/src/main/res/values-fi/strings.xml
@@ -202,6 +202,87 @@
Toggle favorite
Toggle file visibility
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Miten voin tehdä Simple Gallerystä oletusgalleriasovelluksen?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 99a1b0387..07308d101 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -202,6 +202,87 @@
Ajouter aux favoris
Visibilité du fichier
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Comment faire de Simple Gallery ma galerie par défaut ?
Il faut dans un premier temps, trouver l\'application \"Galerie\" par défaut dans la section \"Applications\" des paramètres de l\'appareil, puis appuyer sur \"Ouvrir par défaut\", et enfin sélectionner \"Réinitialiser les paramètres par défaut\". La prochaine fois que vous ouvrirez une image ou une vidéo, il vous sera proposé de choisir une application, choisissez \"Simple Gallery\" puis \"Toujours\".
diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml
index de6fa84a1..fa073d954 100644
--- a/app/src/main/res/values-gl/strings.xml
+++ b/app/src/main/res/values-gl/strings.xml
@@ -202,6 +202,87 @@
Toggle favorite
Toggle file visibility
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Cómo podo facer que Simple Gallery sexa a galería por omisión no dispositivo?
Primeiro debe atopar a galería por omsión actual na sección de App nos axustes do dispositivo, buscar un botón que diga algo como \"Abrir por omisión\", pulsalo e despois seleccionar \"Limpar por omisión\".
diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml
index 372f978bb..f219ee7c4 100644
--- a/app/src/main/res/values-hr/strings.xml
+++ b/app/src/main/res/values-hr/strings.xml
@@ -202,6 +202,87 @@
Uključi/isključi favorite
Uključi/isključi vidljivost datoteka
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Kako mogu postaviti Jednostavnu galeriju kao zadanu galeriju uređaja?
Prvo morate pronaći trenutačno zadanu galeriju u odjeljku Aplikacije, u Postavkama uređaja, potražite gumb koji kaže nešto poput opcije \"Otvori prema zadanim postavkama\", kliknite na tu opciju, a zatim odaberite \"Izbriši zadane postavke\".
diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml
index 08d3d33e9..3fc07f5b3 100644
--- a/app/src/main/res/values-hu/strings.xml
+++ b/app/src/main/res/values-hu/strings.xml
@@ -203,6 +203,87 @@
Kedvencek módosítása
Fájl láthatóság módosítása
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Hogyan tudom beállítani a Simple Gallery-t alapértelmezett galériának?
Először meg kell találnia az alapértelmezett galériát az eszköz beállításainak Alkalmazások részében. Keressen egy olyan gombot, amely valami olyasmit, mint az \"Legyen alapértelmezett\", kattintson rá, majd válassza a \"Alapértelmezések törlése\" pontot.
diff --git a/app/src/main/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml
index 2f13ee5a3..5a1f4ce34 100644
--- a/app/src/main/res/values-id/strings.xml
+++ b/app/src/main/res/values-id/strings.xml
@@ -202,6 +202,87 @@
Favorit
Ubah visibilitas berkas
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Bagaimana cara menjadikan Simple Gallery sebagai aplikasi galeri default?
Pertama anda harus menemukan galeri default saat ini di bagian Aplikasi di Pengaturan perangkat, cari tombol dengan label seperti \"Buka secara default\", klik, lalu pilih \"Hapus default\".
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 2f13ee5a3..5a1f4ce34 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -202,6 +202,87 @@
Favorit
Ubah visibilitas berkas
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Bagaimana cara menjadikan Simple Gallery sebagai aplikasi galeri default?
Pertama anda harus menemukan galeri default saat ini di bagian Aplikasi di Pengaturan perangkat, cari tombol dengan label seperti \"Buka secara default\", klik, lalu pilih \"Hapus default\".
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index a38aaa46a..7f4a943c2 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -202,6 +202,87 @@
Attiva / disattiva preferito
Attiva / disattiva la visibilità dei file
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Come posso impostare Semplice Galleria come la galleria predefinita del dispositivo?
Si deve prima trovare l\'attuale galleria predefinita nella sezione App delle impostazioni di sistema, cercare un pulsante che dice qualcosa come \"App predefinite\", cliccarlo e poi selezionare \"Ripristina predefiniti\".
diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml
index a65590f8f..780b1244b 100644
--- a/app/src/main/res/values-ja/strings.xml
+++ b/app/src/main/res/values-ja/strings.xml
@@ -202,6 +202,87 @@
お気に入り
表示/非表示の切替
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml
index fa94511aa..1aae7ab77 100644
--- a/app/src/main/res/values-ko-rKR/strings.xml
+++ b/app/src/main/res/values-ko-rKR/strings.xml
@@ -202,6 +202,87 @@
즐겨찾기
파일 제외
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml
index 447ee9b0c..568060164 100644
--- a/app/src/main/res/values-lt/strings.xml
+++ b/app/src/main/res/values-lt/strings.xml
@@ -202,6 +202,87 @@
Toggle favorite
Toggle file visibility
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Kaip galiu padaryti paprastą galeriją kaip numatytąją įrenginio galeriją?
Pirmiausia turite rasti numatytąją galeriją savo prietaiso nustatymų skyriuje "Programėlės", ieškoti mygtuko panašaus į \ "Atidaryti pagal numatytuosius \", spustelėkite jį, tada pasirinkite \ "Išvalyti numatytuosius \".
diff --git a/app/src/main/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml
index a50a62907..85b68bb6c 100644
--- a/app/src/main/res/values-nb/strings.xml
+++ b/app/src/main/res/values-nb/strings.xml
@@ -82,7 +82,7 @@
Bane
Ugyldig bildebane
Bilderedigering feilet
- File edited successfully
+ Fil vellykket redigert
Rediger bilde med:
Ingen bilderedigeringsapp funnet
Ukjent filplassering
@@ -202,6 +202,87 @@
Favoritt av/på
Filsynlighet av/på
+
+ Egendefinert
+ Tilbakestill
+ Kvadrat
+ Transformer
+ Filter
+ Ingen
+ Juster
+ Skygger
+ Eksponering
+ Highlights
+ Lysstyrke
+ Kontrast
+ Metning
+ Klarhet
+ Gamma
+ Blacks
+ Whites
+ Temperatur
+ Skarphet
+ Tilbakestill
+ Fokus
+ Ingen
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Tekst
+ Tekstvalg
+ Tekstfarge
+ Skrift
+ Legg til
+ Rediger
+ Straighten
+ Skrift
+ Farge
+ Bakg.farge
+ Justering
+ Til front
+ Slett
+ Din tekst
+ Pensel
+ Farge
+ Størrelse
+ Hardhet
+ Til front
+ Slett
+ Penselfarge
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index 82c50ba89..8361c816a 100644
--- a/app/src/main/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -82,7 +82,7 @@
Pad
Ongeldig pad naar afbeelding
Fout bij bewerken van afbeelding
- File edited successfully
+ Wijzigingen zijn opgeslagen
Afbeelding bewerken met:
Geen app gevonden voor fotobewerking
Onbekende bestandslocatie
@@ -202,6 +202,87 @@
Als favoriet instellen
Bestand tonen/verbergen
+
+ Aangepast
+ Beginwaarden
+ Vierkant
+ Vervormen
+ Filter
+ Geen
+ Aanpassen
+ Schaduwen
+ Belichting
+ Hooglichten
+ Helderheid
+ Contrast
+ Verzadiging
+ Lokaal contrast
+ Gamma
+ Zwarte tinten
+ Witte tinten
+ Temperatuur
+ Scherpte
+ Beginwaarden
+ Focus
+ Geen
+ Radiaal
+ Lineair
+ Gespiegeld
+ Gaussiaans
+ Tekst
+ Tekstopties
+ Tekstkleur
+ Lettertype
+ Toevoegen
+ Bewerken
+ Rechttrekken
+ Lettertype
+ Kleur
+ Achtergrondkleur
+ Uitlijning
+ Naar voren
+ Verwijderen
+ Vul hier tekst in
+ Penseel
+ Kleur
+ Grootte
+ Hardheid
+ Naar voren
+ Verwijderen
+ Penseelkleur
+ Bewerken
+ Afsluiten
+ Sluiten zonder de wijzigingen op te slaan?
+ Ja
+ Nee
+ Annuleren
+ Accepteren
+ Opslaan
+ Afbeelding exporteren…
+ Afbeelding %s exporteren.
+ Spiegelen H
+ Spiegelen V
+ Ongedaan maken
+ Opnieuw
+ Kleur kiezen
+ Transparant
+ Wit
+ Grijs
+ Zwart
+ Lichtblauw
+ Blauw
+ Paars
+ Orchidee
+ Roze
+ Rood
+ Oranje
+ Goud
+ Geel
+ Olijf
+ Groen
+ Aquamarijn
+ Met pipet kiezen
+
Hoe kan ik Eenvoudige Galerij instellen als standaard-app voor foto’s en video’s?
Zoek eerst de huidige standaard-app voor foto’s en video’s in de Android-instellingen (via \"Apps\" of "\Apps en meldingen\"). Klik bij de App-info op \"Standaardwaarden wissen\" (soms onder \"Standaard openen\").
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index f3ee11f77..f916718a3 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -202,6 +202,87 @@
Ulubione
Widoczność plików
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Jak mogę ustawić tą aplikację jako domyślną aplikację galerii?
Znajdź obecną domyślną aplikację galerii w ustawieniach systemowych (sekcja \'Aplikacje\'). Na ekranie z informacjami o niej kliknij \'Otwórz domyślnie\', a następnie \'Wyczyść domyślne\'. Gdy podczas następnej próby otwarcia zdjęcia czy filmu system zapyta Cię jaką aplikacją to zrobić, wybierz Prostą Galerię i opcję zapamiętania tego wyboru.
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index d3f2495fd..c09096745 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -200,7 +200,88 @@
Gerenciar botões de ação
Favoritar/Desfavoritar
- Exibir/Ocultar arquivov
+ Exibir/Ocultar arquivo
+
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
O que devo fazer para que a Simple Galeria seja o aplicativo de galeria padrão do meu aparelho?
diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml
index bcf4b5ef1..59101c006 100644
--- a/app/src/main/res/values-pt/strings.xml
+++ b/app/src/main/res/values-pt/strings.xml
@@ -202,6 +202,87 @@
Alternar favoritos
Alternar visibilidade dos ficheiros
+
+ Personalizado
+ Repor
+ Quadrado
+ Transformar
+ Filtrar
+ Nenhum
+ Ajustar
+ Sombras
+ Exposição
+ Realce
+ Brilho
+ Contraste
+ Saturação
+ Claridade
+ Gama
+ Pretos
+ Brancos
+ Temperatura
+ Nitidez
+ Repor
+ Foco
+ Nenhum
+ Radial
+ Linear
+ Espelhado
+ Gaussiano
+ Texto
+ Opções de texto
+ Cor do texto
+ Tipo de letra
+ Adicionar
+ Editar
+ Endireitar
+ Tipo de letra
+ Cor
+ Cor de fundo
+ Alinhamento
+ To Front
+ Apagar
+ O seu texto
+ Pincel
+ Cor
+ Tamanho
+ Espessura
+ para a frente
+ Apagar
+ Cor do pincel
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index 98b575255..3ce6ae0ec 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -202,6 +202,87 @@
Переключение избранного
Переключение видимости файлов
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Как сделать Simple Gallery галереей по умолчанию?
Сначала вы должны найти галерею по умолчанию в разделе \"Приложения\" настроек вашего устройства; найдите кнопку, названную \"Открыть по умолчанию\",затем нажмите на неё и выберите \"Очистить значения по умолчанию\".
diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml
index 3c126a8bd..968c47c60 100644
--- a/app/src/main/res/values-sk/strings.xml
+++ b/app/src/main/res/values-sk/strings.xml
@@ -202,6 +202,87 @@
Prepnutie obľúbenosti
Prepnutie viditeľnosti súboru
+
+ Vlastný
+ Reset
+ Štvorec
+ Transformovať
+ Filtre
+ Žiadny
+ Doladenie
+ Tiene
+ Expozícia
+ Zdôraznenie
+ Jas
+ Kontrast
+ Sýtosť
+ Jasnosť
+ Gamma
+ Čierne
+ Biele
+ Teplota
+ Ostrosť
+ Reset
+ Zaostrenie
+ Žiadne
+ Lúčovité
+ Lineárne
+ Zrkadlovité
+ Gaussian
+ Text
+ Nastavenia textu
+ Farba textu
+ Písmo
+ Pridať
+ Upraviť
+ Narovnať
+ Písmo
+ Farba
+ Pozadie
+ Zarovnanie
+ Dopredu
+ Vymazať
+ Váš text
+ Štetec
+ Farba
+ Veľkosť
+ Tvrdosť
+ Dopredu
+ Vymazať
+ Farba štetca
+ Editor
+ Zavrieť editor?
+ Ozaj chcete zahodiť úpravy obrázka?
+ Áno
+ Nie
+ Zrušiť
+ Prijať
+ Uložiť
+ Exportuje sa obrázok…
+ Exportovanie obrázka %s.
+ Preklopiť H
+ Preklopiť V
+ Späť
+ Opäť spraviť
+ Výber farieb
+ Priesvitná
+ Biela
+ Sivá
+ Čierna
+ Svetlomodrá
+ Modrá
+ Fialová
+ Orchidea
+ Ružová
+ Červená
+ Oranžová
+ Zlatá
+ Žltá
+ Olivová
+ Zelená
+ Aquamarin
+ Pipetovateľná farba
+
Ako viem spraviť Jednoduchú Galériu predvolenou galériou zariadenia?
Najprv musíte nájsť v nastaveniach zariadenia,sekcii Aplikácie, súčasnú predvolenú galériu, zvoliť tlačidlo s textom v zmysle \"Nastavenie predvoleného otvárania\" a následne \"Vymazať predvolené nastavenia\".
diff --git a/app/src/main/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml
index 659514b1b..197c49554 100644
--- a/app/src/main/res/values-sl/strings.xml
+++ b/app/src/main/res/values-sl/strings.xml
@@ -202,6 +202,87 @@
Preklopi priljubljene
Preklopi vidljivost datotek
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Kako naredim Simple galerijo za privzeto aplikacijo na napravi?
Najprej morate najti trenutno privzeto aplikacijo za prikaz slik med aplikacijami v nastavitvah naprave, kjer poiščete gumb v smislu \"Odpri kot privzeto\", kliknite nanj in izberite \"Izbriši privzeto\".
diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml
index 0dda5fde3..d6cf72ebc 100644
--- a/app/src/main/res/values-sr/strings.xml
+++ b/app/src/main/res/values-sr/strings.xml
@@ -202,6 +202,87 @@
Укључи/искључи омиљени
Укључи/искључи видљивост датотеке
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Како да подесим Једноставну галерију да буде главна галерија уређаја?
Први морате да нађете тренутну главну галерију у Апликације секцији подешавања вашег уређаја, потражите дугме које каже нешто попут \"Отвори по дифолту\", кликни на то, затим изабери \"Уклони дифолт\".
diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml
index 1e6f7a038..cbe6289c3 100644
--- a/app/src/main/res/values-sv/strings.xml
+++ b/app/src/main/res/values-sv/strings.xml
@@ -202,6 +202,87 @@
Lägg till/ta bort från favoriter
Visa/dölj fil
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml
index e04f830c0..d044fb8ff 100644
--- a/app/src/main/res/values-tr/strings.xml
+++ b/app/src/main/res/values-tr/strings.xml
@@ -202,6 +202,87 @@
Favoriyi göster/gizle
Dosya görünürlüğünü aç/kapat
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Basit Galeri\'yi nasıl varsayılan cihaz galerisi yapabilirim?
Önce cihaz ayarlarınızın Uygulamalar bölümünde varsayılan galeriyi bulmanız, \"Varsayılan olarak aç\" gibi bir şey söyleyen bir düğme aramanız, üzerine tıklamanız ve ardından \"Varsayılanları Temizle\"yi seçmeniz gerekir.
diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index dfd954b03..c29acb22a 100644
--- a/app/src/main/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -202,6 +202,87 @@
Перемкнути улюблене
Перемкнути видимість файлу
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
Як зробити Simple Gallery галереєю за-замовчуванням?
Спочатку необхідно знайти поточну галерею за-замовчуванням в розділі \"Додатки\" налаштувань вашого пристрою. Знайдіть і натисніть на кнопку \"Використовувати за-замовчуванням\" абощо, потім оберіть \"Очистити замовчування\".
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index ea954d84d..97d1713ca 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -202,6 +202,87 @@
收藏
隐藏文件
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
如何把简约图库设置为设备的默认图库?
首先,你需要在设备设置的“应用”菜单中找到你当前的默认图库,找到并点击“默认打开”按钮,然后点击“清除默认值”。下次当你再次打开图片或视频时,你应该会看到一个应用程序选择器,请在这里选择“简约图库”并将其设为默认应用程序。
diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml
index 3a59c68ae..66b761c8a 100644
--- a/app/src/main/res/values-zh-rHK/strings.xml
+++ b/app/src/main/res/values-zh-rHK/strings.xml
@@ -202,6 +202,87 @@
我的最愛
檔案顯示
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
我如何將簡易相簿設為預設相簿?
首先你必須先在裝置設定中應用程式部分尋找目前預設相簿,找到一個像是\"預設開啟(Open by default)\"的按鈕,點下去,然後選擇\"清除預設(Clear defaults)\"。
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
index c2623c0dc..ae4184a87 100644
--- a/app/src/main/res/values-zh-rTW/strings.xml
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -202,6 +202,87 @@
我的最愛
檔案顯示
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
我如何將簡易相簿設為預設相簿?
首先你必須先在裝置設定中應用程式部分尋找目前預設相簿,找到一個像是\"預設開啟(Open by default)\"的按鈕,點下去,然後選擇\"清除預設(Clear defaults)\"。
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index e7ea8b9e6..e8fec8163 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -15,9 +15,6 @@
128dp
164dp
48dp
- 76dp
- 90dp
- 98dp
180dp
48dp
86dp
diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml
index 941e7da0d..720719ad5 100644
--- a/app/src/main/res/values/donottranslate.xml
+++ b/app/src/main/res/values/donottranslate.xml
@@ -6,6 +6,7 @@
com.simplemobiletools.gallery.pro
+ Fully replaced the photo editor with a powerful third party library (for resizing images use Menu -> Resize from the fullscreen view, until it gets added in the editor)
Allow customizing the bottom navigation bar color\n
Share files in the order they were selected
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index bd6354007..4f949f7c1 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -202,6 +202,87 @@
Toggle favorite
Toggle file visibility
+
+ Custom
+ Reset
+ Square
+ Transform
+ Filter
+ None
+ Adjust
+ Shadows
+ Exposure
+ Highlights
+ Brightness
+ Contrast
+ Saturation
+ Clarity
+ Gamma
+ Blacks
+ Whites
+ Temperature
+ Sharpness
+ Reset
+ Focus
+ None
+ Radial
+ Linear
+ Mirrored
+ Gaussian
+ Text
+ Text Options
+ Text Color
+ Font
+ Add
+ Edit
+ Straighten
+ Font
+ Color
+ BG Color
+ Alignment
+ To Front
+ Delete
+ Your text
+ Brush
+ Color
+ Size
+ Hardness
+ To Front
+ Delete
+ Brush Color
+ Editor
+ Close Editor?
+ Do you really want to discard the image?
+ Yes
+ No
+ Cancel
+ Accept
+ Save
+ Exporting image…
+ Exporting image %s.
+ Flip H
+ Flip V
+ Undo
+ Redo
+ Color Picker
+ Transparent
+ White
+ Gray
+ Black
+ Light blue
+ Blue
+ Purple
+ Orchid
+ Pink
+ Red
+ Orange
+ Gold
+ Yellow
+ Olive
+ Green
+ Aquamarin
+ Pipettable color
+
How can I make Simple Gallery the default device gallery?
First you have to find the currently default gallery in the Apps section of your device settings, look for a button that says something like \"Open by default\", click on it, then select \"Clear defaults\".
diff --git a/build.gradle b/build.gradle
index 969a40070..f16279588 100644
--- a/build.gradle
+++ b/build.gradle
@@ -6,11 +6,13 @@ buildscript {
repositories {
google()
jcenter()
+ maven { url 'https://artifactory.img.ly/artifactory/imgly' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
+ classpath 'ly.img.android.pesdk:plugin:6.6.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
diff --git a/fastlane/metadata/android/en-US/changelogs/276.txt b/fastlane/metadata/android/en-US/changelogs/276.txt
new file mode 100644
index 000000000..eba43e8f7
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/276.txt
@@ -0,0 +1 @@
+ * Added some crashfixes and stability improvements
diff --git a/fastlane/metadata/android/en-US/changelogs/277.txt b/fastlane/metadata/android/en-US/changelogs/277.txt
new file mode 100644
index 000000000..5dc0656d4
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/277.txt
@@ -0,0 +1,2 @@
+ * Fully replaced the photo editor with a powerful third party library
+ * Added some crashfixes and stability improvements
diff --git a/fastlane/metadata/android/en-US/changelogs/281.txt b/fastlane/metadata/android/en-US/changelogs/281.txt
new file mode 100644
index 000000000..3561046c8
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/281.txt
@@ -0,0 +1 @@
+ * Removing Text Design from the editor, it takes up too much space
diff --git a/fastlane/metadata/android/en-US/changelogs/282.txt b/fastlane/metadata/android/en-US/changelogs/282.txt
new file mode 100644
index 000000000..10bf2b600
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/282.txt
@@ -0,0 +1,3 @@
+ * Added a few more aspect ratios in the editor
+ * Remember the last used editor brush settings
+ * Properly refresh the cache of edited images
diff --git a/fastlane/metadata/android/es/full_description.txt b/fastlane/metadata/android/es/full_description.txt
new file mode 100644
index 000000000..00e3df3e8
--- /dev/null
+++ b/fastlane/metadata/android/es/full_description.txt
@@ -0,0 +1,51 @@
+Simple Gallery Pro es una galería altamente personalizable disponible sin conexión. Organiza y edita tus fotos, recupera archivos eliminados con la papelera de reciclaje, protege y oculta archivos y mira una gran variedad de diferentes formatos de fotos y videos incluyendo RAW, SVG y muchos más.
+
+La app no contiene anuncios ni permisos innecesarios. Ya que la app tampoco requiere acceso a internet, tu privacidad está protegida.
+
+-------------------------------------------------
+SIMPLE GALLERY PRO – CARACTERÍSTICAS
+-------------------------------------------------
+
+• Galería disponible sin conexión sin anuncios ni ventanas emergentes
+• Editor de fotos – Recorta, rota, redimensiona, dibuja, filtra y más
+• Acceso a internet no necesario, dándote más privacidad y seguridad
+• No requiere permisos innecesarios
+• Búsqueda rápida de imágenes, videos y archivos
+• Abre y mira muchos tipos de fotos y videos diferentes (RAW, SVG, panorámica, etc.)
+• Variedad de gestos intuitivos para editar y organizar archivos fácilmente
+• Montones de formas de filtrar, agrupar y ordenar archivos
+• Personaliza la apariencia de Simple Gallery Pro
+• Disponible en 32 lenguajes
+• Seleccionar archivos como favoritos para acceder rápidamente
+• Protege tus fotos y videos con patrón, pin o huella digital
+• Usa pin, patrón y huella digital para proteger la apertura de la app o también funciones específicas
+• Recupera fotos y videos eliminados desde la papelera de reciclaje
+• Alterna la visibilidad de archivos para ocultar fotos y videos
+• Crea una presentación de diapositivas personalizable de tus archivos
+• Mira información detallada de tus archivos (Resolución, valores EXIF, etc.)
+• Simple Gallery Pro es de código abierto
+… ¡y mucho, mucho más!
+
+EDITOR DE FOTOS
+Simple Gallery Pro hace más fácil editar tus fotos rápidamente. Corta, gira, rota y redimensiona tus fotos. Si te sientes un poco más creativo, ¡Puedes añadir filtros y dibujar en tus fotos!
+
+SOPORTA MUCHOS TIPOS DE ARCHIVOS
+Al contrario de otras galerías y organizadores de fotos, Simple Gallery Pro soporta un enorme rango de tipos de archivos diferentes incluyendo JPEG, PNG, MP4, MKV, RAW, SVG, fotos panorámicas, videos panorámicos y muchos más.
+
+GALERÍA ALTAMENTE PERSONALZIABLE
+Desde la IU hasta los botones de funciones en la barra de herramientas inferior, Simple Gallery Pro es altamente personalizable y trabaja de la forma que quieras. ¡Ninguna otra galería tiene este tipo de flexibilidad! Gracias a que es de código abierto, ¡También está disponible en 32 lenguajes!
+
+RECUPERA FOTOS Y VIDEOS ELIMINADOS
+¿Accidentalmente eliminaste una foto o video precioso? ¡No te preocupes! Simple Gallery Pro contiene una práctica papelera de reciclaje donde puedes recuperar fácilmente fotos y videos eliminados.
+
+PROTEGE Y OCULTA FOTOS, VIDEOS Y ARCHIVOS
+Usando pin, patrón o el lector de huella de tu dispositivo, puedes proteger y ocultar fotos, videos y álbumes enteros. Puedes proteger la propia aplicación o bloquear funciones específicas en la misma. Por ejemplo, no puedes eliminar un archivo sin un escaneo de huella, ayudando a proteger tus archivos de ser eliminados accidentalmente.
+
+Mira la suite completa de Simple Tools aquí:
+https://www.simplemobiletools.com
+
+Facebook:
+https://www.facebook.com/simplemobiletools
+
+Reddit:
+https://www.reddit.com/r/SimpleMobileTools
diff --git a/fastlane/metadata/android/es/short_description.txt b/fastlane/metadata/android/es/short_description.txt
new file mode 100644
index 000000000..56250b41d
--- /dev/null
+++ b/fastlane/metadata/android/es/short_description.txt
@@ -0,0 +1 @@
+Explore sus recuerdos sin interrupciones.
diff --git a/fastlane/metadata/android/es/title.txt b/fastlane/metadata/android/es/title.txt
new file mode 100644
index 000000000..1ec2ad97e
--- /dev/null
+++ b/fastlane/metadata/android/es/title.txt
@@ -0,0 +1 @@
+Simple Gallery Pro - Gestor y editor de fotos
diff --git a/gradlew b/gradlew
old mode 100644
new mode 100755