#include "mainwindow.h"

#include <QApplication>
#include <QProcessEnvironment>

void setQtPlatform(void)
{

    // 获取当前的环境变量
    QProcessEnvironment env = QProcessEnvironment::systemEnvironment();

    // 读取环境变量
    QString path = env.value("XDG_SESSION_TYPE");
    qDebug() << "XDG_SESSION_TYPE:" << path;

    if(path == "wayland") {
        // 设置一个新的环境变量
        env.insert("QT_QPA_PLATFORM", "wayland");

        // 将修改后的环境变量应用到当前进程
        qputenv("QT_QPA_PLATFORM", "wayland");
    }

    // 再次读取并打印环境变量以确认设置成功
    QString newPlatform = env.value("QT_QPA_PLATFORM");
    qDebug() << "QT_QPA_PLATFORM:" << newPlatform;

}

int main(int argc, char *argv[])
{
    setQtPlatform();
    QApplication a(argc, argv);


    MainWindow w;
    w.show();
    return a.exec();
}
