@@ -8,10 +8,8 @@ import com.simplemobiletools.draw.MyCanvas
88import com.simplemobiletools.draw.R
99import com.simplemobiletools.draw.Svg
1010import com.simplemobiletools.draw.activities.SimpleActivity
11- import com.simplemobiletools.draw.extensions.config
1211import kotlinx.android.synthetic.main.dialog_save_image.view.*
1312import java.io.File
14- import java.io.FileOutputStream
1513import java.io.OutputStream
1614
1715class SaveImageDialog (val activity : SimpleActivity , val curPath : String , val canvas : MyCanvas , callback : (path: String ) -> Unit ) {
@@ -62,7 +60,6 @@ class SaveImageDialog(val activity: SimpleActivity, val curPath: String, val can
6260 }
6361
6462 if (saveFile(newFile)) {
65- activity.toast(R .string.file_saved)
6663 callback(newFile.absolutePath)
6764 dismiss()
6865 } else {
@@ -80,25 +77,17 @@ class SaveImageDialog(val activity: SimpleActivity, val curPath: String, val can
8077 }
8178
8279 when (file.extension) {
83- SVG -> Svg .saveSvg(file, canvas)
80+ SVG -> Svg .saveSvg(activity, file, canvas)
8481 else -> saveImageFile(file)
8582 }
8683 activity.scanFile(file) {}
8784 return true
8885 }
8986
9087 private fun saveImageFile (file : File ) {
91- if (activity.needsStupidWritePermissions(file.absolutePath)) {
92- activity.handleSAFDialog(file) {
93- var document = activity.getFileDocument(file.absolutePath, activity.config.treeUri) ? : return @handleSAFDialog
94- if (! file.exists()) {
95- document = document.createFile(" " , file.name)
96- }
97- val out = activity.contentResolver.openOutputStream(document.uri)
98- writeToOutputStream(file, out )
99- }
100- } else {
101- writeToOutputStream(file, FileOutputStream (file))
88+ activity.getFileOutputStream(file) {
89+ writeToOutputStream(file, it)
90+ activity.toast(R .string.file_saved)
10291 }
10392 }
10493
0 commit comments