[mythtv-users] is there a way to force mythfrontend to actually _obey_ -geometry?
Michael T. Dean
mtdean at thirdcontact.com
Thu Jan 5 19:16:29 UTC 2012
On 01/05/2012 10:40 AM, Ronald Frazier wrote:
> On Thu, Jan 5, 2012 at 5:31 AM, Mark Kendall wrote:
>>> Using the mythtv-frontend-0.24.1-20111019.0.1.mga1 and
>>> other packages supplied with Mageia 1 64-bit, I invoke
>>> mythfrontend with -geometry 640x360-0+0. The window
>>> comes up correctly, the right size and in the upper
>>> right-hand corner of the screen. However, a second or
>>> so later, it moves to the upper left-hand corner. Is
>>> there a -yes-actually-do-obey-geometry option or one
>>> to that effect?
>> Based upon your arguments, mythfrontend *should* be in the top left
>> corner. Arguments 3 and 4 (which should be +X+Y) are offsets from that
>> corner. The fact that it first appears in the top right will just be
>> something related to your window manager.
> Notice that he's NOT using +X+Y, but rather -X+Y. I think his thinking
> is that -0 would mean zero pixels from the right edge. A lot of
> window/gui systems use that sort of scheme. Whether or not myth does,
> I have no idea, but I imagine that's what he's thinking it does
Right. MythTV is not using Xlib code to handle -geometry, but is using
a hack that was never written to allow support for using negative to
index off the right/bottom. (It will accept negative offsets, but
The reason we do this is because MythTV provides settings for location
and offset, so -geometry is actually just a -O override for those
settings. In other words, MythTV's providing support for specific
window sizing and placement (regardless of that performed by the Window
Manager) requires that we ignore the X-provided code.
The reason he sees it in the "proper" place first, then it snaps to the
MythTV-defined place, is because the initial window is created and
placed by the Window Manager, then MythTV requests that it be moved.
You can also see this if you do: mythfrontend -geometry 800x600 (don't
specify a location)... It will create the window and place it wherever
your Window Manager likes, then MythTV will request that it be moved to
the proper place. Note, also, that on some systems, you may have a race
condition where the "move" request doesn't actually occur at the right
time, so the window stays in the wrong place.
If someone really wants the negative offset support, they can write a
patch, but, alternatively, they could do a little math to get the
positive offsets or they could move the window manually.
More information about the mythtv-users