Založena Xfce Classic, vidlice Xfce bez dekorace oken na straně klienta

Sean Anastasi (Shawn Anastasio), nadšenec do svobodného softwaru, který najednou vyvinul svůj vlastní operační systém ShawnOS a podílel se na portování OS Chromium a Qubes na architekturu ppc64le, Založený projekt Xfce Classic, v rámci kterého hodlá vyvíjet forky komponent uživatelského prostředí Xfce fungující bez použití klientských dekorací oken (CSD, client-side decorations), ve kterých titulek a rámečky okna nekreslí správce oken, ale samotnou aplikaci.

Připomeňme, že v rámci přípravy na další vydání Xfce 4.16, jehož vydání očekává se v říjnu nebo listopadu bylo rozhraní převedeno na widget GtkHeaderBar a použití CSD, což umožnilo analogicky s GNOME umístit nabídky, tlačítka a další prvky rozhraní do záhlaví okna a také zajistit skrytí snímků v dialozích. Nové jádro pro vykreslování rozhraní je integrováno do knihovny libxfce4ui, což vedlo k automatické aplikaci CSD pro téměř všechna dialogová okna bez nutnosti provádět změny v kódu stávajících projektů.

Při přechodu na CSD nalezeno odpůrci, kteří se domnívají, že podpora CSD by měla být volitelná a uživatel by měl mít možnost nadále používat klasické titulky oken. Mezi nevýhody používání CSD patří příliš masivní oblast názvu okna, absence potřeby přenášet prvky aplikace do názvu okna, nefunkčnost témat Xfwm4 a nesrovnalosti v designu oken aplikací a programů Xfce/GNOME, které nepoužívají CSD. Je třeba poznamenat, že jedním z důvodů odmítnutí rozhraní GNOME některými uživateli je použití CSD.

Protože během 5 měsíců nebyl učiněn žádný pokus poskytnout podporu pro deaktivaci CSD, Sean Anastasi rozhodl vzal toto vydání do svých rukou a vytvořil rozvětvení knihovny libxfce4ui, ve kterém jsem vyčistil vazbu na CSD a vrátil starý režim dekorace na straně serveru (správce oken). Pro zajištění kompatibility s aplikacemi využívajícími nové API libxfce4ui a zachování ABI byly připraveny speciální vazby, které převádějí specifické CSD metody třídy XfceTitledDialog do volání třídy GtkDialog. Výsledkem je, že je možné zbavit aplikace Xfce CSD nahrazením knihovny libxfce4ui, aniž by se měnil kód samotných aplikací.

Navíc byla vytvořena vidlice xfce4-panel, která zahrnuje změny pro návrat klasického chování. Připraveno pro uživatele Gentoo obložit k instalaci libxfce4ui-nocsd. Připraveno pro uživatele Xubuntu/Ubuntu PPA úložiště s hotovými balíčky. Sean Anastasi vysvětlil důvody pro vytvoření forku tím, že Xfce používá již řadu let a líbí se mu rozhraní tohoto prostředí. Poté, co se rozhodl pro změny rozhraní, se kterými nesouhlasil, a bez pokusu poskytnout možnost vrátit se ke starému chování, rozhodl se svůj problém vyřešit sám a podělit se o řešení s ostatními podobně smýšlejícími lidmi.

Jedním z problémů při používání Xfce Classic je výskyt duplicitních titulků kvůli zobrazení opakovaných informací v titulku a v okně aplikace. Tato funkce je konzistentní s chováním Xfce 4.12 a 4.14 a nesouvisí s CSD. V některých aplikacích taková duplikace vypadá normálně (například v xfce4-screenshooter), ale v jiných je zjevně nevhodná. K vyřešení tohoto problému je možné přidat proměnnou prostředí, která řídí vykreslování XfceHeading.

Založena Xfce Classic, vidlice Xfce bez dekorace oken na straně klienta

Pozice příznivců CSD spočívá ve schopnosti využít promarněný prostor titulků okna k umístění nabídek, tlačítek panelů a dalších významných prvků rozhraní. Odpůrci CSD se domnívají, že tento přístup přináší problémy se sjednocením designu oken, zejména těch napsaných pro různá uživatelská prostředí, která definují různá doporučení pro rozložení oblasti titulků. Při klasickém vykreslování obslužných oblastí okna na straně serveru je mnohem jednodušší přivést design oken všech aplikací do jednoho stylu. V případě použití CSD je nutné rozhraní aplikace zvlášť přizpůsobit každému grafickému prostředí a je poměrně obtížné zajistit, aby aplikace v různých uživatelských prostředích nevypadala cize.

Zdroj: opennet.ru

Přidat komentář