From 6aaedb813fa11ba0679c3051bc2eb28646b9506c Mon Sep 17 00:00:00 2001 From: 3gg <3gg@shellblade.net> Date: Sat, 30 Aug 2025 16:53:58 -0700 Subject: Update to SDL3 --- .../test/android/cmake/AndroidManifest.xml.cmake | 74 +++++++++++++ .../android/cmake/SDLEntryTestActivity.java.cmake | 121 +++++++++++++++++++++ .../test/android/cmake/SDLTestActivity.java.cmake | 33 ++++++ .../android/cmake/res/values/strings.xml.cmake | 5 + .../test/android/cmake/res/xml/shortcuts.xml.cmake | 24 ++++ .../android/res/drawable/sdl-test_foreground.xml | 102 +++++++++++++++++ .../test/android/res/layout/arguments_layout.xml | 26 +++++ .../android/res/mipmap-anydpi-v26/sdl-test.xml | 5 + .../res/mipmap-anydpi-v26/sdl-test_round.xml | 5 + .../test/android/res/mipmap-hdpi/sdl-test.png | Bin 0 -> 3041 bytes .../android/res/mipmap-hdpi/sdl-test_round.png | Bin 0 -> 5292 bytes .../test/android/res/mipmap-mdpi/sdl-test.png | Bin 0 -> 1881 bytes .../android/res/mipmap-mdpi/sdl-test_round.png | Bin 0 -> 3150 bytes .../test/android/res/mipmap-xhdpi/sdl-test.png | Bin 0 -> 4426 bytes .../android/res/mipmap-xhdpi/sdl-test_round.png | Bin 0 -> 7789 bytes .../test/android/res/mipmap-xxhdpi/sdl-test.png | Bin 0 -> 7389 bytes .../android/res/mipmap-xxhdpi/sdl-test_round.png | Bin 0 -> 13232 bytes .../test/android/res/mipmap-xxxhdpi/sdl-test.png | Bin 0 -> 11218 bytes .../android/res/mipmap-xxxhdpi/sdl-test_round.png | Bin 0 -> 19626 bytes .../test/android/res/values/arg_strings.xml | 7 ++ .../android/res/values/sdl-test_background.xml | 4 + .../SDL-3.2.20/test/android/res/values/styles.xml | 7 ++ 22 files changed, 413 insertions(+) create mode 100644 src/contrib/SDL-3.2.20/test/android/cmake/AndroidManifest.xml.cmake create mode 100644 src/contrib/SDL-3.2.20/test/android/cmake/SDLEntryTestActivity.java.cmake create mode 100644 src/contrib/SDL-3.2.20/test/android/cmake/SDLTestActivity.java.cmake create mode 100644 src/contrib/SDL-3.2.20/test/android/cmake/res/values/strings.xml.cmake create mode 100644 src/contrib/SDL-3.2.20/test/android/cmake/res/xml/shortcuts.xml.cmake create mode 100644 src/contrib/SDL-3.2.20/test/android/res/drawable/sdl-test_foreground.xml create mode 100644 src/contrib/SDL-3.2.20/test/android/res/layout/arguments_layout.xml create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-anydpi-v26/sdl-test.xml create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-anydpi-v26/sdl-test_round.xml create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-hdpi/sdl-test.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-hdpi/sdl-test_round.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-mdpi/sdl-test.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-mdpi/sdl-test_round.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-xhdpi/sdl-test.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-xhdpi/sdl-test_round.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-xxhdpi/sdl-test.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-xxhdpi/sdl-test_round.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-xxxhdpi/sdl-test.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/mipmap-xxxhdpi/sdl-test_round.png create mode 100644 src/contrib/SDL-3.2.20/test/android/res/values/arg_strings.xml create mode 100644 src/contrib/SDL-3.2.20/test/android/res/values/sdl-test_background.xml create mode 100644 src/contrib/SDL-3.2.20/test/android/res/values/styles.xml (limited to 'src/contrib/SDL-3.2.20/test/android') diff --git a/src/contrib/SDL-3.2.20/test/android/cmake/AndroidManifest.xml.cmake b/src/contrib/SDL-3.2.20/test/android/cmake/AndroidManifest.xml.cmake new file mode 100644 index 0000000..06d87af --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/cmake/AndroidManifest.xml.cmake @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/contrib/SDL-3.2.20/test/android/cmake/SDLEntryTestActivity.java.cmake b/src/contrib/SDL-3.2.20/test/android/cmake/SDLEntryTestActivity.java.cmake new file mode 100644 index 0000000..f8d08f1 --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/cmake/SDLEntryTestActivity.java.cmake @@ -0,0 +1,121 @@ +package @ANDROID_MANIFEST_PACKAGE@; + +import android.app.Activity; +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.Intent; +import android.os.Bundle; +import android.util.Log; + +import org.libsdl.app.SDL; +import org.libsdl.app.SDLActivity; + +import android.widget.Button; +import android.widget.EditText; +import android.widget.TextView; + +import android.view.View; +import android.view.ViewGroup; +import android.view.LayoutInflater; + +public class SDLEntryTestActivity extends Activity { + + public String MODIFY_ARGUMENTS = "@ANDROID_MANIFEST_PACKAGE@.MODIFY_ARGUMENTS"; + boolean isModifyingArguments; + + @Override + protected void onCreate(Bundle savedInstanceState) { + Log.v("SDL", "SDLEntryTestActivity onCreate"); + super.onCreate(savedInstanceState); + + String intent_action = getIntent().getAction(); + Log.v("SDL", "SDLEntryTestActivity intent.action = " + intent_action); + + if (intent_action == MODIFY_ARGUMENTS) { + isModifyingArguments = true; + createArgumentLayout(); + } else { + startChildActivityAndFinish(); + } + } + + protected void createArgumentLayout() { + LayoutInflater inflater = getLayoutInflater(); + View view = inflater.inflate(R.layout.arguments_layout, null); + setContentView(view); + + Button button = (Button)requireViewById(R.id.arguments_start_button); + button.setOnClickListener(new View.OnClickListener() { + public void onClick(View v) { + startChildActivityAndFinish(); + } + }); + } + + protected String[] getArguments() { + if (!isModifyingArguments) { + return new String[0]; + } + EditText editText = (EditText)findViewById(R.id.arguments_edit); + String text = editText.getText().toString(); + String new_text = text.replace("[ \t]*[ \t\n]+[ \t]+", "\n").strip(); + Log.v("SDL", "text = " + text + "\n becomes \n" + new_text); + return new_text.split("\n", 0); + } + + @Override + protected void onStart() { + Log.v("SDL", "SDLEntryTestActivity onStart"); + super.onStart(); + } + + @Override + protected void onResume() { + Log.v("SDL", "SDLEntryTestActivity onResume"); + super.onResume(); + } + + @Override + protected void onPause() { + Log.v("SDL", "SDLEntryTestActivity onPause"); + super.onPause(); + } + + @Override + protected void onStop() { + Log.v("SDL", "SDLEntryTestActivity onStop"); + super.onStop(); + } + + @Override + protected void onDestroy() { + Log.v("SDL", "SDLEntryTestActivity onDestroy"); + super.onDestroy(); + } + + @Override + protected void onRestoreInstanceState(Bundle savedInstanceState) { + Log.v("SDL", "SDLEntryTestActivity onRestoreInstanceState"); + super.onRestoreInstanceState(savedInstanceState); + EditText editText = (EditText)findViewById(R.id.arguments_edit); + editText.setText(savedInstanceState.getCharSequence("args", ""), TextView.BufferType.EDITABLE); + } + + @Override + protected void onSaveInstanceState(Bundle outState) { + Log.v("SDL", "SDLEntryTestActivity onSaveInstanceState"); + EditText editText = (EditText)findViewById(R.id.arguments_edit); + outState.putCharSequence("args", editText.getText()); + super.onSaveInstanceState(outState); + } + + private void startChildActivityAndFinish() { + Intent intent = new Intent(Intent.ACTION_MAIN); + intent.addCategory(Intent.CATEGORY_LAUNCHER); + intent.setClassName("@ANDROID_MANIFEST_PACKAGE@", "@ANDROID_MANIFEST_PACKAGE@.SDLTestActivity"); + intent.putExtra("arguments", getArguments()); + startActivity(intent); + finish(); + } +} diff --git a/src/contrib/SDL-3.2.20/test/android/cmake/SDLTestActivity.java.cmake b/src/contrib/SDL-3.2.20/test/android/cmake/SDLTestActivity.java.cmake new file mode 100644 index 0000000..c43955d --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/cmake/SDLTestActivity.java.cmake @@ -0,0 +1,33 @@ +package @ANDROID_MANIFEST_PACKAGE@; + +import org.libsdl.app.SDLActivity; + +import android.os.Bundle; +import android.util.Log; + +public class SDLTestActivity extends SDLActivity { + private String[] m_arguments; + + @Override + protected void onCreate(Bundle savedInstanceState) { + m_arguments = getIntent().getStringArrayExtra("arguments"); + if (m_arguments == null) { + m_arguments = new String[0]; + } + super.onCreate(savedInstanceState); + } + + @Override + protected String[] getLibraries() { + return new String[] { getString(R.string.lib_name) }; + } + + @Override + protected String[] getArguments() { + Log.v("SDLTest", "#arguments = " + m_arguments.length); + for(int i = 0; i < m_arguments.length; i++) { + Log.v("SDLTest", "argument[" + i + "] = " + m_arguments[i]); + } + return m_arguments; + } +} diff --git a/src/contrib/SDL-3.2.20/test/android/cmake/res/values/strings.xml.cmake b/src/contrib/SDL-3.2.20/test/android/cmake/res/values/strings.xml.cmake new file mode 100644 index 0000000..871c17f --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/cmake/res/values/strings.xml.cmake @@ -0,0 +1,5 @@ + + @ANDROID_MANIFEST_APP_NAME@ + @ANDROID_MANIFEST_LIB_NAME@ + @ANDROID_MANIFEST_LABEL@ + diff --git a/src/contrib/SDL-3.2.20/test/android/cmake/res/xml/shortcuts.xml.cmake b/src/contrib/SDL-3.2.20/test/android/cmake/res/xml/shortcuts.xml.cmake new file mode 100644 index 0000000..a29a2de --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/cmake/res/xml/shortcuts.xml.cmake @@ -0,0 +1,24 @@ + + + + + + + + + + diff --git a/src/contrib/SDL-3.2.20/test/android/res/drawable/sdl-test_foreground.xml b/src/contrib/SDL-3.2.20/test/android/res/drawable/sdl-test_foreground.xml new file mode 100644 index 0000000..f9f0ed2 --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/res/drawable/sdl-test_foreground.xml @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/contrib/SDL-3.2.20/test/android/res/layout/arguments_layout.xml b/src/contrib/SDL-3.2.20/test/android/res/layout/arguments_layout.xml new file mode 100644 index 0000000..30493af --- /dev/null +++ b/src/contrib/SDL-3.2.20/test/android/res/layout/arguments_layout.xml @@ -0,0 +1,26 @@ + + + + +