I think the fix is to simply get rid of the 2 pixel overlap. That causes menus to draw inconsistent based on the z-ordering of the windows. It might make your skins use an even slightly larger gap between menus, but no big deal. You could always trim if you wanted after the change.
If you
must get rid of the 2 pixel overlap because of uncontrollable z-ordering, then please leave exactly 0 pixels between menu and submenu, i.e. they should be perfectly adjacent with no gap between them. I too would expect that in this case anyone who prefers a small gap will still be able to get it by adjusting their skin Menu Background. But if you build in a fixed gap >0 pixels, then AFAIK a designer who desires a continuous look can never fill the gap.
The significant downside to removing the 2 pixel overlap, instead of controlling z-ordering: For skins with a symmetric Menu outline W pixels wide, this border becomes 2W wide where the menu and submenu are adjacent (assuming no gap), and then suddenly drops to W pixels wide where the menu and submenu are no longer adjacent. This will change the appearance of some existing skins. I would find it especially disturbing for a dropdown which stretches vertically beyond the border of its source menu. On the contrary, for a 2 pixel overlap, the respective widths are 2W-2 and W. When W=2 there is no change in width between overlapping and non-overlapping borders.
HPBEME's built-in
Dream in Blue is a good example of a skin with 2 pixel uniform borders all around which will surely be impacted by removing the 2 pixel overlap.
Side Note: I imagine some readers are astonished that we care about 1 or 2 pixel gaps, as I once was! But in practice, a 1 or 2 pixel gap/feature can be very noticeable when contrasting colors are involved. It is a testament to the quality of MC's software that it offers such tight display control at the pixel level. Upon close observation, I find the same edge behavior on two old 1920x1080 monitors with different aspect ratios and a new 4K 3840x2160 desktop monitor, over a wide range of Windows Display Resolution settings and MC Size settings. For example, a controlled 2 pixel wide line is always rendered two pixels wide (only the
apparent size of a "pixel" changes). Worst case variation I have seen is an additional 1 pixel of color aliasing.
1/23/2025 - Some updates for clarity.
2/1/2025 - JRiver removed the 2 pixel overlap in Version 33.0.61, included in Public Release 33.0.63 (1/30/2025). The first column of a submenu dropdown now appears fixed in the first column to the right of the source's last column, i.e. the menus are adjacent with zero gap instead of overlapped. Confirmed.