On 4/11/2012 11:21 PM, Anthony Petrov wrote:
Hi Omair and Artem,
On 4/11/2012 9:20 PM, Omair Majid wrote:
PS. Perhaps it also makes sense to rewrite that comment in the
XDecoratedPeer to replace the word "bug" with something saying that this
is implemented according to the ICCCM specification with a reference to
the paragraph 4.1.5 of it?
Agreed. I would like to go so far as to make this the default, and add
other window managers (which are deviating from ICCCM) as exceptions. I
am afraid of introducing regressions, though.
I wholeheartedly support this idea in theory. But it seems scary in
practice. We would need to run all automatic and manual AWT regression
tests on at least all major WMs (Metacity, Kwin, Compiz, and (sic!) CDE
- as long as we support Solaris CDE desktops, not sure if this is
relevant to JDK 8 though) to ensure no regressions arise. Note that we
have to test this with quite old versions of the WMs, e.g. Metacity from
Gnome 2.6 (or is it 2.4?) - this is what Solaris 10 has to offer, etc.
And ideally we would also want to test on all those forgotten/rare
creatures like SawFish, Motif, Enlightenment, etc. This looks like a lot
of work for such a simple fix.
I don't think CDE, SawFish, older versions of Metacity and KWin, and all
other window managers which are not compliant to ICCCM and _NET really
should be cared of in JDK8. If we can refactor our code to throw out
most/all the WM-specific workarounds and get cleaner and more robust
code and fix many insets-related bugs, I would love to do so. However,
it's a huge work, it doesn't make any sense to start it until we know
for sure we'll get some benefits. As usual, community contributions are
always welcome, though :)
Thanks,
Artem
However, your current fix looks pretty safe and is fully consistent with
our current XAWT code.
Artem, what's your opinion?
--
best regards,
Anthony