Xfce Classic Brings An Alternative To Those Who Do Not Want Xfce To Become GNOME Light

From LinuxReviews
Jump to navigationJump to search
Xfce4-whiskermenu.svg

The next version of the popular Xfce desktop environment for GNU/Linux computers will have the controversial client side decorations (CSD) for window borders, identical to those of the GNOME 3 desktop environment. Many free software users moved from GNOME to avoid these kinds of user-hostile design decisions, and developers decided to create new classic desktop environments like Unity, Cinnamon and Mate. Users who do not want to upgrade Xfce and find themselves in a foreign unfamiliar desktop environment with strange window header-bars, instead of sane window decorations, have a new choice when Xfce 4.16 arrives: Shawn Anastasio has taken the lead in a new Xfce fork called "Xfce Classic".

written by 윤채경 (Yoon Chae-kyung)  2020-07-11 - last edited 2020-08-30. © CC BY

Xfce4.15+-client-side-decorations.jpg
Xfce 4.16 will have GNOME-style client side decorations. This git snapshot is an accurate representation of what it will look like.

The new Xfce Classic project is not be as "classic" as the name implies. It is based on the current Xfce development code-base scheduled to be released as Xfce 4.16 in August. The main differences between Xfce Classic and Xfce 4.16 will be the controversial visible changes. Xfce Classic will have the same sane "classic" window titlebars Xfce has today whereas Xfce 4.16 will look like a GNOME light.

Lead Xfce Classic developer Shawn Anastasio explained that the fork is motivated by the user interface changes in the upcoming Xfce release:

"Well, Xfce has been a core part of my workflow for many years and I've grown to like its UI. When I realized that they were making some UI decisions I disagreed with (and had no intentions to offer toggles) I figured I'd just fork the relevant components and publish them in case anybody else felt the same way."

Shawn Anastasio

Many users have requested that the Xfce team make the client side decorations optional. Requests on the new gitlab issue tracker, the Xfce forums, and Xfce developer blog comments and so on have been dismissed or censored. The Xfce developer who wrote most of the CSD-related code, Simon Steinbeiß, has become so invested in it that he refers to any critisim of it as "passive-aggressive" and "trolling". It does, indeed, seem like there is zero hope client side decorations being optional in the upcoming Xfce release.

The move to client side decorations do not only affect the Xfce desktop itself. Many programs, like LibreOffice, get CSD header-bars instead of window title-bars when they are launched under Xfce 4.16. That means that many third party applications, not just Xfce programs, lose functionality like the make window sticky button, the ability to set the window title area to shade windows by scrolling the mouse on it, the ability to maximize windows vertically by clicking the maximize button using the left mouse button - and so on.

Dialogue boxes like the GTK file picker are also affected.

Developer Shawn Anastasio has begun restoring Xfce to the familiar way look of Xfce 4.12 and 4.14 by forking libxfce4ui and xfce4-panel. These have the most crucial changes separating Xfce Classic from Xfce 4.16. libxfce4ui-nocsd will do for Xfce what the PCMan's gtk3-nocsd library can do for GNOME and GTK3 applications: Restore the regular, familiar, window title-bars.

"Currently focus will be on just libxfce4ui (the panel repo just has a small tweak I tried to get merged but was never accepted). If upstream decides to implement more invasive UI/CSD changes that can't be fixed within the scope of libxfce4ui then I'll fork the affected components."

Shawn Anastasio

The upstream change to xfce4-settings causing GTK boxes like the file picker to look odd and unfamiliar in Xfce 4.16 will likely not be fixed by a fork. The change, introduced in upstream commit ee29d64bb7ebe8, adds <property name="DialogsUseHeader" type="bool" value="true"></property> to the default xsettings.xml configuration file. Users can change this file by editing $HOME/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml. That file can also be changed using xfce4-settings-editor to set the xsettings ▸ DialogsUseHeader value to false.

"It's probably not worth a fork as long as it's a user-configurable option."

Shawn Anastasio

Double Titles On Many Xfce Components

Xfce-classic-vs-xfce-4.16.jpg</a>
The Xfce panel preferences box in Xfce 4.16 (left) and Xfce Classic (right).

Several Xfce components get what looks like a double header when client side decorations are turned off. This is actually not an effect of the changes in Xfce 4.16, this is the classic behaviour. This behaviour has been there since Xfce 4.12, perhaps earlier.

Xfce-4.12-panel-preferences.jpg
The panel-preferences in Xfce 4.12. Notice how there is a small icon and the title "panel" in the window manager header and another icon and the same title below.

"Anything that uses XfceTitledDialog class will include that extra header with icon+title (XfceHeading). That's been a part of xfce for years and isn't related to the CSD changes.

That said, you could probably patch out the XfceHeading instantiation in xfce-titled-dialog.c in libxfce4ui if you don't want it.

I'm not against adding an environment variable to toggle it either I guess.

It does look particularly CSD-ish with whatever theme you're using too. Here's what it looks like [in Xfce Classic] with arc-dark:

Xfce-classic-panel-preferences-arc-dark.png

I think in some applications (like xfce4-screenshooter) it looks fine, but in others it definitely looks a bit superfluous."

Shawn Anastasio

Shawn Anastasio is otherwise, in relation to free software, mostly involved in kernel development and porting software to lesser-used architectures like OpenPOWER.

"Apart from a few miscellaneous contributions to some FOSS projects (most notably the Linux kernel), I'm pretty active in software porting efforts for architectures like OpenPOWER. My most notable contributions there are a port of Google Chromium to ppc64le and libkvmchan, an implemention of some Xen APIs which lay the groundwork for a port of Qubes OS to ppc64le."

Shawn Anastasio

Xfce Classic development is taking place at github.com/Xfce-Classic. The two components forked so far, libxfce4ui-nocsd and xfce4-panel, can be used together with the non-forked packages from the upstream Xfce development git tree. It compiles, installs and works as expected: The traditional classic Xfce experience is restored.

Developer Shawn Anastasio has a profile with contact information at keybase.

On a slightly related note: The Xfce 4.14 bug that makes it impossible to resize the xfce4-settings window vertically was due to a problem with the exo package which is fixed in xfce git. No stable 4.14 release has been made with this fix. The bug in the xfwm4 git tree that makes all Qt and KDE applications show the menus where they previously where if the window is moved, something that makes all Qt and KDE programs practically unusable under Xfce 4.16, is not fixed. You need to revert 821ee7cc before compiling xfwm4 from git.

0.00
(0 votes)


avatar

Chaekyung

45 months ago
Score -1++
I never once mentioned that they are "too big". What actually annoys me personally is the lack of functionality. The regular window manager titlebar can be configured. It can have a button to shade windows, it can have a button to make them sticky so they can be moved between virtual workspaces, the maximize button can be used to maximize windows vertically and horizontally (by clicking the middle or right mouse buttons) and so on. Those "client side decorations" remove that functionality. It is a clear step backwards. And that is what I actually address in the article.
avatar

Chaekyung

45 months ago
Score 0++
I have not seen any evidence indicating that the GNOME foundation or the interests behind it controlling it such as IBM and their subsidiary RedHat are, in fact, bribing the Xfce developers.
avatar

Charliebrownau

45 months ago
Score 0++

Can we finally create a Linux community without

  • Corporations
  • Modernization + Anti Traditionalism + Anti Classic UI
  • Censorship
  • Global LEFT

- LGBT + Pronouns + mentally ill + brainwashed - Anti Western + Anti Freedom + Anti Male + Anti White - Tone + Word "policing" - Offense and Group rights - Anti Merit


Maybe it can be called - Freeux or FreedomUX or FreedomOS


Is anyone willing to stand up before anyone that is - pro freedom - white - pro right wing gets kicked out and everyone has to bend the knee to Global Dictorship + UN adjenda 21 + Commies because its the same group that via "anti discrination" laws and "DIVERSITY" have infected everything that used to be based around - Western ideas - Freedom - Merit + Equal opportunity + Skill + Qualifications + Best for the job - protectionism

in favor of aiding CORPORATIONS and GLOBAL LEFT political goals on PURPOSE BY DESIGN
avatar

Anonymous (f4423a00)

45 months ago
Score 0++

> Maybe it can be called - Freeux or FreedomUX or FreedomOS

people already have freedom. they are simply doing things with it that you (and I) don't like. I understand that you want to be "free from all of that" but it is a bit silly to say 'freedom' in the context of a list of things that aren't allowed and people whose influence is not welcome. Pity them, and forgive them, for they embrace absolute freedom from nature, causality, and sanity. The ground keeps you from falling any further, and that *restriction* is always appreciated.

Maybe someday we'll stand there again.
avatar

Anonymous (f4423a00)

45 months ago
Score 0++

> Maybe it can be called - Freeux or FreedomUX or FreedomOS

people already have freedom. they are simply doing things with it that you (and I) don't like. I understand that you want to be "free from all of that" but it is a bit silly to say 'freedom' in the context of a list of things that aren't allowed and people whose influence is not welcome. Pity them, and forgive them, for they embrace absolute freedom from nature, causality, and sanity. The ground keeps you from falling any further, and that *restriction* is always appreciated.

Maybe someday we'll stand there again.
avatar

Anonymous (fa64e553e0)

2 months ago
Score 0
Oh poor you -- having to have some class and treat people different from you with civility.... I say it's about time, because there are a lot of people who've had to deal with small di*k energy, insecure bullies like you during all those years you thought were so great. If being a white bigot is so great, why are you so concerned that other groups are growing stronger? Aren't you superior enough to compete naturally? (Btw, your version of freedom sounds lame.)
avatar

Charliebrownau

45 months ago
Score 0++

Gday I would love to see a new direction in Linux


Pro FREEDOM

PRO INDIVIDUAL

PRO FREE SPEECH


- No centralisation

- No cloud

- No corporation

- No censorship


- No systemD

- No Pulse Audio

- No Avahi / Zeroconf / Bonjour


- No electron apps

- No dotnet/mono

- No javascript/java

- No closed source drivers bundled into the kernal

- free/opensource - Drivers bundled in a separate driver stack/module

- Closed source drivers in a different module that can be loaded manually

- driver standard for opensource eg

Realtek9xxx-x64-linux.driver

You can download drivers from vendor websites, double click and run them just as easy as windows

and use a similar setup to WHQSL but without payment/royalties

that hardware vendors have a set standard and writing style

and can apply to upload them


Regards Charliebrownau

- gab.com/charliebrownau

- minds.com/charliebrownau
avatar

JELaBarre59

41 months ago
Score 0++
It's times like this I regret not becoming Amish...
avatar

Anonymous (f4423a00)

45 months ago
Score 0++

The main problems I have with CSDs and header bars are all about habits and muscle memory and the resulting UX catastrophe. OK and Cancel go at the bottom, usually on the right, ever since 16-bit Macintosh and Windows. 30 years is a long time, and then suddenly, someone says "Your muscle memories are false now, and you must reform them, because we decided it." I guess it was Firefox that moved them up at opposite ends of the fattened title bar as soon as it saw the environment supported it. So FF is "broken now"-- at least until I downgraded libxfce4ui. Then I said "oh well" and started getting accustomed to LXQt.

I always pick a window manager/decorator and theme/style which support the old habit of "throw your pointer up and to the right, then click, you can't miss the close button on a maximized window". I tried this on one of XFCE's own dialogs which had a fat 'header bar' that IIRC only held the title and clickable thing(s) including the 'X' near the right end... and it didn't work. Tough beans! I guess I should STOP WANTING THAT, right? That's the message I keep getting from the internet. It's much like how I want a website to simply show me some text without freely running a ton of unsigned, unvetted, possibly malicious or exploitative code in my browser to download and display that text, but I should Stop Wanting That. Someone decided that JavaScript is becoming the new HTTP: you're gonna use it, or you're not gonna have much to read, and this is what everyone is supposed to want. Get with it and get used to it.

Well, I want the clickable region around an X to go all the way to the corner, but the people who are making UI design their responsibility didn't think about that, or didn't care. Someone cared in the past: go back and look at the Start button in Windows 9x, Me, 2K, XP (with theme set to Windows Classic): even though there was 1 pixel of border on the taskbar surrounding the actual button, they wrote in a bit of a hack to make the outermost screen-corner pixel also activate the button even when the mouse wasn't directly on it, and also teleport the mouse (1 pixel up and 1 right) onto the corner of the actual button (probably so when you released it without moving it again, the button would receive the mouse-up event normally). Or maybe it teleported the pointer first and then handled the click again, I don't know. MS did this because MS understood that the corner of the screen is infinity pixels deep on both axes and so terrifically easy to land on. Now, just as with regular-sized non-maximized windows, I would have to deliberately aim at the X on both axes *after* I threw the pointer toward the corner as usual, just to get into the vicinity... and the clickable region seems to be *round* now. Or rather, it did back then. Did they actually fix this in the last 6 months? Would they even use the word "fix"-- is it even what they could admit is a problem? I haven't checked; it isn't something I feel a need to know about. I haven't filed a bug because that would be like a vote of confidence, and the word on the street seems to be "it's correct already".

This is not progress, rather a hateful batch of antipatterns. It goes down on the list of reasons to think that most of my species has basically lost the plot. So much for "the sane linux desktop". (https://www....nux-desktop/)
Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.