View Issue Details

IDProjectCategoryView StatusLast Update
0032433Open CASCADEOCCT:Visualizationpublic2021-11-23 23:46
Reporterkgv Assigned Tobugmaster  
PrioritynormalSeverityfeature 
Status closedResolutionfixed 
Target Version7.6.0Fixed in Version7.6.0 
Summary0032433: Visualization, TKService - introduce Wasm_Window implementing Aspect_Window interface using Emscripten SDK
DescriptionCurrently applications targeting Emscripten SDK has to implement Aspect_Window on their own or Aspect_NeutralWindow (like WebGL sample does).

It would be helpful introducing Wasm_Window wrapping class as a part of TKService.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot required

Relationships

related to 0032303 closedbugmaster Open CASCADE Draw Harness - fix compilation issues when using Emscripten SDK 
parent of 0032523 closedbugmaster Open CASCADE Draw Harness, ViewerTest - vrepaint -continuous has no effect 
parent of 0032597 closedsmoskvin Open CASCADE Coding Rules, Wasm_Window - add missing setter for DevicePixelRatio property 
parent of 0032609 closedsmoskvin Open CASCADE Visualization, Wasm_Window - handle mouse movements outside canvas element 
parent of 0032686 closedsmoskvin Open CASCADE Visualization, Wasm_Window - filter out unexpected pressed buttons state within mouse move / up events 
related to 0032473 closedbugmaster Open CASCADE Visualization, WNT_Window::ProcessMessage() - handle WM_TOUCH 
child of 0032306 closedkgv Open CASCADE Draw Harness, ViewerTest - move window message processing to TKService 

Activities

git

2021-06-10 22:06

administrator   ~0101763

Branch CR32433 has been created by kgv.

SHA-1: b57c5460006616d2f04a0c261c1f7b4807a34c7e


Detailed log of new commits:

Author: kgv
Date: Sun Apr 25 17:51:49 2021 +0300

    0032433: Visualization, TKService - introduce Wasm_Window implementing Aspect_Window interface using Emscripten SDK
    
    Introduced Wasm_Window implementing Aspect_Window interface.
    
    Aspect_WindowInputListener has been extended by touch input callbacks (moved from AIS_ViewController),
    which now implements redirection of single taps to UpdateMouseClick().
    
    AIS_ViewController::FetchNavigationKeys() now requests more frames even if Delta is zero,
    but navigation keys are pressed - indicated by a new flag AIS_WalkDelta::IsDefined().
    
    Fixed missing implementation of Xw_Window::DisplayConnection() getter.
    The property has been moved to the base class Aspect_Window.
    
    Removed unused Aspect_Convert.hxx.
    
    DRAWEXE targeting Wasm:
    - added exposing of FS interface so that it is possible uploading/downloading files to/from emulated file system on JavaScript level;
    - added printer redirecting messages to Module.printMessage callback accepting message gravity;
    - Run_Appli() now skips std::cin when Module.noExitRuntime is set.

git

2021-06-11 00:15

administrator   ~0101766

Branch CR32433 has been updated forcibly by kgv.

SHA-1: 677939911b393afb933d326a4e311426a581715f

git

2021-06-11 00:42

administrator   ~0101767

Branch CR32433 has been updated forcibly by kgv.

SHA-1: 737b6452300016cd5d6c2dbe7411ddb5df40234e

git

2021-06-11 00:57

administrator   ~0101768

Branch CR32433 has been updated forcibly by kgv.

SHA-1: d91c4384b3705f2c86b574e923e100b1f6699cc9

git

2021-06-11 08:38

administrator   ~0101769

Branch CR32433 has been updated forcibly by kgv.

SHA-1: c25cbbb0321145ccd83913391bb2261aafadfaa2

kgv

2021-06-11 08:40

developer   ~0101770

Please raise the patch
- OCCT: branch CR32433.

http://jenkins-test-occt.nnov.opencascade.com/view/CR32433-master-KGV/

git

2021-06-12 11:52

administrator   ~0101800

Branch CR32433 has been updated by kgv.

SHA-1: daf351ba731ea947db46f5476d3da7d6542d9d3e


Detailed log of new commits:

Author: kgv
Date: Sat Jun 12 11:52:24 2021 +0300

    # fix compilation on obsolete compilers

bugmaster

2021-06-13 11:13

administrator   ~0101811

Combination -
OCCT branch : IR-2021-06-11
master SHA - f9ab9f7f1c949c9da13f42443208a6e9b0e41d70
a87b7ddc8cb44606b91e3f37113847c3f5f50fdc
Products branch : IR-2021-06-11 SHA - d56d13cc84edf3d8321cc5373683872ec5a9fe74
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 17450.34000000035 / 17504.380000000427 [-0.31%]
Products
Total CPU difference: 11477.360000000128 / 11532.860000000106 [-0.48%]
Windows-64-VC14:
OCCT
Total CPU difference: 19191.5625 / 19141.46875 [+0.26%]
Products
Total CPU difference: 12904.59375 / 12831.25 [+0.57%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2021-06-13 11:56

administrator   ~0101817

Branch CR32433 has been deleted by mnt.

SHA-1: daf351ba731ea947db46f5476d3da7d6542d9d3e

Related Changesets

occt: master f9ab9f7f

2021-04-25 14:51:49

kgv


Committer: bugmaster Details Diff
0032433: Visualization, TKService - introduce Wasm_Window implementing Aspect_Window interface using Emscripten SDK

Introduced Wasm_Window implementing Aspect_Window interface.

Aspect_WindowInputListener has been extended by touch input callbacks (moved from AIS_ViewController),
which now implements redirection of single taps to UpdateMouseClick().

AIS_ViewController::FetchNavigationKeys() now requests more frames even if Delta is zero,
but navigation keys are pressed - indicated by a new flag AIS_WalkDelta::IsDefined().

Fixed missing implementation of Xw_Window::DisplayConnection() getter.
The property has been moved to the base class Aspect_Window.

Removed unused Aspect_Convert.hxx.

DRAWEXE targeting Wasm:
- added exposing of FS interface so that it is possible uploading/downloading files to/from emulated file system on JavaScript level;
- added printer redirecting messages to Module.printMessage callback accepting message gravity;
- Run_Appli() now skips std::cin when Module.noExitRuntime is set.
Affected Issues
0032433
mod - adm/UDLIST Diff File
mod - samples/webgl/CMakeLists.txt Diff File
mod - samples/webgl/WasmOcctView.cpp Diff File
mod - samples/webgl/WasmOcctView.h Diff File
rm - samples/webgl/WasmVKeys.h Diff File
mod - src/AIS/AIS_ViewController.cxx Diff File
mod - src/AIS/AIS_ViewController.hxx Diff File
mod - src/AIS/AIS_WalkDelta.hxx Diff File
rm - src/Aspect/Aspect_Convert.hxx Diff File
mod - src/Aspect/Aspect_Window.hxx Diff File
mod - src/Aspect/Aspect_WindowInputListener.cxx Diff File
mod - src/Aspect/Aspect_WindowInputListener.hxx Diff File
mod - src/Aspect/FILES Diff File
mod - src/Cocoa/Cocoa_Window.mm Diff File
mod - src/Draw/Draw_Window.cxx Diff File
mod - src/DRAWEXE/CMakeLists.txt Diff File
mod - src/DRAWEXE/DRAWEXE.cxx Diff File
mod - src/DRAWEXE/DRAWEXE.html Diff File
mod - src/TKService/PACKAGES Diff File
mod - src/ViewerTest/ViewerTest_EventManager.cxx Diff File
mod - src/ViewerTest/ViewerTest_EventManager.hxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
add - src/Wasm/FILES Diff File
add - src/Wasm/Wasm_Window.cxx Diff File
add - src/Wasm/Wasm_Window.hxx Diff File
mod - src/WNT/WNT_Window.cxx Diff File
mod - src/Xw/Xw_Window.cxx Diff File
mod - src/Xw/Xw_Window.hxx Diff File

Issue History

Date Modified Username Field Change
2021-06-10 20:55 kgv New Issue
2021-06-10 20:55 kgv Assigned To => kgv
2021-06-10 22:05 kgv Relationship added related to 0032303
2021-06-10 22:06 git Note Added: 0101763
2021-06-11 00:15 git Note Added: 0101766
2021-06-11 00:26 kgv Relationship added child of 0032306
2021-06-11 00:42 git Note Added: 0101767
2021-06-11 00:57 git Note Added: 0101768
2021-06-11 08:38 git Note Added: 0101769
2021-06-11 08:40 kgv Note Added: 0101770
2021-06-11 08:40 kgv Assigned To kgv => bugmaster
2021-06-11 08:40 kgv Status new => resolved
2021-06-11 08:40 kgv Status resolved => reviewed
2021-06-12 11:52 git Note Added: 0101800
2021-06-13 11:13 bugmaster Note Added: 0101811
2021-06-13 11:13 bugmaster Status reviewed => tested
2021-06-13 11:32 bugmaster Test case number => Not required
2021-06-13 11:41 bugmaster Changeset attached => occt master f9ab9f7f
2021-06-13 11:41 bugmaster Status tested => verified
2021-06-13 11:41 bugmaster Resolution open => fixed
2021-06-13 11:56 git Note Added: 0101817
2021-07-06 00:42 kgv Relationship added related to 0032473
2021-08-06 16:13 kgv Relationship added parent of 0032523
2021-09-29 16:50 kgv Relationship added parent of 0032597
2021-10-07 00:23 kgv Relationship added parent of 0032609
2021-11-23 23:46 kgv Relationship added parent of 0032686