VASSAL only works with some window managers

LINUX MINT 3.2.0-23
VASSAL 3.1.20
JAVA 1.7.0_03

Running the standard window manager (KDE) everything I’ve tried works fine (Fire in the East). So HW isn’t an issue. Performance is about what I would expect

But I don’t like KDE (or GNOME), preferring a minimalist window/desktop environment. But therein when I launch VASSAL the initial dialog display but doesn’t work. Clearly VASSAL is expecting something from the window manager that minimal managers don’t supply. Detail: it starts, and clicking FILE or TOOLS or HELP displays the sub-menu items, but none can be selected by the mouse and no keyboard shortcuts work.

What is needed?

Am running my own window manager, loosely based on “Evil Window Manager” – no eye candy, etc. All other programs I’ve tried, including KDE stuff such as okular, run fine.

Any ideas?

Thanks

Thus spake crispycritter:

LINUX MINT 3.2.0-23
VASSAL 3.1.20
JAVA 1.7.0_03

Running the standard window manager (KDE) everything I’ve tried works
fine (Fire in the East). So HW isn’t an issue. Performance is about
what I would expect

But I don’t like KDE (or GNOME), preferring a minimalist window/desktop
environment. But therein when I launch VASSAL the initial dialog
display but doesn’t work. Clearly VASSAL is expecting something from the
window manager that minimal managers don’t supply. Detail: it starts,
and clicking FILE or TOOLS or HELP displays the sub-menu items, but none
can be selected by the mouse and no keyboard shortcuts work.

What is needed?

It’s not VASSAL—we do nothing to check what window manager you’re
using. It’s more likely to be Java. There were a lot of really dodgy
things in Swing last time I checked regarding different behaviors in
different window managers.

Do you have any other Java programs to try for comparison?


J.

It gets more strange. On my office machine, the same failing window manager at home (built from identical source) works fine with VASSAL, as does the GNOME window manager that’s standard in Scientific Linux 6.

The JAVA version is older, however, and I may try to install the older version at home to see what happens. Also will run strace and hope for enlightenment, but based on strace at the office there isn’t anything weird.

VASSAL in the only JAVA app I’ve obvious access to. Suggestions for other apps for comparison are welcome.

Thanks

More info:

strace wasn’t all that helpful as the nature of the calls logged differed greatly. I modified VASSAL.sh with -verbose and attached is the the output from ‘diff awm.txt mint.txt > javadiff.txt’ where mint.txt is a correctly running version and awm.txt is one that fails. It looks like it gets to the dialog and when it works we get

[Loaded javax.swing.event.MenuDragMouseEvent …

but in the failing case the Menu doesn’t “take”
< [Loaded java.awt.geom.Area from /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar]
< [Loaded sun.awt.geom.Curve from /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar]
< [Loaded sun.awt.geom.Order0 from /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar]
< [Loaded sun.awt.geom.Order1 from /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar]

I rebuilt the simple window manager to remove all mouse support and window manager detection of button events, but to no avail.

Am going to think about trashing Linux Mint on the home machine and using SL6, but we had issues getting that to work last time it was tried.

Sigh

Thus spake crispycritter:

It gets more strange. On my office machine, the same failing window
manager at home (built from identical source) works fine with VASSAL, as
does the GNOME window manager that’s standard in Scientific Linux 6.

The JAVA version is older, however, and I may try to install the older
version at home to see what happens. Also will run strace and hope for
enlightenment, but based on strace at the office there isn’t anything
weird.

Which versions of Java are we talking about here?

VASSAL in the only JAVA app I’ve obvious access to. Suggestions for
other apps for comparison are welcome.

You might try running Eclipse. That’s Java, but uses SWT instead of
Swing, I believe. If you find that Eclipse is ok, then the likely
culprit is Swing.


J.

Where is X logging for you? I think due to my screwing around with it over the years, I have a .xsession-errors in my home directory. Something like that may be easier to wade through than the system calls of a strace output.

I tracked .xsession-errors and nothing is added to file when running VASSAL under the simple window manager. There’s an Xorg.0.log in /var/log but it shows no activity either.

Am currently trying to understand the source well enough to try adding some diagnostics, but I’m really an assembly language programmer and only have limited fluency in JAVA.

Thus spake crispycritter:

I tracked .xsession-errors and nothing is added to file when running
VASSAL under the simple window manager. There’s an Xorg.0.log in
/var/log but it shows no activity either.

Am currently trying to understand the source well enough to try adding
some diagnostics, but I’m really an assembly language programmer and
only have limited fluency in JAVA.

Our source, or the JVM’s source? I don’t believe there are any changes
to VASSAL which will make a difference.


J.

After much experimentation and editing of the manager code, i’ve learned that VASSAL does, in fact, sort of run. What happens is that the JAVA environment isn’t recognizing that I’ve moved the VASSAL dialog box from 0:0 and so the menu display is lost in never-never land. If I drag the dialog box to the upper left corner, it runs correctly although the menu item highlighting isn’t perfectly aligned with the displayed mouse position. But only on this machine – on my office computer the window manager and VASSAL work happily together.

Not sure what the window manager is doing that JAVA (swing?) doesn’t like, since in some nine years of use this is the first problem compatibility problem I’ve encountered.

Will continue to experiment and will report if I discover anything possibly useful.

Hmmm.

I downloaded the VASSAL source, tweaked just the version number and the splash screen (let’s me make sure I’m getting the locally made code), and with that change I no longer experience the window manager issues. Digging out the cause of the mismatch is outside my expertise and my available time, but thought it worth mentioning.

Am not able to get Eclipse to recognize that subversion/subclipse/etc are installed, although apt-get swears up and down that everything is installed and up-to-date (and of course the Makefile works) Have followed the directions from the VASSAL wiki on using eclipse, and the log file shows that I’m getting the specified library.

Thus spake crispycritter:

Hmmm.

I downloaded the VASSAL source, tweaked just the version number and the
splash screen (let’s me make sure I’m getting the locally made code),
and with that change I no longer experience the window manager issues.
Digging out the cause of the mismatch is outside my expertise and my
available time, but thought it worth mentioning.

That’s quite strange. A locally-built copy should not be any different
from one we’ve built and released.


J.

No kidding.

I’m starting to root around in the code to become familiar with both it and with JAVA, and as time permits maybe can figure out what’s going on. I actually spent some time seeing if I could migrate the features in my personal window manager that I like to kde, but decided that was too much work (assuming it was possible), besides which I’m not all that fond the desktop metaphor. If I wanted to use Windows, I could.

Have some other VASSAL questions brewing but will check the FAQ and open a different thread if it comes to it.