Grundlagt Xfce Classic, en gaffel af Xfce uden vinduesdekoration på klientsiden

Sean Anastasi (Shawn Anastasio), en gratis software-entusiast, der på et tidspunkt udviklede sit eget styresystem ShawnOS og var involveret i portering af Chromium og Qubes OS til ppc64le-arkitekturen, Grundlagt projekt Xfce Classic, inden for hvilket han har til hensigt at udvikle gafler af Xfce-brugermiljøkomponenter, der fungerer uden brug af vinduesdekorationer på klientsiden (CSD, dekorationer på klientsiden), hvor vinduets titel og rammer ikke er tegnet af vinduesadministratoren, men af selve ansøgningen.

Lad os minde dig om, at som forberedelse til den næste udgivelse af Xfce 4.16, hvis udgivelse forventes i oktober eller november blev grænsefladen overført til GtkHeaderBar-widgetten og brugen af ​​CSD, hvilket gjorde det muligt, analogt med GNOME, at placere menuer, knapper og andre grænsefladeelementer i vinduets overskrift, samt at sikre skjulningen af rammer i dialoger. Den nye interface-gengivelsesmotor er integreret i libxfce4ui-biblioteket, hvilket har resulteret i automatisk CSD-applikation til næsten alle dialogbokse, uden at det er nødvendigt at foretage ændringer i koden for eksisterende projekter.

Ved overgangen til CSD fundet modstandere, som mener, at CSD-understøttelse bør være valgfri, og brugeren skal kunne fortsætte med at bruge klassiske vinduestitler. Blandt ulemperne ved at bruge CSD er det for massive vinduestitelområde, manglen på behov for at overføre applikationselementer til vinduestitlen, manglende funktionalitet af Xfwm4-temaer og uoverensstemmelsen i designet af vinduer i Xfce/GNOME-applikationer og programmer, der gør ikke bruge CSD er nævnt. Det bemærkes, at en af ​​årsagerne til afvisningen af ​​GNOME-grænsefladen af ​​nogle brugere er brugen af ​​CSD.

Da der ikke er blevet gjort forsøg på at yde support til at deaktivere CSD i 5 måneder, Sean Anastasi besluttet tog dette problem i mine egne hænder og skabte en forgrening af biblioteket libxfce4ui, hvor jeg rensede bindingen til CSD'en og returnerede den gamle dekorationstilstand på serversiden (window manager). For at sikre kompatibilitet med applikationer, der bruger det nye libxfce4ui API og bevare ABI, er der udarbejdet specielle bindinger, der oversætter specifikke CSD-metoder fra XfceTitledDialog-klassen til kald af GtkDialog-klassen. Som et resultat er det muligt at fjerne Xfce-applikationer fra CSD ved at erstatte libxfce4ui-biblioteket uden at ændre koden for selve applikationerne.

Derudover er der dannet en gaffel xfce4-panel, som inkluderer ændringer for at returnere klassisk adfærd. Forberedt til Gentoo-brugere overlay for at installere libxfce4ui-nocsd. Forberedt til Xubuntu/Ubuntu-brugere PPA-depot med færdige pakker. Sean Anastasi forklarede grundene til at skabe gaffelen ved at sige, at han har brugt Xfce i mange år og kan lide grænsefladen i dette miljø. Efter at have besluttet sig for ændringer i grænsefladen, som han ikke var enig i, og ingen forsøg på at give mulighed for at vende tilbage til den gamle adfærd, besluttede han at løse sit problem selv og dele løsningen med andre ligesindede.

Et af problemerne ved brug af Xfce Classic er udseendet af duplikerede titler på grund af visningen af ​​gentagne oplysninger i titlen og i programvinduet. Denne funktion er i overensstemmelse med adfærden i Xfce 4.12 og 4.14 og er ikke relateret til CSD. I nogle applikationer ser sådan duplikering normalt ud (for eksempel i xfce4-screenshooter), men i andre er det klart upassende. For at løse dette problem er det muligt at tilføje en miljøvariabel, der styrer gengivelsen af ​​XfceHeading.

Grundlagt Xfce Classic, en gaffel af Xfce uden vinduesdekoration på klientsiden

CSD-supporternes position kommer ned til evnen til at bruge spildt vinduestitelplads til at placere menuer, panelknapper og andre vigtige grænsefladeelementer. Modstandere af CSD mener, at denne tilgang giver problemer med at forene designet af vinduer, især dem, der er skrevet til forskellige brugermiljøer, der definerer forskellige anbefalinger til layoutet af titelområdet. Det er meget nemmere at bringe designet af vinduer i alle applikationer til en enkelt stil, når man klassisk gengiver serviceområder i et vindue på serversiden. I tilfælde af brug af CSD er det nødvendigt at tilpasse applikationsgrænsefladen separat til hvert grafisk miljø, og det er ret svært at sikre, at applikationen ikke ser fremmed ud i forskellige brugermiljøer.

Kilde: opennet.ru

Tilføj en kommentar