Skip to content

Commit 3191443

Browse files
authored
Scala3 support (#108)
1 parent 9dcddda commit 3191443

File tree

57 files changed

+245
-207
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+245
-207
lines changed

bindings/src/main/scala/chrome/alarms/bindings/AlarmInfo.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.alarms.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
object AlarmInfo {
67

bindings/src/main/scala/chrome/app/window/bindings/BoundsSpecification.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.app.window.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
object BoundsSpecification {
67

bindings/src/main/scala/chrome/app/window/bindings/CreateWindowOptions.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.app.window.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
object CreateWindowOptions {
67

bindings/src/main/scala/chrome/app/window/bindings/Window.scala

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,32 +4,32 @@ import chrome.events.bindings.Event
44

55
import scala.scalajs.js
66
import scala.scalajs.js.annotation.JSGlobal
7-
import scala.scalajs.js.{UndefOr, native, undefined}
7+
import scala.scalajs.js.{UndefOr, undefined}
88

99
@js.native
1010
@JSGlobal("chrome.app.window")
1111
object Window extends js.Object {
1212

13-
val onBoundsChanged: Event[js.Function0[_]] = native
14-
val onClosed: Event[js.Function0[_]] = native
15-
val onFullscreened: Event[js.Function0[_]] = native
16-
val onMaximized: Event[js.Function0[_]] = native
17-
val onMinimized: Event[js.Function0[_]] = native
18-
val onRestored: Event[js.Function0[_]] = native
13+
val onBoundsChanged: Event[js.Function0[_]] = js.native
14+
val onClosed: Event[js.Function0[_]] = js.native
15+
val onFullscreened: Event[js.Function0[_]] = js.native
16+
val onMaximized: Event[js.Function0[_]] = js.native
17+
val onMinimized: Event[js.Function0[_]] = js.native
18+
val onRestored: Event[js.Function0[_]] = js.native
1919

20-
def current(): AppWindow = native
20+
def current(): AppWindow = js.native
2121

2222
def create(
2323
url: String,
2424
options: UndefOr[CreateWindowOptions] = undefined,
2525
callback: UndefOr[js.Function1[AppWindow, _]] = undefined
2626
): Unit =
27-
native
27+
js.native
2828

29-
def getAll(): js.Array[AppWindow] = native
29+
def getAll(): js.Array[AppWindow] = js.native
3030

31-
def get(id: AppWindow.Id): AppWindow = native
31+
def get(id: AppWindow.Id): AppWindow = js.native
3232

33-
def canSetVisibleOnAllWorkspaces(): Boolean = native
33+
def canSetVisibleOnAllWorkspaces(): Boolean = js.native
3434

3535
}

bindings/src/main/scala/chrome/audio/bindings/Properties.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.audio.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
object Properties {
67

bindings/src/main/scala/chrome/browserAction/bindings/BadgeBackgroundColorDetails.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package chrome.browserAction.bindings
22

33
import scala.scalajs.js
44
import scala.scalajs.js.|
5-
import scala.scalajs.js.|.Evidence
5+
import scala.scalajs.js.|.{Evidence, UnionOps, undefOr2jsAny}
66

77
@js.native
88
trait BadgeBackgroundColorDetails extends TabIdDetails {

bindings/src/main/scala/chrome/browserAction/bindings/BadgeTextDetails.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.browserAction.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait BadgeTextDetails extends TabIdDetails {

bindings/src/main/scala/chrome/browserAction/bindings/IconDetails.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import org.scalajs.dom.ImageData
44

55
import scala.scalajs.js
66
import scala.scalajs.js.|
7-
import scala.scalajs.js.|.Evidence
7+
import scala.scalajs.js.|.{Evidence, UnionOps, undefOr2jsAny}
88

99
@js.native
1010
trait IconDetails extends TabIdDetails {
@@ -25,7 +25,7 @@ object IconDetails {
2525
): IconDetails = {
2626
// explicitly merge our union types so that dynamic is happy
2727
val anyImageData: js.UndefOr[js.Any] = imageData.map(_.merge)
28-
val anyPath: js.UndefOr[js.Any] = path.map(_.merge)
28+
val anyPath: js.UndefOr[js.Any] = path.map(_.asInstanceOf[js.Any])
2929

3030
if (anyImageData.isDefined) {
3131
js.Dynamic

bindings/src/main/scala/chrome/browserAction/bindings/PopupDetails.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.browserAction.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait PopupDetails extends TabIdDetails {

bindings/src/main/scala/chrome/browserAction/bindings/TabIdDetails.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.browserAction.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait TabIdDetails extends js.Object {

bindings/src/main/scala/chrome/browserAction/bindings/TitleDetails.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.browserAction.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait TitleDetails extends TabIdDetails {

bindings/src/main/scala/chrome/downloads/bindings/DownloadOptions.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.downloads.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait DownloadOptions extends js.Object {

bindings/src/main/scala/chrome/downloads/bindings/FileIconOptions.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.downloads.bindings
22

3-
import scalajs.js
3+
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait FileIconOptions extends js.Object {

bindings/src/main/scala/chrome/downloads/bindings/Query.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.downloads.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait Query extends js.Object {

bindings/src/main/scala/chrome/events/EventSourceImplicits.scala

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,6 @@ class EventSource3Impl[A, B, C](event: Event[js.Function3[A, B, C, _]]) extends
8484

8585
object EventSourceImplicits {
8686

87-
import scala.language.implicitConversions
88-
8987
implicit def eventAsEventSource0(event: Event[js.Function0[_]]): EventSource[Unit] =
9088
new EventSource0Impl(event)
9189

bindings/src/main/scala/chrome/notifications/bindings/NotificationOptions.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.notifications.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait NotificationOptions extends js.Object {

bindings/src/main/scala/chrome/permissions/Permissions.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ package chrome.permissions
22

33
import chrome.events.EventSource
44
import chrome.events.EventSourceImplicits._
5+
import chrome.permissions.Permission.{API, Host}
56
import chrome.permissions.bindings._
6-
import chrome.permissions.Permission.{Host, API}
77
import chrome.utils.ErrorHandling._
88

99
import scala.concurrent.{Future, Promise}

bindings/src/main/scala/chrome/permissions/bindings/Permissions.scala

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,32 +4,33 @@ import chrome.events.bindings.Event
44

55
import scala.scalajs.js
66
import scala.scalajs.js.annotation.JSGlobal
7-
import scala.scalajs.js.{UndefOr, native, undefined}
7+
import scala.scalajs.js.{UndefOr, undefined}
8+
import scala.scalajs.js.|.undefOr2jsAny
89

910
@js.native
1011
@JSGlobal("chrome.permissions")
1112
object Permissions extends js.Object {
1213

13-
val onAdded: Event[js.Function1[PermissionList, _]] = native
14-
val onRemoved: Event[js.Function1[PermissionList, _]] = native
14+
val onAdded: Event[js.Function1[PermissionList, _]] = js.native
15+
val onRemoved: Event[js.Function1[PermissionList, _]] = js.native
1516

16-
def getAll(callback: js.Function1[PermissionList, _]): Unit = native
17+
def getAll(callback: js.Function1[PermissionList, _]): Unit = js.native
1718

18-
def contains(permissions: PermissionList, callback: js.Function1[Boolean, _]): Unit = native
19+
def contains(permissions: PermissionList, callback: js.Function1[Boolean, _]): Unit = js.native
1920

2021
def request(permissions: PermissionList, callback: UndefOr[js.Function1[Boolean, _]] = undefined): Unit =
21-
native
22+
js.native
2223

2324
def remove(permissions: PermissionList, callback: UndefOr[js.Function1[Boolean, _]] = undefined): Unit =
24-
native
25+
js.native
2526

2627
}
2728

2829
@js.native
2930
trait PermissionList extends js.Object {
3031

31-
var permissions: UndefOr[js.Array[String]] = native
32-
var origins: UndefOr[js.Array[String]] = native
32+
var permissions: UndefOr[js.Array[String]] = js.native
33+
var origins: UndefOr[js.Array[String]] = js.native
3334

3435
}
3536

bindings/src/main/scala/chrome/runtime/bindings/Runtime.scala

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -5,69 +5,69 @@ import org.scalajs.dom.Window
55

66
import scala.scalajs.js
77
import scala.scalajs.js.annotation.JSGlobal
8-
import scala.scalajs.js.{UndefOr, native, undefined}
8+
import scala.scalajs.js.{UndefOr, undefined}
99

1010
@JSGlobal("chrome.runtime")
1111
@js.native
1212
object Runtime extends js.Object {
1313

1414
type AppID = String
1515

16-
val id: AppID = native
17-
val onStartup: Event[js.Function0[_]] = native
18-
val onInstalled: Event[js.Function1[OnInstalledDetails, _]] = native
19-
val onSuspend: Event[js.Function0[_]] = native
20-
val onSuspendCanceled: Event[js.Function0[_]] = native
16+
val id: AppID = js.native
17+
val onStartup: Event[js.Function0[_]] = js.native
18+
val onInstalled: Event[js.Function1[OnInstalledDetails, _]] = js.native
19+
val onSuspend: Event[js.Function0[_]] = js.native
20+
val onSuspendCanceled: Event[js.Function0[_]] = js.native
2121

2222
val onUpdateAvailable: Event[js.Function1[OnUpdateAvailableDetails, _]] =
23-
native
24-
val onBrowserUpdateAvailable: Event[js.Function0[_]] = native
25-
val onConnect: Event[js.Function1[Port, _]] = native
26-
val onConnectExternal: Event[js.Function1[Port, _]] = native
27-
val onMessage: Event[js.Function3[UndefOr[Any], MessageSender, js.Function1[Any, _], Boolean]] = native
28-
val onMessageExternal: Event[js.Function3[UndefOr[Any], MessageSender, js.Function1[Any, _], Boolean]] = native
23+
js.native
24+
val onBrowserUpdateAvailable: Event[js.Function0[_]] = js.native
25+
val onConnect: Event[js.Function1[Port, _]] = js.native
26+
val onConnectExternal: Event[js.Function1[Port, _]] = js.native
27+
val onMessage: Event[js.Function3[UndefOr[Any], MessageSender, js.Function1[Any, _], Boolean]] = js.native
28+
val onMessageExternal: Event[js.Function3[UndefOr[Any], MessageSender, js.Function1[Any, _], Boolean]] = js.native
2929

3030
val onRestartRequired: Event[js.Function1[RestartReasons.RestartReason, _]] =
31-
native
31+
js.native
3232

33-
def lastError: UndefOr[Error] = native
33+
def lastError: UndefOr[Error] = js.native
3434

35-
def getBackgroundPage(callback: js.Function1[Window, _]): Unit = native
35+
def getBackgroundPage(callback: js.Function1[Window, _]): Unit = js.native
3636

37-
def reload(): Unit = native
37+
def reload(): Unit = js.native
3838

39-
def restart(): Unit = native
39+
def restart(): Unit = js.native
4040

41-
def getManifest(): Manifest = native
41+
def getManifest(): Manifest = js.native
4242

4343
def openOptionsPage(callback: js.UndefOr[js.Function0[_]]): Unit = js.native
4444

45-
def getURL(path: String): String = native
45+
def getURL(path: String): String = js.native
4646

47-
def setUninstallURL(url: String): Unit = native
47+
def setUninstallURL(url: String): Unit = js.native
4848

49-
def requestUpdateCheck(callback: js.Function2[UpdateCheck.Status, UndefOr[UpdateCheck.Details], _]): Unit = native
49+
def requestUpdateCheck(callback: js.Function2[UpdateCheck.Status, UndefOr[UpdateCheck.Details], _]): Unit = js.native
5050

51-
def connect(extensionId: UndefOr[AppID] = undefined, connectInfo: UndefOr[ConnectInfo] = undefined): Port = native
51+
def connect(extensionId: UndefOr[AppID] = undefined, connectInfo: UndefOr[ConnectInfo] = undefined): Port = js.native
5252

53-
def connectNative(application: String): Port = native
53+
def connectNative(application: String): Port = js.native
5454

5555
def sendMessage(
5656
extensionId: UndefOr[AppID] = undefined,
5757
message: js.Any,
5858
options: UndefOr[SendMessageOptions] = undefined,
5959
responseCallback: UndefOr[js.Function1[js.Object, _]] = js.undefined
60-
): Unit = native
60+
): Unit = js.native
6161

6262
def sendNativeMessage(
6363
application: String,
6464
message: js.Object,
6565
responseCallback: UndefOr[js.Function1[js.Object, _]]
66-
): Unit = native
66+
): Unit = js.native
6767

68-
def getPlatformInfo(callback: js.Function1[PlatformInfo, _]): Unit = native
68+
def getPlatformInfo(callback: js.Function1[PlatformInfo, _]): Unit = js.native
6969

70-
def getPackageDirectoryEntry(callback: js.Function1[DirectoryEntry, _]): Unit = native
70+
def getPackageDirectoryEntry(callback: js.Function1[DirectoryEntry, _]): Unit = js.native
7171

7272
}
7373

@@ -82,7 +82,7 @@ object UpdateCheck {
8282
@js.native
8383
trait Details extends js.Object {
8484

85-
val version: String = native
85+
val version: String = js.native
8686

8787
}
8888

bindings/src/main/scala/chrome/sockets/tcp/bindings/SecureOptions.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.sockets.tcp.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait SecureOptions extends js.Object {

bindings/src/main/scala/chrome/sockets/tcp/bindings/SocketProperties.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package chrome.sockets.tcp.bindings
22

33
import scala.scalajs.js
4+
import scala.scalajs.js.|.undefOr2jsAny
45

56
@js.native
67
trait SocketProperties extends js.Object {

0 commit comments

Comments
 (0)