Portál AbcLinuxu, 6. května 2025 09:34
Kdo používal KDE na počítači s více monitory tak ví, že to není žádná sláva. Nedávno ale vyšla první verze projektu KScreen, který se snaží tuto situaci napravit.
V KDE 4.9 (a starších) se vám při odpojení externího monitoru objeví okno pro konfiguraci monitorů. Při troše smůly se okno objeví na obrazovce, která patří právě odpojenému monitoru, takže navíc musíte okno lovit naslepo myší. Potom musíte naklikat novou konfiguraci a potvrdit. A když monitor znovu připojíte, musíte si nastavením projit znovu. Tohle není zrovna moc uživatelsky přivětivé...
V nadcházející verzi KDE se to trošku zlepšilo a už se objeví jen dialog (zpravidla na správné obrazovce – tj. na té, ke které je připojený nějaký monitor) s možnostmi „Detekovat automaticky“ a „Ručně nastavit“. Automatická detekce mi ale nikdy nijak moc nefungovala, takže jsem musel stejně ručně nastavovat obrazovky v KCM.
Pokud vám ani to nepřijde moc super ve srovnání se správou obrazovek v GNOME nebo dokonce ve Windows, můžete vyzkoušet nový projekt s názvem KScreen, který se v tomho ohledu snaží dostat KDE mezi špičku (ale zatím je jen na začátku cesty). Každopádně nedávno vyšla verze 0.0.71-alpha1, jako první oficální vydání vhodné pro běžné používání (když přežijete že se občas holt vypnou všechny obrazovky).
KScreen se snaží být chytrý a neotravovat pořád uživatele s konfigurací obrazovky. Při prvním připojení externího monitoru jej automaticky zapne a umístí vpravo od stávajícího monitoru. Pravidla, jak se má nový nakonfigurovat, zavisí na tom, jestli je připojený k obyčejnému PC nebo k laptopu, jestli je laptop zadokovaný nebo ne a jestli má nebo nemá zavřené víko (kompletní popis najdete v souboru README).
Pokud s nastavením nejste spokojeni, můžete otevřít konfigurační modul (Nastavení Systému → Obrazovka a monitor → Nastavení zobrazení) a v něm si monitory nastavit dle libosti.
A tady přichází na řadu nejsilnější stánka KScreen: modul KDED (plugin do démona, který beží na pozadí po celou dobu, co jste přihlášeni do KDE) KScreenu si tuto konfiguraci pro aktuálně připojené monitory zapamatuje (tzv. profil), takže při příštím připojení se vaše nastavení automaticky obnoví. Důležité je právě ono „aktuálně připojené“. Pokud máte například notebook a v práci k němu připojujete monitor otočený na výšku a umístěný vlevo od notebooku, zatímco doma máte externí monitor klasicky na šířku a vpravo od notebooku, KScreen vždy obnoví správný profil. Přidejte k tomu ještě dataprojektor, který se automaticky stane klonem obrazovky v notebooku a máte vystaráno. Dokud si nepořídíte další monitor, nemusíte už s konfigurací monitorů v KDE nikdy zápasit.
Každý profil je identifikován jako MD5 hash řetězce poskládáného z hashů uložených v EDID profilu každého připojeného monitoru, takže máte celkem velkou jistotu, že každý monitor bude identifikován unikátně. Jediná věc, co KScreen tak úplně zatím nezvládá, je situace, kdy monitor nemá EDID (některé dataprojektory nebo televize) – v takovém případě se bohužel magie nekoná a musíte takový monitor nakonfigurovat pokaždé znovu.
V nadcházejícím vydání už by měl být přitomný Plasma applet, který vyskočí vždy, když připojíte nový (neznámý) monitor a umožní jedním kliknutím nastavit, jestli se onen monitor má umístit vlevo, vpravo, nad nebo pod aktuální monitor, jestli chcete otevřít konfigurační nástroj a pohrát si s nastavením trochu víc, nebo jestli jste spokojení s nastavením, které automaticky vytvořil KScreen KDED.
Projekt je zatím distribuován zvlášť, mimo KDE Workspaces, aby bylo možné mít ze začátku rychlejší vývojový cyklus, než má celé KDE. Pokud vše půjde podle očekávání, planuje se začlenění do KDE Workspaces 4.11. Dobrá zpráva pro uživatele Fedory je, že KScreen bude jako výchozí správce obrazovek v KDE už ve Fedoře 19.
Jakmile bude KScreen součástí KDE Workspaces a API libkscreen bude stabilní, přijde fáze 2, tedy integrace s ostatními aplikacemi:
Některé distribuce už KScreen mají k dispozici v repozitářích – vím minimálně o ArchLinuxu (v AURu) a Fedoře 17 a 18 (momentálně v updates-testing). Ostaní si mohou buď stáhnout tarbally libkscreen a kscreen, nebo aktuální verzi přímo z gitu KDE (git clone git://anongit.kde.org/libkscreen && git clone git://anongit.kde.org/kscreen).
Po kompilaci a instalaci je ještě potřeba spustit následující příkazy (jako uživatel), které vypnou stávající screen management a zapnou KScreen:
$ qdbus org.kde.kded /kded org.kde.kded.unloadModule randrmonitor $ qdbus org.kde.kded /kded org.kde.kded.setModuleAutoloading randrmonitor false $ qdbus org.kde.kded /kded org.kde.kded.loadModule kscreen
Chyby a nedostatky můžete tradičně hlásit do bugzilly KDE.
Kdo používal KDE na počítači s více monitory tak ví, že to není žádná sláva.
Autor by neměl automaticky předpokládat, že když je s něčím nespokojen, musejí mít nutně všichni stejnou zkušenost…
No to prrrr , podívej se na GOME-SHELL a nespokojeno je většina uživatelů gnome a roky letí a nezájem .... tak takle soudit nelze...
jen že to, že autor je s něčím nespokojen, neznamená, že s tím musejí být automaticky nespokojeni všichni.nikde v článku tuto implikaci nevidím a mimochodem, to, že existují masochisté, kteří jsou se stavem věcí spokojeni, ještě neznamená, že není co vylepšovat, tedy že ten stav nelze popsat jako "žádná sláva"
Na to, jak je KScreen přínosný, se tu vyskytuje příliš mnoho negativních reakcí. (Sice jen k drobnostem, ale stejně.) Zvláštní.
Já bych naopak chtěl za článek poděkovat, dozvěděl jsem se z něj i věci, které jinde nebyly. Navíc je fajn, že ho psal sám autor aplikace – mimo zaručení faktické správnosti se tak člověk podívá trochu i do zákulisí.
čumíte na notebooku do prázdné obrazovkytak tak, ja nepochopím, ako toto mohlo vydržať až do verzie 4.10.. nuž to je svet OSS, chlapci sa budú radšej hrať s aktivitami (ktoré su podľa mňa aj tak nepoužiteľné, kedže nejde pre každú aktivitu nastaviť separátne panely).
Rekl bych, ze presne na tohle je v KCM tlacitko "Save as default".
Přesně. Ale chvíli mi trvalo, než jsem přišel na to, že je to klíč k úspěchu... aspoň v mém případě.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.