Coder Social home page Coder Social logo

Comments (12)

autrimpo avatar autrimpo commented on July 17, 2024 1

I've narrowed the source of the issue and reported it upstream:
https://bugzilla.libsdl.org/show_bug.cgi?id=3936

from imv.

autrimpo avatar autrimpo commented on July 17, 2024 1

I think we can close this since it's actually an OpenGL limitation, thus won't be fixed.

from imv.

eXeC64 avatar eXeC64 commented on July 17, 2024

An example of the correct behaviour, and the incorrect behaviour and how to reproduce it would be most helpful for debugging and fixing this issue.

I use i3wm on my machines, but I can install bspwm for testing.

from imv.

autrimpo avatar autrimpo commented on July 17, 2024

Example
Hope this helps, shows both sxiv and imv.

Edit: Arch Linux with bspwm 0.9-2 and imv 1.2.0-1 as well.

from imv.

professorjamesmoriarty avatar professorjamesmoriarty commented on July 17, 2024

I've never had the issue with focus, using bspwm 0.9-2 and imv 1.2.0-1 on archlinux. But it does ignore the selective split feature.

Typically the command for this is something like:

super + ctrl + {Left,Down,Up,Right}
        bspc window -p {left,down,up,right}

When I want imv to open to the right of the current window for example, it'll spawn taking over the current window space, rather then where I want.

from imv.

eXeC64 avatar eXeC64 commented on July 17, 2024

Thanks for the video. That is odd behaviour.

It'd add some complexity, but a possible approach would be detecting whether imv is running on X11 or Wayland and setting the window properties as needed using the relevant native library. SDL provides some APIs for doing that, so in theory it's possible, but I'm reluctant to add that complexity to imv unless it's necessary.

Before considering doing that though, I'd like to nail down what exactly is causing the behaviour. My suspicion is an xprop of some kind.

from imv.

0x647262 avatar 0x647262 commented on July 17, 2024

While using bspwm, I am unable to set my wallpaper using imv:

  1. I am able to close my wallpaper. I am able to close the sdl window that is displaying my background after clicking on my background. (using sxhkd)
  2. imv occasionally forces itself into the foreground of my desktop, and the sdl window starts to be managed by bspwm.

Semi-related:

Why doesn't feh get affected by the "closing my wallpaper" bug? Using:

feh --bg-scale $image

Prevents me from closing/managing the feh "window". (is it even a window in --bg mode?)

from imv.

eXeC64 avatar eXeC64 commented on July 17, 2024

Could someone affected by this confirm whether it's still an issue please? imv has had a big refactor recently, and several bugs fixed.

from imv.

0x647262 avatar 0x647262 commented on July 17, 2024

I'll check in a few.

from imv.

0x647262 avatar 0x647262 commented on July 17, 2024

@eXeC64

It's confirmed still ignoring the preselect.

from imv.

autrimpo avatar autrimpo commented on July 17, 2024

I can confirm this as well.

A thing of interest I've noticed: It seems like there's several windows being created in quick succession. Using bspwm's 'external_rules' feature (which runs a script on every new window created) and logging the events gives this output: (I opened termite and then imv)

id 85983235
class Termite
inst termite
title termite
id 85983237
class imv
inst imv
title imv
id 85983239
class imv
inst imv
title imv
id 85983242
class imv
inst imv
title imv

As you can see, three windows (with different ids) are being created, thus the first one "eats" the preselect and the third one, the actual imv window, ends up using the default split.

from imv.

eXeC64 avatar eXeC64 commented on July 17, 2024

Good detective work there autrimpo. That's extremely strange behaviour. The window creation is all handled inside https://github.com/eXeC64/imv/blob/master/src/imv.c#L534-L595 - if you're able to reproduce it with a minimal program containing just that logic, I'd strongly urge reporting this upstream to SDL2.

from imv.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.