diff options
author | Julian Kast <julian@livio.com> | 2020-08-26 11:38:32 -0400 |
---|---|---|
committer | Julian Kast <julian@livio.com> | 2020-08-26 11:38:32 -0400 |
commit | 3954d4ea76e35d5fa5bc17ba7eae4e7ae8544a7e (patch) | |
tree | 2b1535e4d941f6fbd017b500c061b8ea81a4d2f6 | |
parent | 6121537b5e8ebe00c53bda265cd84527beb1cce4 (diff) | |
download | sdl_android-3954d4ea76e35d5fa5bc17ba7eae4e7ae8544a7e.tar.gz |
Fixed softButton mainField1 issue
4 files changed, 11 insertions, 6 deletions
diff --git a/android/sdl_android/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java b/android/sdl_android/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java index 89e6a0b52..d077f6366 100644 --- a/android/sdl_android/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java +++ b/android/sdl_android/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java @@ -48,8 +48,8 @@ import com.smartdevicelink.proxy.rpc.enums.FileType; */ class TextAndGraphicManager extends BaseTextAndGraphicManager { - TextAndGraphicManager(@NonNull ISdl internalInterface, @NonNull FileManager fileManager) { - super(internalInterface, fileManager); + TextAndGraphicManager(@NonNull ISdl internalInterface, @NonNull FileManager fileManager, @NonNull SoftButtonManager softButtonManager) { + super(internalInterface, fileManager, softButtonManager); } SdlArtwork getBlankArtwork() { diff --git a/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java b/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java index 7935406dc..9ecce1f64 100644 --- a/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java +++ b/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java @@ -126,7 +126,7 @@ abstract class BaseScreenManager extends BaseSubManager { private void initialize(){ if (fileManager.get() != null) { this.softButtonManager = new SoftButtonManager(internalInterface, fileManager.get()); - this.textAndGraphicManager = new TextAndGraphicManager(internalInterface, fileManager.get()); + this.textAndGraphicManager = new TextAndGraphicManager(internalInterface, fileManager.get(), softButtonManager); this.menuManager = new MenuManager(internalInterface, fileManager.get()); this.choiceSetManager = new ChoiceSetManager(internalInterface, fileManager.get()); } diff --git a/base/src/main/java/com/smartdevicelink/managers/screen/BaseTextAndGraphicManager.java b/base/src/main/java/com/smartdevicelink/managers/screen/BaseTextAndGraphicManager.java index fe2b72e0e..4a1123bfb 100644 --- a/base/src/main/java/com/smartdevicelink/managers/screen/BaseTextAndGraphicManager.java +++ b/base/src/main/java/com/smartdevicelink/managers/screen/BaseTextAndGraphicManager.java @@ -74,6 +74,7 @@ abstract class BaseTextAndGraphicManager extends BaseSubManager { boolean isDirty; Show currentScreenData; HMILevel currentHMILevel; + private final WeakReference<SoftButtonManager> softButtonManager; WindowCapability defaultMainWindowCapability; private boolean batchingUpdates; private final WeakReference<FileManager> fileManager; @@ -89,10 +90,11 @@ abstract class BaseTextAndGraphicManager extends BaseSubManager { //Constructors - BaseTextAndGraphicManager(@NonNull ISdl internalInterface, @NonNull FileManager fileManager) { + BaseTextAndGraphicManager(@NonNull ISdl internalInterface, @NonNull FileManager fileManager, @NonNull SoftButtonManager softButtonManager) { // set class vars super(internalInterface); this.fileManager = new WeakReference<>(fileManager); + this.softButtonManager = new WeakReference<>(softButtonManager); batchingUpdates = false; isDirty = false; textAlignment = CENTERED; @@ -216,6 +218,9 @@ abstract class BaseTextAndGraphicManager extends BaseSubManager { } ((TextAndGraphicUpdateOperation) task).setCurrentScreenData(newScreenData); } + if (this.softButtonManager.get() != null && newScreenData.getMainField1() != null) { + this.softButtonManager.get().setCurrentMainField1(currentScreenData.getMainField1()); + } } interface CurrentScreenDataUpdatedListener { diff --git a/javaSE/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java b/javaSE/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java index ed2e93067..a561028bd 100644 --- a/javaSE/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java +++ b/javaSE/src/main/java/com/smartdevicelink/managers/screen/TextAndGraphicManager.java @@ -45,8 +45,8 @@ import com.smartdevicelink.proxy.rpc.enums.FileType; */ class TextAndGraphicManager extends BaseTextAndGraphicManager { - TextAndGraphicManager(@NonNull ISdl internalInterface, @NonNull FileManager fileManager) { - super(internalInterface, fileManager); + TextAndGraphicManager(@NonNull ISdl internalInterface, @NonNull FileManager fileManager, @NonNull SoftButtonManager softButtonManager) { + super(internalInterface, fileManager, softButtonManager); } SdlArtwork getBlankArtwork(){ |