kde-workspace/kcontrol/componentchooser/componentchooserwm.h
Ivailo Monev 7430fe2a78 kcontrol: window manager chooser fixes
the window manager process was not detached thus killed once systemsettings
is closed, the revert to previous option was reverting to kwin instead of
the previous window manager

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-26 19:58:12 +02:00

56 lines
1.8 KiB
C++

/***************************************************************************
componentchooserwm.h - description
-------------------
copyright : (C) 2002 by Joseph Wenninger
email : jowenn@kde.org
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License version 2 as *
* published by the Free Software Foundationi *
* *
***************************************************************************/
#ifndef _COMPONENTCHOOSERWM_H_
#define _COMPONENTCHOOSERWM_H_
#include "ui_wmconfig_ui.h"
#include "componentchooser.h"
class CfgWm: public QWidget, public Ui::WmConfig_UI, public CfgPlugin
{
Q_OBJECT
public:
CfgWm(QWidget *parent);
virtual ~CfgWm();
virtual void load(KConfig *cfg);
virtual void save(KConfig *cfg);
virtual void defaults();
protected Q_SLOTS:
void configChanged();
void configureWm();
void checkConfigureWm();
Q_SIGNALS:
void changed(bool);
private:
bool tryWmLaunch();
void loadWMs( const QString& current );
QString currentWm() const;
bool saveAndConfirm();
struct WmData {
QString internalName;
QString exec;
QString configureCommand;
QString restartArgument;
QString parentArgument;
};
WmData currentWmData() const;
QHash< QString, WmData > wms; // i18n text -> data
QString oldwm; // the original value
};
#endif