Skip to content

Commit 383c44a

Browse files
code-asherkylecarbs
authored andcommitted
Fix scrolling on Firefox
1 parent e1101c1 commit 383c44a

1 file changed

Lines changed: 55 additions & 0 deletions

File tree

scripts/vscode.patch

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,45 @@
1+
diff --git a/src/vs/base/browser/mouseEvent.ts b/src/vs/base/browser/mouseEvent.ts
2+
index 89ff65ec49..bc0cf2b08c 100644
3+
--- a/src/vs/base/browser/mouseEvent.ts
4+
+++ b/src/vs/base/browser/mouseEvent.ts
5+
@@ -147,12 +147,15 @@ export class StandardWheelEvent {
6+
if (e) {
7+
let e1 = <IWebKitMouseWheelEvent><any>e;
8+
let e2 = <IGeckoMouseWheelEvent><any>e;
9+
+ let e3 = <MouseWheelEvent><any>e;
10+
11+
// vertical delta scroll
12+
if (typeof e1.wheelDeltaY !== 'undefined') {
13+
this.deltaY = e1.wheelDeltaY / 120;
14+
} else if (typeof e2.VERTICAL_AXIS !== 'undefined' && e2.axis === e2.VERTICAL_AXIS) {
15+
this.deltaY = -e2.detail / 3;
16+
+ } else if (typeof e3.deltaY !== "undefined") {
17+
+ this.deltaY = -e3.deltaY / 3;
18+
}
19+
20+
// horizontal delta scroll
21+
@@ -164,6 +167,8 @@ export class StandardWheelEvent {
22+
}
23+
} else if (typeof e2.HORIZONTAL_AXIS !== 'undefined' && e2.axis === e2.HORIZONTAL_AXIS) {
24+
this.deltaX = -e.detail / 3;
25+
+ } else if (typeof e3.deltaX !== "undefined") {
26+
+ this.deltaX = -e3.deltaX / 3;
27+
}
28+
29+
// Assume a vertical scroll if nothing else worked
30+
diff --git a/src/vs/base/browser/ui/scrollbar/scrollableElement.ts b/src/vs/base/browser/ui/scrollbar/scrollableElement.ts
31+
index a6256deeba..69819e0f3a 100644
32+
--- a/src/vs/base/browser/ui/scrollbar/scrollableElement.ts
33+
+++ b/src/vs/base/browser/ui/scrollbar/scrollableElement.ts
34+
@@ -311,7 +311,7 @@ export abstract class AbstractScrollableElement extends Widget {
35+
this._onMouseWheel(new StandardWheelEvent(browserEvent));
36+
};
37+
38+
- this._mouseWheelToDispose.push(dom.addDisposableListener(this._listenOnDomNode, 'mousewheel', onMouseWheel));
39+
+ this._mouseWheelToDispose.push(dom.addDisposableListener(this._listenOnDomNode, 'wheel', onMouseWheel));
40+
}
41+
}
42+
143
diff --git a/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts b/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts
244
index 457818a975..ad45ffe58a 100644
345
--- a/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts
@@ -8,6 +50,19 @@ index 457818a975..ad45ffe58a 100644
850
}
951
+
1052
+startup({ machineId: "1" });
53+
diff --git a/src/vs/editor/browser/controller/mouseHandler.ts b/src/vs/editor/browser/controller/mouseHandler.ts
54+
index 1a8af35373..ae45e08aeb 100644
55+
--- a/src/vs/editor/browser/controller/mouseHandler.ts
56+
+++ b/src/vs/editor/browser/controller/mouseHandler.ts
57+
@@ -121,7 +121,7 @@ export class MouseHandler extends ViewEventHandler {
58+
e.stopPropagation();
59+
}
60+
};
61+
- this._register(dom.addDisposableListener(this.viewHelper.viewDomNode, 'mousewheel', onMouseWheel, true));
62+
+ this._register(dom.addDisposableListener(this.viewHelper.viewDomNode, 'wheel', onMouseWheel, true));
63+
64+
this._context.addEventHandler(this);
65+
}
1166
diff --git a/src/vs/editor/contrib/clipboard/clipboard.ts b/src/vs/editor/contrib/clipboard/clipboard.ts
1267
index 5e43f1b39e..7775e3b6da 100644
1368
--- a/src/vs/editor/contrib/clipboard/clipboard.ts

0 commit comments

Comments
 (0)