Skip to content

Commit

Permalink
extended android jni with onMediaSessionSetPositionState
Browse files Browse the repository at this point in the history
  • Loading branch information
shnmorimoto committed Dec 3, 2019
1 parent 4d215c9 commit 41ff93e
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 1 deletion.
Expand Up @@ -255,4 +255,15 @@ public void onMediaSessionPlaybackStateChange(int state) {
return;
}
}

@Override
public void onMediaSessionSetPositionState(float duration, float position, float playbackRate) {
Log.d("onMediaSessionSetPositionState", duration + " " + position + " " + playbackRate);
if (mMediaSession == null) {
mMediaSession = new MediaSession(mServoView, this, getApplicationContext());
}

mMediaSession.setPositionState(duration, position, playbackRate);
return;
}
}
Expand Up @@ -192,4 +192,8 @@ public void updateMetadata(String title, String artist, String album) {
showMediaSessionControls();
}
}
}

// Not implemented
// see https://github.com/servo/servo/pull/24885#discussion_r352496117
public void setPositionState(float duration, float position, float playbackRate) {}
}
Expand Up @@ -115,6 +115,8 @@ public interface Callbacks {
void onMediaSessionMetadata(String title, String artist, String album);

void onMediaSessionPlaybackStateChange(int state);

void onMediaSessionSetPositionState(float duration, float position, float playbackRate);
}
}

Expand Up @@ -192,6 +192,8 @@ public interface Client {
void onMediaSessionMetadata(String title, String artist, String album);

void onMediaSessionPlaybackStateChange(int state);

void onMediaSessionSetPositionState(float duration, float position, float playbackRate);
}

public interface RunCallback {
Expand Down Expand Up @@ -285,5 +287,9 @@ public void onMediaSessionMetadata(String title, String artist, String album) {
public void onMediaSessionPlaybackStateChange(int state) {
mRunCallback.inUIThread(() -> mClient.onMediaSessionPlaybackStateChange(state));
}

public void onMediaSessionSetPositionState(float duration, float position, float playbackRate) {
mRunCallback.inUIThread(() -> mClient.onMediaSessionSetPositionState(duration, position, playbackRate));
}
}
}

0 comments on commit 41ff93e

Please sign in to comment.