MCPcopy Index your code
hub / github.com/material-shell/material-shell / constructor

Method constructor

src/manager/msDndManager.ts:32–120  ·  view source on GitHub ↗
(msWindowManager: MsWindowManager)

Source from the content-addressed store, hash-verified

30 throttledCheckUnderPointer: (this: MsDndManager) => void;
31
32 constructor(msWindowManager: MsWindowManager) {
33 super();
34 this.msWindowManager = msWindowManager;
35 this.signalMap = new Map();
36 this.dragInProgress = null;
37 this.inputGrabber = new InputGrabber();
38 this.observe(this.msWindowManager, 'ms-window-created', () => {
39 this.listenForMsWindowsSignal();
40 });
41 this.listenForMsWindowsSignal();
42
43 this.observe(
44 global.workspace_manager,
45 'active-workspace-changed',
46 () => {
47 if (this.dragInProgress !== null) {
48 const newMsWorkspace =
49 Me.msWorkspaceManager!.getActivePrimaryMsWorkspace();
50 if (this.dragInProgress.msWindow.metaWindow) {
51 this.dragInProgress.msWindow.metaWindow.change_workspace_by_index(
52 global.workspace_manager.get_active_workspace_index(),
53 true
54 );
55 } else {
56 Me.msWorkspaceManager!.setWindowToMsWorkspace(
57 this.dragInProgress.msWindow,
58 newMsWorkspace
59 );
60 }
61
62 this.dragInProgress.originalParent =
63 newMsWorkspace.msWorkspaceActor.tileableContainer;
64 }
65 }
66 );
67
68 this.observe(
69 global.display,
70 'grab-op-begin',
71 (display, metaWindow, op) => {
72 if (op === Meta.GrabOp.MOVING) {
73 const msWindow = metaWindow.msWindow;
74 if (
75 msWindow &&
76 msWindow.metaWindow === metaWindow &&
77 !msWindow.followMetaWindow
78 ) {
79 //global.display.end_grab_op(global.get_current_time());
80 this.startDrag(msWindow);
81 }
82 }
83 }
84 );
85
86 this.observe(this.inputGrabber, 'captured-event', (_, event) => {
87 if (this.dragInProgress !== null) {
88 const [stageX, stageY] = event.get_coords();
89 const msWindowDragged = this.dragInProgress.msWindow;

Callers

nothing calls this directly

Calls 13

startDragMethod · 0.95
endDragMethod · 0.95
throttleFunction · 0.90
typeMethod · 0.80
roundMethod · 0.80
get_coordsMethod · 0.65
set_positionMethod · 0.65

Tested by

no test coverage detected