Back on JWM for now

I've got a screen flicker and a "pipeline underrun" error with the Xorg Intel driver, as reported in recent blog posts. I hadn't noticed this before, and I was wondering if some particular application in Woof is upsetting the Xorg driver. As an experiment I took out all the XFCE stuff and went back to JWM -- nup, still have the flicker. Next I will see if HAL or Dbus are the culprits. Of course, it may not be any particular app., just the Xorg driver itself.

Anyway, I'm very happy to be back with JWM. The most recent build of Woof with XFCE, that is with the Xfce-mcs-manager (provides infrastructure for communicating between the XFCE applications), Xfwm4 (window manager), Xf-panel, and Xfdesktop (only using the menu component of this as the desktop is provided by Rox), weighed in at 97.51MB. I achieved the smaller size by cutting out many of the more exotic kernel modules. The build also has a selection of panel applets, such as audio, network and CPU load.

I then pulled out all the XFCE applications and put in JWM and the usual applets as we have in Puppy4. The build is 96.73MB. That is a drop of 0.77MB.

Considering the much smaller size and resurce usage of JWM, plus I just plain like it, I reckon we should take it on-board to have a go at maintaining it. Or, plead with the developer to get interested in it again. There are just a few things that need to be fixed. Off the top of my head:

1. Prevent windows from drawing with the titlebar off the top of the screen.
2. Specific fix for the two windows of Mplayer not drawing properly.
3. Specific fix for Gxine full-screen video.


Posted on 24 Jan 2009, 16:07


Comments:

Posted on 24 Jan 2009, 16:27 by WhoDo
Ooh, space for free!
With ttuuxxx's revised Icewm-1.2.36-mini weighing in at just 575kb including a fancy theme you could have TWO window managers in woof, just like Deepthought, and still have less space than with Xfce!

As for maintaining JWM, or pleading with Joe Wing, either way if you plan to continue with JWM something will have to be done. Considering what you and the guys here have done with Puppy, it shouldn't be long before JWM becomes the preference over KDE4!

Welcome back from the Dark Side, Barry!


Posted on 24 Jan 2009, 21:04 by rarsa
Maybe not a bug
1. Prevent windows from drawing with the title bar off the top of the screen.

I don't consider this a bug, but a feature. It annoys me when the Wm does not let me position my windows wherever I want even with the title bar of the top of the screen.

Of course drawing them of the top on creation or after a wm refresh is also annoying.


Posted on 24 Jan 2009, 21:54 by BarryK
title bar off top of screen
rarsa,
yes, I don't want to be prevented from dragging a window so it's off the top of the screen. What I meant, that I consider a bug is when a window draws for the first time with it's top part off the screen. Those of us who know that you can drag a window by holding down the alt key then left-press-drag anywhere in the window, or drag in the little whatsisname boxes in the tray, then fine, but many people only know about dragging from the titlebar.

I suppose it should at least be a config option.


Posted on 24 Jan 2009, 22:19 by happypuppy
Fullscreen Flash bug
And what about the bug with SeaMonkey and other browsers not being able to display fullscreen Flash video with JWM?



Posted on 24 Jan 2009, 23:10 by kirk
fullscreen
If we could just get the Flash / Xine full screen bug fixed I'd be happy with it.



Posted on 24 Jan 2009, 23:29 by happypuppy
ROX filer status bar
Is it possible to add a status bar to the ROX filer to see (detailed) info about the selected file(s) when you have 'double click navigation' selected in the ROX options?

This is the only major thing I (and many other Windows refugees) miss with Puppy.



Posted on 24 Jan 2009, 24:19 by eprv
JWM
Good news, we are used to JWM and it is good, why change, also seamonkey mail is preferred, I have a mail archive it may not be compatible with sylphead


Posted on 25 Jan 2009, 8:22 by `foo
mm m
.. is worth it for a visual reminder of what's on the other desks (now why are most other wms not so informative?;). Simple, everyone is used to it - what's not to like? :) Been playing with afterstep some and it's capable and pretty, but ...


Posted on 25 Jan 2009, 8:31 by foo
mm m
Remind self not to split title and message again - not "mm m" but supposed to be "Yup, the pager alone .." and memo to self there's no preview either, lol.


Posted on 25 Jan 2009, 18:05 by Dougal
JWM Maintenance
Donald Knuth is also a JWM user, so I thought of maybe contacting him and asking _him_ to see what's up with Joe (he can't ignore an email from Knuth!)...
This is really a shame, since even the Debian maintainer, for example, doesn't really fix things in JWM (as they tend to do with other packages).


Posted on 26 Jan 2009, 5:09 by hairywill
jwm needs localisation
Since we are documenting jwm's shortcomings.
Someone asked on the forum yesterday how to localise the jwm menus available from window titlebars/tray entry. As far as I can see jwm contains no localisation stubs.


Posted on 26 Jan 2009, 5:50 by Leon
JWM Maintenance
Dougal wrote:
[JWM Maintenance
Donald Knuth is also a JWM user, so I thought of maybe contacting him and asking him to see what's up with Joe (he can't ignore an email from Knuth!)...]

Good idea! Maybe it's still some hope...

The latest message from Joe's website:

joewing.net | News

[20080906

It's been a really long time updated anything here, but I have a few items to mention. First, I wrote a game called Knockout for the iPhone/iPod Touch that is now on the iPhone App Store.

Also, as of late I've been working on a computer made entirely out of transistors that I call the Q1. There may be no point in it, but I think it's cool.

Lastly, although development on JWM has slowed quite a bit, I am still working on it on and off and I will hopefully have a new release ready one of these days.]


Posted on 26 Jan 2009, 6:07 by Leon
JWM weaknesses and one workaround
happypuppy wrote:
[Fullscreen Flash bug
And what about the bug with SeaMonkey and other browsers not being able to display fullscreen Flash video with JWM?]

From my experience that's the only real showstopper. I like to watch live sports TV, like http://www.justin.tv/directory/sports and that's one of the main reasons to keep using Xfce.

Barry wrote:
[There are just a few things that need to be fixed. Off the top of my head:
1. Prevent windows from drawing with the titlebar off the top of the screen.
2. Specific fix for the two windows of Mplayer not drawing properly.]

The window position can be corrected by using wmctrl (65K).

Example:

# rxvt
# wmctrl -r "rxvt" -e 0,0,0,-1,-1

This wmctrl command moves the rxvt window to upper left corner of the screen.

About Wmctrl
The wmctrl program is a UNIX/Linux command line tool to interact with an EWMH/NetWM compatible X Window Manager.

Home page
http://sweb.cz/tripie/utils/wmctrl/

Source
http://sweb.cz/tripie/utils/wmctrl/dist/wmctrl-1.07.tar.gz


Posted on 27 Jan 2009, 24:30 by hairywill
jwm fullscreen
I have been hacking at jwm client.c and event.c.

The gxine problem seems to happen because gxine sends a request to add state _NET_WM_STATE_FULLSCREEN and then after that one to remove state _NET_WM_STATE_MAXIMIZED_HORZ.
This seems to me to highlight a bug in both of them but I don't understand the spec well enough to be certain. Why would an application ask for fullscreen and then ask not to be maximised horizontally? But in the jwm function MaximizeClient which I think also handles swapping out of maximised it has

/* We don't want to mess with full screen clients. */
if(np->state.status & STAT_FULLSCREEN) {
SetClientFullScreen(np, 0);
}

So it deals with "not messing with fullscreen clients" by explicitly removing them from fullscreen (that is the zero in the function call)

I can get gxine to fullscreen by hard coding jwm to maximise first but the window still seems a bit confused about whether it is maxmised or restored when you drop out of fullscreen mode.

I also have fullscreen flash covering the entire screen apart from the taskbar.


Posted on 28 Jan 2009, 6:26 by Leon
Jwm fullscreen hack
Harry,
Would you be willing to publish your JWM patch on a forum so we can test it?

I'm interesting to try it with fullscreen Flash TV live stream.

http://www.justin.tv/directory/sports


Posted on 28 Jan 2009, 6:48 by Leon
hairywill,
I really don't know how could I completely renamed your nickname in my previous post. I'm sorry.
Sometimes we really need an Edit button here...



Posted on 28 Jan 2009, 8:01 by kirk
Hairywill
Hairywill,



If your trying to get Flash to full screen, make sure you get the latest version of Flash. The one included with Puppy has full-screen problems even with a window manager that's not broken.


Posted on 28 Jan 2009, 20:43 by hairywill
jwm in puppy subversion
OK
I've added a jwm project to the puppy sourceforge subversion repository
http://puppylinux.svn.sourceforge.net/viewvc/puppylinux/jwm/
I started with jwm-2.0.1 and applied my mods so you should be able to see what I have done from the svn log.

PizzasGood wrote a wiki page on using the repository.
http://www.puppylinux.org/wiki/how-tos/general/subversionguide

A sensible command for annonymous checkout would be
svn co http://puppylinux.svn.sourceforge.net/svnroot/puppylinux/jwm
This will create a directory called jwm in the current directory and populate it with the project.

when you run configure in the trunk directory make sure you use
./configure --enable-debug



Posted on 29 Jan 2009, 8:51 by Leon
Jwm + Flash video fullscreen problem solved
hairywill,

Many thanks!

I tried your modified Jwm from the puppy sourceforge subversion repository with FlashPlayer 10.0.15.3:

1. Puppy 2.1.2-k2.6.26.15, frugal install

Gxine 0.5.9
SeaMonkey 1.1.11
Firefox 3.1b3pre
Firefox 3.0.5

2. Puppy 2.1.2-k2.6.21.7, frugal install

Gxine 0.5.9
SeaMonkey 1.1.11
Firefox 3.1b3pre
Firefox 3.0.5

In all cases both Gxine fullscreen and browser display fullscreen Flash video work properly.


Posted on 29 Jan 2009, 17:06 by hairywill
flash fullscreen
Leon, thanks for the feedback.
Have you noticed that with gxine if you repeatedly toggle fullscreen a few times the proper gxine window gets confused about whether it is maximised or restored.

I have used flash LNX 9,0,124,0 in puppy 4.1.2. When I try to fullscreen flash the jwm tray stays on top.

The important edit for this was in client.c

The patches to event.c and also hint.c hint.h are there so that jwm can print some output showing when it receives change state requests. You can view these using tail -f /tmp/xerrs.log.


Posted on 30 Jan 2009, 7:31 by Leon
gxine and flash fullscreen
hairywill,
Yes, I noticed unusual behavior of gxine window after repeatedly toggle fullscreen a few times, but what's important is that fullscreen toggle keep working properly after the maximize/restore button is pressed.

hairywill wrote:
[When I try to fullscreen flash the jwm tray stays on top.]

I always use Jwm with tray autohide enabled. I noticed that it stays hidden even in such case.

After successfully testing the patched Jwm in Puppy 4.1.2-k2.6.26.15 and Puppy 4.1.2-k2.6.21.7 I tried to compile it in Woof 0.0.2 but the compile process ended with a segmentation fault. After copying Jwm files and directories from Puppy 4.1.2-k2.6.26.15 it works fine in Woof 0.0.2 also.

I would suggest to change Jwm version number in svn to Jwm v2.0.1.1 to mark it different from Jwm v2.0.1.


Posted on 30 Jan 2009, 21:29 by happypuppy
Fix for for 4.1.2?
Can anyone post a 'service pack' .PET package so users can fix their existing 4.1.2 installs?



Posted on 7 Feb 2009, 2:32 by hairywill
jwm patch packaged
made a pet here
http://www.murga-linux.com/puppy/viewtopic.php?p=272409#272409
I don't know how to tag a release in subversion yet so if anyone wants to tag revision 45 of jwm that would be helpful.
I don't really want to get into applying official version numbers, it is Joe's project even if he is not doing much at the moment.
I can't explain the segfault in woof


Posted on 9 Feb 2009, 11:46 by happypuppy
Doesn't work
The 'fix' does absolutely nothing :(



Posted on 10 Feb 2009, 13:38 by happypuppy
It's finally working now
...but the second one does the trick :)