robbyhill15 / shiftit

Automatically exported from code.google.com/p/shiftit
0 stars 0 forks source link

Incorrect placement 2nd display w/ any application #26

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1.Macbook Pro 15" w/ 20" External display
2.Any application (Ex. Chrome)
3.Primary display set as Macbook Pro

What is the expected output? What do you see instead?
Float right to cover right half of display on External Display. Instead, it
sizes correctly but floats low (see attached image).

What version of the product are you using?
1.2

On what operating system( 10.5
or 10.6)?
10.6.3

Are you using a dual monitor? Yes

Attach screenshots if it is a problem with the window position and size.

Please attach logs if you notice any crashes.

Please provide any additional information below.

Original issue reported on code.google.com by loveoli...@gmail.com on 13 May 2010 at 12:15

Attachments:

GoogleCodeExporter commented 8 years ago
Update:
It resizes the window to the correct width but not height. It resizes it to the
height of the smaller notebook display.

Original comment by loveoli...@gmail.com on 13 May 2010 at 12:19

GoogleCodeExporter commented 8 years ago
I can confirm this, I reproduced it by using the Monitor configuration seen in
"YourMonitorArrangement.png" - I assume this is how your monitors are arranged.
The bug doesn't occur to me when the smaller display is aligned with the Top of 
the
right display also starting at -1280,0.
It seems the y Offset is miscalculated.
I am having a similar Problem with my usual configuration seen in
"MyMonitorArrangement.png" the wrong y window Offset problem is also given like 
seen
in Picture "DualScreen_Wrong Y Offset.png"

I am still trying to figure it out the problem in the code

Original comment by masc...@gmail.com on 14 May 2010 at 5:58

Attachments:

GoogleCodeExporter commented 8 years ago
Okay so I think I fixed it.
There are two small bugs in WindowSizer.m.

Line 76 :
> _screenVisiblePosition = tempScreen.visibleFrame.origin;
with tempScreen beeing an NSScreen Object.

But NSScreen coordinates start at lower left, while positioning with 
AXUIElement uses
CoreGraphic coorinates (upper right). I fixed it by getting the GC coordinates 
for
the monitor (see attached Patch)

furthermore it was necessary to add the now correctly calculated Y offset to 
all the
positioning functions like :

-       _windowPosition.y = ((_screenVisiblePosition.x ==0)? _menuBarHeight:0);
+       _windowPosition.y = _screenVisiblePosition.y + ((_screenVisiblePosition.x 
==0)?
_menuBarHeight:0);

I tested it with all possible combinations I could with my two monitors, and it 
seems
to work correctly now, though I would appreciate your feedback.

Regards Marco

Original comment by masc...@gmail.com on 17 May 2010 at 10:02

GoogleCodeExporter commented 8 years ago
The patch works perfectly for me. Note to others that this also addresses Issue 
23.

Thanks Marco! I'm using this patched version for now until a new release. :)

Original comment by dchaws on 17 May 2010 at 6:33

GoogleCodeExporter commented 8 years ago
That's awesome dchaws,

unfortunatly my patch intruduces some misplacing with only one monitor attached 
...
The y offset is now calculated wrongly in single monitor configurations by the 
size
of the dock.

I only tested dual monitor and not single monitor :-/ me culpa

Yet I already have a fix for that and will upload the new (combined) patch later
today after I tested 1 and 2 Monitor configurations ;-)

Sorry Marco

Original comment by masc...@gmail.com on 18 May 2010 at 4:13

GoogleCodeExporter commented 8 years ago
Okay, attached the new "MultiMonitorOffset.patch" which hopefully works 
correctly
with 1 or 2 or more monitors attached.

I would be glad to receive feedback.

Regards Marco

Original comment by masc...@gmail.com on 18 May 2010 at 8:55

Attachments:

GoogleCodeExporter commented 8 years ago
I did notice a slight misplacement before.

The new patch fixes this problem and everything seems to be working great.

Thanks for the updated patch Marco.

Original comment by dchaws on 18 May 2010 at 1:34

GoogleCodeExporter commented 8 years ago
Great, if you are interested in this you are probably also interested in my new 
patch
enabling "Shifting between Monitors".
See Issue 32

If that patch is reported to work well, I intend to merge it with the one I 
provided here

Original comment by masc...@gmail.com on 2 Jun 2010 at 10:45

GoogleCodeExporter commented 8 years ago
Path question: Can I apply the patch here for issue 26, then issue 32 in that 
order?

Original comment by dchaws on 3 Jun 2010 at 2:13

GoogleCodeExporter commented 8 years ago
Well I tried it the other way - issue 32 Patch and then Issue 26 Patch
this works.

Try your way with "patch --dry-run -p0 < XXXX.patch" this will report if it is 
able
to find and replace all occurences without actually patching it, if it goes 
well do
it without dry run.

Or apply the complete patch I attach to vanilla r38
(Complete Patch has MultiMonitor Offset, reOpen, Monitor shifting and changed 
menubar
Icon)

Regards Marco

Original comment by masc...@gmail.com on 3 Jun 2010 at 5:42

Attachments:

GoogleCodeExporter commented 8 years ago
Hey, so I'm having problems with multi-monitors (one on top of the other).

These patches are pretty old, are they likely to be rolled into a new release 
soon?

Original comment by matt...@foursquare.com on 9 Jun 2011 at 1:37

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Hi,

I'm the new maintainer of ShiftIt. I don't know if you have noticed, but the 
development has moved to https://github.com/fikovnik/ShiftIt - please give it a 
try and I believe that these issues have been fixed. If you find some other, 
please submit an issue directly at github.

Filip

Original comment by krikava on 10 Jun 2011 at 8:57