Enforce the dark theme to embedded tweets
authorAlexander Ebert <ebert@woltlab.com>
Sat, 17 Jun 2023 13:37:32 +0000 (15:37 +0200)
committerAlexander Ebert <ebert@woltlab.com>
Sat, 17 Jun 2023 13:37:32 +0000 (15:37 +0200)
ts/WoltLabSuite/Core/Ui/Message/TwitterEmbed.ts
wcfsetup/install/files/js/WoltLabSuite/Core/Ui/Message/TwitterEmbed.js

index de32ff6479dd2d4375ace40dc02365c6a49a8e64..126fc88f05dc4cd55b0bdf92d303b1f71e3e99fa 100644 (file)
@@ -29,9 +29,11 @@ export async function embedTweet(
 ): Promise<HTMLElement> {
   const twitter = await twitterReady;
 
+  const theme = document.documentElement.dataset.colorScheme === "dark" ? "dark" : "light";
   const tweet = await twitter.widgets.createTweet(tweetId, container, {
     dnt: true,
     lang: document.documentElement.lang,
+    theme,
   });
 
   if (tweet && removeChildren) {
index a41b9851794c55289d11dee026615ff460781a10..7e45d526ef8afdefee709fd9a99691668cdfb048 100644 (file)
@@ -22,9 +22,11 @@ define(["require", "exports", "https://platform.twitter.com/widgets.js"], functi
      */
     async function embedTweet(container, tweetId, removeChildren = false) {
         const twitter = await twitterReady;
+        const theme = document.documentElement.dataset.colorScheme === "dark" ? "dark" : "light";
         const tweet = await twitter.widgets.createTweet(tweetId, container, {
             dnt: true,
             lang: document.documentElement.lang,
+            theme,
         });
         if (tweet && removeChildren) {
             while (container.lastChild) {