Sean Anastasi (), nadšenec do svobodného softwaru, který najednou vyvinul svůj vlastní operační systém a podílel se na portování OS Chromium a Qubes na architekturu ppc64le, projekt , 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í 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 , 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 vzal toto vydání do svých rukou a vytvořil rozvětvení knihovny , 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 , která zahrnuje změny pro návrat klasického chování. Připraveno pro uživatele Gentoo k instalaci libxfce4ui-nocsd. Pro uživatele Xubuntu/Ubuntu připravený 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.
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
