Some nicer Wayland support

This commit is contained in:
Victor Tran 2021-08-03 14:46:22 +10:00
parent 1196a619be
commit 6cbc528aa0
No known key found for this signature in database
GPG key ID: 1F0729FE016CDC3E
6 changed files with 48 additions and 12 deletions

View file

@ -85,7 +85,7 @@
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
<number>9</number>
</property>
<item>
<layout class="QVBoxLayout" name="verticalLayout_4">

31
dist/thedesk.spec vendored
View file

@ -1,6 +1,6 @@
Name: thedesk
Version: beta4
Release: 11%{?dist}
Release: 12%{?dist}
Summary: Desktop Environment built on Qt
License: GPLv3+
@ -19,6 +19,25 @@ Requires: qt5-qtbase kwin the-libs libtdesktopenvironment libX11 libXi kf5
%description
Desktop Environment built on Qt
%package -n libthedesk
Summary: Libraries for %{name} plugins
Conflicts: libthedesk
Provides: libthedesk
%description -n libthedesk
Libraries for theDesk plugins
%package -n libthedesk-devel
Summary: Development files for libthedesk
Requires: libthedesk%{?_isa} = %{version}-%{release}
Conflicts: libthedesk-devel
Provides: libthedesk-devel
%description -n libthedesk-devel
The libthedesk-devel package contains libraries and header files for
developing applications that use libthedesk.
%prep
%setup
@ -41,13 +60,17 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
%files
%{_bindir}/*
%{_datarootdir}/*
%{_libdir}/*.so*
%{_libdir}/td-polkitagent
%{_libdir}/thedesk/plugins/*.so
%{_libdir}/qt5/plugins/platformthemes/*.so
%{_includedir}/*
%{_sysconfdir}/*
%files -n libthedesk
%{_libdir}/libthedesk.so*
%files -n libthedesk-devel
%{_includedir}/*
%changelog
* Sun May 3 2020 Victor Tran
-
-

View file

@ -109,7 +109,7 @@ void WirelessNetworkSelectionPopover::activateConnection(const QModelIndex& inde
NetworkManager::activateConnection(networkInformation.value<NetworkManager::Connection::Ptr>()->path(), d->device->uni(), "");
emit done();
} else if (networkInformation.canConvert<NetworkManager::AccessPoint::Ptr>()) {
//TODO: Connect to a new AP
//Connect to a new AP
d->apConnect = networkInformation.value<NetworkManager::AccessPoint::Ptr>();
d->connectWithSecurity = NetworkManager::findBestWirelessSecurity(d->device->wirelessCapabilities(), true, false, d->apConnect->capabilities(), d->apConnect->wpaFlags(), d->apConnect->rsnFlags());

View file

@ -38,6 +38,9 @@
# See Output options for a complete reference.
# https://github.com/WayfireWM/wayfire/wiki/Configuration#output
#[output:HDMI-A-1]
#mode=3840x2160@30000
# Core options ─────────────────────────────────────────────────────────────────
[core]
@ -74,7 +77,7 @@ plugins = \
# Feel free to add it to the list if you want it.
# You can find its documentation here:
# https://github.com/WayfireWM/wayfire/wiki/Configuration#blur
;
# Close focused window.
close_top_view = <super> KEY_Q | <alt> KEY_F4

View file

@ -16,5 +16,8 @@ SUBDIRS = libraryproj \
platform \
pluginsproj \
polkitagent \
startdeskproj \
wayfire-plugins
startdeskproj
packagesExist(wayfire) {
SUBDIRS += wayfire-plugins
}

View file

@ -24,6 +24,7 @@
#include <iostream>
#include <QProcess>
#include <QPointer>
StartdeskPlugin::StartdeskPlugin() {
QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
@ -35,13 +36,19 @@ StartdeskPlugin::StartdeskPlugin() {
env.insert("DISPLAY", x11Display);
}
QProcess* deskProcess = new QProcess();
QString startdeskCommand = qEnvironmentVariable("TD_WF_STARTDESK", "startdesk");
std::cout << "Running startdesk command " << startdeskCommand.toStdString() << "\n";
QPointer<QProcess> deskProcess = new QProcess();
deskProcess->setProcessEnvironment(env);
deskProcess->start("startdesk", QStringList());
deskProcess->start(startdeskCommand, QStringList());
deskProcess->waitForStarted();
QObject::connect(deskProcess.data(), QOverload<int, QProcess::ExitStatus>::of(&QProcess::finished), [ = ] {
std::cout << "Finished!\n";
});
waiter.set_timeout(1000, [ = ] {
if (deskProcess->waitForFinished(0)) {
if (!deskProcess || deskProcess->waitForFinished(0)) {
wf::get_core().shutdown();
return false;
}