Skip to content

Commit cd8c162

Browse files
authored
Merge pull request Catrobat#3192 from LPeteR90/CATROID-166
CATROID-166 Refactor ProjectUploadService to foreground service
2 parents 8e652d9 + d8093c8 commit cd8c162

27 files changed

+1083
-769
lines changed

.idea/codeStyles/Project.xml

Lines changed: 0 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

catroid/src/androidTest/java/org/catrobat/catroid/test/io/asynctask/ProjectExportTaskTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@
3737
import org.catrobat.catroid.io.asynctask.ProjectExportTask;
3838
import org.catrobat.catroid.io.asynctask.ProjectSaveTask;
3939
import org.catrobat.catroid.test.utils.Reflection;
40-
import org.catrobat.catroid.utils.NotificationData;
41-
import org.catrobat.catroid.utils.StatusBarNotificationManager;
40+
import org.catrobat.catroid.utils.notifications.NotificationData;
41+
import org.catrobat.catroid.utils.notifications.StatusBarNotificationManager;
4242
import org.junit.After;
4343
import org.junit.Assert;
4444
import org.junit.Before;

catroid/src/androidTest/java/org/catrobat/catroid/test/ui/StatusBarNotificationManagerTest.java

Lines changed: 0 additions & 155 deletions
This file was deleted.

catroid/src/main/AndroidManifest.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,11 +225,11 @@
225225
<activity
226226
android:name=".ui.filepicker.FilePickerActivity" />
227227

228-
<service android:name=".transfers.ProjectUploadService" />
228+
<service android:name=".transfers.project.ProjectUploadService" />
229229
<service android:name=".transfers.ProjectDownloadService" />
230230
<service android:name=".transfers.MediaDownloadService" />
231231
<service android:name="com.parrot.freeflight.service.DroneControlService" />
232-
<service android:name=".utils.StatusBarNotificationManager$NotificationActionService" />
232+
<service android:name=".utils.notifications.StatusBarNotificationManager$NotificationActionService" />
233233
<service android:name=".cast.CastService" android:exported="false"/>
234234

235235
<provider

catroid/src/main/java/org/catrobat/catroid/common/Constants.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,21 @@ public final class Constants {
227227
public static final String EXTRA_PICTURE_PATH_POCKET_PAINT = "org.catrobat.extra.PAINTROID_PICTURE_PATH";
228228
public static final String POCKET_PAINT_INTENT_ACTIVITY_NAME = "org.catrobat.paintroid.MainActivity";
229229

230+
// Intent Extra / Bundle Keys
231+
public static final String EXTRA_PROJECT_NAME = "projectName";
232+
public static final String EXTRA_PROJECT_DESCRIPTION = "projectDescription";
233+
public static final String EXTRA_PROJECT_PATH = "projectPath";
234+
public static final String EXTRA_PROJECT_ID = "projectId";
235+
public static final String EXTRA_SCENE_NAMES = "sceneNames";
236+
public static final String EXTRA_USER_EMAIL = "userEmail";
237+
public static final String EXTRA_LANGUAGE = "language";
238+
public static final String EXTRA_NOTIFICATION_ID = "notificationId";
239+
public static final String EXTRA_RESULT_RECEIVER = "resultReceiver";
240+
public static final String EXTRA_PROVIDER = "provider";
241+
public static final String EXTRA_UPLOAD_NAME = "uploadName";
242+
243+
public static final int UPLOAD_RESULT_RECEIVER_RESULT_CODE = 1;
244+
230245
//Various:
231246
public static final int BUFFER_8K = 8 * 1024;
232247
public static final String PREF_PROJECTNAME_KEY = "projectName";
@@ -258,9 +273,13 @@ public final class Constants {
258273
public static final int OFFSET_FOR_THINK_BUBBLES_AND_ARROW = 40;
259274
public static final int JUMPING_SUMO_BATTERY_STATUS = 100;
260275

276+
public static final int UPLOAD_IMAGE_SCALE_WIDTH = 480;
277+
public static final int UPLOAD_IMAGE_SCALE_HEIGHT = 480;
278+
261279
//Services + Notifications
262280
public static final int UPDATE_DOWNLOAD_PROGRESS = 101;
263281
public static final int UPDATE_DOWNLOAD_ERROR = 105;
282+
public static final int MAX_PERCENT = 100;
264283

265284
//Up-/Download Status Codes
266285
public static final int STATUS_CODE_INTERNAL_SERVER_ERROR = 500;

catroid/src/main/java/org/catrobat/catroid/io/ProjectAndSceneScreenshotLoader.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,9 @@
2323
package org.catrobat.catroid.io;
2424

2525
import android.app.Activity;
26-
import android.content.Context;
2726
import android.graphics.Bitmap;
2827
import android.widget.ImageView;
2928

30-
import org.catrobat.catroid.R;
3129
import org.catrobat.catroid.ui.UiUtils;
3230
import org.catrobat.catroid.utils.ImageEditing;
3331

@@ -67,7 +65,8 @@ private class ScreenshotData {
6765

6866
private Map<ImageView, String> imageViews = Collections.synchronizedMap(new WeakHashMap<ImageView, String>());
6967
private ExecutorService executorService;
70-
private Context context;
68+
private int thumbnailWidth;
69+
private int thumbnailHeight;
7170

7271
private Map<String, Bitmap> imageCache = Collections.synchronizedMap(new LinkedHashMap<String, Bitmap>(
7372
INITIAL_VALUE, LOAD_FACTOR, true) {
@@ -80,9 +79,10 @@ protected boolean removeEldestEntry(Map.Entry<String, Bitmap> eldest) {
8079
}
8180
});
8281

83-
public ProjectAndSceneScreenshotLoader(Context context) {
82+
public ProjectAndSceneScreenshotLoader(int thumbnailWidth, int thumbnailHeight) {
8483
executorService = Executors.newFixedThreadPool(POOL_SIZE);
85-
this.context = context;
84+
this.thumbnailWidth = thumbnailWidth;
85+
this.thumbnailHeight = thumbnailHeight;
8686
}
8787

8888
public void loadAndShowScreenshot(String projectName, String sceneName, boolean isBackpackScene, ImageView
@@ -135,9 +135,7 @@ public void run() {
135135
if (!projectAndSceneImageFile.exists() || ImageEditing.getImageDimensions(pathOfScreenshot)[0] < 0) {
136136
projectAndSceneImage = null;
137137
} else {
138-
int width = context.getResources().getDimensionPixelSize(R.dimen.project_thumbnail_width);
139-
int height = context.getResources().getDimensionPixelSize(R.dimen.project_thumbnail_height);
140-
projectAndSceneImage = ImageEditing.getScaledBitmapFromPath(pathOfScreenshot, width, height,
138+
projectAndSceneImage = ImageEditing.getScaledBitmapFromPath(pathOfScreenshot, thumbnailWidth, thumbnailHeight,
141139
ImageEditing.ResizeType.STAY_IN_RECTANGLE_WITH_SAME_ASPECT_RATIO, true);
142140
}
143141

catroid/src/main/java/org/catrobat/catroid/io/asynctask/ProjectExportTask.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
import org.catrobat.catroid.R;
3030
import org.catrobat.catroid.io.ZipArchiver;
31-
import org.catrobat.catroid.utils.StatusBarNotificationManager;
31+
import org.catrobat.catroid.utils.notifications.StatusBarNotificationManager;
3232

3333
import java.io.File;
3434
import java.io.IOException;

0 commit comments

Comments
 (0)