This commit is contained in:
Junji Takakura 2015-01-24 17:28:24 +09:00
parent 0206ea4e0a
commit ec4e4a9771
13 changed files with 222 additions and 188 deletions

View File

@ -31,16 +31,16 @@ import org.teavm.jso.JSProperty;
*/ */
public interface HTMLMediaElement extends HTMLElement { public interface HTMLMediaElement extends HTMLElement {
public static final int HAVE_NOTHING = 0; int HAVE_NOTHING = 0;
public static final int HAVE_METADATA = 1; int HAVE_METADATA = 1;
public static final int HAVE_CURRENT_DATA = 2; int HAVE_CURRENT_DATA = 2;
public static final int HAVE_FUTURE_DATA = 3; int HAVE_FUTURE_DATA = 3;
public static final int HAVE_ENOUGH_DATA = 4; int HAVE_ENOUGH_DATA = 4;
public static final int NETWORK_EMPTY = 0; int NETWORK_EMPTY = 0;
public static final int NETWORK_IDLE = 1; int NETWORK_IDLE = 1;
public static final int NETWORK_LOADING = 2; int NETWORK_LOADING = 2;
public static final int NETWORK_NO_SOURCE = 3; int NETWORK_NO_SOURCE = 3;
@JSProperty @JSProperty
MediaError getError(); MediaError getError();
@ -55,10 +55,10 @@ public interface HTMLMediaElement extends HTMLElement {
String getCurrentSrc(); String getCurrentSrc();
@JSProperty @JSProperty
void setCurrentSrc(String currentSrc); String getCrossOrigin();
@JSProperty @JSProperty
String getCrossOrigin(); void setCrossOrigin(String crossOrigin);
@JSProperty @JSProperty
int getNetworkState(); int getNetworkState();
@ -88,10 +88,10 @@ public interface HTMLMediaElement extends HTMLElement {
double getDuration(); double getDuration();
@JSProperty @JSProperty
Date getStartOffsetTime(); Date getStartDate();
@JSProperty @JSProperty
boolean getPaused(); boolean isPaused();
@JSProperty @JSProperty
double getDefaultPlaybackRate(); double getDefaultPlaybackRate();
@ -112,38 +112,43 @@ public interface HTMLMediaElement extends HTMLElement {
TimeRanges getSeekable(); TimeRanges getSeekable();
@JSProperty @JSProperty
boolean getEnded(); boolean isEnded();
@JSProperty @JSProperty
boolean isAutoplay(); boolean isAutoplay();
@JSProperty @JSProperty
void setAutoplay(boolean autoplay); void setAutoplay(boolean autoplay);
@JSProperty
boolean isLoop(); boolean isLoop();
@JSProperty
void setLoop(boolean loop); void setLoop(boolean loop);
@JSProperty @JSProperty
String getMediaGroup(); String getMediaGroup();
@JSProperty
void setMediaGroup(String mediaGroup);
@JSProperty @JSProperty
MediaController getController(); MediaController getController();
@JSProperty @JSProperty
void setController(MediaController controller); void setController(MediaController controller);
@JSProperty @JSProperty
boolean getControlls(); boolean isControls();
@JSProperty @JSProperty
void setControlls(boolean controlls); void setControls(boolean controls);
@JSProperty @JSProperty
float getVolume(); float getVolume();
@JSProperty @JSProperty
void setVolume(float volume); void setVolume(float volume);
@JSProperty @JSProperty
boolean isMuted(); boolean isMuted();
@ -156,11 +161,11 @@ public interface HTMLMediaElement extends HTMLElement {
@JSProperty @JSProperty
void setDefaultMuted(boolean defaultMuted); void setDefaultMuted(boolean defaultMuted);
AudioTrackList getAudioTracks(); AudioTrackList getAudioTracks();
VideoTrackList getVideoTracks(); VideoTrackList getVideoTracks();
TextTrackList getTextTracks(); TextTrackList getTextTracks();
TextTrack addTextTrack(String kind); TextTrack addTextTrack(String kind);

View File

@ -27,10 +27,10 @@ public interface HTMLVideoElement extends HTMLMediaElement {
int getWidth(); int getWidth();
@JSProperty @JSProperty
void setWidth(int width); int getHeight();
@JSProperty @JSProperty
int getHeight(); void setWidth(int width);
@JSProperty @JSProperty
void setHeight(int height); void setHeight(int height);
@ -38,15 +38,12 @@ public interface HTMLVideoElement extends HTMLMediaElement {
@JSProperty @JSProperty
int getVideoWidth(); int getVideoWidth();
@JSProperty
void setVideoWidth(int videoWidth);
@JSProperty @JSProperty
int getVideoHeight(); int getVideoHeight();
@JSProperty
void setVideoHeight(int videoHeight);
@JSProperty @JSProperty
String getPoster(); String getPoster();
@JSProperty
void setPoster(String poster);
} }

View File

@ -1,27 +1,28 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.jso.JSObject;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSProperty;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface AudioTrack { public interface AudioTrack extends JSObject {
@JSProperty @JSProperty
String getId(); String getId();

View File

@ -1,31 +1,28 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.dom.events.EventTarget; import org.teavm.dom.events.EventTarget;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSArrayReader;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface AudioTrackList extends EventTarget { public interface AudioTrackList extends EventTarget, JSArrayReader<AudioTrack> {
@JSProperty
int getLength();
AudioTrack item(int index);
AudioTrack getTrackById(String id); AudioTrack getTrackById(String id);
} }

View File

@ -1,17 +1,17 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
@ -78,6 +78,4 @@ public interface MediaController extends JSObject {
void play(); void play();
void pause(); void pause();
void unpause();
} }

View File

@ -1,17 +1,17 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
@ -24,10 +24,10 @@ import org.teavm.jso.JSProperty;
*/ */
public interface MediaError extends JSObject { public interface MediaError extends JSObject {
public static final int MEDIA_ERR_ABORTED = 1; int MEDIA_ERR_ABORTED = 1;
public static final int MEDIA_ERR_NETWORK = 2; int MEDIA_ERR_NETWORK = 2;
public static final int MEDIA_ERR_DECODE = 3; int MEDIA_ERR_DECODE = 3;
public static final int MEDIA_ERR_SRC_NOT_SUPPORTED = 4; int MEDIA_ERR_SRC_NOT_SUPPORTED = 4;
@JSProperty @JSProperty
int getCode(); int getCode();

View File

@ -1,31 +1,32 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.dom.events.EventTarget;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSProperty;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface TextTrack { public interface TextTrack extends EventTarget {
public static final String DISABLED = "disabled"; String DISABLED = "disabled";
public static final String HIDDEN = "hidden"; String HIDDEN = "hidden";
public static final String SHOWING = "showing"; String SHOWING = "showing";
@JSProperty @JSProperty
String getId(); String getId();
@ -45,12 +46,6 @@ public interface TextTrack {
@JSProperty @JSProperty
void setMode(String mode); void setMode(String mode);
@JSProperty
boolean isEnabled();
@JSProperty
void setEnabled(boolean enabled);
@JSProperty @JSProperty
TextTrackCueList getCues(); TextTrackCueList getCues();

View File

@ -1,20 +1,21 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.dom.core.DocumentFragment;
import org.teavm.dom.events.EventTarget; import org.teavm.dom.events.EventTarget;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSProperty;
@ -24,21 +25,74 @@ import org.teavm.jso.JSProperty;
*/ */
public interface TextTrackCue extends EventTarget { public interface TextTrackCue extends EventTarget {
@JSProperty
TextTrack getTrack();
@JSProperty @JSProperty
String getId(); String getId();
@JSProperty
void setId(String id);
@JSProperty @JSProperty
double getStartTime(); double getStartTime();
@JSProperty
void setStartTime(double startTime);
@JSProperty @JSProperty
double getEndTime(); double getEndTime();
@JSProperty
void setEndTime(double endTime);
@JSProperty @JSProperty
boolean isPauseOnExit(); boolean isPauseOnExit();
@JSProperty
void setPauseOnExit(boolean pauseOnExit);
@JSProperty
String getVertical();
@JSProperty
void setVertical(String vertical);
@JSProperty
boolean isSnapToLines();
@JSProperty
void setSnapToLines(boolean snapToLines);
@JSProperty
int getLine();
@JSProperty
void setLine(int line);
@JSProperty
int getPosition();
@JSProperty
void setPosition(int position);
@JSProperty
int getSize();
@JSProperty
void setSize(int size);
@JSProperty
String getAlign();
@JSProperty
void setAlign(String align);
@JSProperty @JSProperty
String getText(); String getText();
@JSProperty @JSProperty
TextTrack getTrack(); void setText(String text);
DocumentFragment getCueAsHTML();
} }

View File

@ -1,33 +1,28 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.jso.JSArrayReader;
import org.teavm.jso.JSObject; import org.teavm.jso.JSObject;
import org.teavm.jso.JSProperty;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface TextTrackCueList extends JSObject { public interface TextTrackCueList extends JSObject, JSArrayReader<TextTrackCue> {
@JSProperty TextTrackCue getCueById(String id);
int getLength();
TextTrackCue item(int index);
TextTrackCue getTrackById(String id);
} }

View File

@ -1,33 +1,28 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.dom.events.EventTarget; import org.teavm.dom.events.EventTarget;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSArrayReader;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface TextTrackList extends EventTarget { public interface TextTrackList extends EventTarget, JSArrayReader<TextTrack> {
@JSProperty
int getLength();
TextTrack item(int index);
TextTrack getTrackById(String id); TextTrack getTrackById(String id);
} }

View File

@ -1,17 +1,17 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;

View File

@ -1,27 +1,28 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.jso.JSObject;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSProperty;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface VideoTrack { public interface VideoTrack extends JSObject {
@JSProperty @JSProperty
String getId(); String getId();

View File

@ -1,36 +1,32 @@
/* /*
* Copyright 2015 Alexey Andreev. * Copyright 2014 Alexey Andreev.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* Unless required by applicable law or agreed to in writing, software * Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.teavm.dom.media; package org.teavm.dom.media;
import org.teavm.dom.events.EventTarget; import org.teavm.dom.events.EventTarget;
import org.teavm.jso.JSArrayReader;
import org.teavm.jso.JSProperty; import org.teavm.jso.JSProperty;
/** /**
* *
* @author Junji Takakura * @author Junji Takakura
*/ */
public interface VideoTrackList extends EventTarget { public interface VideoTrackList extends EventTarget, JSArrayReader<VideoTrack> {
@JSProperty
int getLength();
@JSProperty @JSProperty
int getSelectedIndex(); int getSelectedIndex();
VideoTrack item(int index);
VideoTrack getTrackById(String id); VideoTrack getTrackById(String id);
} }