RandR Support on XFree86 4.3
Gentu writes "Great news from our favorite windowing system: [Hewlett-Packard] engineers committed a new extension to XFree86, called RandR. XFree86 4.3 (to be released in late 2002/early 2003), will have the ability to truly resize (not via the pseudo-resize CNTRL+[+/-] command), rotate, reflect and change the refresh rate of each screen of an X display on the fly. And KDE seems to be the first desktop environment to add support for the RandR extension."
The rotation is for people with pivoting monitors which can swap between landscape and portait views, I assume.
Mirroring may be reflection, but it could also be mirrored video for multihead setups.
X is a lot better than many competing efforts. For starters, it works, is in wide distribution, and has a huge suite of apps. Unlike, say, Berlin, or any of the other "Let's replace X" projects (Berlin, to its credit, at least works. Most alternatives are SourceForgeWare with a few Beavis and Buttheads dissing X withou anything to replace it).
X gives you a base. You can reimplement everything X already does to get the features X doesn't have, or you can implement extensions to X, or rewrite core parts, to correct the faults X has. Guess which is less work?
Why do these "when will we replace X" trolls resurface every time there is an X story? And why do people keep modding them up?
So far, we have great 3D acceleration, direct video, anti-aliasing, and now dynamic sizing/resizing in X. And all with excellent performance that is equal to or better than the performance offered by Windows. And we retain the network-centric features and flexible, modular configuration that make X so powerful. And all of this while maintaining backward compatibility over a decade-and-a-half of software.
We'll replace X when it makes sense to do so and not before. Right now, there is no better (or even close to equal) solution.
STOP . AMERICA . NOW
How did this comment get to a 5? This person does not understand software development. If you need some more information on why we should not "replace the X windowing system alltogether", read this.
What does Mac OS X use? Something different. Maybe we (the rest of the *nix world) should see HOW MUCH they gained from doing that - it may be that rewriting a lot of apps (or doing some sort of backwards compatibility mode) would be worth it.
My server
Finally X is getting the same features that most other operating systems have had for a decade... It may sound small, but these are the things that make systems easier to use for the average joe, and goes a long way in usability.
Reasons why this is good:
Applications that work best in a specific resolution or color depth. Particular examples are any games; Most 3D games, such as Unreal Tournament or Quake 3, give you the option of changing the resolution or color depth; the obvious advantage to this is that if you have a low-end video card, setting the resolution and color depth low will increase the framerate. If you have a high end video card, you obviously will want a higher resolution for greater detail. I keep my desktop at 1280x960, but prefer to run games in 1024x768 with Quincunx antialiasing (I have a GeForce 3).
Another important application is web design. A well-designed web site should look good at any resolution; however, since one can't intuitively know how a page will look at every resolution, when designing a page it is convenient to change your resolution on the fly and take a look at it.
And then, of course, you have applications that *require* a specific resolution. This isn't as much of a problem with UNIX, but in the Windows world you will likely encounter programs designed for older setups that will fail to run if you don't have a specific bit depth or resolution. Even some more recent applications have this restriction; for example, the Windows SNES emulator zSNES requires that you run it with 16-bit color depth (at least, it did the last time I checked). Starcraft requires that it run at 640x480.
So, just because you don't have any reason for this, don't say it's useless. I've been wanting this feature for ages.
Karma: Terrifying (mostly affected by atrocities you've committed)
Cut and paste faults are BUGS in individual applications or toolkits. The XFree86 maintainers cannot fix these bugs by changing X, because X already does the right thing.
/really/ care.
In every serious X app you should be able to do both of the following:
1) Cut, Copy and Paste things through the system clipboard using menu options, keyboard shortcuts etc. as appropriate. e.g. Ctrl-X for cut in most GNOME, KDE apps. This works almost exactly like Windows.
2) Quick copy using the middle mouse button, select text in any application, then press the middle mouse button to paste that text in any other application.
If they don't work in your favourite apps, check for a new version. If that doesn't work either, file a bug, post to the mailing list, write to your democratic representative or complain ABOUT THE SPECIFIC APP on Slashdot. If you aren't specific no-one can help you.
Caveats:
Old KDE (pre 3.0) and Qt (ditto) apps (e.g. Opera and many installs of KOffice) don't work because Trolltech screwed up. Upgrade
Venerable old xterm doesn't have Cut/Copy/Paste menu items (most users don't even know it has a menu) so you can't use the clipboard only the fast copy feature. Use one of the many other modern terminal apps if you
Earlier (e.g. few months old) stable releases of Gnumeric make the same mistake as Qt2.x. Upgrade to the latest release.
GNU Emacs (but not XEmacs) has totally bizarre clipboard behaviour unrelated to any standard, principle or sense of reason. Use XEmacs or complain to your favourite Emacs maintainer.
This extension, together with other X11 features, has a much grander vision: letting applications move seamlessly across displays and devices. This requires defining standard protocols by which different implementations can interoperate and communicate. It also means coming up with standards that work across a wide range of devices.
I frankly don't know when, or even whether, X11 will be able to deliver on this vision--it's hard and there is still a lot of work left. But I do know that few other systems are even trying, and that functionally, X11 is already far ahead of the alternatives. For all their visual glitz, Windows and MacOS, for example, are just minor variations on the "applications running on my desktop" theme.
In that sort of world, it's a lot easier to specify how big you want things to be than to specify how many pixels anything should be.
There are a lot of people whining about X (myself included). Most people say X is (take your pick) bloated, slow, obsolete, inefficient, or hopeless. Now some of these individual claims may have some truth to them, but the fact is that X despite its knarliness, works, and it works today. There isn't any real alternative, and it can continue to be extended for a long time.
But people who say such things about X are missing the point. X is ugly, in the same way that x86 is ugly. I think the analogy is a very apt one. Both are rather old designs, both are the most prevalent, both have had to be extended numerous times (and successfully), and both work, and work quite well. But neither one will get any design awards: the only thing we're doing at this point with either of these is leveraging the existing code base (i.e., the millions of x86 binaries on the one hand and X applications on the other) and avoiding duplication of past work by building something from scratch. And frankly, I think both are beginning to reach the end of the line: the further we go, the more effort we need to expend for an increasingly marginal return.
For the x86 example, Intel perceives this, and wants to jump ship now, even though its replacement is not as robust, fast, or powerful as its last top of the line. Once again, people who point this fact out are missing the point: Intel is laying down a roadmap, to service a broader goal of an architecture it can grow with for the next decade or more.
Why can't we do the same with X? It's going to get harder and harder to grow with X, so lets lay some groundwork now for a window system we can grow with for the next decade or more.
I am shocked and amazed that more comments are not mentioning Berlin, that is, Fresco. Do people not know about this? This is the only project I've found that has half a chance of being a suitable replacement for X. There's a framework there, a coherent vision, and even a basic running system. This isn't vapor, folks, or are these people a bunch of anti-X whiners with no code to back up their pointless bitching. They're not FUD-mongers; at least listen to their well-balanced (I think) justification as to why they're working on this project. It's quite easy to see that they're not at all motivated by hatred of X, but by a desire to design an elegant and network-transparent window system.
Why don't we have more of that nowadays? Half the OSS movement seems to be driven by hatred of Microsoft (or simply closed-source software), rather than love of elegant, useful, robust code born of honest work. At some point someone is going to have to worry about more than simply getting things done as quickly as possible, be-damned-how-it-works, and think more about design and the way things should be. The former type of attitude breeds stuff like MS Windows. Is that really what you want your windowing system to become? If something isn't done before long, X is going to be just like Windows: pasted and taped together and building on a merely serviceable codebase. This, I think, would be a great injustice to X. Let it die a peaceful and honorable death now, rather than a violent and hate-filled one later when it becomes so horrible, so monstrous, that the issue of replacing it is forced upon us and we throw its head on the guillotine.
Remember that at its inception X itself was merely a design framework by people who wanted to do a windowing system the right way. That X has served so well for so long is a testament to that foresight. But please, let us have the foresight to know when to design something new on that same basis, learning from what we have done. A rejection of the code does not mean a rejection of the vision or of the talent that bore that code.