Opened 7 months ago

Closed 7 months ago

#16292 closed defect (fixed)

MacOSX: Fullscreen issue in maximized wxNonOwnedWindow

Reported by: kbinani Owned by: csomor
Priority: normal Milestone:
Component: wxOSX-Cocoa Version: dev-latest
Keywords: fullscreen Cc:
Blocked By: Blocking:
Patch: yes

Description

When wxNonOwnedWindow changed to fullscreen, the size of content view becomes out-of-sync with its owner window.

How to reproduce

  1. Prepare two (or more) displays.
  2. Build/Run the sample app attached with this ticket (sample.mm).
  3. Move the app's window into one of screens, which does not have both Dock and menu bar.
  4. Maximize the app's window.
  5. Make fullscreen the app's window.
  6. The height of content view is smaller than expected.

Descriptions for attached files

normal.png

The window of sample app, with normal style (not maximized, not fullscreen).

actual.png

How looks the content view (a pane with black background) with fullscreen mode (unpatched version).

expected(patched).png

Same above, but patched version.

sample.mm

Code of sample app.

patch.diff

A patch to resolve this issue, based on trunk@76602.

Attachments (6)

normal.png download (25.9 KB) - added by kbinani 7 months ago.
actual.png download (20.1 KB) - added by kbinani 7 months ago.
expected(patched).png download (20.0 KB) - added by kbinani 7 months ago.
sample.mm download (654 bytes) - added by kbinani 7 months ago.
patch.diff download (1.3 KB) - added by kbinani 7 months ago.
patch.2.diff download (1.4 KB) - added by kbinani 7 months ago.

Download all attachments as: .zip

Change History (15)

Changed 7 months ago by kbinani

Changed 7 months ago by kbinani

Changed 7 months ago by kbinani

Changed 7 months ago by kbinani

Changed 7 months ago by kbinani

Changed 7 months ago by kbinani

comment:1 Changed 7 months ago by kbinani

UPDATE:

Added patch.2.diff, to follow the coding style. Please just ignore the previous patch file (patch.diff).

comment:2 Changed 7 months ago by csomor

under which OS X version are you seeing the problem ? right now under 10.8.5 I cannot reproduce it, with current trunk

comment:3 Changed 7 months ago by csomor

  • Status changed from new to infoneeded_new

comment:4 Changed 7 months ago by kbinani

  • Status changed from infoneeded_new to new

Thank you for reply.

This issue can be seen at least under MacOSX 10.8.5, MacBook Pro Retina (13-inch, Late 2012).
Both 32/64bit product reproduce this problem.

I've prepared a movie on YouTube to show how looks the problem is.
Check the video: https://www.youtube.com/watch?v=7riZUdAln-s

To reproduce this issue, the 3rd step:

3. Move the app's window into one of screens, which does not have both Dock and menu bar.

is very important as the video shows.

comment:5 Changed 7 months ago by kbinani

I've tested for other OSX versions:

  • MacOSX 10.9.3 on MacBook Pro, 13-inch, Mid 2012
  • MacOSX 10.8.5 on MacBook Pro Retina, 13-inch, Late 2012
  • MacOSX 10.8.5 on MacBook Pro, 13-inch, Mid 2012
  • MacOSX 10.7.5 on MacBook Pro, 13-inch, Mid 2012

Under these environments, this issue can be reproduced.

comment:6 Changed 7 months ago by csomor

  • Owner set to csomor
  • Status changed from new to accepted
  • Summary changed from MacOSX: Fullscreen issue in wxNonOwnedWindow to MacOSX: Fullscreen issue in maximized wxNonOwnedWindow

thanks for the video, I overlooked the fact about the maximized window, now I can reproduce the problem, there is no size change

comment:7 Changed 7 months ago by csomor

I'm right now looking at the different places to intervene, when using the windowWillEnterFullScreen notification, I'm also correcting situations where the OS itself is doing the right thing afterwards (eg when the same thing happens on the main screen), when I'm in windowDidEnterFullScreen then I'm only correcting the situations where the OS itself wasn't correct, but I'm late so the white stripe at the top remains visible for too long. So I'm looking for the best hook.

comment:8 Changed 7 months ago by csomor

Ok, the other callbacks are not better, or have the same problem. So I'll stick with your suggestion. Thanks a lot!

comment:9 Changed 7 months ago by SC

  • Resolution set to fixed
  • Status changed from accepted to closed

In 76614:

work around OS X bug, fixes #16292

Note: See TracTickets for help on using tickets.