From aeaf707fc8201b27317cda7d4f02c303cdcdc4da Mon Sep 17 00:00:00 2001 From: Boria138 Date: Wed, 14 Feb 2024 13:07:45 +0600 Subject: [PATCH] Added Disable Compositing --- data_from_portwine/scripts/functions_helper | 11 +++++++++++ data_from_portwine/scripts/lang | 3 +++ data_from_portwine/scripts/runlib | 12 ++++++++++++ data_from_portwine/scripts/start.sh | 4 ++-- 4 files changed, 28 insertions(+), 2 deletions(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 47d7e615..d08ebf6a 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -693,6 +693,17 @@ stop_portwine () { then xrandr --output "$PW_SCREEN_PRIMARY" --mode "$PW_SCREEN_RESOLUTION" fi + if [[ "${PW_DISABLE_COMPOSITING}" == "1" ]] ; then + if [[ "${DESKTOP_SESSION}" =~ "plasma" ]] ; then + qdbus org.kde.KWin /Compositor resume + elif [[ "${DESKTOP_SESSION}" =~ "mate" ]] ; then + gsettings set org.mate.Marco.general compositing-manager true + elif [[ "${DESKTOP_SESSION}" =~ "xfce" ]] ; then + xfconf-query -c xfwm4 -p /general/use_compositing -s true + elif [[ "${DESKTOP_SESSION}" =~ "cinnamon" ]] ; then + gsettings set org.cinnamon.muffin unredirect-fullscreen-windows false + fi + fi pw_stop_progress_bar try_remove_file "${PORT_SCRIPTS_PATH}/0" try_remove_file "${PORT_SCRIPTS_PATH}/1" diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index bf4ba8f8..33d89f5b 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -153,6 +153,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then export PW_USE_SHADER_CACHE_INFO='Использовать кеширование шейдеров средствами WINE (отключать только при наличии микрофризов в игре)' export PW_WINE_FULLSCREEN_FSR_INFO='Работает во время использования любой версии ProtonGE в полноэкранном режиме при разрешении ниже стандартного для экрана' export PW_USE_FAKE_DLSS_INFO='Включить транслятор DLSS в FSR 2 в играх DirectX 12 (проект CyberFSR2)' + export PW_USE_FAKE_DLSS_3_INFO='Включить транслятор DLSS в FSR 3 в играх DirectX 12 (Эксперементальный проект dlssg-to-fsr3)' export PW_USE_EAC_AND_BE_INFO='Включить Easy Anti-Cheat and BattlEye Anti-Cheat (требуется если игра использует какой-то из этих античитов)' export PW_REDUCE_PULSE_LATENCY_INFO='Уменьшить задержку pulseaudio для исправления прерывистого звука' export PW_USE_US_LAYOUT_INFO='Принудительное использование английской раскладки (полезно для игр в которых управление верно работает исключительно на английской раскладке)' @@ -557,6 +558,7 @@ elif [[ "${update_loc}" == "ENG" ]] ; then export PW_USE_SHADER_CACHE_INFO='Use WINE shader caching (disable only if there are microfreezes in the game)' export PW_WINE_FULLSCREEN_FSR_INFO='Works while using any version of ProtonGE in full screen mode at a resolution below the standard screen' export PW_USE_FAKE_DLSS_INFO='Enable DLSS translator in FSR 2 in DirectX 12 games (CyberFSR2)' + export PW_USE_FAKE_DLSS_3_INFO='Enable DLSS translator in FSR 3 in DirectX 12 games (Experimental project dlssg-to-fsr3)' export PW_USE_EAC_AND_BE_INFO='Enable Easy Anti-Cheat and BattlEye Anti-Cheat runtimes (required if game used this anti-cheats)' export PW_REDUCE_PULSE_LATENCY_INFO='Reduce pulseaudio latency to fix intermittent sound' export PW_USE_US_LAYOUT_INFO='Forced use of the us layout (useful for games in which the control works correctly only on the us layout)' @@ -564,6 +566,7 @@ elif [[ "${update_loc}" == "ENG" ]] ; then export PW_USE_SYSTEM_VK_LAYERS_INFO='Use system mangohud, vkBasalt, obs-vkcapture and other applications using vulkan layers' export PW_USE_OBS_VKCAPTURE_INFO='Enable the ability to write to OBS Studio using obs-vkcapture (ATTENTION: the forced use of system mangohud, vkBasalt, obs-vkcapture and other applications using vulkan layers will be enabled)' export PW_USE_GALLIUM_ZINK_INFO='Use the zink driver (OpenGL on top of Vulkan), allows you to use vkBasalt in OpenGL games (ATTENTION: vulkan support is required, wined3d (opengl) is used instead of dxvk, suitable for games on OpenGL and older versions of DirectX, artifacts are possible on newer versions of DirectX)' + export PW_3DFX_INFO='Simulation of an old 3dfx graphics accelerator (adds horizontal stripes)' export PW_AdaptiveSharpen_INFO='Sharpness increase, can be used with CAS' export PW_Bloom_INFO='Adds glow from bright light sources in the game' diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 49f4ac5b..dc2b92ca 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -134,6 +134,18 @@ start_portwine () { export PW_USE_GAMESCOPE="0" export PW_RUN_GAMESCOPE="" fi + + if [[ "${PW_DISABLE_COMPOSITING}" == "1" ]] ; then + if [[ "${DESKTOP_SESSION}" =~ "plasma" ]] ; then + qdbus org.kde.KWin /Compositor suspend + elif [[ "${DESKTOP_SESSION}" =~ "mate" ]] ; then + gsettings set org.mate.Marco.general compositing-manager false + elif [[ "${DESKTOP_SESSION}" =~ "xfce" ]] ; then + xfconf-query -c xfwm4 -p /general/use_compositing -s false + elif [[ "${DESKTOP_SESSION}" =~ "cinnamon" ]] ; then + gsettings set org.cinnamon.muffin unredirect-fullscreen-windows true + fi + fi enabled_fake_nvidia_videocard () { diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index dd708510..f25556e9 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -477,14 +477,14 @@ pw_edit_db () { PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \ PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY \ PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE \ - PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE + PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING else pw_gui_for_edit_db \ PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_VKBASALT_USER_CONF PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \ PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \ PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME \ PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE \ - PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE + PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING fi if [[ "$?" == 0 ]] ; then print_info "Restarting PP after update ppdb file..."