diff options
author | Joey Grover <joeygrover@gmail.com> | 2022-10-26 11:15:00 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-26 11:15:00 -0400 |
commit | c5b805411cc285c0ade2933a22c4134c922a1b13 (patch) | |
tree | 2d6bcc3ff55fccd04604e79a53f110d4c09653b6 /base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java | |
parent | c1afd4f7d4af7cd6783d2c019b877153f84a6745 (diff) | |
parent | b18ae828d4077cf6f039fc0d4d7081122c029e8f (diff) | |
download | sdl_android-c5b805411cc285c0ade2933a22c4134c922a1b13.tar.gz |
Merge pull request #1837 from smartdevicelink/release/5.6.0_RC5.6.0
Release/5.6.0
Diffstat (limited to 'base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java')
-rw-r--r-- | base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java b/base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java index a85901d3c..31163627c 100644 --- a/base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java +++ b/base/src/main/java/com/smartdevicelink/managers/screen/PresentAlertOperation.java @@ -77,6 +77,8 @@ public class PresentAlertOperation extends Task { boolean isAlertPresented; static int SOFTBUTTON_COUNT = 4; private BaseAlertManager.AlertSoftButtonClearListener alertSoftButtonClearListener; + Boolean alertIconUploaded; + private List<SdlArtwork> artworksToBeUploaded; public PresentAlertOperation(ISdl internalInterface, AlertView alertView, WindowCapability currentCapabilities, List<SpeechCapabilities> speechCapabilities, FileManager fileManager, Integer cancelId, AlertCompletionListener listener, BaseAlertManager.AlertSoftButtonClearListener alertSoftButtonClearListener) { super("PresentAlertOperation"); @@ -89,6 +91,7 @@ public class PresentAlertOperation extends Task { this.cancelId = cancelId; this.isAlertPresented = false; this.alertSoftButtonClearListener = alertSoftButtonClearListener; + alertIconUploaded = false; this.alertView.canceledListener = new AlertCanceledListener() { @Override @@ -237,10 +240,15 @@ public class PresentAlertOperation extends Task { * @param listener - CompletionListener called when all images have been uploaded. */ private void uploadImages(final CompletionListener listener) { - List<SdlArtwork> artworksToBeUploaded = new ArrayList<>(); + artworksToBeUploaded = new ArrayList<>(); - if (supportsAlertIcon() && fileManager.get() != null && fileManager.get().fileNeedsUpload(alertView.getIcon())) { - artworksToBeUploaded.add(alertView.getIcon()); + if (supportsAlertIcon() && alertView.getIcon() != null && fileManager.get() != null) { + if (fileManager.get().fileNeedsUpload(alertView.getIcon())) { + artworksToBeUploaded.add(alertView.getIcon()); + + } else if (fileManager.get().hasUploadedFile(alertView.getIcon()) || alertView.getIcon().isStaticIcon()) { + alertIconUploaded = true; + } } if (alertView.getSoftButtons() != null) { @@ -275,6 +283,9 @@ public class PresentAlertOperation extends Task { } else { DebugTool.logInfo(TAG, "All alert images uploaded"); } + if (artworksToBeUploaded.contains(alertView.getIcon()) && (errors == null || !errors.containsKey(alertView.getIcon().getName()))) { + alertIconUploaded = true; + } listener.onComplete(true); } }); @@ -362,9 +373,7 @@ public class PresentAlertOperation extends Task { alert = assembleAlertText(alert); alert.setDuration(alertView.getTimeout() * 1000); - if (alertView.getIcon() != null && supportsAlertIcon() && !(fileManager.get().hasUploadedFile(alertView.getIcon()))) { - alert.setAlertIcon(alertView.getIcon().getImageRPC()); - } + alert.setAlertIcon(alertIconUploaded ? alertView.getIcon().getImageRPC() : null); alert.setProgressIndicator(alertView.isShowWaitIndicator()); alert.setCancelID(this.cancelId); |