Commit Graph
1208 Commits
Author SHA1 Message Date
Eilionoir Tunnicliff 1a2ff210b5 Changes (untested)
Couldn't test locally due to issues with the iOS 16 SDK included with Xcode 14. Pushing
this now so I can build and test with GitHub Actions as I await the download of an
older version of macOS to put on my MacBook again

- Rewrite UIMenu in LauncherPreferencesViewController.m to support disabling some options
- Disable Allocated RAM slider until the option is specifically toggled by the user
    - Requires restart to show the slider due to the importance it presents
- raw_unjb_warn and ram_unjb_enable preferences
2022-08-13 23:04:13 -04:00
Duy Tran Khanh 8e848efc29 Fix sideloading on Windows causes Access is denied 2022-08-13 07:15:01 +07:00
Duy Tran Khanh 2679e618b8 Fix ipa files permission, should install now without error 2022-08-12 21:37:13 +07:00
Duy Tran Khanh 57031041e2 MinecraftResourceUtils.m: fix unexpected states
Fix: could not find inhertisFrom, launch even when download fails.

Other changes: log shown dialog, fix compile warning
2022-08-12 19:27:01 +07:00
Duy Tran Khanh 38c41d65d9 Auto disable Forge splash screen 2022-08-12 18:26:38 +07:00
Eilionoir Tunnicliff 7a2550cd45 Update LauncherPreferencesViewController.m 2022-08-12 07:05:07 +00:00
Duy Tran Khanh 44408a05af Update JavaLauncher.m 2022-08-12 12:14:37 +07:00
Duy Tran Khanh 1592d50f65 Attempt to unlock 120Hz for ProMotion display 2022-08-12 12:09:41 +07:00
Duy Tran Khanh ae1c86b113 Various fixes
- GLFW display mode array, fix 0x0 resolution bug
- OSMesa library (copied back 64f4042)
- Hacks for getting Spiral Knights to launch
- Error is now logged properly
2022-08-12 11:53:02 +07:00
Duy Tran Khanh 1d2d7edaec Update Makefile 2022-08-12 04:43:34 +07:00
Duy Tran Khanh 1ef9042f62 Update development.yml: move jre download location 2022-08-12 04:39:10 +07:00
Duy Tran Khanh 8ef9091192 fix the wrong file name 2022-08-12 04:36:05 +07:00
Eilionoir Tunnicliff fc857cc3c3 No more need for this 2022-08-11 11:33:56 -04:00
khanhduytran0 3a854fc9fd Remove -INT name suffix from IPA 2022-08-11 21:30:36 +07:00
Duy Tran Khanh 3658d8ccb3 Update README.md 2022-08-11 21:18:06 +07:00
Duy Tran Khanh c6add4db09 Update LoginViewController for int -> ipa 2022-08-11 20:51:43 +07:00
Duy Tran Khanh 12daebcd5c IPA build: use W^X JIT-enabled runtime
Finally, we managed to get W^X JIT working. The game will now run at
full speed, without having to jailbreak the device.
More info:
https://github.com/PojavLauncherTeam/android-openjdk-build-multiarch/re
leases/tag/jre8-40df388
2022-08-11 20:49:20 +07:00
Eilionoir Tunnicliff 3ce2ee901c Pojav INT Setup (#358)
* Pull JRE Zero when compiling IPA

Also move dsym above ipa to make sure it's made

* Depend on dsym

* Disable certain preferences when unjailbroken

- Allocated RAM
- Java home (to be readded)
- Disable home symlink

* Add launch warning

* bruh

* bruh 2

* bruh 3
2022-08-10 11:34:55 -04:00
Eilionoir Tunnicliff e121ae4f7f Fix ipa building without debs 2022-08-09 11:04:16 -04:00
Duy Tran Khanh 51e6a3b7be Fixes: "An unknown error occurred" + localize file 2022-08-09 18:40:08 +07:00
Duy Tran Khanh cf98cecf0b ldid: sign only the main binary 2022-08-09 18:13:45 +07:00
Duy Tran Khanh 370997d381 Added entitlement file for IPA build 2022-08-09 17:18:43 +07:00
Duy Tran Khanh 6dcde44087 Fixes for IPA build 2022-08-09 14:21:16 +07:00
Duy Tran Khanh 586eae3f1e Simplify IPA builder + upload artifact to Actions 2022-08-09 14:06:17 +07:00
Duy Tran Khanh 47e1ad342f Update LauncherViewController.m 2022-08-08 13:58:17 +07:00
Duy Tran Khanh 3af1cf6c56 Properly handling empty version text field 2022-08-08 13:56:57 +07:00
Duy Tran Khanh 95b9be2b63 Fixes a crash when installed version list is empty 2022-08-08 12:38:50 +07:00
Duy Tran Khanh 1c033a6e50 findNearestVersion: avoid negative index 2022-08-08 10:08:11 +07:00
Duy Tran Khanh 3db2926743 Moved type selections to segments in picker view
The version picker view now only display the selected type in one of
(Installed, Releases, Snapshot, Old-beta, Old-alpha). Toggling between
Releases and Snapshots allows jumping to the corresponding release or
the latest snapshot of the version.
2022-08-08 09:37:32 +07:00
Eilionoir Tunnicliff 26f849b3e2 Add MacStadium banner
Required for the Open Source program that they allowed us to enter
2022-08-05 13:37:07 -04:00
Duy Tran Khanh d17728a093 Virtual keyboard: fix Return key not working 2022-08-03 12:33:31 +07:00
Duy Tran Khanh 292fb8166f Custom controls: safe area is now customizable
Other changes:
- Cleanup unused functions
- Internal changes to access ViewController globally
- Moved ControlLayout to a separate file
2022-08-03 12:23:27 +07:00
khanhduytran0 25272c9fde Declare UIDeviceFamily for fullscreen on iPad 2022-07-29 14:27:16 +07:00
khanhduytran0 ce292d518a Tweaks
Added UIRequiresFullScreen for iPad
Only force full navigation bar height on iPhone
The Virtual mouse preference can now be set by the toggle button
Use UIColor.whiteColor instead of RGB 255/255
Use arm64e-supported fishhook fork
2022-07-29 13:27:18 +07:00
Duy Tran Khanh 2d5b0e5c01 egl_bridge.m: remove unused include 2022-07-28 11:09:50 +07:00
Duy Tran Khanh e2976633be Update Makefile 2022-07-28 11:04:08 +07:00
Duy Tran Khanh 74cbcc28af Added support for building on Linux (incl. Android/WSL)
This does not require a compatibility layer (Darling) nor a toolchain
(Theos). Instead, clang and lld from Linux distribution is used with
iOS SDK to compile the natives part (C/Objective-C). Of course, this
also allows compiling on Android with Termux or Windows with WSL.
2022-07-28 10:59:56 +07:00
Duy Tran Khanh 7bbbe2cb54 Cleanup + move tinygl4angle src + use piston-meta 2022-07-28 09:38:15 +07:00
Eilionoir Tunnicliff e0bd5fcb5e fix formatting issue 2022-07-26 21:07:57 -04:00
Eilionoir Tunnicliff ac01590405 Merge remote-tracking branch 'refs/remotes/origin/main' 2022-07-26 21:07:06 -04:00
Eilionoir Tunnicliff cce3a479cb Add restart_before_launch to preferences plist
Default value is no, fixes a small log issue
2022-07-26 21:06:50 -04:00
Duy Tran Khanh ad9c6d482a Allow embedding JREs to PojavLauncher.app/jvm for IPA builds
The old IPA creation process: wrap every dylib files into framework;
this appears to be unnecessary, dylib files can be put outside without
breaking codesigning and validation (only tested with AltStore: it
scans and signs every Mach-O files).
Therefore, IPA builds now allow putting Java Runtimes to
`PojavLauncher.app/jvm`.
Makefile is yet tweaked to adapt this change, will be done later.

Other tweaks
- Disabled autocorrection for text fields in preferences
- The preferences now searches for installed JRE versions instead of
hardcoding them
- Bug fix: "accounts" folder was not created initially, leading to
"username.json does not exist" error
2022-07-25 20:54:41 +07:00
Duy Tran Khanh d311a03628 iPadOS: view ctrls should now be fullscreen again 2022-07-25 06:27:40 +07:00
Duy Tran Khanh b880f49b23 Improved text input handling for autocomplete
Text input is now far more stable with keyboard autocompletion and
typing extra stuff (marks).
Improved cursor movement: allows dragging farther.
Additionally, the text field is now made visible on the side menu.
Known issue that still persists: if the trackpad's cursor (by 3D
Touch/spacebar) is moved too fast, it will not synchronize with game

In other side, a bug fix: symlink fails, because the `Application
Support` folder was not created.
2022-07-24 20:56:53 +07:00
Duy Tran Khanh 5261b41d3f Force the nav bar height same across size classes 2022-07-24 09:37:06 +07:00
Duy Tran Khanh 47c8874cae Bug fix: UI completely freezes on launch
The root cause is that the JVM has taken away the main thread, caused the UIKit’s queue to stop. This env var exists in my dev environment but has never been added here.
2022-07-23 21:54:48 +07:00
Duy Tran Khanh d8459effc0 WIP: New User interface
UISplitViewController is being used to create split menu.
Currently, autolayout is not yet done.
Added account switcher to the split view.

Fixes:
- auth_session parameter for legacy Minecraft versions
- Updating self.view background color is now automated by
UIColor.systemBackgroundColor
2022-07-22 08:02:40 +07:00
khanhduytran0 5d8a136470 SurfaceViewController is now always the root vc
Before launching game, SurfaceViewController is set to UIWindow.rootViewController, making it similar to "Restart before launching" in order to *attempt* to find out why touchscreen input does not work on certain devices. The restart option is still kept for debugging purpose.

Some other tiny code tweaks
2022-07-16 13:27:25 +07:00
Eilionoir Tunnicliff 0622423df4 ._. 2022-07-12 23:47:21 -04:00
Eilionoir Tunnicliff b497dc2448 oops, actually fix Elu dpkg this time 2022-07-12 23:43:58 -04:00