fvwmorg / fvwm3

FVWM version 3 -- the successor to fvwm2
Other
502 stars 79 forks source link

StartIconic/IconGeometry bugs with dual monitor/dual pagers #1044

Open ileGITimo opened 1 month ago

ileGITimo commented 1 month ago

fvwm3 1.1.0 (1.0.9-77-g94da9d16) with support for: ReadLine, XPM, PNG, SVG, Shape, XShm, SM, Bidi text, XRandR, XRender, XCursor, XFT, NLS

Linux 6.9.6-200.fc40.x86_64 https://github.com/fvwmorg/fvwm3/pull/1 SMP PREEMPT_DYNAMIC Fri Jun 21 15:48:21 UTC 2024 x86_64 GNU/Linux

I only specify the x and y position for my pagers, not width nor height.

With both 1.1.0 and Head (1.1.1 xxx) when I start pagers on the left and right monitors, in iconic state, they both show up on the left monitor, in positions that don't seem to respect the IconGeometry x and y spec, but different for each pager.

When I right click on them to make them normal state, they end up on the correct monitor, obeying the Geometry option x an y spec.

When I again minimize them, they now stay in the correct monitor, which is strange, and both are i n the same x, y location, still not the one in IconGeometry.

(To make things a bit more confusing, 1.1.0 shows desks -1,0,1, as requested, but 1.1.1 (as of around 8 am PDT) only shows desks 0 and 1??.

Relevant config options below, for two 1920x1080 left and right monitors:

DeskTopSize 12x1 DesktopConfiguration per-monitor

Style "FvwmPager" CirculateSkip, WindowListSkip, Sticky, StickyIcon, !Handles

DestroyModuleConfig FvwmPagerL: DestroyModuleConfig FvwmPagerR:

FvwmPagerL: Monitor DisplayPort-0 FvwmPagerL: Back LightSteelBlue4 FvwmPagerL: Fore LightSteelBlue3 FvwmPagerL: Hilight LightSteelBlue2 FvwmPagerL: Rows 1 FvwmPagerL: Columns 1 FvwmPagerL: Geometry -1921-1 FvwmPagerL: IconGeometry -1921-1 FvwmPagerL: Font none FvwmPagerL: SmallFont -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-15 *FvwmPagerL: StartIconic

FvwmPagerR: Monitor HDMI-A-0 FvwmPagerR: Back LightSteelBlue4 FvwmPagerR: Fore LightSteelBlue3 FvwmPagerR: Hilight LightSteelBlue2 FvwmPagerR: Rows 1 FvwmPagerR: Columns 1 FvwmPagerR: Geometry -1-1 FvwmPagerR: IconGeometry -1-1 FvwmPagerR: Font none FvwmPagerR: SmallFont -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-15 *FvwmPagerR: StartIconic

AddToFunc GoHome

DestroyFunc StartFunction AddToFunc StartFunction

ThomasAdam commented 1 month ago

Do you have any Style settings using IconBox/IconFill at all?

ileGITimo commented 1 month ago

Yes Style * IconBox 500x50+200-1, IconSize Shrunk 50 50 50 50 Let me get rid of this and retry.

ileGITimo commented 1 month ago

Same problem, only difference is that the iconic pagers show up at top left of the left monitor (0,0?), and right below it, (IconBox defaults?) with one still on the wrong monitor. Going to normal state show proper position/monitor. Back to icons now they are both at 0.0, of their assigned monitor.

Need to tell IconBox to not capture pager icons? Didn't have to do this (explicitly) for fvwm2. And it seems start iconic doesn't respect the assigned monitor, until going to normal then back to icon.

ThomasAdam commented 1 month ago

I'll take a look later. Thanks.

ileGITimo commented 1 month ago

Sure. And also that 1.1.1 doesn't respect the # of desks. Thanks.

ileGITimo commented 1 month ago

I'll close this:-)

Added "IconBox None" to my config. Did a make clean, make install, rebooted, and now both pagers geometries and monitors are respected. One of those did it.

However, argc parsing on github's modules/FvwmPager/FvwmPager.c now contains the following lines

    if (desk1 < 0)
        desk1 = 0;
    if (desk2 < 0)
        desk2 = 0;

which explains why my "Pager -1 1", becomes "Pager 0 1". Are we losing our negative desks?

ThomasAdam commented 1 month ago

Reopening.

There's still more things I can do to make this work better with icon box styles.