Home | Blog | Software | Reviews and Features | Forum | Help | Donate | About us
topbanner_forum
  *

avatar image

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

Login with username, password and session length
  • December 07, 2016, 08:07:52 PM
  • Proudly celebrating 10 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 416105 times)

kimmchii

  • Honorary Member
  • Joined in 2005
  • **
  • Posts: 360
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #100 on: July 05, 2006, 02:47:42 AM »
i get this in default:

[GridSettings]
GridName=3Part
[InterfaceSettings]
LButtonDrag=1
MButtonDrag=1
EdgeDrag=1
[OtherSettings]
EdgeTime=1000
ShowGroupsFlag=1
WindowPercentage=25
http://img143.imageshack.us/img143/2844/clipboard014kx.jpg
IDEA: drag window to edge automatically resizes it


this new version really works, one small problem, no matter what i do i cant get it to split the screen in 50/50.
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 #101 on: July 05, 2006, 03:52:17 AM »
with the 'edge' grid loaded in - the trigger bit on the left side of the title bar seems to have expanded (is this intentional?). it's covers about a third of the titlebar.
I've just increased the trigger part to 25% of the title bar. But you can change that on the options (windowpercentage)

when using the non 'edge' grids there is a slight 'jerky' appearance to my windows when i drag them around.
I think you'll have to explain yourself better, as i can't understand what you mean. The position constantly asked for is the mouse's position.

BTW, gridmove, when using the edge method, doesn't like allsnap!

I can't test multimon right now, as i don't have multimon here. So, i'd like for people to get me some screenshots or descriptions of what's going wrong with those.

this new version really works, one small problem, no matter what i do i cant get it to split the screen in 50/50.
Oh, fantastic point, kimmchii, i forgot to make a template for a simple grid. Now working on it, should be up in a bit.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #102 on: July 05, 2006, 04:24:04 AM »
i'll try to expand on the 'bugs' i thought i had found above (i'm at work at the moment so i can't actually perform the actions again).

  • with the 'edge' grid loaded in - the trigger area on the titlebar wasn't just 25% of the title bar, instead it seems to have expanded to about 33% or more - this is why i noticed it. i had to put the mouse almost to the center of the titlebar to be able drag the window. maybe i needed to reload 'gridmove' back in - i noticed that if you change some of the options you have to reload gridmove for the options to become enabled
  • the 'jerky' effect whilst dragging a window is similar to what you sometimes get on screen when you've got loads of alpha transparent windows or you've got a terrible graphics card.

    you drag a window and instead of it being a smooth movement across the screen there is an ever so slight jerk/drag/pause effect on the window being moved. the pause in the movement happens for a split second and repeats throughout the movement of the dragging process. it is very, very slight. almost easy to miss, but there non the less.

hopefully that is a little easier to understand.

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #103 on: July 05, 2006, 04:26:11 AM »
GridMove V1.01:

  • 2 new grids: 2 part Horizontal and 2 part vertical. Can be activated by right clicking the tray icon and chosing those in the templates menu.
  • Changed things around a bit, to avoid having to consult so many times the position of the window.
  • Slowed down the refresh of the mouse, on the edge trigger method.

I still need more information about what's wrong on multiple screens.
If anyone feels like on of the templates should be changed to be a bit different, please say. Also, here's the grid i usually use (configured for 1280*800).

Links...
.exe Version
.ahk Version
« Last Edit: July 05, 2006, 04:35:13 AM by jgpaiva »

kimmchii

  • Honorary Member
  • Joined in 2005
  • **
  • Posts: 360
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #104 on: July 05, 2006, 05:52:38 AM »
from my test drive, V1.01 is perfect!!! well done jgpaiva.  :Thmbsup:

the ability to control with the middle click is brilliant.  :up: :up: :up:
If you find a good solution and become attached to it, the solution may become your next problem.
~Robert Anthony

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 36,411
    • 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 #105 on: July 05, 2006, 06:35:47 AM »
id really like to have invisible hotkey, like
so just Hotkey+1 moves to 1 location
without having to hit enter or see dialog.

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #106 on: July 05, 2006, 06:53:31 AM »
New version, only adition is about and help boxes.
See my coding snacks post for the download links.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #107 on: July 05, 2006, 06:56:58 AM »
great, will try v1.01, when i get home (if there isn't a newer version by then).

hotkeys would make a lot of sense - as discussed earlier, i'd like them to be turned on or off by the user or at least user defined.

would it be difficult to create a graphical grid editor? maybe as a separate program?

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #108 on: July 05, 2006, 07:03:58 AM »
Good point about the hotkeys. I forgot to make them user-definable. I'm not yet sure on how to do that mouser requested, though. Gotta put some thinking into it.

BTW, nudone, latest Version is already 1.02 :P

As for the graphical editor. It does make sense, but it's not yet at the top of the list. (i need to make the loaded grids be dynamical first and fix the multi-monitor support).

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #109 on: July 05, 2006, 08:27:53 AM »
New update, now it's ver. 1.021.

  • Esc cancels snapping window.
  • Improved about box.
  • Added "about" command to the command box.
  • The windowPercentage was deprecated, changed it to TitleSize and it isn't calculated as percentage of width but directly as # pixels.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #110 on: July 05, 2006, 12:31:32 PM »
is there quick way we could have the different grids loaded in - rather than right clicking the icon in the tray?

maybe, right click somewhere in title bar to select a 'grid list' menu.

i'm just thinking of how different grid layouts could be used 'on the fly' or a very complex grid could be made that would suit almost every requirement - perhaps such a grid could use a colour system to differentiate overlapping grid zones.

i've not thought a great deal so i know these are vague suggestions - it just seems clear to me that more than one grid is a good thing - but it has to be loaded in with the minimum of fuss to be worthwhile.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 36,411
    • 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 #111 on: July 05, 2006, 05:50:41 PM »
how about mousewheel scrolls through configurations when in zone drop mode?

actually thats not great since you are usually holding down left button..
how about letting right click scroll through layouts.. (and escape to cancel)?

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #112 on: July 05, 2006, 06:15:07 PM »
I don't think assigning the program more hotkeys (like right button + scroll wheel) is the solution.
Just thinking out loud here, but how about having the possibility of creating a grid element with the "change grid" functionality? it'd be a trigger that, when highlighted, would change to another grid.

It's more confortable to create, respects other apps (right mbtton + scroll wheel is used, for example, by opera), and comes in line with the idea of addining more functionalities to the grid :)

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 36,411
    • 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 #113 on: July 05, 2006, 06:21:33 PM »
hmm.. doesnt seem very intuitive to me..
i still like idea of right click to toggle grids.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #114 on: July 06, 2006, 01:24:03 AM »
no better suggestions for loading in grids on the fly at the moment but here's another idea...

how about having gridmove remember the 'standard' sizes of some program windows?

i don't use programs full screen unless they really warrant it, i.e. they fill the screen up with useful information rather than tons of white space.

so, things like my web browser tend to remain a non maximised size - to keep me happy, i have it at a particular size that makes the buttons and tabs fit nicely within it...

the thing is after i've used it with gridmove i've obviously changed the size of the window to what i'd normally use - i'd love it if i could quickly get back to my 'perfect' sized window by just doing a quick click or something???

i'm sure there are plenty of other programs that would benefit from a 'default' size that could be specified - a grid could be set up, of course, to match the sizes of these specific program window sizes but it would be more fun if there was just a quick way of getting things back to the 'default' dimensions.

again, i've not got any good ideas of how this would be implemented - maybe if there was a 'special' grid zone area trigger that changed the way it worked depending on what window was in focus. say, the trigger was at the top of the screen - if i had notepad open, i could move it to other grid zones then when i wanted it back to it's 'default' window size i could do this by dragging it to the top (center) of the screen - notepad would then change back to its default size. likewise, if i was using my web browser and i did the same action it would change to its particular window size.

and now for another suggestion...
jgpaiva has already realised the potential of having trigger zones activate and load in another grid - my original idea of the side triggers is still something i see more potential in (it's been used by other programs already, of course). the side trigger idea is really nothing more than having an invisible button at the side of the screen - this could be used to trigger events other than activating grid zones.

if jgpaiva doesn't want to implement such a feature i'm intending to modify the script so that i can 'side trigger' to run other programs (maybe) or, at the very least, performing common tasks - creating a new folder on the desktop or something like that (maybe that's more complicated than i imagine).

or, as an example, i have my taskbar at the top of the screen so the 'start' button is at the top left - i have the taskbar set to auto hide - so, it would be nice to set gridmove to realise when my mouse cursor is in the very top left corner and then activate the 'start menu' for me without me even clicking. yes, i am lazy in the extreme.
« Last Edit: July 07, 2006, 07:09:25 AM by nudone »

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #115 on: July 06, 2006, 01:48:43 AM »
just to add to the 'default' window size above - it would be nice if there was a simple way of setting the 'default' size for program, i.e. you set the size of the window and hit a hotkey or select a command from the tray menu and the window size is recorded - and its position too.

also, how about a 'temporary' grid area - a grid that you set 'on the fly'. something like, you position a window and scale it to how you want - then hit a shortcut (or select from the command from the menu) and the size and the position of the window is stored and becomes part of the current grid layout - taken a bit further this could be a nice way of 'drawing' out grids that would be configured and saved by the user. so...

instead of having a way of drawing new grid layouts, it's all done by simply positioning windows on screen in the grid formation you want - you then make each window active in turn and hit the hot key or menu command to set it as grid zone 1 - activate the next window and set that to grid zone 2, etc, etc.
« Last Edit: July 06, 2006, 02:03:33 AM by nudone »

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 36,411
    • 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 #116 on: July 06, 2006, 02:55:59 AM »
maybe the simplest thing would be for gridmove to try to remember the PREVIOUS size of an app window before it is sized into a zone, and then have some way to tell gridmove to RESTORE an from from its zone back to where it was and the size it was before.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #117 on: July 06, 2006, 03:41:23 AM »
good idea.

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #118 on: July 06, 2006, 04:08:24 AM »
Just thinking out loud here, since i am not supposed to do any more work on gridmove until smewhere next week.

I'm thinking that there's an easy solution to the problem. Something like this:

Using the same method of the "Maximize horizontally/vertically" function, some grids could be "special". It's width and height could be specified in a per-app basis. The application and the width and height of the grid could be specified on the .ini file. Since most of the code comes from gridmove, this shouldn't be much of a problem.
As for having other stuff there, nudone, it isn't really that difficult. Using the exact same method descibed above, i could create another "special" grid that would execute one program when hightlighted. So, if it launched ahk scripts, anything is possible. ;) (i'm not sure about the click start menu function, though, it might take too much time to launch the script)

@Mouser: you are right, that MUST be implemented, a stupid thing has happened to me a bunch of times already: Moving those not-resizeable windows (like gridmove's about box) to the grid, and then not being able to get them to their original size. DialogMove already has code that keeps track of open windows an their size (the window buffer), so this shouldn't be much of a problem.

The only problem is how to make it return to the original size.
My suggestion is: if the mouse isn't highlighting any of the grids when the window is dropped, make it resize back to it's original state.
Another way would be to have yet another special grid element, specified with something like:

Spoiler
1triggerleft  = 0
1triggeright = 30
1triggertop  = 0
1triggerbottom = 30
1gridtop = restore
1gridleft = restore
1gridright = restore
1gridbottom = restore

which wouldn't be a problem either (notice that, to make the size of the grid file smaller, 1gridleft 1gridright 1gridright could be ommited altogether, since they will never be read.)

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 36,411
    • 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 #119 on: July 06, 2006, 06:11:19 AM »
let's call "drop zone mode" the mode that goes into when the gray boxes and numbers appear.
here is what i suggest:

when you are in that mode:
pressing a # key quickly snaps to that grid location
pressing right click advances to next grid template
pressing escape cancels drop zone mode
pressing R restores the window to its last saved postition before it was last dropped.
(maybe have a green border with an R in it showing the size and position of that Restore state).


jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #120 on: July 06, 2006, 06:33:00 AM »
Agreed. This can be done. I can't work on it right now, but i'm sure it won't be a problem. (thanks for inventing a name, that's very important as i have dificulty with coming up with that kind of stuff.  :Thmbsup:)
I'm also thinking that the grid that restores, instead of having a number, could have "restore" inside. Same thing applies to the "special" grid that would be dynamic, depending on the app. (BTW, could you come up with a name for that one? :P )

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #121 on: July 09, 2006, 01:05:19 PM »
i have another request - though this one might be straying away from what 'gridmove' is for...

could we have a trigger zone for making a window 'stay on top', i.e. move it to the zone to make it stay on top - move back onto the zone to make it no longer stay on top.

i know there are plenty of little utils that will do this sort of thing already but i've always ended up removing the ones i've tried - i don't like the idea of adding extra buttons to title bars or selecting from menus. instead, i think a 'drop/trigger' zone would be a nice way of implementing a 'stay on top' feature. preferably a zone at the top of the screen. hopefully this can just be done when you implement the ability to run an .ahk script instead of moving/resizing a window.

nudone

  • Cody's Creator
  • Columnist
  • Joined in 2005
  • ***
  • Posts: 4,117
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #122 on: July 12, 2006, 02:47:11 AM »
oh dear, found a slight bug with the 'edge trigger' method i've been favouring - i have the depressing feeling that it's something that can't be rectified either.

as i've mentioned before, i have the taskbar at the top of the screen and set to autohide. windows has a built in capability that allows you to drag files onto the taskbar - drag onto a 'program button' on the taskbar and pause and the associated program will come into focus - drag onto a 'blank' are of the taskbar and all running program minimise to allow the desktop to be seen.

unfortunately this inbuilt windows capability stops working when 'gridmove' is working in 'edge trigger' mode. disabling the 'edge trigger' allows things to work normally.

boo hoo.

looks like i'll have to forget about the 'edge trigger' method - unless there's a way to solve the problem, jgpaiva.

maybe there could be a toggle key to turn the 'edge trigger' off - can't say that's a brilliant idea but i'm guessing that trying to make the 'edge trigger' method work with the windows taskbar in the way that i've described might be too much of a headache for you.

i think it's time for me to get to like the 'titlebar' drag method.

thanks again, jgpaiva - fingers crossed that you might have an idea about it.

jgpaiva

  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • View Profile
    • Donate to Member
Re: IDEA: drag window to edge automatically resizes it
« Reply #123 on: July 12, 2006, 03:55:28 AM »
Nudone:
When i read your posts i thought "well... i don't think i have solutoin for that".
But when i tested it, i couldn't understand what you mean. The edge trigger method only works when the title bar of a window is dragged, which means that when dragging a file from within a window to the edge og the screen, it shouldn't be activated. Is this happening to you?

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 36,411
    • 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 #124 on: July 12, 2006, 04:55:35 AM »
i use titlebar method with gridmove currently and not edge dragging since it seems more stable..
i do think that a hotkey based approach might be fasted though.. select a window, hit hotkey - zone labels show up on screen, hit # key associated with the zone to move it to and it's done.  wouldn't this be the fastest way to use it?