Opened 12 years ago
Closed 4 years ago
#10252 closed Bug Report - General (Abandoned)
Mac OS X menu bar, dock, and mouse not hidden if GUI size nonzero
Reported by: | Owned by: | Nigel | |
---|---|---|---|
Priority: | trivial | Milestone: | unknown |
Component: | Ports - OSX | Version: | 0.24.1 |
Severity: | low | Keywords: | |
Cc: | Ticket locked: | no |
Description
If you change the GUI size and offset to compensate for overscan, MythTV incorrectly uses a normal window instead of a full-screen window, resulting in Mac OS X showing the menu bar and doc. MythTV should use these values for scaling the *content* of the window, not for setting the actual size and position of the window itself.
The net result is that unless you can find a reduced-size theme that will fit on your screen, you're pretty much hosed.
Change History (4)
comment:1 Changed 12 years ago by
Priority: | major → trivial |
---|---|
Severity: | high → low |
comment:2 Changed 12 years ago by
Status: | new → assigned |
---|
- OS X code never did anything with the dock. (except in the Full Screen output module, which is a layer above the menu bar, dock, UI desktop picture, et c.) If you want the dock to be hidden, set it to hide in Mac OS? ("System Preferences" -> Dock -> "Automatically hide and show the Dock")
- The Mac output code was written assuming either Full Screen, or "one Window among the rest of your active apps" usage. Attaching to a TV that has overscan was never implemented. I would have thought that any display that overscanned would chop the menu bar off in its bezel, but I guess that is a bad assumption :-(
Two easy options - either always hide the Menu Bar when Appearance -> "Use window border" is off, or always hide it when the GUI Y offset is less than 22 pixels? e.g. undo https://github.com/MythTV/mythtv/commit/6116efda and augment the 'd->does_fill_screen' conditionals.
comment:3 Changed 12 years ago by
As I understand it (and this is from distant memory, so I may be wrong), Mac OS X automatically hides the dock and menu bar if you create a window and make it be a full-screen window at the appropriate level (above the dock). This only works if it is actually a full-screen window, however—that is, if the window starts at the upper left corner and extends to the lower right.
I *think* the problem is that MythTV, when you add overscan compensation, actually reduces the size of the window that it creates. It is thus no longer a full-screen window, so Mac OS X no longer hides the dock and menu bar automatically. At least that's the way it acts.
I can see two relatively easy ways to fix the problem:
- Add a full-screen black masking window behind the main drawing window, at a level greater than NSDockWindowLevel/kCGDockWindowLevel and less than your actual main window, sized to fit the screen without overscan compensation.
- Instead of shrinking the drawing window itself, create a smaller subwindow inside the main window (based on the overscan-compensated size) and draw inside that.
comment:4 Changed 4 years ago by
Resolution: | → Abandoned |
---|---|
Status: | assigned → closed |
I plan to re-work the GUI rendering as outline in the last comment for 0.32 (i.e. use a fullscreen window but 'underscan' the UI rendering).
Closing this as it is soooo old and improvements will be tracked elsewhere.
Nigel, I'll leave it to you if this is a won't fix or not, but I've just fixed the priority and severity fields.