dreamcat4 / skippy-xd

A full-screen Exposé-style standalone task switcher for X11.
GNU General Public License v2.0
99 stars 12 forks source link

[multi monitor] - general open discussion - how skippy can be improved? #160

Open dreamcat4 opened 1 year ago

dreamcat4 commented 1 year ago

ha ok firstly i have to apologize (again) . for being out of touch with these multi monitor considerations.

because of:

however the truth does seem to be a bit unclear?

for example:

...so we can use that libxrandr c lib now instead? presumably is that is improved over other pre-existing xinerama api? (or are both same thing?) or that libxrandr wraps xinerama behind it. i am not so sure myself yet. needs to be looked into.

anyhow this seems to be relevant matter. related to both those xinerama bug/issue/pr and also other types of bugs observed in video i took recently.

more things, that i am currently not sure:

have not had opportunity to look into this. and uncertain at this point. but maybe there might be a value to make this issue for a broader discussion.

we can also:

dreamcat4 commented 1 year ago

other related issues / prs:

https://github.com/dreamcat4/skippy-xd/issues/109

https://github.com/dreamcat4/skippy-xd/pull/150

https://github.com/dreamcat4/skippy-xd/issues/126

felixfung commented 1 year ago

I think the big question is:

Currently, are all windows from all monitors shown by skippy?

My suspicion, knowing nothing about this mess of frameworks - and X11 gave me hell - would be that we can fix multi-monitor fairly straightfowardly, by debugging and putting in the correct coordinate offsets. Adding/change library dependencies at this stage of the project (and X) is too much work for too little gain. The ifdefs are good and let's keep them there.

felixfung commented 1 year ago

From the other issue:

  • when adding or removing a monitor. then screen canvas changes
  • if skippy-xd --daemon is already loaded. then it might be possible to subscribe and pick up onto some xorg notifications those screen canvas changes
  • this then means user does not have to manually kill / restart background running skippy daemon
  • this also may exhibit as a bug for: when user is logging into their x session. because extra monitors may be getting initialized during / after certain login startup items. (in fact was case here in kde)

Currently all screen/monitor dimensions are handled and set in mainwin_update, which is called every time skippy is invoked. Hence, should the subsequent position calculations be correct, this could be automatically achieved. Of course, it would be a little bit framework and implementation specific.

dreamcat4 commented 1 year ago

ok so: for these matter of multi-monitor handling was already assigned to myself. just quick update that the expected time frame / milestone to start dealing with it shall be:

the general scope of those work is already above outlined / prior investigated by both myself and felix well enough

then after those expected and needed fixings for those multi-monitor display related bug(s)...

could then be some future possible discussion around (1) more potential way to improve multi monitor support. as optional additional feature.

but that other one isn't worth considering just yet.... until we have been clearing sufficiently those existing display related bugs. to establish a more rock solid foundation first of all.

felixfung commented 1 year ago

I told you in #168 I found an additional monitor and fixed all multi monitor bugs already.

I would like complete ownership of this project. Would you transfer ownership? Otherwise I would fork. Thanks.

felixfung commented 1 year ago

@dreamcat4 I don't know what game you are playing, but I am forking.

dreamcat4 commented 1 year ago

I told you in https://github.com/dreamcat4/skippy-xd/issues/168 I found an additional monitor and fixed all multi monitor bugs already.

Felix - i simply was operating under the understanding that I was assigned to do this work, as we had previously already agreed. I actually hadn't seen your "latest replies" because quite frankly it's too much to deal with right now....

SO the game was: well you said you didn't have any 2nd monitor or interest in doing it... so I inevitably agreed to take that on. The fact that you keep on overriding me on such matters... has been demonstrated quite a few times now.

I would like complete ownership of this project. Would you transfer ownership? Otherwise I would fork. Thanks.

Again - didn't see this message.