* Added simple button sliding mode
* Added "keep first" button sliding mode
* directly pressed buttons stay active even when sliding off
* further buttons can be triggered via the simple sliding method
* Added button sliding configuration to overlay settings menu
* Updated licences
* Added button sliding activation to dpads and joysticks
* separated handling of buttons, dpads and joysticks needed since they can be activated by moving now
* Adjusted strings
* Changed ButtonSlidingMode values to mirror prior string name changes
* Reverted incorrectly applied language translation
* Nitpicky formatting adjustments
* Shortened string IDs
* hasActiveJoy --> hasActiveJoystick
* showButtonSlidingModeMenu --> showButtonSlidingMenu
* Updated outdated comment relating to `isMotionFirstButton`
Co-authored-by: toksn <toksn@yahoo.de>
---------
Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
* renderer_vulkan: remove out of context SDL_Quit call (fixes#1220)
SDL_Quit must not be called unless the application must exit or SDL is no longer needed
* comment: simplify, forgot init had ref-count
* android: Implement play time tacking
Co-Authored-By: Reg Tiangha <rtiangha@users.noreply.github.com>
* Moved playtime manager from `citra_qt` to `common`
* Reimplemented Android play time to use existing logic from desktop
* Updated license headers
* When getting current game ID fails, silently error rather than crashing
* playTimeManagerStart: Check that `play_time_manager` is initialized before using it
---------
Co-authored-by: Kleidis <167202775+kleidis@users.noreply.github.com>
Co-authored-by: Reg Tiangha <rtiangha@users.noreply.github.com>
* renderer_vulkan: Disable FIFO when refresh rate is lower than ~60hz
Also disables FIFO when Apple low power mode is enabled, as it can limit the application framerate to 30fps
* renderer_vulkan.cpp: Put `IsLowRefreshRate` into anon namespace + make static
* Fix aac_decoder memory leak
Only call NeAACDecInit on the first AAC frame and create new NeAACDecoder on DecoderCommand::Init request
* update license headers
* fix oversight
* reorganized code
-put open new FAAD2 AAC decoder code into a separate function
-removed LOG_INFO for open/close FAAD2 AAC decoder
-added LOG_ERROR when no decoder is created to handle decode request, either decoder creation failed or DecoderCommand::Init command not received
* Update aac_decoder.cpp
fix clang coding style check
* fix load savestate
Loading a savestate creates a situation where decode requests aren't preceded by an init request, so we open a new decoder by default in the constructor. A new AACDecoder instance is always constructed on load savestate.
* cmake: Bump min version to 3.25 and update android to 3.30.3
* app/build.gradle.kts: Set minimum CMake version rather than exact version
---------
Co-authored-by: OpenSauce <opensauce04@gmail.com>
* Replace deprecated and removed in boost 1.88 io_service for io_context
* More thoroughly replaced references to io_service with io_context
* Updated license header
---------
Co-authored-by: OpenSauce04 <opensauce04@gmail.com>