nickoptimistic / understudy

Automatically exported from code.google.com/p/understudy
0 stars 0 forks source link

Play/Pause doesn’t work under Safari 4 #100

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
While playing any netflix video from within Front Row, pushing the Play/Pause 
button on the 
Apple Remote does nothing.

What is the expected output or result?
To pause/play the video

What do you see instead?
Nothing happens 

Please provide any additional information below, including any relevant
URLs.

Apparently most people can pause the videos with the apple remote.  It does 
nothing for me, 
only the volume works.  This happens with the current build (0.6.7). I tried 
installing version 
0.6.5 and it didn't work with that one either.  I am using an aluminum iMac 
(not the most recent 
ones, the release before), on OS 10.5.6.

(Before submitting this issue, please ensure that you will be notified of
updates by adding yourself to the CC field or by staring the issue and
configuring your profile setting.)

Original issue reported on code.google.com by izd...@gmail.com on 17 Apr 2009 at 9:58

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
So I uninstalled Safari 4 and reverted back to Safari 3, and the play/pause 
buttons worked correctly.  I then re-
installed Safari 4 and they didn't work again.  So it is something with Safari 
4 for me.  Guess it's back to Safari 3 
for now.  As a note, I have Cooliris and Glims installed that are Safari 
plugins.  But they are there for Safari 3 and 
4, so they probably aren't the problem.

Original comment by izd...@gmail.com on 18 Apr 2009 at 7:30

GoogleCodeExporter commented 8 years ago

Original comment by kirk.kel...@rochester.edu on 18 Apr 2009 at 3:03

GoogleCodeExporter commented 8 years ago
Just letting you know that installing OS 10.5.7 installs a new version of 
Safari: 3.2.3, and play/pause does not 
work with that build of Safari for.  I also installed the updated version of 
Safari 4 beta and no luck there.  So at 
least for me, play/pause doesn't work at all now unless I were to revert back 
to the previous version of Safari 3.

Original comment by izd...@gmail.com on 14 May 2009 at 3:29

GoogleCodeExporter commented 8 years ago
Well, that's not good news but thanks for reporting it.
Just to be sure I've got all the right info:
did you actually try reverting to the old version of Safari?
which video players did you try this with?

Original comment by kirk.kel...@rochester.edu on 14 May 2009 at 3:35

GoogleCodeExporter commented 8 years ago
No, I didn't revert back to the old version of Safari.  I just tried, and 
apparently I can't.  I guess that the older version of 
Safari was not made compatible with 10.5.7

To sum it up, play/pause worked with OS 10.5.6 and Safari 3.2.1, but not with 
Safari 4 beta.

Play/pause does not work on OS 10.5.7 and Safari 3.2.3. It also does not work 
with Safari 4.

This is all from Netflix.  It's the only thing I use understudy for.

(I did just try out YouTube with 10.5.7 and Safari 4, and play/pause does work 
and so does forward/rewind)

Original comment by izd...@gmail.com on 14 May 2009 at 6:59

GoogleCodeExporter commented 8 years ago
anyone tried the new release of safari 4 see if it changes these issues?

Original comment by sth...@gmail.com on 8 Jun 2009 at 9:51

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Play/pause with netflix still doesn't work for me in the final safari 4 version

Original comment by izd...@gmail.com on 8 Jun 2009 at 9:54

GoogleCodeExporter commented 8 years ago
It worked for me with 10.5.7 and the latest version of Safari 3. However, It 
stop
working after upgrading to Safari 4 final. I use it for netflix only.

Original comment by ammi....@gmail.com on 10 Jun 2009 at 5:10

GoogleCodeExporter commented 8 years ago
It appears this may also affect hulu.

Original comment by allen.ea...@gmail.com on 18 Jun 2009 at 10:58

GoogleCodeExporter commented 8 years ago
Using safari 4, mac mini (intel), and Understudy 0.7...
Netflix: no play/pause or ff/rewind
Hulu - work great in full screen

Original comment by dgoldenh...@gmail.com on 19 Jun 2009 at 4:32

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
The issue is with the plugin controller calling sendEvent. In Safari 4 this 
changed to sendEvent:isDrawRect. It 
needs to be changed to support both... something like:

- (void)sendPluginKeyCode:(int)keyCode
             withCharCode:(int)charCode
             andModifiers:(int)modifiers
{
  if( ![self plugin] )return;
  EventRecord event;
  event.what = keyDown;
  event.message = (keyCode << 8) + charCode;
  event.modifiers = modifiers;
  if( [pluginView_ respondsToSelector:@selector(sendEvent:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&event];
  }else if( [pluginView_ respondsToSelector:@selector(sendEvent:isDrawRect:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&event isDrawRect:NO];
  }
  event.what = keyUp;
  if( [pluginView_ respondsToSelector:@selector(sendEvent:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&event];
  }else if( [pluginView_ respondsToSelector:@selector(sendEvent:isDrawRect:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&event isDrawRect:NO];
  }
}

Likewise, the mouse clicks would break:

- (void)sendPluginMouseClickAtPoint:(NSPoint)point
{
  EventRecord record;
  NSPoint orig = [pluginView_ frame].origin;
  record.modifiers = btnState;
  record.message = 0;
  record.what = mouseDown;
  record.when = TickCount();
  record.where.h = orig.x + point.x;
  record.where.v = orig.y + point.y;

  if( [pluginView_ respondsToSelector:@selector(sendEvent:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&record];
  }else if( [pluginView_ respondsToSelector:@selector(sendEvent:isDrawRect:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&record isDrawRect:NO];
  }
  record.what = mouseUp;
  record.when = TickCount();
  if( [pluginView_ respondsToSelector:@selector(sendEvent:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&record];
  }else if( [pluginView_ respondsToSelector:@selector(sendEvent:isDrawRect:)] ){
    [(id)pluginView_ sendEvent:(NSEvent *)&record isDrawRect:NO];
  }
}

Original comment by jeffraf...@gmail.com on 9 Dec 2009 at 7:27

Attachments:

GoogleCodeExporter commented 8 years ago

Original comment by kirk.kel...@rochester.edu on 11 Jan 2010 at 2:13

GoogleCodeExporter commented 8 years ago
this should be fixed in version 0.8

Original comment by kirk.kel...@rochester.edu on 20 Jan 2010 at 12:48

GoogleCodeExporter commented 8 years ago
It is almost fixed in version 0.8. Now, it requires two clicks to pause. First 
one bring up control panel and second 
click really pause the movie. 

OS X 10.6.2 & Safari 4.0.4

Original comment by ammi....@gmail.com on 20 Jan 2010 at 1:15