@netless/window-manager 0.4.0-canary.31 → 0.4.0-canary.32
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/README.md +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.es.js +1 -1
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +5 -5
- package/dist/index.umd.js.map +1 -1
- package/docs/advanced.md +39 -0
- package/package.json +2 -2
- package/src/Utils/RoomHacker.ts +2 -2
- package/src/index.ts +7 -6
package/docs/advanced.md
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
## 进阶使用
|
2
|
+
|
3
|
+
- 目录
|
4
|
+
- [撤销重做]
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
<h3>撤销重做</h3>
|
9
|
+
|
10
|
+
> 以下事件和属性都会根据 `focus` 的窗口来进行自动切换应用对象
|
11
|
+
|
12
|
+
|
13
|
+
#### 获取可以撤销/重做的步数
|
14
|
+
|
15
|
+
```ts
|
16
|
+
manager.canUndoSteps
|
17
|
+
manager.canRedoSteps
|
18
|
+
```
|
19
|
+
|
20
|
+
#### 监听可以撤销/重做的步数的变化
|
21
|
+
|
22
|
+
`canRedoStepsChange` 和 `canUndoStepsChange` 会在切换窗口时重新触发
|
23
|
+
|
24
|
+
```ts
|
25
|
+
manager.emitter.on("canUndoStepsChange", (steps: number) => {
|
26
|
+
// 可以撤销的步数更新
|
27
|
+
})
|
28
|
+
manager.emitter.on("canRedoStepsChange", (steps: number) => {
|
29
|
+
// 可以重做的步数更新
|
30
|
+
})
|
31
|
+
```
|
32
|
+
|
33
|
+
#### 撤销/重做
|
34
|
+
|
35
|
+
```ts
|
36
|
+
manager.undo() //撤销
|
37
|
+
manager.redo() // 重做
|
38
|
+
```
|
39
|
+
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@netless/window-manager",
|
3
|
-
"version": "0.4.0-canary.
|
3
|
+
"version": "0.4.0-canary.32",
|
4
4
|
"description": "",
|
5
5
|
"main": "dist/index.es.js",
|
6
6
|
"module": "dist/index.es.js",
|
@@ -58,6 +58,6 @@
|
|
58
58
|
"typescript": "^4.3.5",
|
59
59
|
"video.js": "^7.14.3",
|
60
60
|
"vite": "^2.5.3",
|
61
|
-
"white-web-sdk": "^2.16.
|
61
|
+
"white-web-sdk": "^2.16.5"
|
62
62
|
}
|
63
63
|
}
|
package/src/Utils/RoomHacker.ts
CHANGED
@@ -41,8 +41,8 @@ export const replaceRoomFunction = (room: Room | Player, manager: WindowManager)
|
|
41
41
|
room.fillSceneSnapshot = (...args) => manager.mainView.fillSceneSnapshot(...args);
|
42
42
|
room.generateScreenshot = (...args) => manager.mainView.generateScreenshot(...args);
|
43
43
|
room.setMemberState = (...args) => manager.mainView.setMemberState(...args);
|
44
|
-
room.redo = () => manager.
|
45
|
-
room.undo = () => manager.
|
44
|
+
room.redo = () => manager.redo();
|
45
|
+
room.undo = () => manager.undo();
|
46
46
|
room.cleanCurrentScene = () => manager.cleanCurrentScene();
|
47
47
|
delegateRemoveScenes(room);
|
48
48
|
}
|
package/src/index.ts
CHANGED
@@ -369,6 +369,7 @@ export class WindowManager extends InvisiblePlugin<WindowMangerAttributes> {
|
|
369
369
|
this.appManager?.refresh();
|
370
370
|
this.appManager?.resetMaximized();
|
371
371
|
this.appManager?.resetMinimized();
|
372
|
+
this.appManager?.displayerWritableListener(!this.room.isWritable);
|
372
373
|
WindowManager.container = container;
|
373
374
|
}
|
374
375
|
|
@@ -766,21 +767,21 @@ export class WindowManager extends InvisiblePlugin<WindowMangerAttributes> {
|
|
766
767
|
}
|
767
768
|
}
|
768
769
|
|
769
|
-
public redo():
|
770
|
+
public redo(): number {
|
770
771
|
const focused = this.focused;
|
771
772
|
if (focused) {
|
772
|
-
this.appManager?.focusApp?.view?.redo();
|
773
|
+
return this.appManager?.focusApp?.view?.redo() || 0;
|
773
774
|
} else {
|
774
|
-
this.mainView.redo();
|
775
|
+
return this.mainView.redo();
|
775
776
|
}
|
776
777
|
}
|
777
778
|
|
778
|
-
public undo():
|
779
|
+
public undo(): number {
|
779
780
|
const focused = this.focused;
|
780
781
|
if (focused) {
|
781
|
-
this.appManager?.focusApp?.view?.undo();
|
782
|
+
return this.appManager?.focusApp?.view?.undo() || 0;
|
782
783
|
} else {
|
783
|
-
this.mainView.undo();
|
784
|
+
return this.mainView.undo();
|
784
785
|
}
|
785
786
|
}
|
786
787
|
|