Commit Graph

1769 Commits

Author SHA1 Message Date
Benjamin Pasero
b9947f2a37 If I switch workspace, focus moves to different VS Code instance (fix #106727) 2020-09-15 11:16:04 +02:00
Benjamin Pasero
1fccb9e58c proxy authentication does not work on 1.49 (#106434) 2020-09-11 14:54:03 +02:00
Benjamin Pasero
87847325a6 electron - set spellcheck: false again for windows 2020-09-11 09:49:18 +02:00
Martin Aeschlimann
7ce60506a9 Merge pull request #106277 from microsoft/aeschli/adoptColorScheme
add HostColorService & unify ColorSchema
2020-09-08 12:48:07 -07:00
mbassit
4a801b9737 Increased height of proxy authentication dialog to prevent cutting buttons (#83900) 2020-09-08 11:19:39 +02:00
Martin Aeschlimann
b8caf59d0c adopt color scheme in host service 2020-09-07 17:28:38 +02:00
Sandeep Somavarapu
79c4f10983 Fix #106021 2020-09-07 15:24:57 +02:00
Benjamin Pasero
4a2b990be3 themes - first cut ColorScheme support (#105715) (#105716) 2020-09-07 10:25:10 +02:00
Benjamin Pasero
4f8453d572 sandbox - allow native workbench environment service on common layer 2020-09-03 16:24:27 +02:00
Benjamin Pasero
0280c04dc6 sandbox - lift some environment properties that are only used in workbench up 2020-09-03 15:03:54 +02:00
Benjamin Pasero
ae942354ab sandbox - move native environment service to common layer 2020-09-03 11:30:08 +02:00
Benjamin Pasero
29ca95b2a2 Hitting a breakpoint doesn't active window (fix #105913) 2020-09-02 14:16:19 +02:00
Benjamin Pasero
e2d5e90ec4 debt - move extension debug IPC channel closer to interface 2020-08-31 17:10:19 +02:00
Benjamin Pasero
bc797a3b0b sandbox - remove dependency to native keymap on startup 2020-08-31 16:58:26 +02:00
Benjamin Pasero
e8817784f2 themes - distinguish between OS HC and autodetect HC 2020-08-28 17:01:19 +02:00
Benjamin Pasero
21dd836ddb macOS: detect high contrast theme (fix #105481) 2020-08-27 10:45:00 +02:00
Benjamin Pasero
f4d92fcb73 electron 9: adopt 'render-process-gone' event and show details 2020-08-27 10:24:50 +02:00
Benjamin Pasero
46860a105b sandbox - allow to bring up a minimal workbench with simple services and in-memory file-system 2020-08-26 08:32:19 +02:00
Benjamin Pasero
653e7e26df sandbox - make lazyEnv fit for sandbox use 2020-08-24 11:09:34 +02:00
Benjamin Pasero
e3dc5a339c Startup error dialog closes immediately (fix #104493) 2020-08-12 15:56:47 +02:00
Robo
e4296330de chore: update to electron 9-x-y (#102011)
Co-authored-by: Benjamin Pasero <benjpas@microsoft.com>
2020-08-11 11:30:23 -07:00
Robo
227d533937 Revert "chore: update to electron 9-x-y (#102011)" (#103599)
This reverts commit 3d0d50caf8.
2020-07-30 08:35:43 -07:00
Robo
3d0d50caf8 chore: update to electron 9-x-y (#102011)
* chore: bump electron@9.0.5

* remove exploration config

* fix compile error

* fix compile error

* crashReporter has to be called only once before app ready

* chore: bump electron@9.1.0

* enable LayoutNG

* fix cron schedule

* allow disabling appcenter crash reporting

* set additional crash reporting parameters

* start crashreporter for child process on linux

* setup crash parameters only once

* remove unused crashReporter.guid

* address review feedback

* reuse argv.json for storing crash reporter id

* remove trailing commas

* update localized name

* update argv based on telemetry optout

* update initial config based on setting

* fix conditional errors

* remove telemetry.enableCrashReporter

* move default crash reporter config to electron-main

* update comment for ext host crash reporting

* set default value for configuration

* some 💄 changes

* address review feedback

* do not use ES7 features in JS yet

* add app.focus({ steal: true }) usage

Co-authored-by: Benjamin Pasero <benjpas@microsoft.com>
2020-07-21 09:39:34 +02:00
Benjamin Pasero
7e40e8e4be auth dialog - enable context isolation (#102926)
* auth dialog - enable context isolation

* remote nativeWindowOpen
2020-07-20 23:16:33 -07:00
Benjamin Pasero
a006879172 electron - explicitly disable spellchecker
It will be enabled by default starting with Electron 9
2020-07-21 07:50:25 +02:00
Benjamin Pasero
e5b3ff76ba Enable sandbox and contextIsolation for process explorer when running with --__sandbox (#102924)
* sandbox - allow to enable sandbox and contextIsolation for process explorer

* fix asar lookup
2020-07-20 10:30:20 +02:00
Robo
9a220aa3b3 feat: enable sandbox for proxy auth window (#100907)
* feat: enable sandbox for proxy auth window

* webContents.send uses structured clone algorithm

* mv electron-browser/auth.* => electron-sandbox
2020-07-09 09:27:31 -07:00
Johannes Rieken
b36c0e1906 move globalStorageHome, workspaceStorageHome to shared env-service, https://github.com/microsoft/vscode/issues/101857 2020-07-09 12:48:02 +02:00
Benjamin Pasero
73d89afbdc diag - add a cli arg to open devtools when window opens 2020-07-09 10:25:31 +02:00
Benjamin Pasero
c7fe3b41ae perf - set zoom level from electron-main and stop using webFrame in renderer unless changing zoom
//cc @deepak1556
2020-07-07 08:38:12 +02:00
Benjamin Pasero
4f65b91444 electron - disable remote module in all windows (#101224) 2020-06-28 12:12:38 +02:00
Matt Bierner
48c6e3979d Add experimental support for using iframes for webviews (#100991)
* Use non-deprecated API version

* Prototype: enable offline iframe based webviews on desktop

Adds a new `vscode-webview` protocol  for loading the wrapper contents of a webview

Still needs cleaning up

* fix loading of electron webview

* Cleanup and add `webview.experimental.useIframes` setting

Co-authored-by: deepak1556 <hop2deep@gmail.com>
2020-06-25 14:52:02 -07:00
Connor Peet
08ed2b692a debug: allow debugging the renderer process (#100242)
* debug: allow debugging the renderer process

This adds a new parameter to the `launchVSCode` request --
`debugRenderer`. If set to true and we're in Electron, the main process
will attempt to stand up a CDP-speaking server and respond with the port
the debugger can connect to in order to handle debug events.

Note: this only works when webviews are iframe-based. It's _possible_
to do the same treatment to webviews with greater complexity. I didn't
implement that today, and maybe we say since iframes are coming
eventually (and they can be toggled on with a user setting that we could
have in the starter...) we don't need do add handling for that.

This does not work when debugging in web because there's no way to
force the browser to enter debug mode.

Code in this PR is still rough, I will keep this in PR until
I have js-debug working end to end and iron out any kinks.

* fixup! adopt new api

* webviews: add 'purpose' flag and extension ID to iframe webview uri

The `purpose` can be used for notebooks instead of the extension ID,
since there's no extension associated with the renderer view.

The renderer URL now looks like:

```
https://<guid>.vscode-webview-test.com/<random>/index.html?id=<guid>&extensionId=&purpose=notebookRenderer
```
And a renderer is:

```
https://<guid>.vscode-webview-test.com/<random>/index.html?id=<guid>&extensionId=connor4312.vsix-viewer&purpose=undefined
```
I wanted to put this in the page title, but unfortunately this is hard
due to https://bugs.chromium.org/p/chromium/issues/detail?id=1058108.
Instead, add it to the url which _is_ available and given in
the first targetInfoChanged event.

Co-authored-by: Andre Weinand <aweinand@microsoft.com>
2020-06-25 11:54:36 -07:00
Benjamin Pasero
040e32591f electron - try catch around screen API usage (fix #100334) 2020-06-25 12:22:38 +02:00
Matt Bierner
5c11b81875 Revert "Use custom scheme for loading webview wrapper contents"
This reverts commit 61f796ee89.

Not sure how this change causes problems but revert seems to fix it.

Fixes #100879
Fixes #100874
2020-06-23 14:18:05 -07:00
Matt Bierner
61f796ee89 Use custom scheme for loading webview wrapper contents
This moves us closer to using iframes directly instead of webview elements
2020-06-22 17:26:10 -07:00
Matt Bierner
f7ec17d216 Move the webview port mapping from renderer to main process (#100342)
* Move the webview port mapping from renderer to main process

Fixes #95955

Our port mapping impl for webview currently relies on `getWebContents` to handle port mapping in the renderer process. This API has been deprecated by electron.

This change instead moves the webview port mapping handler to the main process. To make this change, I also realized that the tunnel service needed to be moved from `vs/workbench` to `vs/platform` so that we could consume it from the main process

Other changes made as part of this refactoring:

-  Register all webview in a `webview` partition. This ensures that our port mapping manger only intercepts requests made inside webviews.

- Send the `webContentsId` to the main process. This is required to implement `onBeforeRequest`. Unfortunatly the referrer always seems to be undefined for these requests

- Have the tunnel service take a resolved authority instead of taking the raw authority. This was required due to the tunnel service moving to `vs/platform`

* Cleanup and adding url filter
2020-06-17 15:15:05 -07:00
Benjamin Pasero
7f49ef52e3 sandbox - configure nativeWindowOpen:true
This matches the behaviour of sandboxed Electron renderers.
2020-06-16 18:52:34 +02:00
Benjamin Pasero
f22dcae3b7 ipc - have an explicit method to mark a window ready 2020-06-15 17:56:24 +02:00
Benjamin Pasero
1cc95bad54 ipc - introduce an explicit event for "onOSResume" 2020-06-15 17:01:00 +02:00
Benjamin Pasero
eb3ee0b36f ipc - properly remove vscode:exit raw ipc 2020-06-15 14:39:13 +02:00
SteVen Batten
d3458d2fba replace duplicate mac id 2020-06-11 15:09:05 -07:00
Matt Bierner
cadabab73f Mark _serviceBrand properties using declare (#99312)
_serviceBrand is only used for typing and should not result in emit

Also adds readonly
2020-06-05 11:04:15 -07:00
Benjamin Pasero
1a738653b7 better fix for #99039 2020-06-03 09:02:27 +02:00
Benjamin Pasero
7fe821d6d6 Switching to simple full screen produces a jump (fix #99039) 2020-06-03 08:55:15 +02:00
Matt Bierner
229602bb79 Use createChannelReceiver for webview manager
From https://github.com/microsoft/vscode/pull/98131#issuecomment-635104095
2020-05-27 22:24:50 -07:00
Matt Bierner
75fb631e42 Move webview protocol to live in webview manager service
This reduces the use of the ipc module
2020-05-27 16:27:17 -07:00
Christof Marti
be5a16bf9c Remove trailing slash (fixes #97885) 2020-05-27 22:39:32 +02:00
Matt Bierner
5684336da0 Move webview's use of setIgnoreMenuShortcuts to main process (#98131)
* Move webview's use of setIgnoreMenuShortcuts to main processes

Part of #95955

Switches from calling `setIgnoreMenuShortcuts` on the renderer to calling it on the main thread

* Use channels for communication instead of ipc

* Cleanup ipc implementation

* Rename webviewMainService -> WebviewManagerService
2020-05-27 13:01:20 -07:00
deepak1556
113fd1b7bc chore: bump electron@7.3.0 2020-05-27 12:47:39 -07:00