topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Tuesday March 19, 2024, 12:12 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Last post Author Topic: IDEA: drag window to edge automatically resizes it  (Read 730451 times)

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
IDEA: drag window to edge automatically resizes it
« on: May 28, 2006, 03:59 PM »
i'm about to describe something that has 'probably' been done already elsewhere - if so can someone please let me know what the program is called...

if not, then i think this is another autohotkey task - i'd have a go myself but i much prefer to dish out the DC credits to someone that can save me the headache.

anyway, this is my request:

i've a 24" widescreen monitor (which i seem to keep telling everyone) and i'd really like to make full use of it, well, as it's so wide i'd like to use it like a dual monitor layout sometimes.

i'd like to be able to drag a window to the left or right edge of the screen and after a short pause the window would resize itself to fit the right half or the left half of the monitor.

this could be extended so if i drag a window the the bottom edge it will resize to fit the bottom half OR some other resize.

this type of drag window auto resize could be extended further so that there would be specific areas along the left and right and bottom edges of my screen (NOTE HOW I SAY BOTTOM - that's just because i have the system taskbar and system tray at the top of my screen), these specific areas would act as the triggers to auto resize the window to preset window sizes and locations.

so, as an example, i'd drag my web browser to the left of the screen - when the mouse cursor reaches the edge of the screen i pause and hold the window title a bar a second or two then it auto resizes to fit just the left part of my monitor.

if i drag to the window and pause on LOWER left side of the screen then the window auto resizes to fit the lower left quarter - a similar thing would happen on the right hand side of course if i dragged it there.

the bottom and top edges of the screen could trigger several other window sizes and positions, say, drag to the top middle and the window centers and resizes to 1024x768 or whatever.

i think this idea could be extended further - these are just the things that occur to me straight away.

i know there are keyboard shortcuts for this sort of the thing that have been done before - which is great - i'd really like to have both features really: user definable keyboard shortcuts for the main auto resizes and mouse drag trigger borders too.

thanks for listening.

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #1 on: May 28, 2006, 05:25 PM »
You definitelly are looking for Acer GridVista.
Now, the question here is if it can be used by non-acer computers.
And if there's another alternative.
But i have that software, and it works just perfectlly. Unfortunatelly, my screen is too small to give it some real use.

Carol Haynes

  • Waffles for England (patent pending)
  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 8,066
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #2 on: May 28, 2006, 05:39 PM »
Nice find ... Just tried it on my MSI Based AMD computer (using WinXP Pro) and it seems to work great.

You can download it from this page - though you get a dire warning about BIOS upgrades - which of course this isn't ;)

Here are a few screen images to show you how it works ...

First it adds and icon to the system tray, where you can select the screen layout you want ...



Three icons are added to all windows' title bars during installation...



Unfortunately there is no way to reposition or diable these buttons which is a nuicance if you PS HotFolders installed as you can't see all of the HotFolders icon because the third GridVista button is drawn dynamically over it. You can see enough to use PS HotFolders but it is slightly annoying. The PS right click menu works fine (even if you right click on the GridVista icon over it!!) but requires a degree of accuracy for left click.

The left button allows you to place this window in a predetermined area of the screen by the grid layout you chose at the system tray:



You may also notice that you can make the window transparent from that button too (though there are no choices for levels of transparency - I'd guess it is about 50% transparent).

The button 1 options are also added to the window menu (right click on the title bar).

Once you have locked the window to a particular region moving the window about the screen locks it to the nearest grid region when you release it.

The centre button allows you to enable or disable the lock to grid feature.

The pin button gives a quick always on top feature for the window.

If you have placed the window in the grid then double clicking the title bar or hitting the maximize button returns the window to its original location even if you have moved it round the grid previously. Hitting the maximize button a second time actually maximizes the window to full screen.

Also if the grid lock is enabled when you drag a window the underlying grid is displayed on screen and you can simply drop the window into predetermined places.

« Last Edit: May 28, 2006, 06:35 PM by Carol Haynes »

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #3 on: May 29, 2006, 02:47 AM »
many thanks jgpaiva and Carol.

i'll download and play with it right now...

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,896
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #4 on: May 29, 2006, 02:58 AM »
standard reminder: this is what credits are made for :)

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #5 on: May 29, 2006, 03:06 AM »
i've had a quick play with it but it's not really what i'm after - picky aren't i.

i'd still very much like what i described above as it would be far more versatile and powerful - it would also work smoother and be less complicated in use.

i'll keep trying gridvista as it's almost there and maybe i'll get used to it - anyone wishing to try to fulfil my original request will be rewarded of course.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #6 on: May 29, 2006, 03:18 AM »
i think i prefer skrommel's 'winwarden' to gridvista - i know, i know, it hasn't got the 'drag' functions that gridvista has but i prefer the number of options it does provide.


jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #7 on: May 29, 2006, 03:53 AM »
i think i prefer skrommel's 'winwarden' to gridvista - i know, i know, it hasn't got the 'drag' functions that gridvista has but i prefer the number of options it does provide.
Yes, i also noticed that gridvista is quite incomplete, with a few more options, it might be just perfect.
I think the most important features it misses are the resizing of the grid and the adjustment of how many grids there can be.
I would do the coding snack myself, but i'm a bit scared, since my recent problems with ahk window moving / resizing (from dialogMove).
Still, if noone answers this request, i can give it a go.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #8 on: May 29, 2006, 05:14 AM »
:D i think this is the perfect project for you, jgpaiva.

with the dialogmove project you must be an expert on window moving.

there's also a util i have from years back that allowed resizing the grid (i'm trying to remember what it's called) but it didn't have the auto drag resize options i want so i never really used it. i'll try and find it.

anyway, i hope you take up the challenge, jgpaiva - cody has something nice for you after all...

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #9 on: May 29, 2006, 05:21 AM »
with the dialogmove project you must be an expert on window moving.
That's exactly my problem, do you remember what dialogMove does to some windows, that problem might appear again, but as they say in the movies, "in an unparallel dimension", since it can't be avoided (but in dialogmove, it can, because of the exceptions).

I think this is something more in line with skrommel's winwarden, but you're right, some of the code of dialogMove can be reused to this util.

skrommel

  • Fastest code in the west
  • Developer
  • Joined in 2005
  • ***
  • Posts: 933
    • View Profile
    • 1 Hour Software by skrommel
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #10 on: May 29, 2006, 07:18 PM »
:) Try this one!

ZoneSize - Define zones that autosize windows dropped on them.

Features:
- Hold a window over a zone for .5 sec to autosize it.
- Doubleclick the tray icon to center the active window.



You'll find the downloads and more info at 1 Hour Software by Skrommel.

It went from a ten-liner to an ugly big mess, so there's probably bugs in there.

Skrommel
« Last Edit: May 29, 2006, 07:30 PM by skrommel »

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #11 on: May 30, 2006, 01:13 AM »
that looks great, thank you very much skrommel.

will download and try now.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #12 on: May 30, 2006, 02:41 AM »
skrommel's 'zonesize' is a great improvement upon 'gridvista' - you can define you own zone with it.

BUT, it's still not what i was hoping for - sorry to be a pain.

i've included a screen grab to try and clarify what i meant.

the 'trigger zones' are at the edge of the screen - nothing happens unless the mouse cursor and a window title bar are within one of the 'trigger zones' (this would also mean that the left mouse button is being held down on the title bar - because it has just been dragged to the side of the screen).

the 'trigger zones' would only have to be 1 pixel wide down the edge of the screen and would hopefully be definable so that various 'trigger zones' could be set up around the edges of the screen.

this edge based 'trigger zone' method appears to be more of a powerful idea to me as you would only 'trigger' the auto size function to work when all the criteria of was met, i.e you wouldn't accidentally trigger an auto size window function unless you really wanted it - this is unlike the gridvista/zonesize methods that assume you want a window to auto resize as soon as it is dragged within a large zone area somewhere on your screen - which you most often will not want if you are simply moving windows around the place.

(the edge trigger zone method could of course be extended to 'trigger' off macros as already seen in other programs.)

would it be 'simple' to modify the 'zonesize' script?

i wouldn't know where to start but if either you, skrommel, or jgpaiva could do it i'd be very grateful.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #13 on: May 30, 2006, 03:28 AM »
to clarify things a bit further, here are the 'typical' zone layout that the windows would auto resize to after the 'trigger' has been activated...

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #14 on: May 30, 2006, 04:03 AM »
 ;D ;D
I was now going to reply saying i was going to do this, because i got how to do it. Looks like i came a bit too late ;)
Nudone: I got what you mean, but i think there's a better way to do it:

How about if you can define lots of squares in your workspace, and then, when a window is being grabbed (with the left mouse button), if you press the right mouse button, the window would grab to that area.
The advantage of this would be that you could have something like this:

Screenshot-06_05_30,10_01_43_thumb.png

Where you could have a bunch of windows on the left, just as if it was a taskbar.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #15 on: May 30, 2006, 04:28 AM »
i'm happy to go with your right click method, jgpaiva.

all i really wanted was a quick way of resizing a window to fit either on the left half or the right half of the screen without having to use keyboard shortcuts or several mouse clicks - the drag to screen edge seemed like a simple 'flowing' method of creating a trigger.

if you could create the zones and the 'right click' to trigger window resize/position script, without any annoying slow window refreshing that gridvista and zonesize appear to suffer from, then i think it will be a great job.

kimmchii

  • Honorary Member
  • Joined in 2005
  • **
  • Posts: 360
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #16 on: May 30, 2006, 05:50 AM »
i found SplitView, you might wanna give it a try.
If you find a good solution and become attached to it, the solution may become your next problem.
~Robert Anthony

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #17 on: May 30, 2006, 06:00 AM »
i found SplitView, you might wanna give it a try.
I haven't tried it, but it looks like a great find, kimmchii!

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #18 on: May 30, 2006, 06:37 AM »
I like this program! I hope I can make it work flawlessly, because i'd even use it myself!

Ok, here's GridMoveAlfa1!
Right now, it's more of a beta (or would it be alfa?), since i only want to have your opinion, nudone.
It works like this:

At the beggining of the file, there's something with this sintax:
Spoiler
NWindows=4

top1=0
Right1=250
Left1=0
Bottom1=250

top2=250
Right2=250
Left2=0
Bottom2=500

top3=500
Right3=250
Left3=0
Bottom3=750

Top4=0
Right4=1280
Left4=250
Bottom4=770


NWindows has the number of areas there are. the following blocks of 4 lines, each represents an area of the screen.
In this example, it's for a 1280*800 screen, with 4 areas, positioned like this:
Spoiler
***************
*  1  *                *
*****                *
*  2  *       4        *
*****                *
*  3  *                *
***************


This script monitors the mouse position. So, drag a window, until the mouse is in any of the areas, release the mouse, and click again. (with the left mouse button)

I say again: this is a BETA version, still has a few bugs, not related to the window moving, but with the detection of the mouse clicking and such.

I only have one question: would you consider having it working just the way it works now, but instead of a cecond click, having a 'space' press?
« Last Edit: May 30, 2006, 08:13 AM by jgpaiva »

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #19 on: May 30, 2006, 08:15 AM »
I really am loving this program!
I've made a small change, Now, to move the window, you have to drag it, then press space (at maximum, one second after you drag the window)

Here's the link: GridMove Alfa2 (the url in the earlier thread points to the alfa1).

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #20 on: May 30, 2006, 08:19 AM »
my initial thoughts on 'gridmove' are that it work very well - the 'click again' to resize the window is a clever idea and it is simple enough for it to be 'painless' to do.

i wouldn't really go for the 'hit space bar' to resize as was trying to stay away from using the keyboard completely - maybe i'm the only person like this but sometimes i really find moving my left arm a real chore just to press one key for something.

but, of course, it would be great to offer keyboard functions within the program that could be enabled or disabled by the user.

the only problem i see at the moment with the 'click again' to resize function is that an accidental 'click again' would be easy to do. i did it a couple of times whilst testing so maybe it would be nice to offer the user how they would like the 'trigger' to work, i.e. they could have a 'second left click' or a 'single right click' or a 'hit space bar' or whatever to initiate the auto resize process.

great work so far, jgpaiva - i think you are heading in the right direction with the 'click again' feature - or something equally unobtrusive.

more on the 'click again' feature:
i've just tried it a few more times and it appears to me that the problem with all the solutions that have been offered so far all suffer from the same problem, i.e ZONES.

because the trigger zones are so large it's easy to trigger them off even though you may only be moving a window to a different location on the screen without wanting it to auto resize. gridvista, zonesize and now gridmove have all resized a window when i didn't really want it to.

maybe the 'right click' method would help resolve this with gridmove but i'm wondering would things become confused if you were to move a window then right click to open the context menu and then the auto resize would be triggered by accident - all because the window falls within one of the large trigger zones.

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #21 on: May 30, 2006, 08:30 AM »
Ok... You gave me a good idea, that i think might be the perfect solution.
Drag the window, release it, then do right click. (note you have to release it before clicking)

I think this might be the best solution (i also am not much for the spacebar solution, because it needs the other hand).
Here's the link: GridMove alfa2
« Last Edit: May 30, 2006, 09:02 AM by jgpaiva »

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #22 on: May 30, 2006, 08:54 AM »
i don't seem to be able to download the new 'alfa2' version????

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #23 on: May 30, 2006, 09:02 AM »
Good thing you can't, I've changed it.
Now, it's drag + left click. It seems to be working fairly well, actually.
I've also limited this to the caption (actually, to the 25 topmost pixels of the window). So, the second click has to be done in that area.

GridMove Alfa2

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,119
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #24 on: May 30, 2006, 09:11 AM »
i like the way the latest version is going but there still is the problem of accidental clicks...

the scenario is like this: you move the window within a trigger zone, then you decide to move it a little bit but 'gridmove' thinks you want to auto resize the window (again).

can we have a more intelligent mechanism for detecting the 'trigger' click - maybe a longer duration that the left mouse button has to be held down or something like that without it moving at the same time.

i've also noticed a side effect where the window can be dragged even when the cursor is not over the title bar - this has been done in other programs several times before but maybe it would be nice to incorporate it into gridmove - only if it's a simple thing to do and it didn't create further problems - maybe it could work if both mouse buttons were held down at the same time?