Skip to content

Conversation

@agarny
Copy link
Contributor

@agarny agarny commented Dec 2, 2025

No description provided.

agarny added 30 commits November 6, 2025 18:33
Before, we could have had a race condition resulting in the splash screen sometimes being shown and sometimes not.

Here, we create the main window only once we know for sure that the splash screen has been created. Not also that we "manually" show the splash screen ourselves rather than rely on the `show` property being `true` by default to do it for us. This avoids potentially getting a temporary white window.
This has the indirect consequence of messing up the handling of our URI scheme (see issue opencor#268).
Indeed, when it is packaged, electron-builder uses `build/icon.icns` or `build/icon.ico` to set the app icon.

Also, to manually set the app icon results, on macOS at least, in the app icon being bigger for some reasons while it looks "right" when packaging OpenCOR using electron-builder.
Removed the button aspect of it.
Also, moved the PNG file needed on Windows and Linux to `src/main/assets` so that it gets packaged by electron-builder (!!).
…documents and instances as we want for a given file.
… peer dependencies.

They were originally here so that we could easily find out when a new version of them is available (since we "manually" import them), but it's not good to have things under `peerDependencies` unless actually needed. So, removing them... which means that we will need to "manually" check whether a new version of `mathjs` and/or `plotly.js-gl2d-dist-min` is available.
… the toolbar.

The objective is for the center template to always in the same place.
Copilot AI review requested due to automatic review settings December 2, 2025 23:43
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request merges the mvp branch back into main, introducing significant architectural changes to OpenCOR's simulation framework. The changes refactor how SED-ML documents and instances are managed, shifting from file-path-based identification to numeric ID-based tracking, and add GitHub integration capabilities via Firebase authentication.

Key Changes:

  • Refactored C++ API to use numeric IDs instead of file paths for SED documents and instances
  • Consolidated simulation views by merging interactive and standard modes into a single component
  • Added Firebase-based GitHub OAuth integration for repository access
  • Updated dependency versions and configuration files for improved tooling support

Reviewed changes

Copilot reviewed 46 out of 48 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/renderer/src/libopencor/src/sed.{h,cpp} Changed return types from void to napi_value for create/instantiate functions; implemented ID-based tracking
src/renderer/src/libopencor/src/common.{h,cpp} Replaced FileData struct with separate ID-based maps; renamed helper functions from valueTo* to to*
src/renderer/src/libopencor/src/file.cpp Updated to use new file path-based storage instead of file pointer keys
src/renderer/src/libopencor/locSedApi.ts Major refactor: removed base classes, added validation logic, changed to ID-based parameter passing
src/renderer/src/libopencor/locFileApi.ts Simplified by removing document/instance caching from File class
src/renderer/src/components/views/SimulationExperimentView.vue Merged standard and interactive modes; added toggle button and consolidated UI
src/renderer/src/components/OpenCOR.vue Added GitHub OAuth integration with Firebase authentication
src/renderer/src/common/firebaseConfig.ts New file for Firebase configuration management
src/renderer/src/common/gitHubIntegration.ts New file for secure token storage using system keychain
src/renderer/src/common/rendererServer.ts New HTTP server for OAuth callback handling in packaged desktop app
src/renderer/package.json Version bump to 0.20251203.1; added firebase and octokit dependencies
biome.json, src/renderer/biome.json Simplified formatter/linter includes; enabled VCS integration

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@agarny agarny merged commit ca9a7c3 into opencor:main Dec 2, 2025
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant