Commit Graph
1392 Commits
Author SHA1 Message Date
Duy Tran Khanh 1af09ca02d Tweak NSLocalizedString; Keep split display mode
Tweak NSLocalizedString to return English if not yet localized.
Keep Split display mode between rotations.
New debug option: skip JIT wait, for #423
2022-11-17 21:46:38 +07:00
Duy Tran Khanh 0a88ed672b Tweak SplitViewController for vertical iPhone
In vertical orientation, the primary view controller is set to overlay
mode.
2022-11-17 11:07:05 +07:00
Eilionoir Tunnicliff 7dbefd0861 Fix last commit x3 2022-11-15 20:17:33 -05:00
Eilionoir Tunnicliff 75995fd42e Fix last commit x2
my head hurts
2022-11-15 20:06:06 -05:00
Eilionoir Tunnicliff 89b2565043 Fix last commit 2022-11-15 20:05:16 -05:00
Eilionoir Tunnicliff 17158ac3f4 Merge remote-tracking branch 'refs/remotes/origin/main' 2022-11-15 20:04:19 -05:00
Eilionoir Tunnicliff 9051ac62af Newer syntax 2022-11-15 20:04:12 -05:00
Duy Tran Khanh 80132a5964 Fix: did not prefer ext pointer lock on hotplug 2022-11-15 21:37:41 +07:00
Eilionoir Tunnicliff f6062641f0 Merge remote-tracking branch 'refs/remotes/origin/main' 2022-11-15 00:00:06 -05:00
Eilionoir Tunnicliff c1b04636f3 Move Technonote 2022-11-14 23:59:50 -05:00
Eilionoir Tunnicliff 4bdccc8c81 Remove jailbreak repository credits 2022-11-14 18:12:39 -05:00
Eilionoir Tunnicliff 0bd40dce62 Change icon for JitStreamer server setting 2022-11-14 17:18:24 -05:00
Eilionoir TunnicliffandDuy Tran Khanh c80f2022e4 Add AltJit support (#422)
* Integrate AltKit for JIT

* Bump min iOS to 12.2, delete AltKit-Swift.h

* Add title messages + prefer JitStreamer

* Tweaks to UI and order of operations

Co-authored-by: Duy Tran Khanh <[email protected]>
2022-11-14 17:06:25 -05:00
Duy Tran Khanh 973568eaea Tweak pointer lock, fix inverted scrolling
Fixed these following issues: #420, #421
Replaced commit 3e2d3c9 because it was not complete.
2022-11-14 20:24:46 +07:00
Eilionoir Tunnicliff cedbf1e7e5 Add custom JitStreamer server support
Closes #418
2022-11-13 14:54:11 -05:00
Duy Tran Khanh 838f99af1b Support external display resolution
TODO: add checks to not confuse with Stage Manager + external display

README.md: Added missing credits
2022-11-13 22:01:57 +07:00
Duy Tran Khanh 8f8ec8df89 Cleanup some stuff 2022-11-13 09:15:24 +07:00
Duy Tran Khanh c44c987ee3 Minor UI tweaks
- Correct Settings icon name
- Make both `Send your logs` and the share icon visible, no matter
about iOS version.
- Settings: Use Action Sheet instead of Picker View.
- Cleanup LauncherFAQViewController that was no longer used.
2022-11-13 08:54:15 +07:00
Duy Tran KhanhandEilionoir Tunnicliff d63374109b Add localizations as of 11/12/2022
* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Vietnamese)

* New translations Localizable.strings (Portuguese, Brazilian)

* New translations Localizable.strings (Indonesian)

* New translations Localizable.strings (Persian)

* New translations Localizable.strings (Thai)

* New translations Localizable.strings (Kazakh)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (Malay)

* New translations Localizable.strings (English, United Kingdom)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Tatar)

* New translations Localizable.strings (Bashkir)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (LOLCAT)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Swedish)

* New translations Localizable.strings (French)

* New translations Localizable.strings (Hebrew)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Arabic)

* New translations Localizable.strings (Catalan)

* New translations Localizable.strings (Czech)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Greek)

* New translations Localizable.strings (Finnish)

* New translations Localizable.strings (Serbian (Cyrillic))

* New translations Localizable.strings (Italian)

* New translations Localizable.strings (Japanese)

* New translations Localizable.strings (Korean)

* New translations Localizable.strings (Lithuanian)

* New translations Localizable.strings (Dutch)

* New translations Localizable.strings (Norwegian)

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Portuguese)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Slovak)

* New translations Localizable.strings (Russian (pre-revolutionary))

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Romanian)

* New translations Localizable.strings (Azerbaijani)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Vietnamese)

* New translations Localizable.strings (Portuguese, Brazilian)

* New translations Localizable.strings (Indonesian)

* New translations Localizable.strings (Persian)

* New translations Localizable.strings (Thai)

* New translations Localizable.strings (Kazakh)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (Malay)

* New translations Localizable.strings (English, United Kingdom)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Tatar)

* New translations Localizable.strings (Bashkir)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (LOLCAT)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Swedish)

* New translations Localizable.strings (French)

* New translations Localizable.strings (Hebrew)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Arabic)

* New translations Localizable.strings (Catalan)

* New translations Localizable.strings (Czech)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Greek)

* New translations Localizable.strings (Finnish)

* New translations Localizable.strings (Serbian (Cyrillic))

* New translations Localizable.strings (Italian)

* New translations Localizable.strings (Japanese)

* New translations Localizable.strings (Korean)

* New translations Localizable.strings (Lithuanian)

* New translations Localizable.strings (Dutch)

* New translations Localizable.strings (Norwegian)

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Portuguese)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Slovak)

* New translations Localizable.strings (Russian (pre-revolutionary))

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Malay)

* New translations Localizable.strings (Czech)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (Italian)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (Vietnamese)

* New translations Localizable.strings (Indonesian)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Czech)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Italian)

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (German)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (Vietnamese)

* New translations Localizable.strings (Vietnamese)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Bengali, India)

* New translations Localizable.strings (Bengali)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (Italian)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Bengali)

* New translations Localizable.strings (Bengali)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (English)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Indonesian)

* New translations Localizable.strings (Turkish)

* New translations Localizable.strings (Swedish)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (Chinese Traditional)

* New translations Localizable.strings (Vietnamese)

* New translations Localizable.strings (Portuguese, Brazilian)

* New translations Localizable.strings (Persian)

* New translations Localizable.strings (Thai)

* New translations Localizable.strings (Kazakh)

* New translations Localizable.strings (Hindi)

* New translations Localizable.strings (Slovak)

* New translations Localizable.strings (Malay)

* New translations Localizable.strings (English, United Kingdom)

* New translations Localizable.strings (Pirate English)

* New translations Localizable.strings (Filipino)

* New translations Localizable.strings (Tatar)

* New translations Localizable.strings (Latin)

* New translations Localizable.strings (Bashkir)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (LOLCAT)

* New translations Localizable.strings (Serbian (Cyrillic))

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (German)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Indonesian)

* New translations Localizable.strings (Romanian)

* New translations Localizable.strings (French)

* New translations Localizable.strings (Spanish)

* New translations Localizable.strings (Arabic)

* New translations Localizable.strings (Catalan)

* New translations Localizable.strings (Czech)

* New translations Localizable.strings (Greek)

* New translations Localizable.strings (Portuguese)

* New translations Localizable.strings (Finnish)

* New translations Localizable.strings (Hebrew)

* New translations Localizable.strings (Italian)

* New translations Localizable.strings (Japanese)

* New translations Localizable.strings (Korean)

* New translations Localizable.strings (Lithuanian)

* New translations Localizable.strings (Dutch)

* New translations Localizable.strings (Norwegian)

* New translations Localizable.strings (Polish)

* New translations Localizable.strings (Russian (pre-revolutionary))

* New translations Localizable.strings (Danish)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (Danish)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (German)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Korean)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (German)

* New translations Localizable.strings (Ukrainian)

* New translations Localizable.strings (English (upside down))

* New translations Localizable.strings (French)

* New translations Localizable.strings (French)

* New translations Localizable.strings (French)

* New translations Localizable.strings (Russian)

* New translations Localizable.strings (French)

* New translations Localizable.strings (French)

* New translations Localizable.strings (French)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (French)

* New translations Localizable.strings (French)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (Chinese Simplified)

* New translations Localizable.strings (English)

* New translations Localizable.strings (Spanish)

Co-authored-by: Eilionoir Tunnicliff <[email protected]>
v2.1rc1
2022-11-12 16:59:14 -05:00
Eilionoir Tunnicliff ab5bd8469e Changes
- Removed FAQ, About Launcher, and Update History buttons
- Moved *.png to Assets.xcassets
- Moved LPVC2 to LPVC
2022-11-10 00:03:37 -05:00
Eilionoir Tunnicliff e6321546bd Remove jailbreak-specific install instructions 2022-11-08 13:10:11 -05:00
Duy Tran Khanh 8f8aaa8fcc CC Editor Fix: reset undoManager on launch
For some reason, undoManager was not reset after presenting new view controller. This made the editor think that it had unsaved changes.
2022-11-07 18:49:11 +07:00
khanhduytran0 32148d2bff Implement undo/redo for custom controls editor 2022-11-07 18:28:12 +07:00
khanhduytran0 ac3e60ea41 Unsandboxed self-JIT now cleanup child process 2022-11-07 18:27:29 +07:00
Eilionoir Tunnicliff 7690512602 Switch to PojavLauncher's website for changelog 2022-11-06 23:29:30 -05:00
Duy Tran Khanh d40539df05 Localize CustomControlsViewController 2022-11-04 19:10:10 +07:00
Duy Tran Khanh b5af92d0f5 JVM crash dump: now shown, disable some Cr4shed handler
When Cr4shed crash handler is on, chaining to it will eventually crash
instead of returning so that JVM can continue perform dump. For now,
signal handlers are reset to default.

abort() is now caught and shown in the launcher.

Temporarily disabled safe area when windowed, until I can properly set
it up, in order to workaround buttons going out of bounds.
2022-11-03 21:12:55 +07:00
Duy Tran Khanh 4c502ccec3 ControllerInput: correct scrolling 2022-11-01 06:14:26 +07:00
mariobrostech 121dbedfde Update README to include the new PojavLauncher URL (#410) 2022-10-31 12:11:09 -04:00
Duy Tran Khanh 8ca77a1b73 Support resizable for iPadOS Stage Manager
On iPadOS, PojavLauncher can be launched in portrait mode
Declare controller support in Info.plist
Sync LWJGL changes from Android repo
2022-10-31 11:13:03 +07:00
Eilionoir Tunnicliff 583ba327a8 Change link 2022-10-29 02:04:09 -04:00
Duy Tran Khanh 1f85287590 reloadVersionList: fetch local when there isn’t cache 2022-10-22 20:41:04 +07:00
Duy Tran Khanh 5c8d2f9cdc Bug fix: SHA1 mismatch because old file was not removed
This occurred after 1.19.x had got assets update for the upcoming
1.19.3 release.
2022-10-20 11:18:14 +07:00
Duy Tran Khanh 8218a28e4d For 503aa82: it turns out iOS has stolen inputView
This commit should fix its core issue, so the workaround is removed.
For a while, UITextField variable was named `inputView`, which is same
as the name UIKit used to query custom input view. It was not until
recently that the crash started occurring on my device.
Other fixes (for LogView):
- Line indentation in SurfaceViewController+LogView.m:214
- Navigation bar size: now call sizeToFit
2022-10-19 17:59:18 +07:00
Duy Tran Khanh 8c0b8da9c3 Add menu icons; Error is now shown in fullscreen
JIT check: increase check timeout
2022-10-18 18:27:50 +07:00
Duy Tran Khanh 503aa827a9 Workaround random UIViewControllerHierarchyInconsistency crashes 2022-10-18 18:18:43 +07:00
Duy Tran Khanh 02a835685d Fixes #406: L1, R1 cause double slot switching 2022-10-18 18:17:32 +07:00
Duy Tran Khanh 4bc676e4fa ControllerInput: correct LThumb degree calculation 2022-10-17 07:35:18 +07:00
Duy Tran Khanh db7117e407 ControllerInput: Properly handle left joystick directions 2022-10-16 17:42:16 +07:00
Duy Tran Khanh 8789a7e9a7 MCDownloader: fallback for json with missing client info
Download failures now include call stack.
2022-10-15 19:00:55 +07:00
Duy Tran Khanh 56d7771d54 Add ent to allow picking jar from iCloud (for TrollStore)
As suggested by @asdfugil
2022-10-15 17:15:44 +07:00
Duy Tran Khanh d6d6f7b989 Bug fix #397: ControllerInput mapping issue
Because GLFW_GAMEPAD_AXIS_LR_TRIGGER have the same constant values as
GLFW_GAMEPAD_BUTTON_LR_BUMPER, both get overriden to left/right mouse
button.

This commit also corrects Back, Start button mapping: tried to write
mapping to a wrong+uninitialized NSDictionary
2022-10-15 10:04:26 +07:00
Duy Tran Khanh 1a1b829698 Disable WebView opaque (fixes #400) 2022-10-14 05:31:43 +07:00
Duy Tran Khanh bc060b5cdf Add a tiny Waiting for JIT dialog 2022-10-13 11:17:18 +07:00
Duy Tran Khanh 09567438cd tweaks 2022-10-11 20:01:56 +07:00
Duy Tran Khanh 76ae494557 Split SurfaceViewController.m to separate files
It's slowly getting too big, so I have to split, module-like organized.
- Category LogView (Log output, just added)
- Category Navigation (drawer menu)
- TrackedTextField
2022-10-11 19:54:58 +07:00
Duy Tran Khanh d3229575a9 Skip ptrace if already being debugged (#395)
It seems like Jitterbug launches app with parent pid ≠ 0, which prevented app from reaching UIApplicationMain.
2022-10-10 10:25:10 +07:00
Duy Tran Khanh 31fee44bf7 Fixes (mostly for #385) 2022-10-06 20:43:03 +07:00
Eilionoir Tunnicliff 781e643b64 Move to sandboxed directory for all users
This commit fixes issues where users migrating from the debian package to TrollStore will lose access to existing PojavLauncher data, by beginning a final migration to a sandboxed directory. We also remove the compatibility symlink option, to get people familiar with the new location and prepare for .pojavpack.

This commit breaks installations of PojavLauncher installed with AppSync Unified. Recommend installing with TrollStore or sideloading as if it were an unjailbroken device.
2022-10-03 00:21:32 -04:00
Duy Tran Khanh b46c64cc59 Changes and fixes to input, mark nonatomic to others
- Controller: implement ticking, swapped thumbstick mapping to match
common usage
- External mouse should continue sending move while mouse button is
being held
- Tweak touch scroll velocity division to 100
2022-10-02 10:54:04 +07:00