diff --git a/Extensions/vanilla_audio.js b/Extensions/vanilla_audio.js index dddd47c90..9c704dbf4 100644 --- a/Extensions/vanilla_audio.js +++ b/Extensions/vanilla_audio.js @@ -1,5 +1,5 @@ //* TITLE Vanilla Audio **// -//* VERSION 0.2.1 **// +//* VERSION 0.3.0 **// //* DESCRIPTION Adds an alternative audio player to audio posts. **// //* DETAILS This extension adds a native HTML5 audio player to every audio post, with an option for the default volume and the ability to loop the audio. **// //* DEVELOPER akunohomu **// @@ -26,13 +26,36 @@ XKit.extensions.vanilla_audio = new Object({ } }, - run: function() { + run: async function() { "use strict"; this.running = true; + + if (XKit.page.react) { + await XKit.css_map.getCssMap(); + XKit.tools.add_css(".xkit-audio-player { display: block !important; margin: auto; }", "vanilla_audio"); + XKit.post_listener.add("vanilla_audio", this.add_audio_react); + this.add_audio_react(); + return; + } + XKit.post_listener.add("vanilla_audio", this.add_audio); this.add_audio(); }, + add_audio_react: function() { + "use strict"; + let audiocontainer_classname = XKit.css_map.keyToClasses('nativePlayer')[0]; + $(`.${audiocontainer_classname}`).not(".xkit-audio-added").each(function() { + var $this = $(this); + $this.addClass("xkit-audio-added"); + $this.children().css("display", "none"); + var hidden_player = $this.find("audio"); + var xkit_player = $("