emasab / shelltile

A tiling window extension for GNOME Shell
https://extensions.gnome.org/extension/657/shelltile/
GNU General Public License v2.0
648 stars 42 forks source link

Not working at all on Gnome 3.30 #66

Closed martin31821 closed 5 years ago

martin31821 commented 5 years ago

Just updated gnome to the latest version (still having an X11 session) and tried to use tiling, but it's not working at all.

I tried to debug a bit and the only thing that seemed wrong was the use of global.screen which seems to be deleted in 3.30, so I changed all global.screen to global.display, but that didn't work either.

If I got some time, I'll look further into the problem...

atwinkelman commented 5 years ago

I'm experiencing the same symptoms on Gnome 3.30 using X11. journalctl -b /usr/gnome-shell does not show anything that sticks out to me directly related to shelltile except one message: gnome-shell[1121]: [ERROR][ShellTile][Ext] TypeError: realsubject is undefined. I'm not sure what action caused this message though.

For what it's worth, I see reference to undefined property "screen" and TypeError: global.screen is unidentified when activating Multi Monitors Add-on too. Perhaps whatever changed in Gnome 3.30 is affecting more than just shelltile.

martin31821 commented 5 years ago

I prepared a changeset, for those who want to test it. https://github.com/martin31821/shelltile

The background is that gnome splitted the display/monitor/workspace abstraction, so some references previously in global.screen are now in global.workspace_manager or global.display.

Works fine on my machine, if somebody else could test this, I'd also like to do a PR @atwinkelman @gusser93 @karolba

jeremie2 commented 5 years ago

I prepared a changeset, for those who want to test it. https://github.com/martin31821/shelltile [...] Works fine on my machine, if somebody else could test this [...]

Thanks martin31821, It works on Ubuntu 18.10 with Gnome 3.30.

I have just noticed a small problem. The window starts to resize before reaching the side (or the corner) of the screen. This is a bit annoing when you want just move a window without the tiling.

Apart of this it works well.

atwinkelman commented 5 years ago

@martin31821 Your changes work, edge and group tiling now work again in Gnome 3.30. Thanks for fixing this and I look forward to seeing a PR!

emasab commented 5 years ago

Well done @martin31821 , good to see that I have all this help! I'll check the changeset and include the fix

martin31821 commented 5 years ago

@emasab Created a PR :+1:

martin31821 commented 5 years ago

I have just noticed a small problem. The window starts to resize before reaching the side (or the corner) of the screen. This is a bit annoing when you want just move a window without the tiling.

I changed this because I'm using multiple monitors frequently and it's annoying for me to have the resize starting within 2-5 pixels from the monitor edges, which leads to not resizing the window when moving it quickly. Maybe a config option for this would be nice.

jeremie2 commented 5 years ago

I have just noticed a small problem. The window starts to resize before reaching the side (or the corner) of the screen [...]

I changed this because I'm using multiple monitors frequently and it's annoying for me to have the resize starting within 2-5 pixels from the monitor edges [...]

OK, I see. I've seen you have set "EDGE_ZONE_WIDTH = 1" in your pull request. I've immediately tried it and it works perfectly. This extension makes the difference to me, can't understand why Gnome does not include quarter tiling by default.. even Windows got it.

Thank you very much martin31821

Cxarli commented 5 years ago

Can confirm. I got the same TypeError: realsubject is undefined error after upgrading gnome-shell-extensions from 3.28.1-1 to 3.30.0-1. The fix @martin31821 proposed, worked perfectly.