From 5e0aa03e9bc45dc06154505a594ba417e6f97214 Mon Sep 17 00:00:00 2001 From: Dan Balasescu Date: Sat, 20 Apr 2024 19:14:08 +0900 Subject: [PATCH] Add iOS tests project --- .../AppIcon.appiconset/Contents.json | 252 ++++++++++++++++++ .../AppIcon.appiconset/Icon1024.png | Bin 0 -> 10753 bytes .../AppIcon.appiconset/Icon120.png | Bin 0 -> 1155 bytes .../AppIcon.appiconset/Icon152.png | Bin 0 -> 1381 bytes .../AppIcon.appiconset/Icon167.png | Bin 0 -> 1503 bytes .../AppIcon.appiconset/Icon180.png | Bin 0 -> 1558 bytes .../AppIcon.appiconset/Icon20.png | Bin 0 -> 352 bytes .../AppIcon.appiconset/Icon29.png | Bin 0 -> 422 bytes .../AppIcon.appiconset/Icon40.png | Bin 0 -> 537 bytes .../AppIcon.appiconset/Icon58.png | Bin 0 -> 700 bytes .../AppIcon.appiconset/Icon60.png | Bin 0 -> 700 bytes .../AppIcon.appiconset/Icon76.png | Bin 0 -> 870 bytes .../AppIcon.appiconset/Icon80.png | Bin 0 -> 888 bytes .../AppIcon.appiconset/Icon87.png | Bin 0 -> 942 bytes SDL3-CS.Tests.iOS/Entitlements.plist | 6 + SDL3-CS.Tests.iOS/Info.plist | 42 +++ SDL3-CS.Tests.iOS/Main.cs | 20 ++ SDL3-CS.Tests.iOS/SDL3-CS.Tests.iOS.csproj | 21 ++ SDL3-CS.sln | 6 + 19 files changed, 347 insertions(+) create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon120.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon180.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon20.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon80.png create mode 100644 SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon87.png create mode 100644 SDL3-CS.Tests.iOS/Entitlements.plist create mode 100644 SDL3-CS.Tests.iOS/Info.plist create mode 100644 SDL3-CS.Tests.iOS/Main.cs create mode 100644 SDL3-CS.Tests.iOS/SDL3-CS.Tests.iOS.csproj diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Contents.json b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..7f8715d --- /dev/null +++ b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,252 @@ +{ + "images": [ + { + "filename": "Icon40.png", + "idiom": "iphone", + "scale": "2x", + "size": "20x20" + }, + { + "filename": "Icon60.png", + "idiom": "iphone", + "scale": "3x", + "size": "20x20" + }, + { + "filename": "Icon58.png", + "idiom": "iphone", + "scale": "2x", + "size": "29x29" + }, + { + "filename": "Icon87.png", + "idiom": "iphone", + "scale": "3x", + "size": "29x29" + }, + { + "filename": "Icon80.png", + "idiom": "iphone", + "scale": "2x", + "size": "40x40" + }, + { + "filename": "Icon120.png", + "idiom": "iphone", + "scale": "3x", + "size": "40x40" + }, + { + "filename": "Icon120.png", + "idiom": "iphone", + "scale": "2x", + "size": "60x60" + }, + { + "filename": "Icon180.png", + "idiom": "iphone", + "scale": "3x", + "size": "60x60" + }, + { + "filename": "Icon20.png", + "idiom": "ipad", + "scale": "1x", + "size": "20x20" + }, + { + "filename": "Icon40.png", + "idiom": "ipad", + "scale": "2x", + "size": "20x20" + }, + { + "filename": "Icon29.png", + "idiom": "ipad", + "scale": "1x", + "size": "29x29" + }, + { + "filename": "Icon58.png", + "idiom": "ipad", + "scale": "2x", + "size": "29x29" + }, + { + "filename": "Icon40.png", + "idiom": "ipad", + "scale": "1x", + "size": "40x40" + }, + { + "filename": "Icon80.png", + "idiom": "ipad", + "scale": "2x", + "size": "40x40" + }, + { + "filename": "Icon76.png", + "idiom": "ipad", + "scale": "1x", + "size": "76x76" + }, + { + "filename": "Icon152.png", + "idiom": "ipad", + "scale": "2x", + "size": "76x76" + }, + { + "filename": "Icon167.png", + "idiom": "ipad", + "scale": "2x", + "size": "83.5x83.5" + }, + { + "filename": "Icon1024.png", + "idiom": "ios-marketing", + "scale": "1x", + "size": "1024x1024" + }, + { + "idiom": "car", + "scale": "2x", + "size": "60x60" + }, + { + "idiom": "car", + "scale": "3x", + "size": "60x60" + }, + { + "idiom": "watch", + "role": "notificationCenter", + "scale": "2x", + "size": "24x24", + "subtype": "38mm" + }, + { + "idiom": "watch", + "role": "notificationCenter", + "scale": "2x", + "size": "27.5x27.5", + "subtype": "42mm" + }, + { + "idiom": "watch", + "role": "companionSettings", + "scale": "2x", + "size": "29x29" + }, + { + "idiom": "watch", + "role": "companionSettings", + "scale": "3x", + "size": "29x29" + }, + { + "idiom": "watch", + "role": "appLauncher", + "scale": "2x", + "size": "40x40", + "subtype": "38mm" + }, + { + "idiom": "watch", + "role": "appLauncher", + "scale": "2x", + "size": "44x44", + "subtype": "40mm" + }, + { + "idiom": "watch", + "role": "appLauncher", + "scale": "2x", + "size": "50x50", + "subtype": "44mm" + }, + { + "idiom": "watch", + "role": "quickLook", + "scale": "2x", + "size": "86x86", + "subtype": "38mm" + }, + { + "idiom": "watch", + "role": "quickLook", + "scale": "2x", + "size": "98x98", + "subtype": "42mm" + }, + { + "idiom": "watch", + "role": "quickLook", + "scale": "2x", + "size": "108x108", + "subtype": "44mm" + }, + { + "idiom": "watch-marketing", + "scale": "1x", + "size": "1024x1024" + }, + { + "idiom": "mac", + "scale": "1x", + "size": "16x16" + }, + { + "idiom": "mac", + "scale": "2x", + "size": "16x16" + }, + { + "idiom": "mac", + "scale": "1x", + "size": "32x32" + }, + { + "idiom": "mac", + "scale": "2x", + "size": "32x32" + }, + { + "idiom": "mac", + "scale": "1x", + "size": "128x128" + }, + { + "idiom": "mac", + "scale": "2x", + "size": "128x128" + }, + { + "idiom": "mac", + "scale": "1x", + "size": "256x256" + }, + { + "idiom": "mac", + "scale": "2x", + "size": "256x256" + }, + { + "idiom": "mac", + "scale": "1x", + "size": "512x512" + }, + { + "idiom": "mac", + "scale": "2x", + "size": "512x512" + } + ], + "info": { + "author": "xcode", + "version": 1 + }, + "properties": { + "pre-rendered": false + } +} \ No newline at end of file diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png new file mode 100644 index 0000000000000000000000000000000000000000..b573205418896a726aca2711a04b355f2ac39377 GIT binary patch literal 10753 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 F1OQcq5<>t0 literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png new file mode 100644 index 0000000000000000000000000000000000000000..1c1931312b67f4d54580f0307a9b19af555085d6 GIT binary patch literal 1381 zcmeAS@N?(olHy`uVBq!ia0vp^GeDSw4M<8HQcwg^oCO|{#S9GG!XV7ZFl&wkP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&eB?k`Ul$B+ufw|9I!Lb7F!e_X!nd(p}47@?)% z9=BMwoxOH*QLm$8NO#N=tv9Kc4=u>WDg4FZjhT?Z6g6DBAb zcnC@?;ou2kVbf%478zv1U#Dj)%#Hq6+RlEx;=Z}noKk`S9bG^ z`1|AE-R~b?_Tu--W2cwTztiizKKt8Gu}v4wFS-)YxOL0Ag6QpAf800Uac%CM?{{=V zSDugVI(jek;eXFhpRaZ&@J;;2{pxM>+kp6{sAgG-7X`Af{}-;1=Pm8fInKB6___7P z>HPakGH1;HEoQqf{L9D6ZFX7uo87W9W9R*r31*8?1}DLm?0QxwOR6>A-BntS8sYgR?SU%2f>>VL2H64RQ5Z>tL5T$`P7!YcmDzJD2JZ6&Om z*-rZ(d7NXmt-irIbygGS8`qLssUVF=l3egI8r|%18GL_Maw7t z^8dT@?5#Kkn_b`cWdIdql?AtG{phxPV={?1@$rma)#aM&w4^@vFz1*Z6U*Maj6=s> zT03R-_Z#NRu9{qTy|w6Gxs>Mq{56qccRjOb9q^j#cIx~wt()HcN3&OH?|vI#`7>eL zi??TvmCSl~jnR3z@jcyZa~@q>(S0CCHzl0urt{wN(~myoZftXV)f~oss!ZX?e8)Wg zbk)h8|>w>cj+Q@2>)x`|q3+DxdOFAPv z?w7fj_cNqIigWAKUrP74KiKB%7Bu}|zsbRMmrR!KW82KS-M0Jdx2;dbP6|JM?=83M z&CRqIK0m81LJp-Ri~H|6Rr}USUQA-&y}r1Xk~Q_uvp#+m&sO@iSbNXKlYeq*=Ql=d q+n)WZo!MoFyY`^X*6?ztj*0VtTXf!f`6a+ok-^i|&t;ucLK6V1xMsHi literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png new file mode 100644 index 0000000000000000000000000000000000000000..4e3e8bd8efb7f2bfc0cd3ec6233298f4285e47d6 GIT binary patch literal 1503 zcmdUvi&v5d0L4E`(`o8FW|DfeW)HV!tmx1ScIjs2 ze3Dw3Dda?=^8Ff``6$yOB@;-pVV?%W#|JUnf6+Pj-ru?R54d^$zMh8q7Wx1H7&sI?3K1u0b@d#ThJN+b>r9Wz5@%y9L^AS!~_hyj=~UlC7r?dY$ZN?0s$Lb#NGGW(H>I$K?!N*|A`}*3nL$c}~D~NbdawE+MBs5z&W1>F7NZ!L@LXMp% zSj(TKfwx7l%eIyhb%;{xMA?X^w79i2ND^^)%lV!aJOpSG-(eTPLhaEkI z)#}DMDg70OdXImTwdB4^#>Z!((3tkF)~>j5vw=NiTlcwvQ?oFdP}i+vq*oBD2i4uS z89mJl{cr$m9C4WlQ7%q#&oLI$DDwO_DEgVsI!oQEZ6ij{c=-4d;?saWw?RBpY(9TT z@LE9@ehz$R)`3qHNfX3{^CxK0+>FmX+_y>KX7tw7+Q-;FW61O@*$^|!g}+Zz+eK6) z*0$xmZ8DDaJUFk_bT>(Bwjo=5|384j#|F(wS-uPaW zTsIrZ>p+$^IhIjenjGLtL33Ot3e%$YDn}rjApH}jx+ID!PR1#U>Kcf|DLD(v1Vg?PR-NkR z{6V;ogrX<~eKJm9?!h^r8RqpXqs5lJFFRS(MS9C) z#IhMB#Bmjt$xEQ>Qd+KAzev%sSah7~^66GSsOvbrG!FGl+rPFaCUK%vsiS?354-#Q z&@HR#Nw0y0jPo^~cUKM1ot0`vB#-}YWsOjmNRr8!avA3pLVV4s=7d47#=mV?pgwA0 z{bc?L?J!?JzswY8$1?|S1Xb2W=P(dx&87LG%Sr)0A<0zmyOUHQ@A!a?(PgHbpMz+J zMCYh~{tIVRvn^LtN5ElRFc>-47Fq%-?Hlepk`JyKOdeu!lM%NK;H5(=GCaP3JHb-$$IG7A9(Re5}$C zO{Y^&Q%UlhlrA{){X%hyf=D&W5=-z6^3c)0(K+{i?!BKM?&r5pAtu0kkD;X@004W? zKAwR(1wYe3UpL`g{nI+xo#Ydo3IIm?KXV6AQTdH-xg#~u8wD^%t);pE!6W^V0KhCZ z()_Fk0D4VmPvnmoI~HgC<4vQj`O5kCdmn*&3c@B9|CM>H(&hHo zBWE#|%BSj)Z5lq^+W899@^Ec8a0IgF*p~!nS_x`8!0JGb&GI^R&aBfki;(xnIPT+O z=ytziRT!7PxbU(kLNVI;MDS*Cn&9{VUluP*A*^$Z4~Yos4Pr>s$o6mjzmADpF)?~# z@jh)HyG*J2$40y{KF(=rPkD`-WPeq4VsC_QQ&8^fX#Y>!W?H->=tIJfU3-jyX z=^h<7jRqr!X59Us$tr3(NSy!VLGue&!zsO4oQ0v>OYGiM4$&ax0C+<_2~}skFLOFE z`wT-OtvTQL0THmpQt=Czgz^!j+JJiDMe z_9T6(w29g!tY(P9z@M!8@e{}4Po0TDMSqr-jWxWuFv6bITZByoc2S0Qb8;Em(HGO_ zQue}c$TB4q!!~LBa5OLbmQq`ejf#jmTSa&wRxvy+@;R5}lWaYnB)&7nxV#-4STaew z1KNc4YMbjXnv!@P;Y)Z2HP&5s%*GEXH!Zr$*_@?N#tQ8bYF2%*e1(vlv$f1STI@DJ zzLtx#YFi~r6B}N&k0F$e_2*uz;pV$`b+l`PYH3!Q>Xi?YGwN1vTjU8>60H>Ee+r`9 zih2^#nP(5Z7Mz3tA>l&WGAKB9Hu!No?M_dPD1xd1-3tM)%Ly8egB%U2^_H zVA=~E<{!-tudOFP*1aAWCHvI!`0V_9p7SOzd;B*&LF0|XN+Ac!`|e6-ncpm5wkfW} z`jV)^k6e$mJsIX=8P}dgY;HDfT#}gI>~yi+F<-lyMdUd97I$lxM>4NM12_7cIx~5m z7G7jH{S7ChbC?tNFA7=q u%jWg73Ww?aobowYX4QfG)Ghby8T2o6`lp|qwL%RT01Te4elF{r5}E+g-iaXq literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png new file mode 100644 index 0000000000000000000000000000000000000000..bdd130c3533a790bb74dc41c9449ac92a35f91fa GIT binary patch literal 422 zcmV;X0a^ZuP)|_=KlV-gVKz`+>u~=iGDe_nmW==ej!146$U~SOHR0ib_!_YRjfm!dcV@ zug?uNUgv)J&;$S87PM3wmp40;ybSYCPPZ+0lk85p*q?dRvC_!7g4lBqAtpx98i^|W zL#`hJFxaDHt>%EQbWUd2hzVCpsPP)^9(VC{tJ|E_Cwo2HL4b8(IzEliOsRE7p=W8Q z$;bZzH&aXmp-PF**Am`-_o4nZEb;q`JQihcrQz`mO=xC`uPU3P-x8+^$-K%2M44MD z&G6^l;B6%%65kbsjy%wFUG8hC7Gf_!zNcI*O=IXgin`>VgA|pbQgppVM^MURaWqK6 Q$p8QV07*qoM6N<$f-C~EaR2}S literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png new file mode 100644 index 0000000000000000000000000000000000000000..75d27899e32c19478fd914072864166c937fcc0c GIT binary patch literal 537 zcmV+!0_OdRP){d(V$|3f^#jaM643@xCADcrHBCy!ZMW42&5J4hdo*K`bPQg#@vX zAQlqDVtB#+UV?4*J~qrC=4-#!Ipxx)64MBe7hD$AGh5F>3HpOW5C{v9I(de}?I&eD zv_1?@Ca}4bh3Q#4MB?tI-|_XWqcPPpm*?)=O7VW%|O z#dL$N67v!z_X`kM5#TcYrW!Nlvq_&k;}~=aa(JW6u!dNTyP%*_t_{{0e*x+qOt3$? zXL10%^=$nI9R>YC2ke}VgSCFwHNrEOI(|{T<034x^6>hspqGv%e!Q)MXX0JzKK|Wi zFE#Ba4@4$!f^zXonv1y_T%5f&AJXvVok^F#I@o>TO!VT8gaomWAQlqDLV{RG5DN)n bF}&ap%6*B^)@pj400000NkvXXu0mjf(5>oa literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png new file mode 100644 index 0000000000000000000000000000000000000000..06afa60917f35358a1f61d08d10c440432bc0d01 GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^Rv^s51|%Qu_R;`SoCO|{#S9GG!XV7ZFl&wkP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di3`~KZE{-7;jBjVzdPE0`H1uzsc1>WR=;fs7 z3rjg(M$NhHq|W{J3Sa4l;LO#lTURyPKZyQ&_^8DTA@;zMK!cgR*({}jQ+`Z-z~9N4 z_2K!P)hzKfm1-YZAD#TEuxEeuR9tjNATSRi%&PoL;N6Maw=!^<#I1`|CYDq<$>pZIp1Gj=3+5_{GcL| zso6N6Xa9Lyfso_*`(+c_%9G@)qRkXz-|1Aza-Dl_*^=-;<*i*eci`Pp1A+a8^VvEh zVy&7Yo_zUK^Haj;pwUGQwuH^%&d#5UFU&H#^vap}(ya|?Kh9WJPOy;wZhbW{J1RWi z#Vlgl;(a?eaP9f#EP2jB^NI8{vBmpV&&hmK#k$mD_s^E4mamTQnI(0z_59bTAO8BY z?%1{6_x9~mT?;pE4l2+0xb695;nWB%uO8l(4_~)B-|a8@;3IQDN^C+%fZzWApF+yd z_x^p~sv)W>e(u!%dDlN|{>i#!sfHQL(~?i0bGpywM(BC{uu0r%b3rOP{QsFPx$BNh zI(hTlis$tXXZ6;u-DacVBiS8x-R9r}?Sk^pC$_|Lq@TJgA2cb{v_E)Tamch6b~~k} z^u*uYAECP1uz>5;Hr*RvUg%w^+oE1(cJe|3@3~jon?iP;{bUtwB=$8)wKws@=Xo8w zmdPxxU0$!4cH`dC++@~$XD%N;G1JQJaQdo#LF>jH2lL;({*~@L@lSiBB#!6<3m;=$ YQNGXVR!{jmU}9tNboFyt=akR{0D(wBr2qf` literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png new file mode 100644 index 0000000000000000000000000000000000000000..2e0db2a6123440f30a37f1b6a69753c01d74bc6e GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0vp^HXzKw1|+Ti+$;i8oCO|{#S9GG!XV7ZFl&wkP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di3`~KZE{-7;jBjUIdMtJnX_)_dSNo*BPKWYR zrnlrWZH(P+)*5<**^ygxi%|b5rPf;&4O3lhyja(Yh`2^4uiYl-BB0$YWn-YW;E`dz zjfcs}`4c-^rhj)lG5_S5|NrmXzdt+M;nS+v#^@7@_Z<5U9=ej4_-cbeX~YaG9Uob- zWqjPh?X4>hgN2{W`A~hK;qXsRF5mCx^NN*cZ94z%8mr6U>zmGgU2l+hKjQ}*-}iL~ z-u>ZlJ2FpSb_>V$iu$hE`jd|DJ-eH8>E3u?xo4hvb;$G1b7sTc?FU!yDBIm3(EfSzjGx|$5|vr~ z8fWwtg-Yo6EqtB%hw=2~QUEdnH#Nd?L>-l_9;%k?#RQ?%vJxx^cH{&M3 zwTBc1+l-aIclrFhV3^RH<5JD1?=SBd`7~TZusdSqZI;*nHawhhE}j4Q{)$yw1XeEC z%a<(IZ}%kPdBR2w*Pm_4r&jGdzIV;GGfSJlNxE%VqtiKaU51Hs?QT}Jwr|1Tjt7aJ z-udX%YA3fA!8MEDt;&CpX>j<~smN3NBAV`X_2lXrZgJoB-dQ@kc-sf9hyUN{Z@MS7 z@tytTQsLi^^t7b|_+ADnzW(}m+VL6HZVz9)zSsP4=l)G0s>yZ_sxF2FZ{nQk5NRQ@ zXUc8sCowsn1gC842w#*tZ_U|c#SbPk<7<{r+Aa9UQSq03+~=)NKF*KofW#K=NR;(! WKFVR5TxtbOYz&^RelF{r5}E)t4@Uw3 literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png b/SDL3-CS.Tests.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png new file mode 100644 index 0000000000000000000000000000000000000000..755bc880a9ec72638840e9c5ae10c5055194275e GIT binary patch literal 870 zcmeAS@N?(olHy`uVBq!ia0vp^J|N7&1|*M957Y)yoCO|{#S9GG!XV7ZFl&wkP>``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di3{1a0T^vIy7~js`pDmmyaeThi>PuUqSe-Lv zg1CY@vi~={ank17#qsaP5gk3QseDv>!Tjk*?yCO&8{OF@-z2* z*!r~2Pwjkqs^$0aI~N2Ky)ri3mOH+@@8s3X@hNLJTr9bNZ{Mw^aL%jqKg%x-s{Z{} zK~^}dcix$k#qLjzJ{B!>zSuFZdRNr?Z+cEg#J5yDyYF}G4Uz37 zF*EL&RWYUOw?Fy&M*p>`m*IZJlWLph8u|CI-rWQQ?w&2Iy zKJMVilkQKo*M!IA``SPDTr;D3Th{l9#?P+3dCA=o|8dDnZDTdPJJpssvx*(`V&x42 zlQ+Ii-pU@f$o*}4-SjUtj(d)5elY9rmOS(L+!Gfs$~`G~?fLo-_qVF}mGeSpEb`xc z=PnQl;9b@bTp?P08^Hg)~``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di49vWqE{-7;jBjV#X9Nd|9P?kZ$i(f)q@dN# zyFC`hp3P%j&cU@v_RR&qpwgm%6;?mkUuA{PndLa$BCK|#8zmZyiL`~>i5h3KAl^9-d1(r=ffNSJ4vPW3vh6;EOZc{0&!DY zH|0l4dEy+uf0IKVy2zyZKu6nlo;ReN~bITV_ou`*V*6Zl43FUnn6=V5%>7&=#YCOd^&u;p>@G|3P z7Wu8mi;eG}`JI0HopXWfg483)x(wq2C4bXowL2?%A>-yzvn*k;>iA2 z{Wp$1F)3b;GuBhj~Bp;|JpQwO z*ZW?p32)ivnF=fQmx+n2<-IL>p5@rIHIr_An6O28-nPvq-=A(TeY?v)&x?;|w#~BR zhhEF~iLvQtHW*IQ#0=BoH)_-a^uzRwoUhf^Et$~ zpYVGAagkVyv&Ga1{V9UKE}zP=nwMN=^)gel=|T1}@paA1=1Ft@RNaWmn_@-KZJ=&DT+y^{-2M~^``W z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&di49w1+E{-7;jBn={`UD4xwDB)G7T_S_$gG#6 zwnM9MiJD&00Z%sT2Pq~Sj67ndc!Z0(Sv_FzlbHFsXUz-&@s4FHR5cb(S;6w!_PWT2 zrL|ui|Hpm$RL^;`xjee!{@(X@{>x4ZyPG%vJZEEp4+qaFR;Qf~8sZ#JnHI(UeNxecVf1CH;JhSbLPtAAP`**5>takg~eq55}eQ$51cE!2=Kd-H- zrIze`+QPDM%KnWaT59F*S@rb(OyMt{?Rxz64Qu{cZ$JKt`BuNP`rOZn^|4!aJKkFF zqQdd=%KJ?xN`u6Hwd;HN#%^ty+qEV}f7h>FN$F3&-sqBHi%snRJ+0=rjr0$dt@Aqf zWY&FOd&9EYW_HZu-9 zYOC*mx6lyP=MG-Hd-d0Q4_G;kMWU#}2# zo0F3vb@ZO!npwU}FJ8O9@8D-4`5!utomawVpUl*%(6ijDroA94O3Uww)+`aLMWtm| z%UoXjimm;4c3T;o(KU+Fh#8-FS2R z_Xf{n%qf2R=j={YJ8$auRIBrc`O6(~`S~B$?e5(c#-{l8$F=W=E5m(GJ4bAOKQY6y zYV-Th%@zWH1Eys0;~vT}C$bxmv8=DplYYQ69;m5X6t{`{4epL?ox zO6!|n2lX`sk8k-O6R>TnwdJg7F?#A-pG_>eba}a~{Ldu$P;bZ0?>k-|e0IEA-AjIM zJkL_Es`b47s}0Yu(Tx1bu{=`JRn&eiC;R{3R7rHGX||qm$-h4Zra#Y40cI}-Pgg&e IbxsLQ06r+Fc>n+a literal 0 HcmV?d00001 diff --git a/SDL3-CS.Tests.iOS/Entitlements.plist b/SDL3-CS.Tests.iOS/Entitlements.plist new file mode 100644 index 0000000..36a8706 --- /dev/null +++ b/SDL3-CS.Tests.iOS/Entitlements.plist @@ -0,0 +1,6 @@ + + + + + + diff --git a/SDL3-CS.Tests.iOS/Info.plist b/SDL3-CS.Tests.iOS/Info.plist new file mode 100644 index 0000000..22aeee1 --- /dev/null +++ b/SDL3-CS.Tests.iOS/Info.plist @@ -0,0 +1,42 @@ + + + + + CFBundleDisplayName + SDL.Tests.iOS + CFBundleIdentifier + SDL.Tests.iOS + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + UIDeviceFamily + + 1 + 2 + + UILaunchStoryboardName + LaunchScreen + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Assets.xcassets/AppIcon.appiconset + + diff --git a/SDL3-CS.Tests.iOS/Main.cs b/SDL3-CS.Tests.iOS/Main.cs new file mode 100644 index 0000000..a1a8eb1 --- /dev/null +++ b/SDL3-CS.Tests.iOS/Main.cs @@ -0,0 +1,20 @@ +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using SDL; + +public class Program +{ + public static unsafe void Main(string[] args) + { + NativeLibrary.SetDllImportResolver(typeof(SDL3).Assembly, (_, assembly, path) => NativeLibrary.Load("@rpath/SDL3.framework/SDL3", assembly, path)); + + SDL3.SDL_RunApp(0, null, &main, IntPtr.Zero); + } + + [UnmanagedCallersOnly(CallConvs = new[] { typeof(CallConvCdecl) })] + private static unsafe int main(int argc, byte** argv) + { + SDL.Tests.Program.Main(); + return 0; + } +} diff --git a/SDL3-CS.Tests.iOS/SDL3-CS.Tests.iOS.csproj b/SDL3-CS.Tests.iOS/SDL3-CS.Tests.iOS.csproj new file mode 100644 index 0000000..0c37ee9 --- /dev/null +++ b/SDL3-CS.Tests.iOS/SDL3-CS.Tests.iOS.csproj @@ -0,0 +1,21 @@ + + + + net8.0-ios + SDL3.Tests.iOS + Exe + enable + true + 13.0 + true + + + + + + + + + + + diff --git a/SDL3-CS.sln b/SDL3-CS.sln index c686aa6..a7f2209 100644 --- a/SDL3-CS.sln +++ b/SDL3-CS.sln @@ -23,6 +23,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDL3-CS.Android", "SDL3-CS. EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDL3-CS.Tests.Android", "SDL3-CS.Tests.Android\SDL3-CS.Tests.Android.csproj", "{E8469DA5-E437-4287-9E2A-8B8F4DC21C1A}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDL3-CS.Tests.iOS", "SDL3-CS.Tests.iOS\SDL3-CS.Tests.iOS.csproj", "{CCDD11EE-D552-4925-8B68-351AC9317589}" +EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDL3-CS.Tests.Desktop", "SDL3-CS.Tests.Desktop\SDL3-CS.Tests.Desktop.csproj", "{7E8D719A-5B69-43B7-A9D5-385B6FE7F411}" EndProject Global @@ -51,6 +53,10 @@ Global {E8469DA5-E437-4287-9E2A-8B8F4DC21C1A}.Debug|Any CPU.Build.0 = Debug|Any CPU {E8469DA5-E437-4287-9E2A-8B8F4DC21C1A}.Release|Any CPU.ActiveCfg = Release|Any CPU {E8469DA5-E437-4287-9E2A-8B8F4DC21C1A}.Release|Any CPU.Build.0 = Release|Any CPU + {CCDD11EE-D552-4925-8B68-351AC9317589}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CCDD11EE-D552-4925-8B68-351AC9317589}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CCDD11EE-D552-4925-8B68-351AC9317589}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CCDD11EE-D552-4925-8B68-351AC9317589}.Release|Any CPU.Build.0 = Release|Any CPU {7E8D719A-5B69-43B7-A9D5-385B6FE7F411}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7E8D719A-5B69-43B7-A9D5-385B6FE7F411}.Debug|Any CPU.Build.0 = Debug|Any CPU {7E8D719A-5B69-43B7-A9D5-385B6FE7F411}.Release|Any CPU.ActiveCfg = Release|Any CPU