@gjsify/example-dom-three-geometry-teapot 0.1.13 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gjs.js +168 -7
- package/package.json +4 -4
package/dist/gjs.js
CHANGED
|
@@ -4706,6 +4706,164 @@ var init_html_image_element = __esm({
|
|
|
4706
4706
|
}
|
|
4707
4707
|
});
|
|
4708
4708
|
|
|
4709
|
+
// ../../../packages/dom/dom-elements/lib/esm/html-media-element.js
|
|
4710
|
+
var HAVE_NOTHING, HAVE_METADATA, HAVE_CURRENT_DATA, HAVE_FUTURE_DATA, HAVE_ENOUGH_DATA, NETWORK_EMPTY, NETWORK_IDLE, NETWORK_LOADING, NETWORK_NO_SOURCE, HTMLMediaElement;
|
|
4711
|
+
var init_html_media_element = __esm({
|
|
4712
|
+
"../../../packages/dom/dom-elements/lib/esm/html-media-element.js"() {
|
|
4713
|
+
init_console_gjs();
|
|
4714
|
+
init_auto_globals_495e9d950c();
|
|
4715
|
+
init_esm4();
|
|
4716
|
+
init_html_element();
|
|
4717
|
+
HAVE_NOTHING = 0;
|
|
4718
|
+
HAVE_METADATA = 1;
|
|
4719
|
+
HAVE_CURRENT_DATA = 2;
|
|
4720
|
+
HAVE_FUTURE_DATA = 3;
|
|
4721
|
+
HAVE_ENOUGH_DATA = 4;
|
|
4722
|
+
NETWORK_EMPTY = 0;
|
|
4723
|
+
NETWORK_IDLE = 1;
|
|
4724
|
+
NETWORK_LOADING = 2;
|
|
4725
|
+
NETWORK_NO_SOURCE = 3;
|
|
4726
|
+
HTMLMediaElement = class extends HTMLElement {
|
|
4727
|
+
constructor() {
|
|
4728
|
+
super(...arguments);
|
|
4729
|
+
this._src = "";
|
|
4730
|
+
this._srcObject = null;
|
|
4731
|
+
this.currentTime = 0;
|
|
4732
|
+
this.duration = NaN;
|
|
4733
|
+
this.paused = true;
|
|
4734
|
+
this.ended = false;
|
|
4735
|
+
this.volume = 1;
|
|
4736
|
+
this.muted = false;
|
|
4737
|
+
this.defaultMuted = false;
|
|
4738
|
+
this.loop = false;
|
|
4739
|
+
this.autoplay = false;
|
|
4740
|
+
this.preload = "";
|
|
4741
|
+
this.playbackRate = 1;
|
|
4742
|
+
this.defaultPlaybackRate = 1;
|
|
4743
|
+
this.readyState = HAVE_NOTHING;
|
|
4744
|
+
this.networkState = NETWORK_EMPTY;
|
|
4745
|
+
}
|
|
4746
|
+
// -- Buffered/seekable stubs --
|
|
4747
|
+
get buffered() {
|
|
4748
|
+
return { length: 0, start: () => 0, end: () => 0 };
|
|
4749
|
+
}
|
|
4750
|
+
get seekable() {
|
|
4751
|
+
return { length: 0, start: () => 0, end: () => 0 };
|
|
4752
|
+
}
|
|
4753
|
+
get played() {
|
|
4754
|
+
return { length: 0, start: () => 0, end: () => 0 };
|
|
4755
|
+
}
|
|
4756
|
+
// -- src property --
|
|
4757
|
+
get src() {
|
|
4758
|
+
return this._src;
|
|
4759
|
+
}
|
|
4760
|
+
set src(value2) {
|
|
4761
|
+
this._src = value2;
|
|
4762
|
+
this._srcObject = null;
|
|
4763
|
+
this.dispatchEvent(new Event("srcchange"));
|
|
4764
|
+
}
|
|
4765
|
+
// -- srcObject property (MediaStream) --
|
|
4766
|
+
get srcObject() {
|
|
4767
|
+
return this._srcObject;
|
|
4768
|
+
}
|
|
4769
|
+
set srcObject(stream) {
|
|
4770
|
+
this._srcObject = stream;
|
|
4771
|
+
this._src = "";
|
|
4772
|
+
this.dispatchEvent(new Event("srcobjectchange"));
|
|
4773
|
+
}
|
|
4774
|
+
// -- Playback control --
|
|
4775
|
+
play() {
|
|
4776
|
+
this.paused = false;
|
|
4777
|
+
this.ended = false;
|
|
4778
|
+
this.dispatchEvent(new Event("play"));
|
|
4779
|
+
return Promise.resolve();
|
|
4780
|
+
}
|
|
4781
|
+
pause() {
|
|
4782
|
+
this.paused = true;
|
|
4783
|
+
this.dispatchEvent(new Event("pause"));
|
|
4784
|
+
}
|
|
4785
|
+
load() {
|
|
4786
|
+
this.readyState = HAVE_NOTHING;
|
|
4787
|
+
this.networkState = NETWORK_LOADING;
|
|
4788
|
+
this.dispatchEvent(new Event("loadstart"));
|
|
4789
|
+
}
|
|
4790
|
+
canPlayType(_type) {
|
|
4791
|
+
return "";
|
|
4792
|
+
}
|
|
4793
|
+
static {
|
|
4794
|
+
this.HAVE_NOTHING = HAVE_NOTHING;
|
|
4795
|
+
}
|
|
4796
|
+
static {
|
|
4797
|
+
this.HAVE_METADATA = HAVE_METADATA;
|
|
4798
|
+
}
|
|
4799
|
+
static {
|
|
4800
|
+
this.HAVE_CURRENT_DATA = HAVE_CURRENT_DATA;
|
|
4801
|
+
}
|
|
4802
|
+
static {
|
|
4803
|
+
this.HAVE_FUTURE_DATA = HAVE_FUTURE_DATA;
|
|
4804
|
+
}
|
|
4805
|
+
static {
|
|
4806
|
+
this.HAVE_ENOUGH_DATA = HAVE_ENOUGH_DATA;
|
|
4807
|
+
}
|
|
4808
|
+
static {
|
|
4809
|
+
this.NETWORK_EMPTY = NETWORK_EMPTY;
|
|
4810
|
+
}
|
|
4811
|
+
static {
|
|
4812
|
+
this.NETWORK_IDLE = NETWORK_IDLE;
|
|
4813
|
+
}
|
|
4814
|
+
static {
|
|
4815
|
+
this.NETWORK_LOADING = NETWORK_LOADING;
|
|
4816
|
+
}
|
|
4817
|
+
static {
|
|
4818
|
+
this.NETWORK_NO_SOURCE = NETWORK_NO_SOURCE;
|
|
4819
|
+
}
|
|
4820
|
+
get [Symbol.toStringTag]() {
|
|
4821
|
+
return "HTMLMediaElement";
|
|
4822
|
+
}
|
|
4823
|
+
};
|
|
4824
|
+
}
|
|
4825
|
+
});
|
|
4826
|
+
|
|
4827
|
+
// ../../../packages/dom/dom-elements/lib/esm/html-video-element.js
|
|
4828
|
+
var HTMLVideoElement2;
|
|
4829
|
+
var init_html_video_element = __esm({
|
|
4830
|
+
"../../../packages/dom/dom-elements/lib/esm/html-video-element.js"() {
|
|
4831
|
+
init_console_gjs();
|
|
4832
|
+
init_auto_globals_495e9d950c();
|
|
4833
|
+
init_html_media_element();
|
|
4834
|
+
init_property_symbol();
|
|
4835
|
+
init_namespace_uri();
|
|
4836
|
+
HTMLVideoElement2 = class extends HTMLMediaElement {
|
|
4837
|
+
constructor() {
|
|
4838
|
+
super();
|
|
4839
|
+
this._videoWidth = 0;
|
|
4840
|
+
this._videoHeight = 0;
|
|
4841
|
+
this.poster = "";
|
|
4842
|
+
this[tagName] = "VIDEO";
|
|
4843
|
+
this[localName] = "video";
|
|
4844
|
+
this[namespaceURI] = NamespaceURI.html;
|
|
4845
|
+
}
|
|
4846
|
+
/** Intrinsic width of the video (set by the bridge when media metadata loads). */
|
|
4847
|
+
get videoWidth() {
|
|
4848
|
+
return this._videoWidth;
|
|
4849
|
+
}
|
|
4850
|
+
set videoWidth(value2) {
|
|
4851
|
+
this._videoWidth = value2;
|
|
4852
|
+
}
|
|
4853
|
+
/** Intrinsic height of the video (set by the bridge when media metadata loads). */
|
|
4854
|
+
get videoHeight() {
|
|
4855
|
+
return this._videoHeight;
|
|
4856
|
+
}
|
|
4857
|
+
set videoHeight(value2) {
|
|
4858
|
+
this._videoHeight = value2;
|
|
4859
|
+
}
|
|
4860
|
+
get [Symbol.toStringTag]() {
|
|
4861
|
+
return "HTMLVideoElement";
|
|
4862
|
+
}
|
|
4863
|
+
};
|
|
4864
|
+
}
|
|
4865
|
+
});
|
|
4866
|
+
|
|
4709
4867
|
// ../../../packages/dom/dom-elements/lib/esm/text.js
|
|
4710
4868
|
var Text;
|
|
4711
4869
|
var init_text = __esm({
|
|
@@ -4890,6 +5048,7 @@ var init_document = __esm({
|
|
|
4890
5048
|
init_node();
|
|
4891
5049
|
init_html_element();
|
|
4892
5050
|
init_html_image_element();
|
|
5051
|
+
init_html_video_element();
|
|
4893
5052
|
init_html_canvas_element();
|
|
4894
5053
|
init_text();
|
|
4895
5054
|
init_comment();
|
|
@@ -4921,6 +5080,8 @@ var init_document = __esm({
|
|
|
4921
5080
|
switch (tag) {
|
|
4922
5081
|
case "img":
|
|
4923
5082
|
return new HTMLImageElement2();
|
|
5083
|
+
case "video":
|
|
5084
|
+
return new HTMLVideoElement2();
|
|
4924
5085
|
case "canvas":
|
|
4925
5086
|
return new HTMLCanvasElement2();
|
|
4926
5087
|
default: {
|
|
@@ -14382,7 +14543,7 @@ var HTMLCanvasElement3 = class extends HTMLCanvasElement2 {
|
|
|
14382
14543
|
}
|
|
14383
14544
|
};
|
|
14384
14545
|
|
|
14385
|
-
// ../../../packages/dom/webgl/lib/esm/
|
|
14546
|
+
// ../../../packages/dom/webgl/lib/esm/webgl-bridge.js
|
|
14386
14547
|
init_console_gjs();
|
|
14387
14548
|
init_auto_globals_495e9d950c();
|
|
14388
14549
|
import GObject from "gi://GObject";
|
|
@@ -14777,11 +14938,11 @@ function attachEventControllers(widget, getElement, options) {
|
|
|
14777
14938
|
widget.add_controller(focusCtrl);
|
|
14778
14939
|
}
|
|
14779
14940
|
|
|
14780
|
-
// ../../../packages/dom/webgl/lib/esm/
|
|
14941
|
+
// ../../../packages/dom/webgl/lib/esm/webgl-bridge.js
|
|
14781
14942
|
init_esm4();
|
|
14782
|
-
var
|
|
14783
|
-
{ GTypeName: "
|
|
14784
|
-
class
|
|
14943
|
+
var WebGLBridge = GObject.registerClass(
|
|
14944
|
+
{ GTypeName: "GjsifyWebGLBridge" },
|
|
14945
|
+
class WebGLBridge2 extends Gtk3.GLArea {
|
|
14785
14946
|
constructor(params) {
|
|
14786
14947
|
super(params);
|
|
14787
14948
|
this._canvas = null;
|
|
@@ -45945,7 +46106,7 @@ function __assignType2(fn, args) {
|
|
|
45945
46106
|
return fn;
|
|
45946
46107
|
}
|
|
45947
46108
|
var TeapotWindow = class extends Adw.ApplicationWindow {
|
|
45948
|
-
/** Live demo reference; set once the
|
|
46109
|
+
/** Live demo reference; set once the WebGLBridge is ready. */
|
|
45949
46110
|
_demo = null;
|
|
45950
46111
|
static {
|
|
45951
46112
|
GObject2.registerClass({
|
|
@@ -45972,7 +46133,7 @@ var TeapotWindow = class extends Adw.ApplicationWindow {
|
|
|
45972
46133
|
this._tessRow.set_selected(DEFAULT_TESS_INDEX);
|
|
45973
46134
|
this._shadingRow.set_model(Gtk4.StringList.new([...SHADING_VALUES]));
|
|
45974
46135
|
this._shadingRow.set_selected(DEFAULT_SHADING_INDEX);
|
|
45975
|
-
const glArea = new
|
|
46136
|
+
const glArea = new WebGLBridge();
|
|
45976
46137
|
glArea.set_hexpand(true);
|
|
45977
46138
|
glArea.set_vexpand(true);
|
|
45978
46139
|
glArea.installGlobals();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gjsify/example-dom-three-geometry-teapot",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.15",
|
|
4
4
|
"description": "Three.js geometry teapot example ported from refs/three/examples/webgl_geometry_teapot.html with Adwaita controls",
|
|
5
5
|
"main": "dist/gjs.js",
|
|
6
6
|
"type": "module",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"build:assets": "cp -f src/browser/index.html dist/index.html && cp -f src/browser/webgl.css dist/webgl.css && cp -rf src/assets dist/assets"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@gjsify/webgl": "^0.1.
|
|
27
|
+
"@gjsify/webgl": "^0.1.15"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@girs/adw-1": "^1.10.0-4.0.0-rc.3",
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
"@girs/gjs": "^4.0.0-rc.3",
|
|
33
33
|
"@girs/gobject-2.0": "^2.88.0-4.0.0-rc.3",
|
|
34
34
|
"@girs/gtk-4.0": "^4.23.0-4.0.0-rc.3",
|
|
35
|
-
"@gjsify/adwaita-web": "^0.1.
|
|
36
|
-
"@gjsify/cli": "^0.1.
|
|
35
|
+
"@gjsify/adwaita-web": "^0.1.15",
|
|
36
|
+
"@gjsify/cli": "^0.1.15",
|
|
37
37
|
"@types/node": "^25.6.0",
|
|
38
38
|
"@types/three": "^0.183.1",
|
|
39
39
|
"http-server": "^14.1.1",
|