Comments (12)
I was about to open a new issue regarding exactly this feature.
AltSnap cannot interact much with FancyZones, because FancyZones is not designed for it.
Is it not possible for AltSnap to trick Windows into thinking a window is being dragged by the title bar when it is in fact being dragged by AltSnap?
I would prefer to use FancyZones for window layouts. Shift would also need to be passed through / not handled by AltSnap when Shiftkeys
is set to nothing, and it might be good if Windows is only tricked into thinking a window is being dragged by its title bar whilst Shift is being held (to minimise unforeseen bugs).
My goal is this:
Aero=0
Shiftkeys=
Then hold WinKey and click and drag a window (from any position on its interface), hold Shift which would activate FancyZone's 'aero' grid, and then release the click to snap to it.
Is this possible @RamonUnch? It wouldn't need any direct interaction with FancyZones.
Thanks.
from altsnap.
it is not planned indeed because you can enable the snap layout preview for AltSnap, so I do not intend to further investigate interacting with FancyZones.
from altsnap.
AltSnap cannot interact much with FancyZones, because FancyZones is not designed for it.
However it handles its own zone system, you can check the wiki for more details.
You can perfectly setup AltSnap to drag to zones that you can define yourself with Test windows, you can even have several snap layouts and switch between them using the tray icon.
If you disable the Toggle Maximize state with Right click while moving, the Snapping state will be toggeled instead.
To finely configure you will need to have a look intto the [Zones]
section of the .ini file (Midle click the tray icon or select the Open .ini file in the tray menu).
I think FancyZones is redundant and can be disabled if you use AltSnap's zones.
from altsnap.
Thanks! The big benefit of FancyZones is the nice overlay UI, and in general feels more polished when moving windows to different zones. But their activation method is severely lacking in comparison to AltSnap.
from altsnap.
So in case it is non trivial for you (or someone else reading), for your use case, I would suggest to:
- Check the Snap to layout with Shift (configure with tray menu) option in the General tab.
- Go to Advanced tab and disable the Toggle Maximize state with resize button while moving
- Configure your snap layout, for this open a test window from the tray menu, then open as many test windows as you need with
Ctrl+N
from a test window, set them as you please and then hit the Save Test windows as snap layout option.
You can setup like this up to 10 snap layouts (4 by default, must edit ini file for more).
One everything is setup, you can Move with middle click and then hit the right click while moving to toggle zone snapping mode.
Also Shift will enable snapping mode so it is initially designed for Alt+Shift+drag.
Bonus: You can set UseZones=9 to have snapping to zones be the default when moving with AltSnap, you can always toggle with right-click or use Shift to temporarly disable zones snapping.
Thanks! The big benefit of FancyZones is the nice overlay UI, and in general feels more polished when moving windows to different zones. But their activation method is severely lacking in comparison to AltSnap.
I do agree that I will have to work on a snapping visualization at some point, snapping preview has been in my todo list for a while, but I end up always end up working on other things eventually.
from altsnap.
Thank you so much for the detailed info, this is super helpful!
from altsnap.
I have a suggestion to trigger the fancyzone overlay.
While Alt-moving a window, user press a defined trigger in AltSnap. (in my case, that would be click mouse 4 while alt-leftclickdragging)
Make cursor invisible
Optional, display zone overlay
Move cursor to title bar area
Display and move fake cursor, where the cursor used to be
Send FancyZone zone trigger, this can be holding down the shift key (default trigger), or pressing a non-primary mouse button (fancyzone non-default option)
When user release Alt-Snap defined trigger, release fancyzone trigger (release left mouse button then release shift)
Move real cursor to previous window-relative position
Make cursor visible again
from altsnap.
I thought aboout generating click events, but AltSnap is already generating enough junk key events that aready create a huge mess that is barely workable, adding even more would make it a lot more suceptible to bugs. Plus a lot of programs do not have workable titlebars outside of supetr thiny regions which would make it an option with a huge blacklist.
I will eventually display a snap layout preview like FancyZones does, and make FancyZone irrelevant to an AltSnap user (which it is already for me). There are no reasons to have two windows managers just for some minor extra features and it is much simpler to improve AltSnap to make FancyZone obsolete rather than to try crazy hacks to make them work together slightly better.
from altsnap.
I rather use AltSnap than FancyZone.
The MS powertoys are great but I rather have something without microsoft's name on it.
Also I don't like that all these utilities are bundled together, it feels like a setup for a "take it or leave it" deal.
We know what kind of company microsoft is !
Here is a a template of what the overlay does, it's pretty simple.
Draw translucent bordered rectangles on each zone, zone identifier making in the middle, highlight the currently selected zone with a different colour.
FancyZones is leaving many features on the table too. Their github issues is a great source of suggestions too.
Dynamic / procedurally generated zones on the fly
Save and restore app position this is also covered by winredock
More customizable zone activation logic (currently it's just shift or optionally any primary mouse button)
from altsnap.
See #511, Also it is better to create new Issues if you want have a specific feature. re-using this issue thread is not ideal for organisation.
from altsnap.
@RamonUnch Is it now possible to trigger FancyZones layouts while dragging in v1.63? Marking the issue as Completed rather than Not Planned seems to suggest this. I have not yet downloaded it.
from altsnap.
Once the user figures how the "test window" can be used to create the layouts. It's a simple matter of just spawn enough windows, snap them all into the existing fancyzone layouts and then save as an altsnap layout.
from altsnap.
Related Issues (20)
- AltSnap can make some windows (Firefox) pulsate after snapped HOT 3
- AltSnap and office applications: Black square boxes with letters appears flickering in toolbar while resizing. HOT 2
- Windows always snap, no matter AltSnap settings.
- Feature Request : Autoborderless zone-snapped windows (minus blacklist) ? HOT 1
- Resize windows from center - like osx [Feat] HOT 5
- Cant seem to clear shortcut keys - keyboard tab [v1.63] HOT 8
- Feature request : Somehow be able choose overlapping zones ? HOT 8
- Feature request : reload config explicitly option in systray context menu HOT 2
- [bug?] Snapping after Alt-Tab doesn't work. HOT 3
- Fix minimize action HOT 1
- [question] how to bring window to front after Alt-Click-MouseMove? HOT 2
- Intermittently stops interacting with windows HOT 3
- Move to left/right/top/bottom zoone limitation HOT 2
- Compatibility with Komorebi HOT 4
- Add UIAccess flag to allow managing admin windows without running as admin HOT 10
- Chocolatey packaget not updating HOT 10
- PiercingClick doesn't work on windows11? HOT 5
- Cursor can't left-click until a right-click is issued HOT 22
- Centering a window is misaligned
- A separate blacklist for showing Window lists/Changing Windows
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from altsnap.