On Monday 06 June 2005 02:03, Bradley T Hughes wrote:
> Jason 'vanRijn' Kasper wrote:
> > But to answer your question, there's nothing new on it. Nyz was
> > discussing adding a special blackbox-only Atom for this but he's not, I
> > don't believe, and honestly I'm not sure he should, since that would be
> > just that--a blackbox-only communication that no other window manager
> > would understand.
>
> Adding something to get bbkeys to open the menu shouldn't be hard. The
> hard part will be in getting bbkeys to transfer the keyboard grab to
> blackbox. I haven't dug into this, so it could turn out to be easy, but
> I'm not the optimist I used to be :)
>
Well, the approach taken by xmacro would work, I'm pretty sure--using the
XTest extension to move the mouse to a given point and fire a ButtonPress and
ButtonRelease. In fact, if I have this in /tmp/button3.test:
MotionNotify: 12 12
ButtonPress: 3
ButtonRelease: 3
and run "xmacroplay :0 </tmp/button3.test", the menu does get opened and focus
is transferred to it, so up/down/left/right keypresses works as one would
expect. The only thing is that this requires the user to know at exactly
what coordinates to move the mouse pointer to before triggering a
ButtonPress/ButtonRelease. In other words, it's not a showRootMenu function
this way. It's a pressMouseButton3 function, being passed a geometry. And
if a window is in the way, the root window won't open. =:(
The more I think about it, though, the more I think this is the only way to do
it, as inelegant as it is, because WM's like Kwin and Metacity don't actually
know anything about a "root" window the way blackbox and its children do. I
just don't like this approach at all because it's very non-intuitive, can
easily lead to errors ("hey, how come my Mozilla window keeps closing when I
try to open my blackbox menu at the top right corner of the screen??"), and
requires the user to dedicate a spot on their screen for this action to
always take place and then remember to not cover that area up with a window.
=:(
I would much rather be able to use straight XSendEvent calls to simulate this
but that seems to not work properly.
--
,-----------------------------------------------------------------//
| Jason 'vanRijn' Kasper :: Numbers 6:22-26
`
| All brontosauruses are thin at one end, much MUCH thicker
| in the middle, and then thin again at the far end. That is
| the theory that I have and which is mine, and what it is too.
,
| bash$ :(){ :|:&};:
`----------------------//
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
List archives: http://asgardsrealm.net/lurker/splash/index.html