Commit Graph

143 Commits (547cc4dbf69bf53f49f50ef1f44c46a74821b51a)

Author SHA1 Message Date
Connor McLaughlin 828513409f Qt: Remove unnecessary log spam 5 years ago
Connor McLaughlin dac114fa4e Qt: Use coarse timer for background controller polling
Fixes high idle CPU usage.
5 years ago
Connor McLaughlin d80aaf3880 Qt: Fix possible race/crash on shutdown 5 years ago
Connor McLaughlin b56546d8ad Qt: Always poll controllers even when not running
Fixes pause hotkey not unpausing when bound to controller.
5 years ago
Connor McLaughlin 1000cb30a9 HostDisplay: Track mouse position 5 years ago
Connor McLaughlin 3723cd5867 Qt: Mouse button binding support 5 years ago
Connor McLaughlin 9e2331c52a Qt: Redraw window immediately when switching between fullscreen/windowed
Fixes content not showing when displaying a popup message.
5 years ago
Connor McLaughlin 1dd2e0f498 Qt: Fix assertion tripping when starting fullscreen 2nd time 5 years ago
Connor McLaughlin ea3c0b65cf Qt: Refactor render widget state transitions
Recreate widget each time. Fixes fullscreen mode switches on D3D11 and
hopefully Wayland.
5 years ago
Connor McLaughlin 8a5e955ba3 Qt: Add input profile support 5 years ago
Connor McLaughlin d9ebb975b2 CommonHostInterface: Reimplement controller rumble support
Even better than before, supports separate motor control.
5 years ago
Connor McLaughlin 67f2eb3fed Qt: Fix -fullscreen not working 5 years ago
Connor McLaughlin 81cf4b469f Frontends: Add shared command line interface
Also provides batch mode and automatic fullscreen switching.

  -help: Displays this information and exits.
  -version: Displays version information and exits.
  -batch: Enables batch mode (exits after powering off)
  -fastboot: Force fast boot for provided filename
  -slowboot: Force slow boot for provided filename
  -resume: Load resume save state. If a boot filename is provided,
    that game's resume state will be loaded, otherwise the most
    recent resume save state will be loaded.
  -state <index>: Loads specified save state by index. If a boot
    filename is provided, a per-game state will be loaded, otherwise
    a global state will be loaded.
  -statefile <filename>: Loads state from the specified filename.
    No boot filename is required with this option.
  -fullscreen: Enters fullscreen mode immediately after starting.
  -nofullscreen: Prevents fullscreen mode from triggering if enabled.
  -portable: Forces "portable mode", data in same directory.
  --: Signals that no more arguments will follow and the remaining
    parameters make up the filename. Use when the filename contains
    spaces or starts with a dash.
5 years ago
Connor McLaughlin e91d760175 HostInterface: Fix crash on startup with controller connected 5 years ago
Connor McLaughlin e7640d5367 HostInterface: Make SetUserDirectory() overridable by frontends 5 years ago
Connor McLaughlin 11e8a91e30 CommonHostInterface: Simplify fullscreen toggle 5 years ago
Connor McLaughlin bf6c1c4866 Qt: Implement render-to-seperate-window and render-to-main toggle 5 years ago
Connor McLaughlin cbb9b96537 System: Include buffer swap time in frame time measurement 5 years ago
Connor McLaughlin 1d9bcb2a48 Qt: Force redraw the display when restoring after minimized 5 years ago
Connor McLaughlin 7e36195f44 HostInterface: Enable on-screen FPS/VPS/Speed display via config 5 years ago
Connor McLaughlin 29a09a3685 Introduce ControllerInterface class, port SDL interface over
This breaks controller support in the SDL frontend until it's ported
over to the common interface.
5 years ago
Connor McLaughlin afe2f96474 Qt: Fix display not updating after resize when paused
Fixes #104.
5 years ago
Connor McLaughlin 282998d0bb Qt: Add screenshot button 5 years ago
Connor McLaughlin fe2e6561d3 Qt: Add audio dumping options 5 years ago
Connor McLaughlin 21ecf231d9 Qt: Show game list scanning progress visually 5 years ago
Connor McLaughlin 0e3bcfa7b5 Qt/HostInterface: Track main window pointer 5 years ago
Connor McLaughlin 8f39a0f154 Qt: Properly implement "Start Fullscreen" 5 years ago
Connor McLaughlin 2480624cbe Qt: Replace QWindow for display with QWidget base
Not as elegant, but it solves the input focus issue.
5 years ago
Connor McLaughlin e8a5259e68 Qt: Show save times in save state menu as well 5 years ago
Connor McLaughlin 2004de7170 Qt: Fix controller rebinding not registering when paused 5 years ago
Connor McLaughlin 69f03959aa Qt: Implement context menu in game list 5 years ago
Connor McLaughlin 0c40903f74 Qt: Fix double mutex lock on controller type change
Fixes #39.
5 years ago
Connor McLaughlin fcc0ae9571 GPU: Implement "Crop Mode" (none, overscan, all borders) 5 years ago
Connor McLaughlin f35970fcac FrontendCommon: Move input binding and some other logic from Qt to common 5 years ago
Connor McLaughlin 509f26ad7e Qt: Add some more default hotkeys (fullscreen/pause/poweroff)
Along with the previous commit, fixes #32
5 years ago
Connor McLaughlin e4ff8b0936 Qt: Add power off hotkey and confirmation message 5 years ago
Connor McLaughlin 27c9f2d834 Qt: Add a method for the emulation thread to focus the display widget 5 years ago
Connor McLaughlin e9dea6e0f7 HostInterface: Add a ConfirmMessage() method 5 years ago
Connor McLaughlin 460ff24248 Qt: Support SDL audio backend 5 years ago
Connor McLaughlin 262331504f Qt: Support binding controller axes 6 years ago
Connor McLaughlin 208928b6dc Qt: Fix load state menu not refreshing after save 6 years ago
Connor McLaughlin 06f4d72631 FrontendCommon: Use SDL_InitSubSystem() for lazy initialization 6 years ago
Connor McLaughlin 6d945439eb Qt: Fix possible crash/race when startup fails 6 years ago
Connor McLaughlin 59cf799491 Qt: Implement controller interface/binding 6 years ago
Connor McLaughlin e01cf0dccb Frontends: Implement auto save on exit/resume 6 years ago
Connor McLaughlin 5f3be68028 HostInterface: Notify host when controller types change 6 years ago
Connor McLaughlin 1e009133ae Rename 'Default' audio backend to 'SDL' 6 years ago
Connor McLaughlin d17f0a3923 Qt: Implement disc change in QtHostInterface 6 years ago
Connor McLaughlin e5740a5632 Qt: Pass QStrings by reference in HostInterface 6 years ago
Connor McLaughlin fd8ed08307 Move more logic from frontend to base HostInterface 6 years ago
Connor McLaughlin 1ce1e016ae Qt: Implement save state menus 6 years ago
Connor McLaughlin d7f8884291 Qt: Fix compilation under clang-9
Fixes #23.
6 years ago
Connor McLaughlin 2bf6912f39 Qt: Simplify emulation thread loop 6 years ago
Connor McLaughlin c820ddba79 HostInterface: Move throttle and perf stats to System class 6 years ago
Connor McLaughlin faf2308695 Settings: Move set defaults to HostInterface so it can use user paths 6 years ago
Connor McLaughlin 1ed187fd57 Qt: Add hotkey for increasing/decreasing resolution scale 6 years ago
Connor McLaughlin 8148486a9f Qt: Add hotkey to toggle software rendering 6 years ago
Connor McLaughlin f2231d6669 HostInterface: Move setting update logic to base class 6 years ago
Connor McLaughlin 687772c4da HostDisplay: Move some derived class fields to base class 6 years ago
Connor McLaughlin 736d85b0f3 Qt: Implement display linear filtering 6 years ago
Connor McLaughlin abf48b6cc2 Qt: Update GPU settings when enhancements are changed 6 years ago
Connor McLaughlin 2694181811 Qt: Hook up HostInterface::Report{Error,Message} 6 years ago
Connor McLaughlin 19cd91a684 Qt: Fix crash on exit when boot fails 6 years ago
Connor McLaughlin b4c06fdcc6 GameList: Auto set cache/database path from user directory 6 years ago
Connor McLaughlin feb48899c3 Qt: Don't double-create game list 6 years ago
Connor McLaughlin 77b282862f HostInterface: Move running title info to System 6 years ago
Connor McLaughlin b3db3a1cc0 HostInterface: Share settings between SDL and Qt frontends 6 years ago
Connor McLaughlin 069bdd471c Qt: Stub saving resume state when powering off 6 years ago
Connor McLaughlin f2d5ce74df Qt: Fix bug where render window is not focused leaving fullscreen 6 years ago
Connor McLaughlin 20b60e0f01 Qt: Update window title/save states from running title 6 years ago
Connor McLaughlin d343743768 Qt: Safer GPU renderer switching 6 years ago
Connor McLaughlin c5282b99e1 Qt: Thread-safe QSettings access and updating 6 years ago
Connor McLaughlin 9562cbea56 Frontends: Add frame time performance counters 6 years ago
Connor McLaughlin b9538a55f5 Settings: Add option for creating a debug GPU device 6 years ago
Connor McLaughlin 28efc50a04 Qt: Fix worker thread lockup on shutdown 6 years ago
Connor McLaughlin d52d6252a9 Qt: Remove QAudioOutput-based audio stream 6 years ago
Connor McLaughlin 8f6ac437ab Frontends: Add cubeb as audio backend option 6 years ago
Connor McLaughlin 9586970a9f AudioStream: Add cubeb implementation 6 years ago
Connor McLaughlin 71c1e243fe Remove YBaseLib dependency 6 years ago
Connor McLaughlin 1c2c4c8489 Qt: Fix emulation thread using 100% CPU when idle 6 years ago
Connor McLaughlin 9402c7c145 Qt: Fix double-free/crash on shutdown 6 years ago
Connor McLaughlin c03c1451fe GameList: Support caching entries 6 years ago
Connor McLaughlin e7bebb0105 Qt: Support runtime renderer switching 6 years ago
Connor McLaughlin 168eb5fe2d Qt: Add D3D11 display window implementation 6 years ago
Connor McLaughlin 1b7be01507 Qt: Implement audio output 6 years ago
Connor McLaughlin 207c75e6eb Qt: Implement fullscreen 6 years ago
Connor McLaughlin 87889a13e0 Qt: Properly handle modifier keys for input 6 years ago
Connor McLaughlin 40e1b7af23 Qt: Initial hotkey implementation 6 years ago
Connor McLaughlin bea15c97cd Qt: ImGui support 6 years ago
Connor McLaughlin 9436ffc806 Qt: Move some functionalty from OpenGLDisplayWindow into QtDisplayWindow 6 years ago
Connor McLaughlin b135b32159 Qt: Add config and implementation for basic controller input 6 years ago
Connor McLaughlin 77a47c87d2 Qt: Hook up console settings 6 years ago
Connor McLaughlin f3e9c3ec8c Add initial work on Qt frontend 6 years ago