Skip to content

Commit

Permalink
Make viewHelperDiv a class property
Browse files Browse the repository at this point in the history
  • Loading branch information
arjxn-py committed Oct 14, 2024
1 parent 049220a commit bdf1aff
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 22 deletions.
40 changes: 21 additions & 19 deletions packages/base/src/3dview/mainview.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -362,29 +362,29 @@ export class MainView extends React.Component<IProps, IStates> {

this._transformControls.enabled = false;
this._transformControls.visible = false;
this._createViewHelper();
}
};

// ViewHelper setup
this._viewHelper = new ViewHelper(
this._camera,
this._renderer.domElement
);
this._viewHelper.center = this._controls.target;
private _createViewHelper() {
this._viewHelper = new ViewHelper(this._camera, this._renderer.domElement);
this._viewHelper.center = this._controls.target;

const viewHelperDiv = document.createElement('div');
viewHelperDiv.id = 'viewHelper';
viewHelperDiv.style.position = 'absolute';
viewHelperDiv.style.right = '0px';
viewHelperDiv.style.bottom = '0px';
viewHelperDiv.style.height = '128px';
viewHelperDiv.style.width = '128px';
const viewHelperDiv = document.createElement('div');
viewHelperDiv.style.position = 'absolute';
viewHelperDiv.style.right = '0px';
viewHelperDiv.style.bottom = '0px';
viewHelperDiv.style.height = '128px';
viewHelperDiv.style.width = '128px';

this.divRef.current.appendChild(viewHelperDiv);
this._viewHelperDiv = viewHelperDiv;

viewHelperDiv.addEventListener('pointerup', event =>
this._viewHelper.handleClick(event)
);
}
};
this.divRef.current?.appendChild(this._viewHelperDiv);

this._viewHelperDiv.addEventListener('pointerup', event =>
this._viewHelper.handleClick(event)
);
}

animate = (): void => {
this._requestID = window.requestAnimationFrame(this.animate);
Expand Down Expand Up @@ -1312,6 +1312,7 @@ export class MainView extends React.Component<IProps, IStates> {
}

this._camera.add(this._cameraLight);
this._createViewHelper();

this._scene.add(this._camera);
this._controls.object = this._camera;
Expand Down Expand Up @@ -1476,6 +1477,7 @@ export class MainView extends React.Component<IProps, IStates> {
private _pointer3D: IPointer | null = null;
private _clock: THREE.Clock;
private _viewHelper: ViewHelper;
private _viewHelperDiv: HTMLDivElement | null = null;
private _collaboratorPointers: IDict<IPointer>;
private _pointerGeometry: THREE.SphereGeometry;
private _contextMenu: ContextMenu;
Expand Down
2 changes: 1 addition & 1 deletion packages/base/src/panelview/formbuilder.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ export const LuminoSchemaForm = (
Widget.detach(widget);
}
} catch (e) {
console.warn('Exception while detaching Lumino widget.', e);
// The widget is destroyed already by React.
}
};
}, [children]);
Expand Down
4 changes: 2 additions & 2 deletions python/jupytercad_core/src/factory.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { ConsolePanel, IConsoleTracker } from '@jupyterlab/console';
import {
JupyterCadModel,
IJupyterCadTracker,
IJCadWorkerRegistry,
IJCadExternalCommandRegistry
IJCadExternalCommandRegistry,
IJupyterCadTracker
} from '@jupytercad/schema';
import { ABCWidgetFactory, DocumentRegistry } from '@jupyterlab/docregistry';
import { CommandRegistry } from '@lumino/commands';
Expand Down
8 changes: 8 additions & 0 deletions python/jupytercad_core/src/plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,14 @@ export const trackerPlugin: JupyterFrontEndPlugin<IJupyterCadTracker> = {
const tracker = new WidgetTracker<JupyterCadWidget>({
namespace: NAME_SPACE
});
tracker.currentChanged.connect(() => {
const currentWidget = tracker.currentWidget;

if (currentWidget) {
const resizeEvent = new Event('resize');
window.dispatchEvent(resizeEvent);
}
});
console.log('jupytercad:core:tracker is activated!');
return tracker;
}
Expand Down

0 comments on commit bdf1aff

Please sign in to comment.