All Downloads are FREE. Search and download functionalities are using the official Maven repository.

chrome.wallpaper.Wallpaper.scala Maven / Gradle / Ivy

package chrome.wallpaper

import chrome.ChromeAPI
import chrome.permissions.Permission.API
import chrome.utils.ErrorHandling._
import chrome.wallpaper.bindings.WallpaperDetails

import scala.concurrent.{Future, Promise}
import scala.scalajs.js

object Wallpaper extends ChromeAPI {

  val requiredPermissions: Set[API] = Set(API.Wallpaper)

  def setWallpaper(details: WallpaperDetails): Future[Option[Any]] = {
    val promise = Promise[Option[Any]]()
    bindings.Wallpaper
      .setWallpaper(details, (thumbnail: js.UndefOr[js.Any]) => {
        promise.complete(lastErrorOrValue(thumbnail.toOption))
      })
    promise.future
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy