Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Official RIVA thread
Dean Roddey Wrote:But you also send the position in the press event. Are you getting the most recent position when you send the press event?
The PRESS event sends the button's position... The following MOVE sends the position of the mouse at the time the event is sent... Is the C++ client resending a PRESS event for every move? Something like::

PRESS
MOVE + PRESS
MOVE + PRESS
MOVE + PRESS
MOVE + PRESS
RELEASE

Instead of just:

PRESS
MOVE
MOVE
MOVE
MOVE
MOVE
RELEASE

If for a simple PRESS/RELEASE the C++ client also sends a PRESS/PRESS/RELEASE, I guess that could explain why it's not acting like our PRESS/RELEASE, as you would be missing the fact that the first PRESS isn't animated...
Field Generator 0.65: Create CQC fields on the fly, from external applications.
Mobile templates 0.4: Main resolution of 320x480 with navigation side bars (384x544).
Sage Media Server 1.1.3 + Sage Player 2.7.8: Display and manipulate SageTV information or player.
TaRIVA 1.26: Android RIVA client.
Reply
Oh, no, it's just doing what you would expect. If it sent a press for every move, that would make the server go crazy.

But all three of them include the current position. I was just wondering if perhaps your deferred move logic was making you send the 350ms ago position, some some such, when the user clicks or something like that.
Dean Roddey
Explorans limites defectum
Reply
I've added some code to log about press/release messages, whether a widget was hit, what it's name and type are, whether tracking completed and so forth. So that'll hope give a little more info about what the server is doing. After the next drop you can give it a try.

BTW, did you ever try the thing of moving the mouse in and out of the widget while you hold the mouse down? Do you get the pressed image when you move out and back in, even though you don't get it when you initially press? The widget should go in and out of pressed state when you click and then hold the mouse and move in and out, as long as you are sending move messages correctly anyway.

That would be an interesting sanity check as to whether it's the first redraw or something to with the whole state of the first mouse press/release.
Dean Roddey
Explorans limites defectum
Reply
Dean Roddey Wrote:BTW, did you ever try the thing of moving the mouse in and out of the widget while you hold the mouse down?
I did and there was no animation what so ever, which is why I asked if you were sending a press with each move or such...
Field Generator 0.65: Create CQC fields on the fly, from external applications.
Mobile templates 0.4: Main resolution of 320x480 with navigation side bars (384x544).
Sage Media Server 1.1.3 + Sage Player 2.7.8: Display and manipulate SageTV information or player.
TaRIVA 1.26: Android RIVA client.
Reply
So do you think that you are getting a request to draw a fully transparent image like Brain seems to be seeing?
Dean Roddey
Explorans limites defectum
Reply
Dean Roddey Wrote:So do you think that you are getting a request to draw a fully transparent image like Brain seems to be seeing?
No, for the MOVE there was absolutely no message sent from the RIVA server...

For the first click, it's sending an alpha blit of the unpressed image.
Field Generator 0.65: Create CQC fields on the fly, from external applications.
Mobile templates 0.4: Main resolution of 320x480 with navigation side bars (384x544).
Sage Media Server 1.1.3 + Sage Player 2.7.8: Display and manipulate SageTV information or player.
TaRIVA 1.26: Android RIVA client.
Reply
There wouldn't be anything sent from the move. That's purely just to inform the server of the current mouse position in case of any sort of 'flyover' type of effect.

What is the alpha level of the alphablit you are getting? Brian seems to be seeing an alpha level that makes the image completely transparent, so the actual press action is really happening, but you see nothing because the image is being drawn transparently.
Dean Roddey
Explorans limites defectum
Reply
Dean Roddey Wrote:There wouldn't be anything sent from the move.
But then how could the image change from pressed to unpressed if that info isn't sent?

Quote:Brian seems to be seeing an alpha level that makes the image completely transparent, so the actual press action is really happening, but you see nothing because the image is being drawn transparently.
Regardless of the alpha level, the first press gets told to show the same unpressed image in the same position... There's no way changing the alpha level would magically show a different image or move it by 1 pixels each way... Wink

Without a pressed image, it goes like this:

First PRESS = alpha blit (X, Y) of unpressed image.
RELEASE = alpha blit (X, Y) of unpressed image.
Second PRESS = alpha blit (X + 1, Y + 1) of unpressed image.
RELEASE = alpha blit (X, Y) of unpressed image.

With a pressed image, it goes like this:

First PRESS = alpha blit (X, Y) of unpressed image.
RELEASE = alpha blit (X, Y) of unpressed image.
Second PRESS = alpha blit (X + 1, Y + 1) of pressed image.
RELEASE = alpha blit (X, Y) of unpressed image.
Field Generator 0.65: Create CQC fields on the fly, from external applications.
Mobile templates 0.4: Main resolution of 320x480 with navigation side bars (384x544).
Sage Media Server 1.1.3 + Sage Player 2.7.8: Display and manipulate SageTV information or player.
TaRIVA 1.26: Android RIVA client.
Reply
Oh, you meant a move while it was being held down. If it's not sending you anything, then I don't think you ever got a press inside the widget. It would only send you something if you got the original press inside the widget. Otherwise it won't be tracking the widget and therefore it won't send anything.

That also kind of leads me to believe that maybe it's related to positions on the click. And that would also maybe explain what's happening, because it sees that first press as a release, so it thinks it's being RELEASED inside the button, and asks you to draw the unpressed image. After that, it gets into sync and works. Then, after a move, somehow, it's getting into that thinking it's pressed state again.

So maybe it's something like that, and it's just that I'm compensating for it unknowingly or something. I'll look at that.
Dean Roddey
Explorans limites defectum
Reply
Yes, I guess that makes sense. If you think that we are doing something wrong with the Press/Move/Release messages we send to you, let us know.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Html 5 Riva potts.mike 9 13,821 09-15-2013, 04:22 AM
Last Post: bjkiller
  Thinking about the next step in RIVA Dean Roddey 6 11,066 01-22-2013, 06:15 AM
Last Post: brianmount
  .Net RIVA Client Dean Roddey 146 119,609 02-06-2012, 06:53 PM
Last Post: Dean Roddey
  Transparent images in RIVA? SamVimes2 36 48,503 02-05-2011, 04:34 PM
Last Post: Dean Roddey
  riva burkepaol4 1 8,367 12-17-2010, 11:39 AM
Last Post: Dean Roddey
  Riva screen blanker on CF.NET froop 3 8,235 08-06-2010, 10:34 PM
Last Post: froop
  RIVA Connection batwater 6 8,887 07-16-2010, 04:46 PM
Last Post: batwater
  Java based RIVA Client? batwater 10 13,134 04-03-2010, 05:35 AM
Last Post: wuench
  RIVA Client for Linux bryanb 22 20,569 07-16-2009, 09:11 PM
Last Post: bjkiller

Forum Jump:


Users browsing this thread: 1 Guest(s)