diff --git a/.efrocachemap b/.efrocachemap index 2466070f..b74f6387 100644 --- a/.efrocachemap +++ b/.efrocachemap @@ -421,7 +421,7 @@ "build/assets/ba_data/audio/zoeOw.ogg": "74befe45a8417e95b6a2233c51992a26", "build/assets/ba_data/audio/zoePickup01.ogg": "48ab8cddfcde36a750856f3f81dd20c8", "build/assets/ba_data/audio/zoeScream01.ogg": "2b468aedfa8741090247f04eb9e6df55", - "build/assets/ba_data/data/langdata.json": "d21a1b7c9444ae7787944498f3ed6482", + "build/assets/ba_data/data/langdata.json": "1b939f3099af72667d06820b1474ffb9", "build/assets/ba_data/data/languages/arabic.json": "d1f900ab5aa2433d402bd46ed1149cc7", "build/assets/ba_data/data/languages/belarussian.json": "e151808b6b4f6dc159cf55ee62adad3c", "build/assets/ba_data/data/languages/chinese.json": "8d889accdd49334591209bdaf6eaf02f", @@ -450,7 +450,7 @@ "build/assets/ba_data/data/languages/russian.json": "7f1689fff58321fdaa632cb9c45105df", "build/assets/ba_data/data/languages/serbian.json": "d7452dd72ac0e51680cb39b5ebaa1c69", "build/assets/ba_data/data/languages/slovak.json": "27962d53dc3f7dd4e877cd40faafeeef", - "build/assets/ba_data/data/languages/spanish.json": "0122b0b24aa111ab259af02bbae9b7b6", + "build/assets/ba_data/data/languages/spanish.json": "bd1e3a209f2e129e8aafe668cf48a26a", "build/assets/ba_data/data/languages/swedish.json": "77d671f10613291ebf9c71da66f18a18", "build/assets/ba_data/data/languages/tamil.json": "65ab7798d637fa62a703750179eeb723", "build/assets/ba_data/data/languages/thai.json": "33f63753c9af9a5b238d229a0bf23fbc", @@ -4056,26 +4056,26 @@ "build/assets/windows/Win32/ucrtbased.dll": "2def5335207d41b21b9823f6805997f1", "build/assets/windows/Win32/vc_redist.x86.exe": "b08a55e2e77623fe657bea24f223a3ae", "build/assets/windows/Win32/vcruntime140d.dll": "865b2af4d1e26a1a8073c89acb06e599", - "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "05edee29f50c1d6bee9d3de307248ea6", - "build/prefab/full/linux_arm64_gui/release/ballisticakit": "df3990491fab9ac0538e75f347683a94", - "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "a7efd60daa1a52b0e30a7a9616cc727a", - "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "2b964e4df219ccf31d204c701abf8b6e", - "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "67845ed4ac3307559448f9f323e3408f", - "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "b5934ad96454b3fb945a388141166f17", - "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "cfec3ecd22fa9467a65f8878efa2b911", - "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "e748d9e8a1f9b9287194f03a5a9f66d2", - "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "f3897d23722ab9cf60614dea1abace10", - "build/prefab/full/mac_arm64_gui/release/ballisticakit": "74881b34024a827de91dc4e302123548", - "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "82b5a5410419a738ffb1007f736644c2", - "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "f732999c2601cf656b850f5f3e9570f4", - "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "0da70003570c3f392a0f87a823c2adc3", - "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "1535ddde4b8532a412df37567a1a29a3", - "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "e04124a9110037eabe1aac45a98891db", - "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "c07e02b94aa9f50f21bb6571d3a2d5e5", - "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "ce594cf55f33b80664e5e2c9d59a4ba1", - "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "26e0fec05e2813fa3e41aa36e3b43df3", - "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "3957607929916c7ea7f8cde6487e2101", - "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "96680b806f2997e75904b4222a1e0536", + "build/prefab/full/linux_arm64_gui/debug/ballisticakit": "ce0628aa40119fda33a0070fc5a5849f", + "build/prefab/full/linux_arm64_gui/release/ballisticakit": "6ae8e5b1d931d316b27f2026a24492da", + "build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "755ff319a078d9fdbc80908a6f062e66", + "build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "954aa4169a4e0b84bd071ac0555b098f", + "build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "b430a78b9b6c479dd37adf97f8a6cee0", + "build/prefab/full/linux_x86_64_gui/release/ballisticakit": "c78ad812d6811a87e6652f59cc727990", + "build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "64f608500550bcfe2fe0747280676875", + "build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "ef3c3bc20a9ca9def33aca446364fd92", + "build/prefab/full/mac_arm64_gui/debug/ballisticakit": "98192e4d10863f86de556baa3aa3eb52", + "build/prefab/full/mac_arm64_gui/release/ballisticakit": "fffa329c0f999c39ecc7c537b333480c", + "build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "2b2c521bc2a3afcfbfd8d87869a43dea", + "build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "1b0c69b48e6b1d354d7e444d5f92731a", + "build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "8e55eb7c0cfb5268cca54c455f567f85", + "build/prefab/full/mac_x86_64_gui/release/ballisticakit": "7aa66285bd814f121850b6cfb782ab40", + "build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "69397f3a8bbad81f8c8d9295528dd41b", + "build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "55c0ebaada6f257620f3ba0225087114", + "build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "68dd9d4782fdd2e7ef26fa34d336d6d0", + "build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "44f7bd9b24fef5ee1ff749b0a61b03b9", + "build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "dee3013cbc5ea749943bc0544b41c0ec", + "build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "fb35137239d263b18e0ae80dac8acb29", "build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "80ff019ab0715f68dc4cae15c7a9fdab", "build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "bbe53e6685130822cbba276f63b76dcb", "build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "80ff019ab0715f68dc4cae15c7a9fdab", diff --git a/CHANGELOG.md b/CHANGELOG.md index fd8a507c..dae6ae79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -### 1.7.28 (build 21468, api 8, 2023-10-16) +### 1.7.28 (build 21471, api 8, 2023-10-16) - Massively cleaned up code related to rendering and window systems (OpenGL, SDL, etc). This code had been growing into a nasty tangle for 15 years diff --git a/src/assets/ba_data/python/baenv.py b/src/assets/ba_data/python/baenv.py index 16de717b..9ccbb945 100644 --- a/src/assets/ba_data/python/baenv.py +++ b/src/assets/ba_data/python/baenv.py @@ -52,7 +52,7 @@ if TYPE_CHECKING: # Build number and version of the ballistica binary we expect to be # using. -TARGET_BALLISTICA_BUILD = 21468 +TARGET_BALLISTICA_BUILD = 21471 TARGET_BALLISTICA_VERSION = '1.7.28' diff --git a/src/ballistica/base/app_adapter/app_adapter_apple.cc b/src/ballistica/base/app_adapter/app_adapter_apple.cc index 13ebe5a8..9c224905 100644 --- a/src/ballistica/base/app_adapter/app_adapter_apple.cc +++ b/src/ballistica/base/app_adapter/app_adapter_apple.cc @@ -202,6 +202,34 @@ void AppAdapterApple::TerminateApp() { #endif } +auto AppAdapterApple::FullscreenControlAvailable() const -> bool { + // Currently Mac only. Any window-management stuff elsewhere such as + // iPadOS is out of our hands. + if (g_buildconfig.ostype_macos()) { + return true; + } + return false; +} + +auto AppAdapterApple::FullscreenControlGet() const -> bool { +#if BA_OSTYPE_MACOS + return BallisticaKit::CocoaFromCppGetMainWindowIsFullscreen(); +#else + return false; +#endif +} + +void AppAdapterApple::FullscreenControlSet(bool fullscreen) { +#if BA_OSTYPE_MACOS + return BallisticaKit::CocoaFromCppSetMainWindowFullscreen(fullscreen); +#endif +} + +auto AppAdapterApple::FullscreenControlKeyShortcut() const + -> std::optional { + return "fn+F"; +} + } // namespace ballistica::base #endif // BA_XCODE_BUILD diff --git a/src/ballistica/base/app_adapter/app_adapter_apple.h b/src/ballistica/base/app_adapter/app_adapter_apple.h index 09ccdbc2..da14b971 100644 --- a/src/ballistica/base/app_adapter/app_adapter_apple.h +++ b/src/ballistica/base/app_adapter/app_adapter_apple.h @@ -34,6 +34,12 @@ class AppAdapterApple : public AppAdapter { /// Called by FromSwift. void SetScreenResolution(float pixel_width, float pixel_height); + auto FullscreenControlAvailable() const -> bool override; + auto FullscreenControlGet() const -> bool override; + void FullscreenControlSet(bool fullscreen) override; + auto FullscreenControlKeyShortcut() const + -> std::optional override; + protected: void DoPushMainThreadRunnable(Runnable* runnable) override; void DoPushGraphicsContextRunnable(Runnable* runnable) override; diff --git a/src/ballistica/shared/ballistica.cc b/src/ballistica/shared/ballistica.cc index 9b9f86f4..a1bf9730 100644 --- a/src/ballistica/shared/ballistica.cc +++ b/src/ballistica/shared/ballistica.cc @@ -39,7 +39,7 @@ auto main(int argc, char** argv) -> int { namespace ballistica { // These are set automatically via script; don't modify them here. -const int kEngineBuildNumber = 21468; +const int kEngineBuildNumber = 21471; const char* kEngineVersion = "1.7.28"; const int kEngineApiVersion = 8;