PDA

View Full Version : mouse incapabilities on Adobe AIR


mikechesar
05-02-2009, 07:10 AM
Hi, everybody.

I've been looking on these forums for information about the possibility of detecting mouse actions on a transparent window. My conclusion is that it's impossible.

I'm working on a Stiky Notes applications which runs on top of any other application or desktop icons. As you might guess, it works on a maximized transparent window, which allows user to click on any note and interact with objects behind tha stiky notes layer as well. The problem is that, for some reasons, I need to track mouse position on stage while pointing on absolutely transparent (objects-free) parts of it.

I've tried the following:

- Using stage.mouseX and stage.mouseY properties. // It stops updating when not over a visible object.

- Looking for mouse position properties or events on Screen, NativeWindow and others. // Nothing at all.

- Using startDrag method of an empty Sprite instance added to the stage, and tracking its x and y properties on enterFrame. // Does not update (!!!).

- Using an almost transparent (totally transparent won't register) rectangle and removing it on mouseDown. // Returns correct values, but won't let me click on applications behind stiky notes layer.

Well, as you might see, this is not a simple problem. I think not having a Screen.mouseX or something like that is a big piece of sh*t. Does anybody know a workaround for this problem? or maybe Adobe plans for giving more control over mouse events on AIR? what about the possibility of complaining at Adobe about this issue? I do NOT have a Flash license or anything. I use FlashDevelop with free Flex SDK so I guess my voice can reach nowhere.

Sorry for my english and, please, someone answer. I feel abandoned enough (by Adobe, of course) with this issue.

evride
05-03-2009, 10:10 AM
I wouldn't call them incapabilities. more like security "shouldbetheres." Why can't you just create a whole new window can keep the window closer to the viewable content?

mikechesar
05-12-2009, 05:40 AM
Well, you call "shouldbethere" to something that makes startDrag function work improperly. Try having an object dragged on a transparent application. You'll have the object left behind every time mouse pointer gets on an empty area. Besides, I just want to know the mouse x and y position on screen. Yeah, sure... I'm going to get a lot of information about the user by tracking those.

And even more, the user is told before installing the applications what risks he/she is running. He/She receives a lot of more warnings than when trying to install any other desktop application which represents much more risk. And there's more... I can read and write any file on the computer but I cannot track mouse position, not even if the application is in focus... come on, that's ridiculous!