Commit Graph

2061 Commits

Author SHA1 Message Date
Billy Laws dc20a61527
Update README.md 2023-05-13 11:53:07 +01:00
Billy Laws c986a55990
Update edge names 2023-05-13 11:52:17 +01:00
Mark Collins a2f675072a
Update README.md 2023-05-07 20:48:11 +05:30
PabloG02 35fb874a42 Address remaining feedback 2023-05-02 13:39:07 +01:00
PabloG02 6e68786bd8 Address some feedback
Replace 0-9 with \d
Change zip import to use cache dir
Move export and import logic to their own functions
Delete zip after being shared
2023-05-02 13:39:07 +01:00
PabloG02 a6c2699395 Use constants instead of 0666 2023-05-02 13:39:07 +01:00
PabloG02 e7cf7c9dae Change name of zip to `{name} (v{version}) [{titleId}] - {saveTime}` 2023-05-02 13:39:07 +01:00
PabloG02 dae5469a61 Fix regex 2023-05-02 13:39:07 +01:00
PabloG02 f85ecc23be Change file creation permissions to 0666 2023-05-02 13:39:07 +01:00
PabloG02 71a0033f5b Use the title of the game as the name of the zip.
This zip will have the structure gameTitle.zip/titleId/...
2023-05-02 13:39:07 +01:00
PabloG02 3dbd47082d Make import and export buttons have text 2023-05-02 13:39:07 +01:00
PabloG02 9bcbb3af47 Extract strings 2023-05-02 13:39:07 +01:00
PabloG02 dc36f3d76a Clean layout 2023-05-02 13:39:07 +01:00
PabloG02 5c4973e141 Use coroutines 2023-05-02 13:39:07 +01:00
PabloG02 c57d572936 Show dialog before deleting save 2023-05-02 13:39:07 +01:00
PabloG02 92c6eecfc8 Delete zip after exporting 2023-05-02 13:39:07 +01:00
PabloG02 b24bf9eb91 Make TitleId check more robust 2023-05-02 13:39:07 +01:00
PabloG02 a634bca2d2 Initial implementation of save management 2023-05-02 13:39:07 +01:00
lynxnb b7548e51cf Use AndroidX `use` extension function instead of Kotlin built-in one
The Kotlin built-in `use` extension function applies to `AutoCloseable` only, and throws an error if the object it's being called on is not an `AutoCloseable`. This causes `OnScreenView` to fail to inflate on SDK < 31 as it retrieved the current theme primary color with a `TypedArray`, which only implements `AutoCloseable` since SDK 31 (Android 12).
The AndroidX core library provides a `use` extension function that applies to `TypeArray` instead of `AutoCloseable` so the fix is just a simple import.
2023-05-02 12:27:57 +01:00
lynxnb cce4b3f89a Add OSC recenter sticks option description 2023-05-02 12:27:57 +01:00
lynxnb 563c72afa9 Implement OSC customizable stick activation radius 2023-05-02 12:27:57 +01:00
lynxnb d86b2ec3e9 Implement OSC stick regions
Stick regions extend the activation area of the sticks to rectangles covering the corresponding half of the screen.
E.g. for the left stick: when any point of the left side of the screen is touched, the stick is repositioned there, and acts as if it was centered in the touched position. When the finger is lifter, the stick is hidden.
2023-05-02 12:27:57 +01:00
lynxnb 32f995165c Use 1.0 as the default OSC button scale value
The default value was previously 1.15.
2023-05-02 12:27:57 +01:00
lynxnb 821cdb8d72 Draw a circle indicator on OSC buttons with toggle mode enabled 2023-05-02 12:27:57 +01:00
lynxnb 7cf45b11b0 Vibrate on OSC roll-over button presses too 2023-05-02 12:27:57 +01:00
lynxnb 655ca8f89b Ignore OSC roll-over events if the button is already pressed 2023-05-02 12:27:57 +01:00
lynxnb 560fcd9442 Implement toggle mode for OSC buttons
When toggle mode is enabled, the button will toggle between the `Pressed` and `Released` state when it's pressed.

Without toggle mode:
ACTION_DOWN -> Pressed
ACTION_UP -> Released
ACTION_DOWN -> Pressed
ACTION_UP -> Released

With toggle mode:
ACTION_DOWN -> Pressed
ACTION_UP -> No event
ACTION_DOWN -> No event
ACTION_UP -> Released
2023-05-02 12:27:57 +01:00
lynxnb 78252fbcbd Show current input values in `OnScreenEditActivity`
This was made primarily for debugging on-screen controls, but it might be useful to users too.
2023-05-02 12:27:57 +01:00
lynxnb 69fb15ffc9 Improve separation between `OSCEditActivity` and `OSCView`
The activity shouldn't access the edit button directly, but should only access data available through the public interface.
2023-05-02 12:27:57 +01:00
lynxnb 7e3d3bd281 Draw a box around disabled OSC buttons in edit mode
The box is also drawn if the alpha is configured too low (<5%).
2023-05-02 12:27:57 +01:00
lynxnb 659e090d38 Enable OSC per-button text and color selection 2023-05-02 12:27:57 +01:00
lynxnb c7d213c3ea Make the OSC edit panel collapsible
The panel can now be closed to try out the buttons.
2023-05-02 12:27:57 +01:00
lynxnb 3f2fd7a653 Make some properties constant in `OnScreenButton`
They were initially made variable by mistake
2023-05-02 12:27:57 +01:00
lynxnb 37a2a2fbad Fix inconsistent OSC button movements when using the arrow buttons
A combination of factors caused inconsistent button movements when using the arrow buttons to move it, namely floating point approximation and the round down performed when snapping a button to the grid. Sometimes the layman solution is the best one: adding/subtracting one to the move amount depending on the direction ensures that the button always ends up on a grid line.
2023-05-02 12:27:57 +01:00
lynxnb 1d6b075d5c Draw a selection rectangle around the active button while editing 2023-05-02 12:27:57 +01:00
lynxnb e91993698f Remove OSC `EditMode` enum
An enum isn't needed anymore, as there's no state to enumerate anymore.
2023-05-02 12:27:57 +01:00
lynxnb 2556b25ebf Fix OSC incorrect pressed alpha when low values are used
OSC would "light up" when the alpha value was low because of the value being coerced to an arbitrary range. Divide the alpha value by 3 instead.
2023-05-02 12:27:57 +01:00
lynxnb d69c9f472f Make the OSC control panel draggable 2023-05-02 12:27:57 +01:00
lynxnb d7e38e9556 Introduce a control panel to edit buttons instead of a fab bar
An unusual big commit, unfortunately needed because none of these changes would make sense nor work individual. A quick list of what have been done follows.
* Introduced a control panel to control buttons replacing the FAB bar
* `ConfigurableButton` and `OnScreenConfiguration` interfaces have been introduced to allow for easier proxying of actions when applying the same changes to all buttons
* Button resize logic has been stripped from the buttons in favor of the new sliders
* General cleanup and renaming of various methods to better reflect their functionality
2023-05-02 12:27:57 +01:00
lynxnb 49de8a8f38 Rework OSC action bar appearance
FABs are now placed on top of a sheet hanging from the top. Actions are now properly enumerated and don't rely on the icon resource ID anymore.
2023-05-02 12:27:57 +01:00
Abandoned Cart fe4ccd1ee0 Suppress or resolve common warnings 2023-05-02 12:27:06 +01:00
Abandoned Cart 97694e639a Add a Parcelable helper to handle deprecation 2023-05-02 12:27:06 +01:00
Abandoned Cart 96c5b94429 Always resume emulator, even if running
Fixes skyline-emu/skyline#2305
2023-05-02 12:27:06 +01:00
lynxnb 24d4f5e3cd Improve the robustness of the ROMs auto-refresh feature 2023-04-27 19:14:14 +02:00
lynxnb e6efaf26bc Don't scroll to the top of the game list on adapter changes 2023-04-27 00:31:14 +02:00
lynxnb caa15f729f Revert setting the app category to `game`
It was causing unbelievable slow cold app boot times on some devices (e.g. Pixel 6), for no apparent reason.
2023-04-27 00:31:14 +02:00
Dima bdf73aa20d Fix GetSharedFontInOrderOfPriority
return fonts array size instead of loaded state
2023-04-25 10:20:50 +01:00
Pablo González 8c2b39858d
Add xml for the shader compilation screen (#2255)
* Add xml for the shader compilation screen
* Change ConstraintLayout for LinearLayout and adapt style to MD3
* Change some aspects of the progress indicator and the source of text color
2023-04-23 21:43:48 +02:00
Abandoned Cart 178dbea801 Use the searching text to specify load state 2023-04-22 19:54:04 +01:00
Abandoned Cart 30aee55122 Suppress AppItem serialVersionUID warning 2023-04-22 19:54:04 +01:00