#!/bin/bash

dde-dconfig --get -a org.deepin.dde.lightdm-deepin-greeter -r org.deepin.dde.lightdm-deepin-greeter -k defaultGreeterSession | grep "wayland"
if [ $? -eq 0 ];then
    export KWIN_COMPOSE=O2ES
fi

export GDK_BACKEND=x11
export KWIN_USE_BUFFER_AGE=1
export KWIN_DISABLE_XWL_CLIPBOARD=1

if [ ! -f "$HOME/.config/kglobalshortcutsrc" ]; then
    cp -n /etc/xdg/kglobalshortcutsrc $HOME/.config/kglobalshortcutsrc
fi

export QT_LOGGING_RULES="kwin*=true;kwin_libinput=false;"
# TODO 调整缩放系数并注销后需要通过scale-factor计算xft-dpi值，后续需要定位部分设备和Qt版本无法通过Qt获取正确DPI的问题
CALCULATE_DPI_FROM_X=$(echo "scale=0;`gsettings get com.deepin.xsettings scale-factor` * 96 / 1" | bc)
if [[ -n "$CALCULATE_DPI_FROM_X" ]]; then
        export QT_WAYLAND_FORCE_DPI="$CALCULATE_DPI_FROM_X"
fi
export QT_MESSAGE_PATTERN="[%{time yyyy-MM-dd hh:mm:ss.zzz}] %{function}:%{line} - %{message}"

if [ -f "$HOME/.config/locale.conf" ]; then
    source $HOME/.config/locale.conf
fi

VtSwitchEnabledParam=""
dde-dconfig --get -a org.kde.kwin -r org.kde.kwin.virtualterminal.switch -k vtSwitchEnabled | grep false
if [ $? -eq 0 ];then
    VtSwitchEnabledParam="--no-vt-switch"
fi

exec /usr/bin/kwin_wayland_wrapper -platform wayland-org.kde.kwin.qpa --xwayland --drm --no-lockscreen ${VtSwitchEnabledParam} startdde-wayland 2>&1 | systemd-cat -t kwin_wayland
