July 01, 2005
Xming development update
Some news after a long period without.
After finishing a test last week I spent more time on bugfixing again. So far a crash reported by Øyvind Harboe and a livelock with window resizing has been fix. I also took a look on the OpenGL visual code and noticed that visuals are always generated with 24bit color depth instead of the actual system color depth. This might be the cause for some "Can not find visual" error with OpenGL programs. Full verfication is still pending because my computer crashed hard when running some of the glut examples (I now at least one showed that error, but I can't remember which one).
There also have been reports of fake Control presses and spooky tooltips with minimized windows. I know what's causing the second but I'm not sure which of the two solutions (hiding the actual X11 window or preventing Xming from receiving pointer positions outside of it's windows) is the best. Both look quite easy but may cause new regressions.
Since the Xorg CVS is getting near a new release there may be an actual "stable" release soon. Ok this will not affect the stability of Xming very much, but Xming will at least get a real version number ;-)
So much for today.
April 04, 2005
New xlaunch snapshot
http://www.freedesktop.org/~ago/Xming/xlaunch.zip.
Unzip into the Xming folder and run xlaunch.exe. Saved configurations can be used as preset with xlaunch -load configfile and with xlaunch -run configfile for direct start.
For loading and saving you need to have MSXML 4.0 installed. Maybe older versions will work too.
Source is available on http://www.freedesktop.org/~ago/Xming/xlaunch-src.tar.gz.
bye
ago
xlaunch with XML support
There is no new snapshot but I hope to finish and upload it tonight.
March 25, 2005
First preview of xlaunch
I've uploaded a first snapshot of the new xlauncher.
http://www.freedesktop.org/~ago/Xming/xlaunch.zip
This includes the launcher xlaunch.exe and a stripped down version of putty distributed with the CVS frontend TortoiseCVS (http://www.tortoisecvs.org).
Extract the files to your Xming folder. xlaunch expects Xming and plink in the local path.
The launcher is build as a kind of wizard. Saving and loading the selection for later use is in the work but requires a decision about the best xml library first. My current favourite is MSXML (available on nearly every windows pc) but I've not found any headers for it which are available for gcc. So I might end up with expat. Any other proposals?
It currently uses features which are available with installed IE5 only. I will remove this dependency later. You may also notice that the last page of the wizard is not the last page at all and there will be more pages later on.
Source is available at http://www.freedesktop.org/~ago/Xming/xlaunch-src.tar.gz. License will be most likely MIT. But I'm not sure about this.
More about licensing issues? What about this one:
Plink is actually a stripped down version of Putty available from the putty website. This plink is a console application. This means you will always have a console window flying around. TortoiseCVS ship a version which is not a console application and which reqests the password in a separate window. But TortoiseCVS is GPL while the original putty plink is MIT. The LICENSE file in the TortoisePlink sources only refers to the putty plink. Changed files have no copyright statement at all. So I guess it's still MIT which is fine for me.
Back to the original topic: Send comments. Have I missed something important in the dialogs (fontpath and XKB will come later). Local starting of clients is somewhat limited and will be completed in a Cygwin/X edition which will then use OpenSSH as ssh backend.
So long
ago
March 19, 2005
Another restack fix
If a window is minimized it does not participate in window restacking. But if it gets restored the stack change message is sent before it is restored so it was not restacked.
I fixed it by forcing a restack right after the window got restored. Quite a hack, but I don't see any other solution
March 18, 2005
Xming Frontend
I started working on a frontend to Xming yesterday.
Actually I started working on the framework. I don't want to program a Windows application with the basic Win32 windowing api. So I need some kind of class library like MFC or VCL which I can not use because of licensing and compiler issues (I must be able to uses it in an OpenSource environment and the compiler must be free too). The usual suspects Qt, GTK, SWT and wxWindows are too much focused on platform independence and they include too much which is not required on Win32. Since size and easy deployability of the frontend is a very important feature I focused on a thin wrapper of the Win32 API.
I really expected to find some OpenSource projects which have already wrapped at least parts of the Win32 API into a class framework. But I found nothing. Except for GWin++ which is in a very early state and starting with it is as good as starting completly from scratch. Ok, my goal is not the reinvention of MFC or VCL but only the clear separation of commonly used code. The base is ready. Next is the actual frontend.
I'm quite sure during development I'll restructure the class layout at least 3 or 4 times and I actually think this is bad development style, but who cares. Meanwhile I even got further than with any of my previous GUI framework projects (all of them are at least 10 years dead *g* I hope I buried the sources in /dev/null so no one can ever revive them).
What about the layout and design? I'll flagrantly copy from the available VCL and MFC fontends which some users have built for Cygwin/X and add wrap it into a nice dialog anyboy would expect from Windows.
There are a few things which are already clear regarding the features
- xinit style starting of server and clients
- XDMCP support (maybe with integrated broadcasting)
- Support for Putty and OpenSSH as clients
- starting of local session via .xinitrc on cygwin
Did I miss something? Just drop me a note.
March 14, 2005
Pending problems
So what are the current problems?
OpenGL. Dynagraph is still not working as is FooBillard :( Maybe there are problems with the display of OpenGL and X11 since the OpenGL output completly overlays the X11 window. But I'm quite stuck here. I'll have to start looking at the source of FooBillard or DynaGraph.
Eclipse. That thing is driving me crazy. The GTK port sometimes looses events and this is not debuggable and the Motif port stops working right after the start. In Cygwin/X it does not react on keypresses. Very strange...
Have I missed anything?
March 08, 2005
Fixes for another race
I've just fixed another race introduced with the last window reordering patch.
It seems some windows functions (like DestroyWindow) call the windowproc in place and so ConfigureWindow was called in a situation where the internal window structures of the server were about to change and not valid at all.
This looks like trouble. I'm not sure if this fixes all those races. Maybe I'll have to revert to a state before the patch and send the ConfigureWindow request asynchronous from the integrated window manager. The network will serialize the access then. But this will add the old window reordering race :(