Summary:
KCMInit is loaded early in startkde, and it blocks all other processes
from starting until it is complete.
This can be up to 1.1 seconds.
(http://imgh.us/bootchart-20160928-1316.svg)
A sizable amount of time (46% of CPU) is spent loading our QPT. This
isn't very useful given none of the kcm_init scripts have any UI and
it's not something they should have. It's only a QGuiApplication so that
they have an X connection.
Test Plan: Checked it ran without errors
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2882
Summary:
They were out of sync with the changes I did for
XCB for Qt > 5.6
Test Plan: Logged in to a wayland session. Normal sized text, normal sized scrollbars.
Reviewers: #plasma, mart
Reviewed By: mart
Subscribers: mart, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2797
The check was supposed to check whether kinit would start and exit otherwise.
By adding the qdbus call inbetween, it would check for that one instead and if
no ksplash was running the exit code would be non zero aborting startup.
Differential Revision: https://phabricator.kde.org/D1888
Summary:
We want to drop workspace code from KDED as it doesn't make much sense
semantically.
This patch ignores the messages from kded, so that they can be dropped
in a future frameworks release and introduces a new signal sent from
startkde.
This puts all workspace related code in workspace.
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D1859
Summary:
We use QT_SCREEN_SCALE_FACTORS as opposed to QT_SCALE_FACTOR as we need
to use one that will *NOT* scale logical DPI according to the scale.
Scaling the fonts makes sense if you don't also set a logical DPI
manually, but we need to do that for both PlasmaShell which does it's
own thing, and for KDE4/GTK2 applications.
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D1849
Summary:
This change makes the force DPI combobox in fonts kcm work in a
Wayland session for QtWayland applications and KWin.
If the config value is set it's mapped into QT_WAYLAND_FORCE_DPI
environment variable.
Test Plan:
Enabled the config, restarted my session and enjoyed
properly sized Uis and fonts.
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D1738
Graphics seem more likely than anything else to be broken, if the user
explicitly selects failsafe mode from the DM we should follow the same
rationale as kwin and not trust the user's drivers.
REVIEW: 126205
Shutdown scripts are done by startkde after ksmserver quits. Which never
happens because we've told systemd to shutdown.
Old systems worked because they used to communicate with the display
manager which then closed us before shutting down, this is no longer the
case.
This moves handling the shutdown scripts into ksmserver (which already
handles startup scripts) and runs them before asking logind to shutdown.
BUG: 356190
REVIEW: 126268
On Wayland ksmserver should not be responsible for the lockscreen,
but the compositor takes care of providing the lock screen. To prevent
conflicts KSMServer gets a new command line option to enable it.
The code is slightly changed to not pass a series of boolean flags to
KSMServer, but a flags type.
The startplasma script for Wayland is adjusted to start ksmserver with
the new command line option.
REVIEW: 126022
The difference to ksyncdbusenv is that d-u-a-e can update systemd's
environment, too. This is only important if a userspace (dbus-daemon) bus
is used and service files make use of SystemdService to have dbus-daemon
tell systemd to start the service.
In the kernel bus (kdbus) case, systemd's environment gets updated when
org.freedesktop.dbus.UpdateActivationEnvironment is called.
REVIEW: 125768
1) it's not broken, that comment is ancient
2) the test is bust. DBus path can also be stored as an x property.
Before this patch the situation is worse as potentially we risk
launching two dbus daemons for the same session.
BUG: 352251
REVIEW: 125637
/bin/sh stops execution upon finding a nonzero exit code,
which means that startkde will not continue if a script in
.config/plasma-workspace/env/ produces an error.
This small fix will execute a no-op in such a case,
so that errors will not affect startkde's progress,
while still being visible in .xsession-errors.
REVIEW: 125323
BUG: 352491
On my system I faced the problem that instead of my prefix installed
ksmserver, the system installed ksmserver was started by kwrapper5.
REVIEW: 125113
Both are basically a fork of startkde split into
* everything needed before kwin_wayland starts
* everything which needs to happen after kwin_wayland
A few things are X11 specific and need to go after kwin_wayland
gets started.
REVIEW: 124293
Currently we are modifying the plugin path to include
$kdehome/lib/kde5/plugins, the original change says this is to allow
users to load styles and such.
In Plasma 5 $kdehome is .config, which shouldn't contain any plugins, so
this line currently isn't achieving anything.
Apparently instead it was causing problems and various distros are
already patching it out without issue.
BUG: 349371
FIXED-IN: 5.4.0
frameworkintegration is able to read fonts by itself, so this hardcode
makes it impossible for distributions to personalize fonts in globally
installed kdeglobal
this returns us to behaviour of kde4 times (e.g. this is what kwin expects).
each x11 screen in xcb terminology is a virtual desktop,
potentially a collection of separate juxtaposed monitors.
while QScreen is representing only one output (e.g. DVI-I-1, VGA-1, etc.)
which may be combined with others into one virtual desktop.
see QXcbConnection::updateScreens()
REVIEW: 122320
this reduces number of libraries to link with from over 100 to 50
and improves base binary run time on my lenovo e330 from 8 seconds to less than 6
(and hence improves system startup time, yay!)
Martin: i will do a switch from QGuiApplication::screens() to xcb screens
separately because it changes behaviour comparing to kde4
REVIEW: 122270
CCMAIL: mgraesslin@kde.org
registerService() isn't sufficient, this has probably been broken
since the port from DCOP. The exported object is used by ksmserver
to talk to kcminit during startup