From c603bfb8182bd9db246cb13cdce7c6008adac443 Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Sun, 17 Nov 2024 11:07:44 +0800 Subject: [PATCH 01/15] try to use immersive mode on android 13 and above --- forge-gui-android/src/forge/app/Main.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/forge-gui-android/src/forge/app/Main.java b/forge-gui-android/src/forge/app/Main.java index ad8027f2de3..c344dd86863 100644 --- a/forge-gui-android/src/forge/app/Main.java +++ b/forge-gui-android/src/forge/app/Main.java @@ -432,7 +432,8 @@ public class Main extends AndroidApplication { config.useCompass = false; config.useGyroscope = false; config.useRotationVectorSensor = false; - config.useImmersiveMode = false; + // try to use immersive mode on android 13 and above + config.useImmersiveMode = Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU; config.nativeLoader = () -> ReLinker.loadLibrary(getContext(), "gdx"); if (!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { From cca1468a85f620e15a6ba1ca5ddc643fcdb032a4 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Sun, 17 Nov 2024 12:12:58 +0800 Subject: [PATCH 02/15] try to optout on Edge-to-Edge for android 15 --- forge-gui-android/res/values-v35/styles.xml | 7 +++++++ forge-gui-android/res/values/styles.xml | 5 +++++ forge-gui-android/src/forge/app/Main.java | 3 +-- forge-gui-android/src/main/AndroidManifest.xml | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 forge-gui-android/res/values-v35/styles.xml diff --git a/forge-gui-android/res/values-v35/styles.xml b/forge-gui-android/res/values-v35/styles.xml new file mode 100644 index 00000000000..58d5c88393e --- /dev/null +++ b/forge-gui-android/res/values-v35/styles.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/forge-gui-android/res/values/styles.xml b/forge-gui-android/res/values/styles.xml index 90ec268463f..b24940bfd36 100644 --- a/forge-gui-android/res/values/styles.xml +++ b/forge-gui-android/res/values/styles.xml @@ -7,5 +7,10 @@ true true false + true + + \ No newline at end of file diff --git a/forge-gui-android/src/forge/app/Main.java b/forge-gui-android/src/forge/app/Main.java index c344dd86863..ad8027f2de3 100644 --- a/forge-gui-android/src/forge/app/Main.java +++ b/forge-gui-android/src/forge/app/Main.java @@ -432,8 +432,7 @@ public class Main extends AndroidApplication { config.useCompass = false; config.useGyroscope = false; config.useRotationVectorSensor = false; - // try to use immersive mode on android 13 and above - config.useImmersiveMode = Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU; + config.useImmersiveMode = false; config.nativeLoader = () -> ReLinker.loadLibrary(getContext(), "gdx"); if (!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { diff --git a/forge-gui-android/src/main/AndroidManifest.xml b/forge-gui-android/src/main/AndroidManifest.xml index d7c65c78e87..d7cd2a7e9cb 100644 --- a/forge-gui-android/src/main/AndroidManifest.xml +++ b/forge-gui-android/src/main/AndroidManifest.xml @@ -58,7 +58,7 @@ android:label="@string/app_name" android:configChanges="density|fontScale|keyboard|keyboardHidden|layoutDirection|locale|mcc|mnc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|touchscreen|uiMode" android:launchMode="singleInstance" - android:theme="@android:style/Theme.NoTitleBar.Fullscreen" + android:theme="@style/NormalTheme" android:exported="false"> From c9e733ecbdda0dfea6d94ce10f4860a8d5129987 Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Sun, 17 Nov 2024 14:26:08 +0800 Subject: [PATCH 03/15] Update ImageView.java isempty missing in streambuffer on android --- forge-gui-mobile/src/forge/itemmanager/views/ImageView.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java index 1c6d0d26b2d..e733f3339b2 100644 --- a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java +++ b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java @@ -1153,7 +1153,7 @@ public class ImageView extends ItemView { } } // spire colors - if (!colorID.isEmpty()) { + if (colorID.length() > 0) { textRenderer.drawText(g, colorID.toString(), FSkinFont.forHeight(w / 5), Color.WHITE, x, y + h / 4, w, h, y, h, false, Align.center, true); } } else if (item instanceof ConquestCommander) { From 73940c584e9dfc486c04fd026daf9e8dafff1270 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Sun, 17 Nov 2024 10:10:49 +0100 Subject: [PATCH 04/15] ColorSet: use Stream to map ManaSymbol --- .../forge/itemmanager/views/ImageView.java | 20 +++++-------------- .../java/forge/gui/card/CardDetailUtil.java | 15 +------------- 2 files changed, 6 insertions(+), 29 deletions(-) diff --git a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java index e733f3339b2..ccdea3aa8b0 100644 --- a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java +++ b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java @@ -36,6 +36,7 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.TreeMap; +import java.util.stream.Collectors; import java.util.stream.IntStream; import static forge.assets.FSkin.getDefaultSkinFile; @@ -1030,7 +1031,7 @@ public class ImageView extends ItemView { private boolean selected, deckSelectMode, showRanking; private final float IMAGE_SIZE = CardRenderer.MANA_SYMBOL_SIZE; private DeckProxy deckProxy = null; - private StringBuffer colorID = new StringBuffer(); + private String colorID = null; private FImageComplex deckCover = null; private Texture dpImg = null; //private TextureRegion tr; @@ -1058,18 +1059,7 @@ public class ImageView extends ItemView { } } if (((PaperCard) item).getColorID() != null) { - for (String s : ((PaperCard) item).getColorID()) { - if ("white".equalsIgnoreCase(s)) - colorID.append("{W}"); - if ("green".equalsIgnoreCase(s)) - colorID.append("{G}"); - if ("red".equalsIgnoreCase(s)) - colorID.append("{R}"); - if ("blue".equalsIgnoreCase(s)) - colorID.append("{U}"); - if ("black".equalsIgnoreCase(s)) - colorID.append("{B}"); - } + colorID = ((PaperCard) item).getColorID().stream().map(MagicColor::toSymbol).collect(Collectors.joining()); } } } @@ -1153,8 +1143,8 @@ public class ImageView extends ItemView { } } // spire colors - if (colorID.length() > 0) { - textRenderer.drawText(g, colorID.toString(), FSkinFont.forHeight(w / 5), Color.WHITE, x, y + h / 4, w, h, y, h, false, Align.center, true); + if (!colorID.isEmpty()) { + textRenderer.drawText(g, colorID, FSkinFont.forHeight(w / 5), Color.WHITE, x, y + h / 4, w, h, y, h, false, Align.center, true); } } else if (item instanceof ConquestCommander) { CardRenderer.drawCard(g, ((ConquestCommander) item).getCard(), x, y, w, h, pos); diff --git a/forge-gui/src/main/java/forge/gui/card/CardDetailUtil.java b/forge-gui/src/main/java/forge/gui/card/CardDetailUtil.java index 76cc1c0dcdc..d37fd9a31a4 100644 --- a/forge-gui/src/main/java/forge/gui/card/CardDetailUtil.java +++ b/forge-gui/src/main/java/forge/gui/card/CardDetailUtil.java @@ -129,20 +129,7 @@ public class CardDetailUtil { } public static String getCurrentColors(final CardStateView c) { - ColorSet curColors = c.getColors(); - String strCurColors = ""; - - if (curColors.hasWhite()) { strCurColors += "{W}"; } - if (curColors.hasBlue()) { strCurColors += "{U}"; } - if (curColors.hasBlack()) { strCurColors += "{B}"; } - if (curColors.hasRed()) { strCurColors += "{R}"; } - if (curColors.hasGreen()) { strCurColors += "{G}"; } - - if (strCurColors.isEmpty()) { - strCurColors = "{C}"; - } - - return strCurColors; + return c.getColors().toEnumSet().stream().map(MagicColor.Color::getSymbol).collect(Collectors.joining()); } public static DetailColors getRarityColor(final CardRarity rarity) { From 24182e337a0ed2fe332dc5e3a6b2305a6d2c2ef7 Mon Sep 17 00:00:00 2001 From: Chris H Date: Sun, 17 Nov 2024 16:02:06 -0500 Subject: [PATCH 05/15] Update rune_sealed_wall.txt (#6587) --- forge-gui/res/cardsfolder/r/rune_sealed_wall.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-gui/res/cardsfolder/r/rune_sealed_wall.txt b/forge-gui/res/cardsfolder/r/rune_sealed_wall.txt index 42f78ee11f4..a8c51611bbc 100644 --- a/forge-gui/res/cardsfolder/r/rune_sealed_wall.txt +++ b/forge-gui/res/cardsfolder/r/rune_sealed_wall.txt @@ -1,7 +1,7 @@ Name:Rune-Sealed Wall -ManaCost:1 U +ManaCost:2 U Types:Artifact Creature Wall PT:0/6 K:Defender A:AB$ Surveil | Cost$ T | Amount$ 1 | SpellDescription$ Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) -Oracle:Defender\n{T}: Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) \ No newline at end of file +Oracle:Defender\n{T}: Surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) From b8a2903617500c00902877ac7f79fe265a4d05c3 Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Mon, 18 Nov 2024 05:11:48 +0800 Subject: [PATCH 06/15] NPE prevention - closes #6588 --- forge-gui-mobile/src/forge/itemmanager/views/ImageView.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java index ccdea3aa8b0..1dc7f7bb5d2 100644 --- a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java +++ b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java @@ -1143,7 +1143,7 @@ public class ImageView extends ItemView { } } // spire colors - if (!colorID.isEmpty()) { + if (colorID != null && !colorID.isEmpty()) { textRenderer.drawText(g, colorID, FSkinFont.forHeight(w / 5), Color.WHITE, x, y + h / 4, w, h, y, h, false, Align.center, true); } } else if (item instanceof ConquestCommander) { From f5e024bf6333a9cf24c83cbba2338aebbd96370f Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Mon, 18 Nov 2024 06:11:42 +0800 Subject: [PATCH 07/15] Update ItemManager.java it seems this is controlled via preference and would fail the logic for the view index --- .../src/forge/itemmanager/ItemManager.java | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/forge-gui-mobile/src/forge/itemmanager/ItemManager.java b/forge-gui-mobile/src/forge/itemmanager/ItemManager.java index 566b33d7713..221411de0ae 100644 --- a/forge-gui-mobile/src/forge/itemmanager/ItemManager.java +++ b/forge-gui-mobile/src/forge/itemmanager/ItemManager.java @@ -149,16 +149,9 @@ public abstract class ItemManager extends FContainer im listView = new ItemListView<>(this, model); imageView = createImageView(model); - if (Forge.isMobileAdventureMode) { - // reversed default - views.add(imageView); - views.add(listView); - currentView = imageView; - } else { - views.add(listView); - views.add(imageView); - currentView = listView; - } + views.add(listView); + views.add(imageView); + currentView = listView; btnView.setIcon(currentView.getIcon()); //build display From 9093c77e72c4af0a75684ab4453a3c8804801a0e Mon Sep 17 00:00:00 2001 From: 0nderzeeboot <67536282+0nderzeeboot@users.noreply.github.com> Date: Mon, 18 Nov 2024 00:44:00 +0100 Subject: [PATCH 08/15] Update arahbo_the_first_fang.txt (#6589) --- forge-gui/res/cardsfolder/a/arahbo_the_first_fang.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/a/arahbo_the_first_fang.txt b/forge-gui/res/cardsfolder/a/arahbo_the_first_fang.txt index 43169a5907e..4432e8c3267 100644 --- a/forge-gui/res/cardsfolder/a/arahbo_the_first_fang.txt +++ b/forge-gui/res/cardsfolder/a/arahbo_the_first_fang.txt @@ -3,7 +3,7 @@ ManaCost:2 W Types:Legendary Creature Cat Avatar PT:2/2 S:Mode$ Continuous | Affected$ Cat.Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Cats you control get +1/+1. -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Cat.nonToken+Other | Execute$ TrigToken | TriggerDescription$ Whenever NICKNAME or another nontoken Cat you control enters, create a 1/1 white Cat creature token. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Cat.nonToken+Other+YouCtrl | Execute$ TrigToken | TriggerDescription$ Whenever NICKNAME or another nontoken Cat you control enters, create a 1/1 white Cat creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_cat DeckHas:Ability$Token DeckHints:Type$Cat From f48cf951db15f589e709986a0b7ca2cfb8eba139 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Mon, 18 Nov 2024 11:23:00 +0800 Subject: [PATCH 09/15] .. --- forge-gui-mobile-dev/src/forge/app/Main.java | 3 +++ forge-gui-mobile/src/forge/Forge.java | 3 +-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/forge-gui-mobile-dev/src/forge/app/Main.java b/forge-gui-mobile-dev/src/forge/app/Main.java index a8e9c424299..8714712af23 100644 --- a/forge-gui-mobile-dev/src/forge/app/Main.java +++ b/forge-gui-mobile-dev/src/forge/app/Main.java @@ -96,6 +96,9 @@ public class Main { @Override public void closeSplashScreen() { + // FIXME: on Linux system it can't close splashscreen image or crash with SIGSEGV? How come it works on other OS? + if (OperatingSystem.isUnix() || OperatingSystem.isSolaris()) + return; //could throw exception.. try { Optional.ofNullable(SplashScreen.getSplashScreen()).ifPresent(SplashScreen::close); diff --git a/forge-gui-mobile/src/forge/Forge.java b/forge-gui-mobile/src/forge/Forge.java index 669008d9155..7dafac0f1e7 100644 --- a/forge-gui-mobile/src/forge/Forge.java +++ b/forge-gui-mobile/src/forge/Forge.java @@ -159,6 +159,7 @@ public class Forge implements ApplicationListener { public void create() { //install our error handler ExceptionHandler.registerErrorHandling(); + getDeviceAdapter().closeSplashScreen(); GuiBase.setIsAndroid(Gdx.app.getType() == Application.ApplicationType.Android); @@ -257,8 +258,6 @@ public class Forge implements ApplicationListener { /* call preloadExtendedArt here, if we put it above we will * * get error: No OpenGL context found in the current thread. */ preloadExtendedArt(); - // should be after create method but try to close this at a later time. - getDeviceAdapter().closeSplashScreen(); }); }; //see if app or assets need updating From a1d1e2b335de3c2d40e10ecb55af238d8c110c16 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Mon, 18 Nov 2024 12:41:58 +0800 Subject: [PATCH 10/15] set navigation bar color add note to edge-to-edge enforcement on android 15 --- forge-gui-android/res/values-v35/styles.xml | 1 + forge-gui-android/res/values/styles.xml | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/forge-gui-android/res/values-v35/styles.xml b/forge-gui-android/res/values-v35/styles.xml index 58d5c88393e..dde42e65871 100644 --- a/forge-gui-android/res/values-v35/styles.xml +++ b/forge-gui-android/res/values-v35/styles.xml @@ -3,5 +3,6 @@ \ No newline at end of file diff --git a/forge-gui-android/res/values/styles.xml b/forge-gui-android/res/values/styles.xml index b24940bfd36..65ccef592b7 100644 --- a/forge-gui-android/res/values/styles.xml +++ b/forge-gui-android/res/values/styles.xml @@ -11,6 +11,11 @@ \ No newline at end of file From 8d230c774c8e21dce530988e6820941e68c7b62d Mon Sep 17 00:00:00 2001 From: 0nderzeeboot <67536282+0nderzeeboot@users.noreply.github.com> Date: Mon, 18 Nov 2024 07:36:57 +0100 Subject: [PATCH 11/15] Update cephalid_inkmage.txt (#6590) Fixed wrong condition for threshold check. --- forge-gui/res/cardsfolder/c/cephalid_inkmage.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-gui/res/cardsfolder/c/cephalid_inkmage.txt b/forge-gui/res/cardsfolder/c/cephalid_inkmage.txt index 834f43c11cb..f5784419be2 100644 --- a/forge-gui/res/cardsfolder/c/cephalid_inkmage.txt +++ b/forge-gui/res/cardsfolder/c/cephalid_inkmage.txt @@ -4,6 +4,6 @@ Types:Creature Octopus Wizard PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSurveil | TriggerDescription$ When this creature enters, surveil 3. (Look at the top three cards of your library, then put any number of them into your graveyard and the rest on top of your library in any order.) SVar:TrigSurveil:DB$ Surveil | Amount$ 3 -S:Mode$ CantBlockBy | ValidAttacker$ Card.Self | Threshold$ True | Description$ Threshold — This creature can't be blocked as long as there are seven or more cards in your graveyard. +S:Mode$ CantBlockBy | ValidAttacker$ Card.Self | Condition$ Threshold | Description$ Threshold — This creature can't be blocked as long as there are seven or more cards in your graveyard. DeckHas:Ability$Surveil|Graveyard -Oracle:When this creature enters, surveil 3. (Look at the top three cards of your library, then put any number of them into your graveyard and the rest on top of your library in any order.)\nThreshold — This creature can't be blocked as long as there are seven or more cards in your graveyard. \ No newline at end of file +Oracle:When this creature enters, surveil 3. (Look at the top three cards of your library, then put any number of them into your graveyard and the rest on top of your library in any order.)\nThreshold — This creature can't be blocked as long as there are seven or more cards in your graveyard. From cbe48d0892621aaa81196dc1d1993a9b7a7fa5f1 Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Mon, 18 Nov 2024 15:09:10 +0800 Subject: [PATCH 12/15] Update VPlayerPanel.java should display error for null icons on VPlayerPanel Infotab. If pointer is still null then the icon seems to be disposed (probably on android) or just deliberately missing. --- .../src/forge/screens/match/views/VPlayerPanel.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/forge-gui-mobile/src/forge/screens/match/views/VPlayerPanel.java b/forge-gui-mobile/src/forge/screens/match/views/VPlayerPanel.java index 108e251af07..c8e8ea99c49 100644 --- a/forge-gui-mobile/src/forge/screens/match/views/VPlayerPanel.java +++ b/forge-gui-mobile/src/forge/screens/match/views/VPlayerPanel.java @@ -615,7 +615,13 @@ public class VPlayerPanel extends FContainer { private final VDisplayArea displayArea; private InfoTab(FSkinImageInterface icon0, VDisplayArea displayArea0) { - icon = icon0; + // missing or invalid player infotab icon probably old theme or custom theme. + if (icon0 == null) { + System.err.println("Missing/Invalid VPlayerPanel icon for: " + displayArea0 + " , defaulting to blank icon. Check your theme/skin layout."); + icon = FSkinImage.BLANK; + } else { + icon = icon0; + } displayArea = displayArea0; } From 974e8b076066b86c546cdf2b71a325478d59342c Mon Sep 17 00:00:00 2001 From: kevlahnota Date: Mon, 18 Nov 2024 15:17:38 +0800 Subject: [PATCH 13/15] update xstream, netty fix dependabot vulnerability --- forge-gui/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-gui/pom.xml b/forge-gui/pom.xml index 2feebeda020..ba97aab0114 100644 --- a/forge-gui/pom.xml +++ b/forge-gui/pom.xml @@ -44,7 +44,7 @@ com.thoughtworks.xstream xstream - 1.4.20 + 1.4.21 xmlpull @@ -55,7 +55,7 @@ io.netty netty-all - 4.1.114.Final + 4.1.115.Final compile From fdfabfd5cfdadf6d5d061b34d1257f22f1d4a8c3 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Mon, 18 Nov 2024 15:55:52 +0800 Subject: [PATCH 14/15] fix layout --- forge-gui-android/src/forge/app/Main.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/forge-gui-android/src/forge/app/Main.java b/forge-gui-android/src/forge/app/Main.java index ad8027f2de3..242625adc0e 100644 --- a/forge-gui-android/src/forge/app/Main.java +++ b/forge-gui-android/src/forge/app/Main.java @@ -279,8 +279,8 @@ public class Main extends AndroidApplication { row2.addView(button); row2.setGravity(Gravity.CENTER); - TL.addView(row, new TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT, TableLayout.LayoutParams.WRAP_CONTENT)); - TL.addView(row2, new TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT, TableLayout.LayoutParams.WRAP_CONTENT)); + TL.addView(row, new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT)); + TL.addView(row2, new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT)); TL.setGravity(Gravity.CENTER); TL.setOnClickListener(v -> adapter.restart()); crossfade(TL, previousView); @@ -377,9 +377,9 @@ public class Main extends AndroidApplication { buttonRow.addView(button); buttonRow.setGravity(Gravity.CENTER); - TL.addView(messageRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT, TableLayout.LayoutParams.WRAP_CONTENT)); - TL.addView(checkboxRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT, TableLayout.LayoutParams.WRAP_CONTENT)); - TL.addView(buttonRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.WRAP_CONTENT, TableLayout.LayoutParams.WRAP_CONTENT)); + TL.addView(messageRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT)); + TL.addView(checkboxRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT)); + TL.addView(buttonRow, new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT)); TL.setGravity(Gravity.CENTER); crossfade(TL, forgeLogo); } From 0cfc7c25452fe0704a96cb0b0f773c7a675f1fc5 Mon Sep 17 00:00:00 2001 From: Chris H Date: Mon, 18 Nov 2024 15:00:31 -0500 Subject: [PATCH 15/15] Update snapshot-both-pc-android.yml --- .github/workflows/snapshot-both-pc-android.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/snapshot-both-pc-android.yml b/.github/workflows/snapshot-both-pc-android.yml index 46b2cf6ceb3..6191c8045cc 100644 --- a/.github/workflows/snapshot-both-pc-android.yml +++ b/.github/workflows/snapshot-both-pc-android.yml @@ -117,6 +117,7 @@ jobs: password: ${{ secrets.FTP_PASSWORD }} local-dir: izpack/ server-dir: downloads/dailysnapshots/ + state-name: .ftp-deploy-both-sync-state.json exclude: | *.pom *.repositories