<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - Missing RandR events on hotplug"
href="https://bugs.freedesktop.org/show_bug.cgi?id=91929#c7">Comment # 7</a>
on <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - Missing RandR events on hotplug"
href="https://bugs.freedesktop.org/show_bug.cgi?id=91929">bug 91929</a>
from <span class="vcard"><a class="email" href="mailto:loic.yhuel@gmail.com" title="Loïc Yhuel <loic.yhuel@gmail.com>"> <span class="fn">Loïc Yhuel</span></a>
</span></b>
<pre>Kscreen doesn't run in kwin, but in kded5 (decides which config to apply), and
kscreen_backend_launcher (XRandR calls). These two parts communicate over DBus.
So you have XRandR events from hotplug, which generate DBus signals from the
backend to the daemon, which calls the backend, which generates other events...
It doesn't use xcb_randr_get_screen_info (only for XRandR 1.1 backend).
It uses xcb_randr_get_screen_resources, but only once. After it uses
xcb_randr_get_screen_resources_current (see
<a href="https://quickgit.kde.org/?p=libkscreen.git&a=blob&h=fae1dcc971d5d3a16e95bfa745d6822c69fa2a55&hb=effd39e2ebe767868660b52a8758873e45e4c656&f=backends%2Fxrandr%2Fxrandr.cpp">https://quickgit.kde.org/?p=libkscreen.git&a=blob&h=fae1dcc971d5d3a16e95bfa745d6822c69fa2a55&hb=effd39e2ebe767868660b52a8758873e45e4c656&f=backends%2Fxrandr%2Fxrandr.cpp</a>).
So it doesn't do a full reprobe (RRGetInfo).
On XRROutputChangeNotifyEvent with RR_Connected, it will call
XRandROutput::update -> XRandROutput::init -> XRandROutput::updateModes, which
uses xcb_randr_get_screen_resources_current.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>