Page 1 of 1

VASSAL only works with some window managers

PostPosted: September 12th, 2012, 6:07 am
by 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?

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

Re: VASSAL only works with some window managers

PostPosted: September 12th, 2012, 9:53 am
by uckelman
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.

Re: VASSAL only works with some window managers

PostPosted: September 12th, 2012, 11:00 pm
by 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.

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

Thanks

Re: VASSAL only works with some window managers

PostPosted: September 13th, 2012, 4:09 am
by crispycritter
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

Re: VASSAL only works with some window managers

PostPosted: September 13th, 2012, 9:43 am
by uckelman
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.

Re: VASSAL only works with some window managers

PostPosted: September 13th, 2012, 12:34 pm
by cantthinkofone
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.

Re: VASSAL only works with some window managers

PostPosted: September 15th, 2012, 3:00 am
by 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.

Re: VASSAL only works with some window managers

PostPosted: September 15th, 2012, 9:13 am
by uckelman
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.

Re: VASSAL only works with some window managers

PostPosted: September 18th, 2012, 1:45 am
by crispycritter
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.

Re: VASSAL only works with some window managers

PostPosted: September 26th, 2012, 2:52 am
by 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.

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.

Re: VASSAL only works with some window managers

PostPosted: September 26th, 2012, 8:18 pm
by uckelman
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.

Re: VASSAL only works with some window managers

PostPosted: September 26th, 2012, 8:45 pm
by crispycritter
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.