mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-28 16:23:05 +00:00
* window: auto-hide the cursor over the game window Hide the cursor when the game window is created and whenever the mouse has been idle for two seconds; any mouse motion, button or wheel event shows it again. Games that draw their own cursor (e.g. Blue Prince) no longer show the host pointer on top of it. Only real mouse input counts as activity: synthetic touch/pen mouse events and zero-delta motion (sent by some platforms on focus or cursor visibility changes) are ignored. The event loop only waits with a timeout while the cursor is visible, so it still blocks indefinitely once the cursor is hidden. The cursor is restored on shutdown. Uses SDL_HideCursor/SDL_ShowCursor, which SDL implements for X11, Wayland, Cocoa and Win32 and which only affect the cursor over the emulator window. Closes #282 * window: make cursor auto-hide optional in CLI and launcher Co-authored-by: Anatolii Kucheruk <anatolii.kucheruk01@gmail.com> --------- Co-authored-by: nmzik <Nmzik@mail.ru> Co-authored-by: Anatolii Kucheruk <anatolii.kucheruk01@gmail.com>
420 lines
18 KiB
XML
420 lines
18 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<ui version="4.0">
|
|
<class>ConfigurationEditDialog</class>
|
|
<widget class="QDialog" name="ConfigurationEditDialog">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>760</width>
|
|
<height>620</height>
|
|
</rect>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Settings</string>
|
|
</property>
|
|
<property name="locale">
|
|
<locale language="English" country="UnitedStates"/>
|
|
</property>
|
|
<layout class="QGridLayout" name="gridLayout">
|
|
<property name="horizontalSpacing">
|
|
<number>8</number>
|
|
</property>
|
|
<property name="verticalSpacing">
|
|
<number>8</number>
|
|
</property>
|
|
<item row="0" column="0" colspan="2">
|
|
<layout class="QGridLayout" name="sectionsLayout" columnstretch="1,1">
|
|
<property name="horizontalSpacing">
|
|
<number>8</number>
|
|
</property>
|
|
<property name="verticalSpacing">
|
|
<number>8</number>
|
|
</property>
|
|
<item row="0" column="0">
|
|
<widget class="QGroupBox" name="user_profile_group">
|
|
<property name="title">
|
|
<string>User profile</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="userProfileLayout">
|
|
<property name="fieldGrowthPolicy">
|
|
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
|
|
</property>
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="label_user_name">
|
|
<property name="text"><string>User name:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="MandatoryLineEdit" name="lineEdit_user_name">
|
|
<property name="toolTip"><string>Local user name exposed to games</string></property>
|
|
<property name="clearButtonEnabled"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="label_user_id">
|
|
<property name="text"><string>User ID:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QSpinBox" name="spinBox_user_id">
|
|
<property name="toolTip"><string>Local user ID exposed to games</string></property>
|
|
<property name="maximum"><number>2147483647</number></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="label_console_language">
|
|
<property name="text"><string>Console language:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QComboBox" name="comboBox_console_language">
|
|
<property name="toolTip"><string>Language</string></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QGroupBox" name="audio_group">
|
|
<property name="title"><string>Audio</string></property>
|
|
<layout class="QFormLayout" name="audioLayout">
|
|
<property name="fieldGrowthPolicy">
|
|
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
|
|
</property>
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="label_audio_input_device">
|
|
<property name="text"><string>Microphone:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QComboBox" name="comboBox_audio_input_device"/>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1" rowspan="3">
|
|
<widget class="QGroupBox" name="graphics_group">
|
|
<property name="title">
|
|
<string>Graphics && display</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="graphicsLayout">
|
|
<property name="fieldGrowthPolicy">
|
|
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
|
|
</property>
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="label_screen_resolution">
|
|
<property name="text"><string>Screen resolution:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QComboBox" name="comboBox_screen_resolution">
|
|
<property name="toolTip"><string>Window resolution</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="label_present_mode">
|
|
<property name="text"><string>Present mode:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QComboBox" name="comboBox_present_mode">
|
|
<property name="toolTip"><string>Vulkan swapchain presentation mode</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="label_vblank_frequency">
|
|
<property name="text"><string>Vblank frequency:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QSpinBox" name="spinBox_vblank_frequency">
|
|
<property name="toolTip"><string>Virtual display refresh rate used for frame pacing</string></property>
|
|
<property name="minimum"><number>30</number></property>
|
|
<property name="maximum"><number>360</number></property>
|
|
<property name="value"><number>60</number></property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="label_shader_optimization">
|
|
<property name="text"><string>Shader optimization:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QComboBox" name="comboBox_shader_optimization_type">
|
|
<property name="toolTip"><string>Optimize shaders for code size or performance</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QLabel" name="label_gpu">
|
|
<property name="text"><string>GPU:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="1">
|
|
<widget class="QComboBox" name="comboBox_gpu">
|
|
<property name="toolTip"><string>Graphics device used by the emulator</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="1">
|
|
<widget class="QCheckBox" name="checkBox_fullscreen">
|
|
<property name="toolTip"><string>Run in borderless desktop fullscreen</string></property>
|
|
<property name="text"><string>Fullscreen</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="6" column="1">
|
|
<widget class="QCheckBox" name="checkBox_readback">
|
|
<property name="toolTip"><string>Read back writable linear images</string></property>
|
|
<property name="text"><string>Enable readback</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="7" column="1">
|
|
<widget class="QCheckBox" name="checkBox_tessellation">
|
|
<property name="toolTip"><string>Draw tessellated geometry. Disabled by default; unsupported tessellation may cause crashes.</string></property>
|
|
<property name="text"><string>Enable tessellation support (experimental)</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="8" column="1">
|
|
<widget class="QCheckBox" name="checkBox_hide_cursor">
|
|
<property name="toolTip"><string>Hide the host cursor after 2 seconds without mouse activity</string></property>
|
|
<property name="text"><string>Auto-hide cursor</string></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0" colspan="2">
|
|
<widget class="QGroupBox" name="debug_group">
|
|
<property name="title">
|
|
<string>Debugging && logs</string>
|
|
</property>
|
|
<layout class="QGridLayout" name="debugLayout" columnstretch="0,1,0,1">
|
|
<property name="horizontalSpacing"><number>8</number></property>
|
|
<property name="verticalSpacing"><number>6</number></property>
|
|
<item row="0" column="0" colspan="2">
|
|
<widget class="QCheckBox" name="checkBox_vulkan_validation">
|
|
<property name="toolTip"><string>Enable Vulkan validation layers</string></property>
|
|
<property name="text"><string>Vulkan validation</string></property>
|
|
<property name="checked"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="2" colspan="2">
|
|
<widget class="QCheckBox" name="checkBox_shader_validation">
|
|
<property name="toolTip"><string>Validate SPIR-V binary</string></property>
|
|
<property name="text"><string>Shader validation</string></property>
|
|
<property name="checked"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0" colspan="2">
|
|
<widget class="QCheckBox" name="checkBox_renderdoc_capture">
|
|
<property name="toolTip"><string>Enable RenderDoc capture</string></property>
|
|
<property name="text"><string>RenderDoc capture</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="2" colspan="2">
|
|
<widget class="QCheckBox" name="checkBox_cmd_dump">
|
|
<property name="toolTip"><string>Dump command buffers</string></property>
|
|
<property name="text"><string>Command buffer dump</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="label_shader_log_direction">
|
|
<property name="text"><string>Shader logging:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QComboBox" name="comboBox_shader_log_direction">
|
|
<property name="toolTip"><string>Dump shaders to file or console window. If enabled may decrease emulator performance</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="2">
|
|
<widget class="QLabel" name="label_shader_log_folder">
|
|
<property name="text"><string>Shader log folder:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="3">
|
|
<widget class="MandatoryLineEdit" name="lineEdit_shader_log_folder">
|
|
<property name="toolTip"><string>Specify directory to dump shaders</string></property>
|
|
<property name="clearButtonEnabled"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="label_printf_direction">
|
|
<property name="text"><string>Printf output:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QComboBox" name="comboBox_printf_direction">
|
|
<property name="toolTip"><string>Print logs to file or console window. If enabled may decrease emulator performance</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="2">
|
|
<widget class="QLabel" name="label_printf_file">
|
|
<property name="text"><string>Printf output file:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="3">
|
|
<widget class="MandatoryLineEdit" name="lineEdit_printf_file">
|
|
<property name="toolTip"><string>Specify file to dump logs</string></property>
|
|
<property name="clearButtonEnabled"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QCheckBox" name="checkBox_profiler">
|
|
<property name="toolTip"><string>Enable the Tracy profiler. Profiling may decrease emulator performance</string></property>
|
|
<property name="text"><string>Tracy profiler</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="2">
|
|
<widget class="QLabel" name="label_cmd_dump_folder">
|
|
<property name="text"><string>Command buffer folder:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="3">
|
|
<widget class="MandatoryLineEdit" name="lineEdit_cmd_dump_folder">
|
|
<property name="toolTip"><string>Specify directory to dump command buffers</string></property>
|
|
<property name="clearButtonEnabled"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QGroupBox" name="compatibility_group">
|
|
<property name="title">
|
|
<string>Compatibility</string>
|
|
</property>
|
|
<layout class="QVBoxLayout" name="compatibilityLayout">
|
|
<item>
|
|
<widget class="QCheckBox" name="checkBox_amd_cpu">
|
|
<property name="toolTip"><string>Patch CPU instructions that differ between AMD and the host CPU.</string></property>
|
|
<property name="text"><string>AMD CPU patch (experimental)</string></property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QCheckBox" name="checkBox_red_zone_protection">
|
|
<property name="toolTip"><string>Helps prevent crashes in some games on Windows</string></property>
|
|
<property name="text"><string>Windows SysV red zone crash protection (experimental)</string></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QGroupBox" name="controller_group">
|
|
<property name="title"><string>Controller</string></property>
|
|
<layout class="QFormLayout" name="controllerLayout">
|
|
<property name="fieldGrowthPolicy"><enum>QFormLayout::AllNonFixedFieldsGrow</enum></property>
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="label_controller_color">
|
|
<property name="text"><string>DualSense lightbar:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<layout class="QHBoxLayout" name="controllerColorLayout">
|
|
<item>
|
|
<widget class="QPushButton" name="button_controller_color">
|
|
<property name="toolTip"><string>Choose and preview a fixed LED color. Bluetooth DualSense may take several seconds to update.</string></property>
|
|
<property name="text"><string>Custom</string></property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="button_controller_color_reset">
|
|
<property name="toolTip"><string>Let the game control the lightbar</string></property>
|
|
<property name="text"><string>Default</string></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="label_controller_vibration">
|
|
<property name="text"><string>Vibration intensity:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<layout class="QHBoxLayout" name="controllerVibrationLayout">
|
|
<item>
|
|
<widget class="QSlider" name="slider_controller_vibration">
|
|
<property name="toolTip"><string>Scale DualSense vibration over USB and Bluetooth</string></property>
|
|
<property name="maximum"><number>100</number></property>
|
|
<property name="value"><number>100</number></property>
|
|
<property name="orientation"><enum>Qt::Horizontal</enum></property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QLabel" name="label_controller_vibration_value">
|
|
<property name="minimumSize"><size><width>40</width><height>0</height></size></property>
|
|
<property name="text"><string>100%</string></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="label_controller_volume">
|
|
<property name="text"><string>Speaker volume:</string></property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<layout class="QHBoxLayout" name="controllerVolumeLayout">
|
|
<item>
|
|
<widget class="QSlider" name="slider_controller_volume">
|
|
<property name="toolTip"><string>Scale the DualSense controller speaker over USB and Bluetooth</string></property>
|
|
<property name="maximum"><number>100</number></property>
|
|
<property name="value"><number>100</number></property>
|
|
<property name="orientation"><enum>Qt::Horizontal</enum></property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QLabel" name="label_controller_volume_value">
|
|
<property name="minimumSize"><size><width>40</width><height>0</height></size></property>
|
|
<property name="text"><string>100%</string></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0" colspan="2">
|
|
<layout class="QHBoxLayout" name="buttonLayout">
|
|
<item>
|
|
<widget class="QPushButton" name="clear_button">
|
|
<property name="minimumSize"><size><width>80</width><height>25</height></size></property>
|
|
<property name="text"><string>Reset</string></property>
|
|
<property name="toolTip"><string>Restore default settings</string></property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="buttonSpacer">
|
|
<property name="orientation"><enum>Qt::Horizontal</enum></property>
|
|
<property name="sizeHint" stdset="0"><size><width>40</width><height>20</height></size></property>
|
|
</spacer>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cancel_button">
|
|
<property name="minimumSize"><size><width>80</width><height>25</height></size></property>
|
|
<property name="text"><string>Cancel</string></property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="ok_button">
|
|
<property name="minimumSize"><size><width>80</width><height>25</height></size></property>
|
|
<property name="text"><string>Save</string></property>
|
|
<property name="default"><bool>true</bool></property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<customwidgets>
|
|
<customwidget>
|
|
<class>MandatoryLineEdit</class>
|
|
<extends>QLineEdit</extends>
|
|
<header>mandatoryLineEdit.h</header>
|
|
</customwidget>
|
|
</customwidgets>
|
|
<resources/>
|
|
</ui>
|