Dual screen I: ToolTips and Quick Search dialog
Moderators: Hacker, petermad, Stefan2, white
Dual screen I: ToolTips and Quick Search dialog
Some tests concerning window positioning on dual screen.
My configurations are:
- WinXPproSP2, TC7B1
- nVidia Desktop manager was disabled during test.
- Primary monitor 1280*768, 16”, 100dpi (placed at the right side).
- Secondary monitor 1600*1200, 20”, 100dpi (placed at the left side).
- The monitors are top aligned.
- All screenshots are resampled to 1440*600 and saved as GIF.
The desktop background is colored in unique green.
The small black rectangle at the right bottom is off screen area.
You can download the complete set of screenshots at once:
http://holgerk.drivehq.com//TC//TC7B1_DualScreenShots.zip (about 1.8M(i)Byte)
Button Bar ToolTip
OK: In no case the ToolTip is cut by the boundaries of the physical screen, always appears on the same screen where the button (respective mouse cursor) is visible,
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_Button1_ok.gif
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_Button2_ok.gif
(Maybe this is based on the fact that this ToolTip is centered below the mouse, see below…)
Drive Button ToolTip
Minor Bugs: If the button is near the center border between the monitors, the corresponding ToolTip rectangle exceeds the monitor border:
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_drive_bug.gif
The font used for this ToolTip (standard system?) differs to the other ToolTips font (TC’s dialog font).
The placement isn’t optimal: parts of the ToolTip are covered by the mouse cursor.
Folder Tab ToolTip
Minor bug: In contrary to the button bar ToolTips, these tool tips are left aligned to the mouse cursor.
If the center of the unclipped ToolTip rectangle is on the same screen as the mouse cursor, the position is always OK:
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_Tab1_ok.gif
The following picture shows the same Folder Tab ToolTip as above, but now the folder tab is near the center of the 2 monitors:
http://holgerk.drivehq.com//TC//TC7B1_Tooltip_Tab2_bug.gif
Win32-style-tips with file comments
Minor bug: The same as for “Folder Tabs”.
As long as the mouse hover the name column there are no problems:
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style1_ok.gif
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style3_ok.gif
Now the mouse is near the center of the 2 screens (hover the attr. column):
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style2_bug.gif
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style4_bug.gif
Again the center of the unclipped rectangle is on the right/primary screen, leading to wrong monitor detection.
As these ToolTips are always left aligned to the mouse cursor position, it would be better to detect the screen where the mouse is placed at the moment, and use this screen limits for clipping.
Quick search dialog
OK: Always placed at correct position (bottom of TC window). If TC window is moved down (status line is off screen) the dialog is clipped to the active screen.
Only one minor bug, when TC’s right panel is smaller than the width of the quick search dialog, and the TC window is placed near the right monitor border:
http://holgerk.drivehq.com//TC//TC7B1_QuickSearch_bug.gif
The quick search dialog isn’t resized or moved to the left, so the right part of the dialog is visible on the right monitor. The same effect is provable with single monitor (and also with 6.55).
Kind regards
Holger
My configurations are:
- WinXPproSP2, TC7B1
- nVidia Desktop manager was disabled during test.
- Primary monitor 1280*768, 16”, 100dpi (placed at the right side).
- Secondary monitor 1600*1200, 20”, 100dpi (placed at the left side).
- The monitors are top aligned.
- All screenshots are resampled to 1440*600 and saved as GIF.
The desktop background is colored in unique green.
The small black rectangle at the right bottom is off screen area.
You can download the complete set of screenshots at once:
http://holgerk.drivehq.com//TC//TC7B1_DualScreenShots.zip (about 1.8M(i)Byte)
Button Bar ToolTip
OK: In no case the ToolTip is cut by the boundaries of the physical screen, always appears on the same screen where the button (respective mouse cursor) is visible,
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_Button1_ok.gif
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_Button2_ok.gif
(Maybe this is based on the fact that this ToolTip is centered below the mouse, see below…)
Drive Button ToolTip
Minor Bugs: If the button is near the center border between the monitors, the corresponding ToolTip rectangle exceeds the monitor border:
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_drive_bug.gif
The font used for this ToolTip (standard system?) differs to the other ToolTips font (TC’s dialog font).
The placement isn’t optimal: parts of the ToolTip are covered by the mouse cursor.
Folder Tab ToolTip
Minor bug: In contrary to the button bar ToolTips, these tool tips are left aligned to the mouse cursor.
If the center of the unclipped ToolTip rectangle is on the same screen as the mouse cursor, the position is always OK:
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_Tab1_ok.gif
The following picture shows the same Folder Tab ToolTip as above, but now the folder tab is near the center of the 2 monitors:
http://holgerk.drivehq.com//TC//TC7B1_Tooltip_Tab2_bug.gif
Win32-style-tips with file comments
Minor bug: The same as for “Folder Tabs”.
As long as the mouse hover the name column there are no problems:
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style1_ok.gif
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style3_ok.gif
Now the mouse is near the center of the 2 screens (hover the attr. column):
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style2_bug.gif
http://holgerk.drivehq.com//TC//TC7B1_ToolTip_w32style4_bug.gif
Again the center of the unclipped rectangle is on the right/primary screen, leading to wrong monitor detection.
As these ToolTips are always left aligned to the mouse cursor position, it would be better to detect the screen where the mouse is placed at the moment, and use this screen limits for clipping.
Quick search dialog
OK: Always placed at correct position (bottom of TC window). If TC window is moved down (status line is off screen) the dialog is clipped to the active screen.
Only one minor bug, when TC’s right panel is smaller than the width of the quick search dialog, and the TC window is placed near the right monitor border:
http://holgerk.drivehq.com//TC//TC7B1_QuickSearch_bug.gif
The quick search dialog isn’t resized or moved to the left, so the right part of the dialog is visible on the right monitor. The same effect is provable with single monitor (and also with 6.55).
Kind regards
Holger
Re: Dual screen I: ToolTips and Quick Search dialog
well, not with my configuration...HolgerK wrote: Quick search dialog
OK: Always placed at correct position (bottom of TC window). If TC window is moved down (status line is off screen) the dialog is clipped to the active screen.
Kind regards
Holger
If the secondary Screen has a smaller resolution (in my case 1280 for the primary and 1024 for the secondary and the third), or if the lower border of the secondary screen is "placed" higher then the border of the primary, the quick search dialog is always shown at the "highest" border position.
I'll make a screenshot and post it as soon as i am back home again...
Re: Dual screen I: ToolTips and Quick Search dialog
This is true for TC6.55, but it should be (and here it is!) fixed in TC7:TealC wrote:.. If the secondary Screen has a smaller resolution (in my case 1280 for the primary and 1024 for the secondary and the third), or if the lower border of the secondary screen is "placed" higher then the border of the primary, the quick search dialog is always shown at the "highest" border position ...
Btw.: Do you also use a nVidia graphic card(s)?History.txt wrote:20.10.06 Added: Restrict quick search window, tooltips and overwrite dialog to current screen also when using multiple monitors
Maybe it's a good idea if someone can test this with Matrox or ATI graphic cards.
Kind regards
Holger
Re: Dual screen I: ToolTips and Quick Search dialog
IIRC i didn't have this in 6.55, but i have it in 7b1. But i'm not sure anymore, i will test it at home. I have a ATI graphics card (X800)HolgerK wrote:[
Btw.: Do you also use a nVidia graphic card(s)?
Maybe it's a good idea if someone can test this with Matrox or ATI graphic cards.
Kind regards
Holger
- ghisler(Author)
- Site Admin
- Posts: 50386
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
About the tooltips: Here I'm using
Monitor:=MonitorFromRect(windowrect,MONITOR_DEFAULTTONEAREST);
with windowrect the rectangle of the tooltip window. This means that the tip is moved completely to the monitor on which most of its window would be. How else should I solve that?
Monitor:=MonitorFromRect(windowrect,MONITOR_DEFAULTTONEAREST);
with windowrect the rectangle of the tooltip window. This means that the tip is moved completely to the monitor on which most of its window would be. How else should I solve that?
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
This is the best method for dialogs and the button bar tool tip.ghisler(Author) wrote:About the tooltips: Here I'm using
Monitor:=MonitorFromRect(windowrect,MONITOR_DEFAULTTONEAREST);
with windowrect the rectangle of the tooltip window. This means that the tip is moved completely to the monitor on which most of its window would be. How else should I solve that?
But not for tool tips which are left aligned to the mouse cursor position.
In this case the 100% solution is to use a small rectangle(size 1,1) round the mouse cursor position for monitor detection.
A 99% solution is to use a small rectangle around the upper left corner of the tool tips rectangle instead.
Kind regards
Holger
- ghisler(Author)
- Site Admin
- Posts: 50386
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Re: Dual screen I: ToolTips and Quick Search dialog
hmm, strange... the right tab is ok, and works like it should:TealC wrote: IIRC i didn't have this in 6.55, but i have it in 7b1. But i'm not sure anymore, i will test it at home. I have a ATI graphics card (X800)
http://i146.photobucket.com/albums/r274/bugmenot9988/ok.jpg
however, the left tab doesn't
http://i146.photobucket.com/albums/r274/bugmenot9988/bug.jpg
Graphics cards are radeon x800 (monitor 1&2) and radeon 7000 (monitor 3). Both with ati catalyst version 8.252.0.0 (May 3rd, 2006)
tc 6.55 works fine.
Re: Dual screen I: ToolTips and Quick Search dialog
2TealC
That's really strange.
Can you please download this small application: http://holgerk.drivehq.com//TC//MonitorInfo.zip
Nothing special, but maybe this can help Christian to find the bug.
Every time you press "Get monitor info", this simple application gets the own dialog position, detects the nearest monitor and prints some info in the small text box (and copies this info to the clipboard).
The output is formatted like this:
Can you please move this dialog to different screen positions (espacially the left and right bottom border of your primary screen and the center of the three screens) and post the results here.
I will post the results from the nVidia dual screen tomorrow.
Kind regards
Holger
That's really strange.
Can you please download this small application: http://holgerk.drivehq.com//TC//MonitorInfo.zip
Nothing special, but maybe this can help Christian to find the bug.
Every time you press "Get monitor info", this simple application gets the own dialog position, detects the nearest monitor and prints some info in the small text box (and copies this info to the clipboard).
Code: Select all
CString str;
HMONITOR hMonitor;
MONITORINFO mi;
CRect rect;
GetWindowRect( rect );
hMonitor = MonitorFromRect( rect, MONITOR_DEFAULTTONEAREST );
mi.cbSize = sizeof( mi );
GetMonitorInfo( hMonitor, &mi );
m_Rich.SetSel( 0, -1 );
str.Format( "WindowRect is:\t X:%4d Y:%4d W:%4d H:%4d\n"
, rect.left, rect.top, rect.Width(), rect.Height()
);
m_Rich.ReplaceSel( str );
CRect rectM( mi.rcMonitor );
str.Format( "MonitorRect is:\t X:%4d Y:%4d W:%4d H:%4d\n"
, rectM.left, rectM.top, rectM.Width(), rectM.Height()
);
m_Rich.ReplaceSel( str );
CRect rectW( mi.rcWork );
str.Format("WorkAreaRect is:\t X:%4d Y:%4d W:%4d H:%4d\n"
, rectW.left, rectW.top, rectW.Width(), rectW.Height()
);
m_Rich.ReplaceSel( str );
m_Rich.SetSel( 0,-1 );
m_Rich.Copy();
Code: Select all
WindowRect is: X: 572 Y: 568 W: 486 H: 187
MonitorRect is: X: 0 Y: 0 W:1152 H: 864
WorkAreaRect is: X: 0 Y: 0 W:1152 H: 816
I will post the results from the nVidia dual screen tomorrow.
Kind regards
Holger
Re: Dual screen I: ToolTips and Quick Search dialog
bottom left, window fully visibleHolgerK wrote:2TealC
Can you please move this dialog to different screen positions (espacially the left and right bottom border of your primary screen and the center of the three screens) and post the results here.
I will post the results from the nVidia dual screen tomorrow.
Kind regards
Holger
Code: Select all
WindowRect is: X: 0 Y: 809 W: 486 H: 188
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 997
Code: Select all
WindowRect is: X: 0 Y: 974 W: 486 H: 188
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 997
Code: Select all
WindowRect is: X: 795 Y: 811 W: 486 H: 188
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 997
Code: Select all
WindowRect is: X: 797 Y: 973 W: 486 H: 188
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 997

Code: Select all
WindowRect is: X: 383 Y: 409 W: 486 H: 188
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 997
but as stated, i have no problems in 6.55, so i guess something must have changed there between 6.55 an 7b1...
Re: Dual screen I: ToolTips and Quick Search dialog
At least it is a proof that monitor detection for the primary screen is correct.TealC wrote:hope that helps...
Can you please post additional infos when the dialog is placed centered on the left or right screen?
But I had, because my primary screen is smaller than the secondary, and i guess this will also happen with yours configuration if you only declare the left or right screen as primary.TealC wrote:... but as stated, i have no problems in 6.55, so i guess something must have changed there between 6.55 an 7b1...
Thanks and kind regards
Holger
Re: Dual screen I: ToolTips and Quick Search dialog
left screen:HolgerK wrote:At least it is a proof that monitor detection for the primary screen is correct.TealC wrote:hope that helps...
Can you please post additional infos when the dialog is placed centered on the left or right screen?
Code: Select all
WindowRect is: X:-667 Y: 407 W: 486 H: 188
MonitorRect is: X:-1024 Y: 136 W:1024 H: 768
WorkAreaRect is: X:-790 Y: 136 W: 790 H: 741
Code: Select all
WindowRect is: X:1608 Y: 418 W: 486 H: 188
MonitorRect is: X:1280 Y: 136 W:1024 H: 768
WorkAreaRect is: X:1280 Y: 136 W:1024 H: 741
2TealC
Thanks again.
OK: Monitor rectangle is always detected as expected.
OK: For the primary screen the work areas height is decreased by the Explorer task bars height (27 pixel).
OK: The second and third screens work area height is decreased by 27 Pixel (im not sure, but it looks like an empty explorer tool bar that's placed at the bottom of these two screens).
???: The width of the left (third) screens work area is decreased by 234 pixel.
Was there a tool bar (auto hide disabled, always on top enabled) placed at the left border, while running the test?
The results from my office computer are the following:
All as expected here:
Task bar (double height) at the bottom of the primary screen reduces the primary screen work area by 70 pixel.
The primary screens upper left corner is always 0,0 and the secondary screens coordinates are corresponding to the placement.
It seems that nVidia, ATI and M$ delivers reliable results for this function.
So I think the moved right quick search is a small bug in TC7B1?
http://i146.photobucket.com/albums/r274/bugmenot9988/bug.jpg
BTW: the lower position of this dialog is exact the lower border the right (second screen) work area.
Kind regards
Holger
Thanks again.
OK: Monitor rectangle is always detected as expected.
OK: For the primary screen the work areas height is decreased by the Explorer task bars height (27 pixel).
OK: The second and third screens work area height is decreased by 27 Pixel (im not sure, but it looks like an empty explorer tool bar that's placed at the bottom of these two screens).
???: The width of the left (third) screens work area is decreased by 234 pixel.
Was there a tool bar (auto hide disabled, always on top enabled) placed at the left border, while running the test?
The results from my office computer are the following:
Code: Select all
centered on primary screen:
WindowRect is: X: 397 Y: 384 W: 486 H: 187
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 954
centered on secondary screen:
WindowRect is: X:-1125 Y: 421 W: 486 H: 187
MonitorRect is: X:-1600 Y: 0 W:1600 H:1200
WorkAreaRect is: X:-1600 Y: 0 W:1600 H:1200
bottom left: secondary screen:
WindowRect is: X:-1600 Y:1012 W: 486 H: 187
MonitorRect is: X:-1600 Y: 0 W:1600 H:1200
WorkAreaRect is: X:-1600 Y: 0 W:1600 H:1200
bottom left secondary screen, partial off screen:
WindowRect is: X:-1626 Y:1134 W: 486 H: 187
MonitorRect is: X:-1600 Y: 0 W:1600 H:1200
WorkAreaRect is: X:-1600 Y: 0 W:1600 H:1200
bottom right secondary screen:
WindowRect is: X:-478 Y:1023 W: 486 H: 187
MonitorRect is: X:-1600 Y: 0 W:1600 H:1200
WorkAreaRect is: X:-1600 Y: 0 W:1600 H:1200
bottom right secondary screen, partial off screen:
WindowRect is: X:-264 Y:1093 W: 486 H: 187
MonitorRect is: X:-1600 Y: 0 W:1600 H:1200
WorkAreaRect is: X:-1600 Y: 0 W:1600 H:1200
bottom left primary screen:
WindowRect is: X: -2 Y: 768 W: 486 H: 187
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 954
bottom left primary screen, partial under task bar:
WindowRect is: X: -1 Y: 886 W: 486 H: 187
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 954
bottom right primary screen:
WindowRect is: X: 794 Y: 766 W: 486 H: 187
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 954
bottom right primary screen, partial under task bar:
WindowRect is: X: 858 Y: 887 W: 486 H: 187
MonitorRect is: X: 0 Y: 0 W:1280 H:1024
WorkAreaRect is: X: 0 Y: 0 W:1280 H: 954
______________
Now moving the primary screen around the secondary:
centered on secondary screen: secondary is below primary:
WindowRect is: X: 214 Y:1532 W: 486 H: 187
MonitorRect is: X:-312 Y:1024 W:1600 H:1200
WorkAreaRect is: X:-312 Y:1024 W:1600 H:1200
centered on secondary screen: secondary is above primary:
WindowRect is: X: 526 Y:-692 W: 486 H: 187
MonitorRect is: X: 0 Y:-1200 W:1600 H:1200
WorkAreaRect is: X: 0 Y:-1200 W:1600 H:1200
centered on secondary screen:secondary is right from primary:
WindowRect is: X:1806 Y: 332 W: 486 H: 187
MonitorRect is: X:1280 Y:-176 W:1600 H:1200
WorkAreaRect is: X:1280 Y:-176 W:1600 H:1200
Task bar (double height) at the bottom of the primary screen reduces the primary screen work area by 70 pixel.
The primary screens upper left corner is always 0,0 and the secondary screens coordinates are corresponding to the placement.
It seems that nVidia, ATI and M$ delivers reliable results for this function.
So I think the moved right quick search is a small bug in TC7B1?
http://i146.photobucket.com/albums/r274/bugmenot9988/bug.jpg
BTW: the lower position of this dialog is exact the lower border the right (second screen) work area.
Kind regards
Holger
that's a tool called ultramon. it adds a taskbar for every screen, and displays only the windows which apply to each screen in the corresponding task bar, so you don't have the taskbar of the primary monitor full of windows.HolgerK wrote: OK: The second and third screens work area height is decreased by 27 Pixel (im not sure, but it looks like an empty explorer tool bar that's placed at the bottom of these two screens).
but the problem persists when i disable it.
btw., ultramon has quite some useful features, like display profiles, keyboard shortcuts, a tool for creating a background image, which spans over all monitors, from different image files, save and restore desktop icon positions, and more..
ah, yes, that was trillian, which is usually docked at the left border of the left screen. forgot to disable it for the test, sorry.???: The width of the left (third) screens work area is decreased by 234 pixel.
Was there a tool bar (auto hide disabled, always on top enabled) placed at the left border, while running the test?
but it wasn't enabled on the screenshots, so no effect on the bug with quicksearch...
would be my guess tooSo I think the moved right quick search is a small bug in TC7B1?
http://i146.photobucket.com/albums/r274/bugmenot9988/bug.jpg
BTW: the lower position of this dialog is exact the lower border the right (second screen) work area.
Kind regards
Holger
thanks for your help
