4
4
import android .content .Context ;
5
5
import android .net .Uri ;
6
6
import androidx .annotation .Nullable ;
7
+ import fr .free .nrw .commons .Utils ;
7
8
import fr .free .nrw .commons .auth .SessionManager ;
8
9
import fr .free .nrw .commons .contributions .Contribution ;
10
+ import fr .free .nrw .commons .filepicker .MimeTypeMapWrapper ;
9
11
import fr .free .nrw .commons .filepicker .UploadableFile ;
10
12
import fr .free .nrw .commons .kvstore .JsonKvStore ;
11
13
import fr .free .nrw .commons .nearby .Place ;
@@ -106,8 +108,8 @@ private UploadItem createAndAddUploadItem(final UploadableFile uploadableFile,
106
108
Timber .d ("File created date is %d" , fileCreatedDate );
107
109
final ImageCoordinates imageCoordinates = fileProcessor
108
110
.processFileCoordinates (similarImageInterface , uploadableFile .getFilePath ());
109
- final UploadItem uploadItem = new UploadItem (uploadableFile . getContentUri (),
110
- Uri .parse (uploadableFile .getFilePath ()),
111
+ final UploadItem uploadItem = new UploadItem (
112
+ Uri .parse (uploadableFile .getFilePath ()),
111
113
uploadableFile .getMimeType (context ), imageCoordinates , place , fileCreatedDate ,
112
114
createdTimestampSource );
113
115
if (place != null ) {
@@ -204,7 +206,6 @@ public List<DepictedItem> getSelectedDepictions() {
204
206
@ SuppressWarnings ("WeakerAccess" )
205
207
public static class UploadItem {
206
208
207
- private final Uri originalContentUri ;
208
209
private final Uri mediaUri ;
209
210
private final String mimeType ;
210
211
private ImageCoordinates gpsCoords ;
@@ -214,13 +215,12 @@ public static class UploadItem {
214
215
private final String createdTimestampSource ;
215
216
private final BehaviorSubject <Integer > imageQuality ;
216
217
@ SuppressLint ("CheckResult" )
217
- UploadItem (final Uri originalContentUri ,
218
- final Uri mediaUri , final String mimeType ,
218
+ UploadItem (final Uri mediaUri ,
219
+ final String mimeType ,
219
220
final ImageCoordinates gpsCoords ,
220
221
final Place place ,
221
222
final long createdTimestamp ,
222
223
final String createdTimestampSource ) {
223
- this .originalContentUri = originalContentUri ;
224
224
this .createdTimestampSource = createdTimestampSource ;
225
225
uploadMediaDetails = new ArrayList <>(Arrays .asList (new UploadMediaDetail ()));
226
226
this .place = place ;
@@ -267,10 +267,6 @@ public void setMediaDetails(final List<UploadMediaDetail> uploadMediaDetails) {
267
267
this .uploadMediaDetails = uploadMediaDetails ;
268
268
}
269
269
270
- public Uri getContentUri () {
271
- return originalContentUri ;
272
- }
273
-
274
270
@ Override
275
271
public boolean equals (@ Nullable final Object obj ) {
276
272
if (!(obj instanceof UploadItem )) {
@@ -290,15 +286,13 @@ public int hashCode() {
290
286
* Currently, the caption is used as a filename. If several languages have been entered, the first language is used.
291
287
*/
292
288
public String getFileName () {
293
- return uploadMediaDetails .get (0 ).getCaptionText ();
289
+ return Utils .fixExtension (uploadMediaDetails .get (0 ).getCaptionText (),
290
+ MimeTypeMapWrapper .getExtensionFromMimeType (mimeType ));
294
291
}
295
292
296
293
public void setGpsCoords (final ImageCoordinates gpsCoords ) {
297
294
this .gpsCoords = gpsCoords ;
298
295
}
299
296
300
- public String getMimeType () {
301
- return mimeType ;
302
- }
303
297
}
304
298
}
0 commit comments