Skip to content

Releases: stuerp/foo_uie_webview

v0.3.0.0-alpha2, "Happy New Year"

31 Dec 18:11
Compare
Choose a tag to compare
Pre-release
  • New:
    • Methods
      • showSearchUI(filter): Shows the library search UI initialized with the specified filter.
      • formatMetaDBHandleTitle(handle, text): Formats the title of the specified metadb handle with the specified title formatting text.
      • sortMetaDBHandleListByFormat(format): Sorts a list of metadb handles by the specified title format.
      • sortMetaDBHandleListByPath(): Sorts a list of metadb handles by the path.
      • sortMetaDBHandleListByRelativePath(): Sorts a list of metadb handles by the relative path.
      • removeMetaDBHandleListDuplicates(): Removes duplicate items from a metadb handle list.
      • calculateMetaDBHandleListDuration(): Calculates the total duration of a list of metadb handles.
      • cloneMetaDBHandleList(): Clones a list of metadb handles.
      • clearMetaDBHandleList(): Clears a list of metadb handles.
      • addMetaDBHandleList(): Adds the items of a metadb handle list to another.
    • Properties
      • lastErrorNumber: Gets the number of the last error.
      • lastErrorMessage: Gets the message of the last error.
  • Changed: canReadFiles, canReadDirectories, canExecuteShellOperations and isEnabled are properties now.
  • Improved: Expanded JSDoc comments in foobar2000.js.
  • Improved: Expanded error checking and handling in foobar2000.js.

v0.3.0.0-alpha1

27 Dec 21:04
Compare
Choose a tag to compare
v0.3.0.0-alpha1 Pre-release
Pre-release
  • New:
    • Included foobar2000.js wraps the API to make JavaScript development easier. (alpha1)

    • Set permissions in the Preferences dialog. (alpha1)

    • Properties

      • isLibraryEnabled: Returns true if the Media Library is enabled. (alpha1)
      • canReadFiles: Returns true if the component can read local files. (alpha1)
      • canReadDirectories: Returns true if the component can read local directories. (alpha1)
      • canExecuteShellOperations: Returns true if the component can execute shell operations. (alpha1)
    • Methods

      • execute(filePath, arguments, directoryPath, operation, showMode): Execites a shell operation on a file. Mostly used to run applications. Check the SHELLEXECUTEINFOW documentation for the possible values of the parameters. (alpha1)

      • showLibraryPreferences(): Shows the Media Library preferences dialog. (alpha1)

      • searchLibrary(query): Searches the Media Library for matching tracks. Returns a metadb handle list. (alpha1)

      • getMetaDBHandleListCount(list): Returns the number of items in a list of metadb handles. (alpha1)

      • getMetaDBHandleListItem(list, index): Returns the item at the specified index in a list of metadb handles. (alpha1)

      • releaseMetaDBHandleList(list): Releases a list of metadb handles. (alpha1)

      • getMetaDBHandlePath(handle): Gets the path of the specified metadb handle. (alpha1)

      • getMetaDBHandleRelativePath(handle): Gets the path of the specified metadb handle relative to the Media Library folder it is in. (alpha1)

      • getMetaDBHandleLength(handle): Gets the length of the specified metadb handle (in ms). (alpha1)

    • Callbacks

      • onLibraryItemsAdded(items): Called when items have been added to the Media Library. (alpha1)
      • onLibraryItemsModified(items): Called when Media Library items have been modified. (alpha1)
      • onLibraryItemsRemoved(items): Called when Media Library items have been removed. (alpha1)

v0.2.1.0

15 Dec 10:29
e04a638
Compare
Choose a tag to compare
  • Fixed: Misinterpreted true Booleans values. (Regression)

v0.2.0.0, "I'm getting framed..."

07 Dec 13:22
23fabf4
Compare
Choose a tag to compare
  • New: Builds with foobar2000 SDK 2024-08-07.
  • New: Updated WebView2 component to 1.0.2849.39.
  • New: Templates can contain iframes. Take a look at the included Default-FrameTemplate.html example.
  • New:
    • Methods

      • readAllText(filePath, codePage): Reads a file and returns it as a string. If codePage is 0 the file is assumed to be UTF-8 encoded.

      • readImage(filePath): Reads an image file and returns it as a Base64 string. (alpha2)

      • readDirectory(directoryPath, searchPattern): Reads a directory and returns the matching items as a JSON string. (alpha3)

      • getPlaylistName(playlistIndex): Gets the name of a playlist. (alpha2)

      • setPlaylistName(playlistIndex, name): Sets the name of a playlist. (alpha2)

      • findPlaylist(name): Returns the index of the playlist with the specified name. (alpha2)

      • getPlaylistItemCount(index): Gets the number of items in a platlist. (alpha2)

      • getFocusedPlaylistItem(playlistIndex): Gets the index of the focused item in a playlist. (alpha2)

      • setFocusedPlaylistItem(playlistIndex, name): Sets the index of the focused item in a playlist. (alpha2)

      • ensurePlaylistItemVisible(playlistIndex, itemIndex): Ensures the specified item of a playlist is visible. (alpha2)

      • isPlaylistItemSelected(playlistIndex, itemIndex): Returns true if the specified item of a playlist is selected. (alpha3)

      • executePlaylistDefaultAction(playlistIndex, itemIndex): Executes the default action on the specified item of a playlist. (alpha2)

      • createPlaylist(playlistIndex, name): Creates a new playlist with the specified name and inserts it after the specified playlist. (alpha2)

      • addPath(playlistIndex, itemIndex, filePath, selectAddedItem): Adds an item to the specified playlist after the specified item using a file path and optionally selects it. (alpha3)

      • duplicatePlaylist(playlistIndex, name): Duplicates the specified playlist and sets its name. (alpha2)

      • getPlaylistItems(playlistIndex): Returns the items of the specified playlist as a JSON string. (alpha3)

      • selectPlaylistItem(playlistIndex, itemIndex): Selects the specified item in a playlist. (alpha3)

      • deselectPlaylistItem(playlistIndex, itemIndex): Deselects the specified item in the specified playlist. (alpha3)

      • getSelectedPlaylistItems(playlistIndex): Returns the selected items of the specified playlist as a JSON string. (alpha3)

      • clearPlaylistSelection(playlistIndex): Clears the selected items in the specified playlist. (alpha2)

      • removeSelectedPlaylistItems(playlistIndex): Removes the selected items from the specfied playlist. (alpha3)

      • removeUnselectedPlaylistItems(playlistIndex): Removes the unselected items from the specfied playlist. (alpha3)

      • removePlaylistItem(playlistIndex, itemIndex): Removes the specified item from the specified playlist. (alpha3)

      • clearPlaylist(playlistIndex): Removes all items from the specified playlist. (alpha2)

      • deletePlaylist(playlistIndex): Deletes the specified playlist. (alpha3)

      • createAutoPlaylist(playlistIndex, name, query, sort, flags): Creates an auto playlist. Possible values for flags are 0 = default, 1 = Keep sorted). (alpha2)

      • isAutoPlaylist(playlistIndex): Returns true if the specified playlist is an auto playlist. (alpha2)

    • Properties

      • playlistCount: Returns the number of playlists. (alpha2)
      • activePlaylist: Gets or sets index of the active playlist. (alpha2)
      • playingPlaylist: Gets or sets index of the playing playlist. (alpha2)
      • isAutoPlaylist: Returns true if the specified playlist is an auto playlist. (alpha2)
      • playbackOrder: Gets or sets the playback order (0 = default, 1 = repeat playlist, 2 = repeat track, 3 = random, 4 = shuffle tracks, 5 = shuffle albums, 6 = shuffle folders). (alpha2)
    • Callbacks

      • onPlaylistItemsAdded(playlistIndex, startindex, locations): Called when items have been added to the specified playlist. (alpha5)

      • onPlaylistItemsReordered(playlistIndex, items): Called when the items of the specified playlist have been reordered. (alpha5)

      • onPlaylistItemsRemoving(playlistIndex, removedItems, newCount): Called when removing items of the specified playlist. (alpha5)

      • onPlaylistItemsRemoved(playlistIndex, removedItems, newCount): Called when items of the specified playlist have been removed. (alpha5)

      • onPlaylistItemsModified(playlistIndex, items): Called when some playlist items of the specified playlist have been modified. (alpha5)

      • onPlaylistItemsModifiedFromPlayback(playlistIndex, items): Called when some playlist items of the specified playlist have been modified from playback. (alpha5)

      • onPlaylistItemsReplaced(playlistIndex, items): Called when items of the specified playlist have been replaced. (alpha5)

      • onPlaylistItemEnsureVisible(playlistIndex, itemIndex): Called when the specified item of a playlist was ensured to be visible. (alpha4)

      • onPlaylistCreated(playlistIndex, name): Called when the specified playlist has been created. (alpha4)

      • onPlaylistRenamed(playlistIndex, name): Called when the specified playlist has been renamed. (alpha4)

      • onPlaylistActivated(oldPlaylistIndex, newPlaylistIndex): Called when the active playlist is changed. (alpha4)

      • onPlaylistLocked(playlistIndex): Called when the specified playlist has been locked. (alpha4)

      • onPlaylistUnlocked(playlistIndex): Called when the specified playlist has been unlocked. (alpha4)

      • onPlaylistSelectedItemsChanged(playlistIndex, selectedItems): Called when the selected items of the specified playlist have been changed. (alpha5)

      • onPlaylistFocusedItemChanged(playlistIndex, fromItemIndex, toItemIndex): Called when the focused item of the specified playlist has been changed. (alpha4)

      • onPlaylistsReordered(playlistOrder): Called when the playlists have been reordered. (alpha5)

      • onPlaylistsRemoving(removedPlaylists, newCount): Called when playlists are being removed. (alpha5)

      • onPlaylistsRemoved(removedPlaylists, newCount): Called when playlists have been removed. (alpha5)

      • onDefaultFormatChanged(): Called when the default format has been changed. (alpha4)

      • onPlaybackOrderChanged(playbackOrderIndex): Called when the playback order has been changed. (alpha4)

    • Fixed: Booleans in objects are now parsed correctly. (alpha4)

    • Fixed: Boolean parameters and return values are true Javascript booleans now. (alpha4)

    • Improved: The searchPattern parameter is now optional in ReadDirectory() and defaults to "*.*". (alpha4)

    • Improved: The CreateAutoPlaylist() sort and flags parameter can be omitted. They default to "" and 0 respectively. (alpha4)

    • Changed: Returned JSON objects now use camelCase casing. (alpha4)

    • Changed: Breaking Change Callbacks follow the Category-Noun-Verb naming convention. (alpha5)

    • Changed: Breaking Change All properties, methods and callbacks to use camelCase convention. (alpha5)

    • Changed: Breaking Change The parameter list of most callbacks has been expanded. (alpha5)

v0.2.0.0-alpha5

02 Dec 19:54
Compare
Choose a tag to compare
v0.2.0.0-alpha5 Pre-release
Pre-release
  • Changed:
    • Callbacks

      • onPlaylistItemsAdded(playlistIndex, startindex, locations): Called when items have been added to the specified playlist. (alpha5)

      • onPlaylistItemsReordered(playlistIndex, items): Called when the items of the specified playlist have been reordered. (alpha5)

      • onPlaylistItemsRemoving(playlistIndex, removedItems, newCount): Called when removing items of the specified playlist. (alpha5)

      • onPlaylistItemsRemoved(playlistIndex, removedItems, newCount): Called when items of the specified playlist have been removed. (alpha5)

      • onPlaylistItemsModified(playlistIndex, items): Called when some playlist items of the specified playlist have been modified. (alpha5)

      • onPlaylistItemsModifiedFromPlayback(playlistIndex, items): Called when some playlist items of the specified playlist have been modified from playback. (alpha5)

      • onPlaylistItemsReplaced(playlistIndex, items): Called when items of the specified playlist have been replaced. (alpha5)

      • onPlaylistSelectedItemsChanged(playlistIndex, selectedItems): Called when the selected items of the specified playlist have been changed. (alpha5)

      • onPlaylistsReordered(playlistOrder): Called when the playlists have been reordered. (alpha5)

      • onPlaylistsRemoving(removedPlaylists, newCount): Called when playlists are being removed. (alpha5)

      • onPlaylistsRemoved(removedPlaylists, newCount): Called when playlists have been removed. (alpha5)

    • Changed: Breaking Change Callbacks follow the Category-Noun-Verb naming convention. (alpha5)

    • Changed: Breaking Change All properties, methods and callbacks to use camelCase convention. (alpha5)

    • Changed: Breaking Change The parameter list of most callbacks has been expanded. (alpha5)

v0.2.0.0-alpha4

01 Dec 17:17
Compare
Choose a tag to compare
v0.2.0.0-alpha4 Pre-release
Pre-release
  • Events

    • OnAddedPlaylistItems(playlistIndex): Called when items have been added to the specified playlist. (alpha4)

    • OnReorderedPlaylistItems(playlistIndex): Called when the items of the specified playlist have been reordered. (alpha4)

    • OnRemovingPlaylistItems(playlistIndex): Called when removing items of the specified playlist. (alpha4)

    • OnRemovedPlaylistItems(playlistIndex): Called when items of the specified playlist have been removed. (alpha4)

    • OnPlaylistSelectedItemsChanged(playlistIndex): Called when the selected items of the specified playlist have been changed. (alpha4)

    • OnPlaylistFocusedItemChanged(playlistIndex, fromItemIndex, toItemIndex): Called when the focused item of the specified playlist has been changed. (alpha4)

    • OnModifiedPlaylistItems(playlistIndex): Called when some playlist items of the specified playlist have been modified. (alpha4)

    • OnModifiedPlaylistItemsFromPlayback(playlistIndex): Called when some playlist items of the specified playlist have been modified from playback. (alpha4)

    • OnEnsuredPlaylistItemIsVisible(playlistIndex, itemIndex): Called when the specified item of a playlist was ensured to be visible. (alpha4)

    • OnReplacedPlaylistItems(playlistIndex): Called when items of the specified playlist have been replaced. (alpha4)

    • OnChangedActivePlaylist(oldPlaylistIndex, newPlaylistIndex): Called when the active playlist is changed. (alpha4)

    • OnCreatedPlaylist(playlistIndex, name): Called when the specified playlist has been created. (alpha4)

    • OnReorderedPlaylists(): Called when the playlists have been reordered. (alpha4)

    • OnRemovingPlaylists(): Called when playlists are being removed. (alpha4)

    • OnRemovedPlaylists(): Called when playlists have been removed. (alpha4)

    • OnRenamedPlaylist(playlistIndex, name): Called when the specified playlist has been renamed. (alpha4)

    • OnLockedPlaylist(playlistIndex): Called when the specified playlist has been locked. (alpha4)

    • OnUnlockedPlaylist(playlistIndex): Called when the specified playlist has been unlocked. (alpha4)

    • OnDefaultFormatChanged(): Called when the default format has been changed. (alpha4)

    • OnChangedPlaybackOrder(playbackOrderIndex): Called when the playback order has been changed. (alpha4)

  • Fixed: Booleans in objects are now parsed correctly. (alpha4)

  • Fixed: Boolean parameters and return values are true Javascript booleans now. (alpha4)

  • Improved: The searchPattern parameter is now optional in ReadDirectory() and defaults to ".". (alpha4)

  • Improved: The CreateAutoPlaylist() sort and flags parameter can be omitted. They default to "" and 0 respectively. (alpha4)

  • Changed: Returned JSON objects now use Pascal casing. (alpha4)

v0.2.0.0-alpha3

27 Nov 20:11
Compare
Choose a tag to compare
v0.2.0.0-alpha3 Pre-release
Pre-release
  • New:
    • Methods
      • ReadDirectory(directoryPath, searchPattern): Reads the specified directory and returns the matching items as a JSON string. (alpha3)

      • IsPlaylistItemSelected(playlistIndex, itemIndex): Returns true if the specified item of the specified playlist is selected. (alpha3)

      • AddPath(playlistIndex, itemIndex, filePath, selectAddedItem): Adds an item to the specified playlist after the specified item using a file path and optionally selects it. (alpha3)

      • GetPlaylistItems(playlistIndex): Returns the items of the specified playlist as a JSON string. (alpha3)

      • SelectPlaylistItem(playlistIndex, itemIndex): Selects the specified item in the specified playlist. (alpha3)

      • DeselectPlaylistItem(playlistIndex, itemIndex): Deselects the specified item in the specified playlist. (alpha3)

      • GetSelectedPlaylistItems(playlistIndex): Returns the selected items of the specified playlist as a JSON string. (alpha3)

      • RemoveSelectedPlaylistItems(playlistIndex, crop): Removes the selected items from the specfied playlist. (alpha3)

      • RemovePlaylistItem(playlistIndex, itemIndex): Removes the specified item from the specified playlist. (alpha3)

      • DeletePlaylist(playlistIndex): Deletes the specified playlist. (alpha3)

v0.2.0.0-alpha2

24 Nov 07:28
Compare
Choose a tag to compare
v0.2.0.0-alpha2 Pre-release
Pre-release
  • Methods
    • ReadImage(filePath): Reads the specified file and returns it as a Base64 string. (alpha2)
    • GetPlaylistName: Gets the name of the specified playlist. (alpha2)
    • SetPlaylistName: Sets the name of the specified playlist. (alpha2)
    • FindPlaylist(name): Returns the index of the playlist with specified name. (alpha2)
    • GetPlaylistItemCount(index): Gets the number of items in the specified platlist. (alpha2)
    • GetFocusedPlaylistItem: Gets the index of the focused item in the specified playlist. (alpha2)
    • SetFocusedPlaylistItem: Sets the index of the focused item in the specified playlist. (alpha2)
    • EnsurePlaylistItemVisible(playlistIndex, itemIndex): Ensures the specified item of the specified playlist is visible. (alpha2)
    • ExecutePlaylistDefaultAction(playlistIndex, itemIndex): Executes the default action on the specified item of the specified playlist. (alpha2)
    • CreatePlaylist(playlistIndex, name): Creates a new playlist with the specified name and inserts it after the specified playlist. (alpha2)
    • DuplicatePlaylist(playlistIndex, name): Duplicates the specified playlist and sets its name. (alpha2)
    • ClearPlaylist(playlistIndex): Removes all items from the specified playlist. (alpha2)
    • ClearPlaylistSelection(playlistIndex): Clears the selected items in the specified playlist. (alpha2)
    • CreateAutoPlaylist(playlistIndex, name, query, sort, flags): Creates an auto playlist. (alpha2)
    • IsAutoPlaylist(playlistIndex): Returns true if the specified playlist is an auto playlist. (alpha2)
  • Properties
    • PlaylistCount: Returns the number of playlists. (alpha2)
    • ActivePlaylist: Gets or sets index of the active playlist. (alpha2)
    • PlayingPlaylist: Gets or sets index of the playing playlist. (alpha2)
    • IsAutoPlaylist: Returns true if the specified playlist is an auto playlist. (alpha2)
    • PlaybackOrder: Gets or sets the playback order (0 = default, 1 = repeat playlist, 2 = repeat track, 3 = random, 4 = shuffle tracks, 5 = shuffle albums, 6 = shuffle folders). (alpha2)

v0.2.0.0-alpha1

20 Nov 11:27
Compare
Choose a tag to compare
v0.2.0.0-alpha1 Pre-release
Pre-release
  • New: Builds with foobar2000 SDK 2024-08-07.
  • New: Updated WebView2 component to 1.0.2849.39.
  • New: Templates can contain iframes. Take a look at the included Default-FrameTemplate.html example.
  • New:
    • Methods
      • ReadAllText(filePath, codePage): Reads the specified file and returns it as a string. If codePage is 0 the file is assumed to be UTF-8 encoded.

v0.1.8.0

10 Aug 08:20
ba4ff0a
Compare
Choose a tag to compare
  • New: The Fluent scrollbar style can be disabled.
    • The component needs to be restarted for the change to become active.
    • Be sure to use separate user data folders when you have multiple instances that use different styles.