On 3/26/12 17:04, Artem Ananiev wrote:

The proposed fix implies the problem is only observed if no security manager is installed, is that correct? In that case, the fix looks fine...

On 3/24/2012 1:44 PM, Alexander Zuev wrote:
Actually that was the behavior of popups till some time ago it was changed by the fix filled exactly about it - on Windows with the taskbar tall enough the popup populated off the tray icon were placed too far from the icon making it look unnatural. Just my $0.02

... but the whole approach in JPopupMenu when it's allowed to cover taskbar doesn't. What is "taskbar" here? Is Mac OS X dock area a taskbar? What if it's configured to be on the left/right side of the screen? Why JPopupMenu is related to tray icons, while native popups are expected to be used in this case?
I only pointed out why we don't obey screen insets when placing popup on the screen - the reason was taskbar on Windows (there is no such thing on Mac OS X) was counted as an screen inset and placing popup inside screen insets caused visual troubles for customers and this is exactly why this behavior (accounting screen insets when positioning popup on screen) was changed. I don't think that new behavior is correct for all platforms but OTOH it was not my fix.
With best regards,
Alexander Zuev

23.03.2012, в 23:25, Mike Swingler<[email protected]>  написал(а):

I agree that the proper fix is to make the popup code evade the screen insets…is there a bug tracking that?

Regards,
Mike Swingler
Apple Inc

On Mar 23, 2012, at 11:56 AM, Scott Kovatch wrote:

Looks like that's only true when the dock is on the side like you have it configured in that screen shot. I can't get it to happen when the Dock is at the bottom of the screen.

That makes sense, though. This bug is about not being able to autoscroll the popup because you can't move the mouse into the auto-scroll area. That's not an issue when the dock is on the side.

- Scott

On Mar 23, 2012, at 11:49 AM, Mike Swingler wrote:

Actually, popups _can_ occlude the Dock, but it's very bad form for them to do so. Every effort should be taken to push the popup into the usable insets of the screen…but popups definitely overlap the menubar and the Dock when forced.

<Screen Shot 2012-03-23 at 11.46.37 AM.png>

~Mike

On Mar 23, 2012, at 11:36 AM, Scott Kovatch wrote:

No, that's not the right behavior on OS X. The Dock sits above everything else when it's visible -- popups never cover the Dock. You can see this by taking just about any window and dragging it down so it goes behind the dock, then right-click on the window. The context menu always gets pushed up so the bottom of the popup menu sits right above the dock. I think this is the right fix.

Out of curiosity, why is it necessary to look for SET_WINDOW_ALWAYS_ON_TOP_PERMISSION? Is it considered bad form or some kind of security issue to block a task bar on Windows?

-- Scott

On Mar 23, 2012, at 11:14 AM, Anthony Petrov wrote:

Hi Leonid,

The code changes look good to me. I'm approving the fix given the emergency of the issue.

However, I think that a more elegant solution for this bug would be to -setLevel: for always-on-top Java windows of the type POPUP to a value that pushes the windows above the dock. This way we wouldn't need an overridable method in the SunToolkit class. Could you file a CR to investigate this possibility in a future release please?

--
best regards,
Anthony

On 3/23/2012 9:48 PM, Leonid Romanov wrote:
Hi,
Release team has decided that we'd better fix 7154480 for 7u4 because of its high impact on users, so please review a fix for it. The fix prevents popups from overlapping with the Dock/menu bar on OS X, keeping the old behavior for other platforms.
Bug:  http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7154480
Webrev: http://cr.openjdk.java.net/~leonidr/7154480/webrev.00/
Thanks,
Leonid.





Reply via email to