aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
...
* refactor: Fetch service inject asynchronouslyLibravatar Kristóf Marussy2021-12-25
| | | | | | Since we don't plan to shim any APIs that must be present immediately when the service loads, we might as well switch to asynchronous IPC for fetching the script to inject into the main world.
* feat: Fuse the electron binaryLibravatar Kristóf Marussy2021-12-25
| | | | Disables some node flags in production and enables cookie encryption.
* chore: Bump dependency versionsLibravatar Kristóf Marussy2021-12-25
|
* fix: Restore accidentally deleted autoHideMenuBarLibravatar Kristóf Marussy2021-12-25
|
* feat: Harden window navigation and permissionsLibravatar Kristóf Marussy2021-12-25
|
* refactor: Simplify script injectionLibravatar Kristóf Marussy2021-12-25
| | | | | | | | | Inject CSS and main world scripts synchronously to avoid race conditions with page loading. Don't try to miming userAgentData for now, since it won't bypass google's checks. However, simply omitting chrome from the user agent does bypass them, at least for now.
* feat: Shim userAgentData in all frames and workersLibravatar Kristóf Marussy2021-12-24
| | | | Not good enough for google, we'll need a different approach.
* feat: User agent data simulatorLibravatar Kristóf Marussy2021-12-24
|
* fix: Typings in js config filesLibravatar Kristóf Marussy2021-12-24
|
* feat: User-agent reductionLibravatar Kristóf Marussy2021-12-24
| | | | | Unfortunately, the reduced user-agent doesn't fool the google login form, but at least reduces the amount of leaked information.
* refactor: Load ui and service in parallelLibravatar Kristóf Marussy2021-12-24
|
* feat: Alternative background color workaroundLibravatar Kristóf Marussy2021-12-24
| | | | | | | Let's try injecting CSS to set the background color of html to white (instead of transparent) into the loaded pages. The CSS is injected before the website's own styles load, so they should always have the lowest priority.
* feat: Service to main process communicationLibravatar Kristóf Marussy2021-12-24
|
* feat: Set up partition persistenceLibravatar Kristóf Marussy2021-12-23
|
* feat: Set some options in main processLibravatar Kristóf Marussy2021-12-23
| | | | | * Remove sophie and electron from the user-agent sting whenever possible * Disable MPRIS integration
* feat: Add BrowserView and synchronize its positionLibravatar Kristóf Marussy2021-12-23
|
* build: Enable asarLibravatar Kristóf Marussy2021-12-23
| | | | As per electron-builder recommendations
* docs: Add READMELibravatar Kristóf Marussy2021-12-23
|
* chore: Add license headersLibravatar Kristóf Marussy2021-12-23
| | | | | Centralizes vite configuration to be able to add license banners to outputs in one place.
* build: Enable typescript composite mode and cleanLibravatar Kristóf Marussy2021-12-23
| | | | | | Moves all typings to the dist-types directories from the dist directories so that we can let vite clean the dist directories on build without clobbering the typings generated by tsc.
* feat: Add react and mobx integrationLibravatar Kristóf Marussy2021-12-23
|
* feat: Main to renderer store synchronizationLibravatar Kristóf Marussy2021-12-23
| | | | | | | | | | | | Patches are send in one direction only, from the main to the renderer, so all actions have to go through the context bridge and the renderer IPC to modify the store in the renderer. This makes the store in the main process a single source of truth, which simplifies debugging and state persistence. The store in the renderer is connected to redux devtools for inspection, but playing back the state in the devtools won't change the sotre in main process.
* feat: Add shared package for electron ipcLibravatar Kristóf Marussy2021-12-23
|
* feat: Add muiLibravatar Kristóf Marussy2021-12-22
|
* build: Simplify project structureLibravatar Kristóf Marussy2021-12-22
|
* build: Add electron-builderLibravatar Kristóf Marussy2021-12-22
|
* Initial commitLibravatar Kristóf Marussy2021-12-22
Project skeleton based on https://github.com/cawa-93/vite-electron-builder but we use react instead of vue and yarn instead of npm.