From 10108101d3c8e08bed06d3eeaacb3e906ce022be Mon Sep 17 00:00:00 2001 From: GarboMuffin Date: Fri, 3 Feb 2023 17:26:39 -0600 Subject: [PATCH] addons: Pull changes --- src/addons/addons-l10n-settings/de.json | 4 +- src/addons/addons-l10n-settings/fr.json | 19 ++-- src/addons/addons-l10n-settings/hu.json | 42 +++++++++ src/addons/addons-l10n-settings/sl.json | 2 + src/addons/addons-l10n-settings/tr.json | 28 +++--- src/addons/addons-l10n/fr.json | 2 + src/addons/addons-l10n/hu.json | 6 ++ src/addons/addons-l10n/pl.json | 1 + src/addons/addons-l10n/sl.json | 17 ++++ src/addons/addons-l10n/tr.json | 14 +-- .../addons/editor-theme3/_manifest_entry.js | 2 +- .../addons/editor-theme3/black_text.css | 27 ++++-- .../addons/editor-theme3/compatibility.css | 2 +- .../addons/editor-theme3/forums/base.css | 2 +- .../editor-theme3/forums/black_text.css | 89 ++++++++++++++++++- .../editor-theme3/forums/color_on_white.css | 4 - src/addons/addons/editor-theme3/theme3.js | 64 ++++++++++--- src/addons/addons/find-bar/userscript.js | 2 +- src/addons/addons/find-bar/userstyle.css | 8 +- .../addons/paint-snap/updateSelectTool.js | 15 +++- src/addons/generated/upstream-meta.json | 2 +- 21 files changed, 282 insertions(+), 70 deletions(-) diff --git a/src/addons/addons-l10n-settings/de.json b/src/addons/addons-l10n-settings/de.json index ee9225331..d24bb5f48 100644 --- a/src/addons/addons-l10n-settings/de.json +++ b/src/addons/addons-l10n-settings/de.json @@ -141,7 +141,7 @@ "zebra-striping/@settings-select-shade-lighter": "Heller", "editor-theme3/@description": "Bearbeite die Farben der Blöcke für jede Kategorie im Editor.", "editor-theme3/@name": "Anpassbare Blockfarben", - "editor-theme3/@preset-description-black": "Machen Blockhintergründe schwarz", + "editor-theme3/@preset-description-black": "Macht Blockhintergründe schwarz", "editor-theme3/@preset-description-dark": "Dunkle Versionen der Standardfarben", "editor-theme3/@preset-description-original": "Die originalen Blockfarben von Scratch 2.0", "editor-theme3/@preset-description-tweaks": "Ereignisse, Steuerung, und Benutzerdefinierte Blöcke mit 2.0-inspirierten Farben", @@ -336,7 +336,7 @@ "fullscreen/@description": "Behebt einige unerwünschte Effekte im Vollbildmodus des Projektplayers, öffnet ihn im Vollbildmodus deines Browsers und blendet die Symbolleiste mit der grünen Flagge aus.", "fullscreen/@info-hideToolbarNotice": "Wenn du die Symbolleiste ausblendest, denke daran, dass du mit der Esc-Taste den Vollbildmodus des Projektplayers verlassen kannst.", "fullscreen/@name": "Verbesserter Vollbildmodus", - "fullscreen/@settings-name-browserFullscreen": "Öffnet den Projektplayer im Volbbildmodus des Browsers.", + "fullscreen/@settings-name-browserFullscreen": "Projektplayer im Vollbildmodus des Browsers öffnen", "fullscreen/@settings-name-hideToolbar": "Titelleiste im Vollbild ausblenden", "hide-stage/@description": "Fügt einen Knopf neben dem \"Kleine Bühne\"-Knopf hinzu, mit dem du die Bühne und die Figurenleiste vollständig ausblenden und damit den Codebereich viel größer machen kannst.", "hide-stage/@name": "Bühne und Figurenleiste ausblenden", diff --git a/src/addons/addons-l10n-settings/fr.json b/src/addons/addons-l10n-settings/fr.json index a9cf1cb5c..841648278 100644 --- a/src/addons/addons-l10n-settings/fr.json +++ b/src/addons/addons-l10n-settings/fr.json @@ -93,9 +93,9 @@ "bitmap-copy/@name": "Copie des images bitmap", "2d-color-picker/@description": "Remplace les curseurs de saturation et de luminosité par un sélecteur de couleurs 2D. Maintenez Maj. enfoncé tout en déplaçant le curseur pour changer les valeurs sur un seul axe.", "2d-color-picker/@name": "Sélecteur de couleurs 2D", - "better-img-uploads/@description": "Ajoute un nouveau bouton au-dessus du bouton \"upload le costume\" qui convertit automatiquement les images bitmap téléchargées en images SVG (vecteur) pour éviter de perdre en qualité.", + "better-img-uploads/@description": "Ajoute un nouveau bouton au-dessus du bouton \"importer un costume\" qui convertit automatiquement les images bitmap téléchargées en images SVG (vecteur) pour éviter de perdre en qualité.", "better-img-uploads/@info-notSuitableEdit": "Évitez d'utiliser le bouton de téléchargement HD si vous prévoyez de modifier l'image après le téléchargement.", - "better-img-uploads/@name": "Chargement d'images en HD", + "better-img-uploads/@name": "Charger des images en HD", "better-img-uploads/@settings-name-fitting": "Taille de l'image", "better-img-uploads/@settings-select-fitting-fill": "Étirer pour remplir la scène", "better-img-uploads/@settings-select-fitting-fit": "Étirer pour remplir la scène", @@ -233,22 +233,22 @@ "transparent-orphans/@settings-name-orphan": "Transparence des blocs orphelins (%)", "paint-by-default/@description": "Modifie l'action par défaut des boutons \"Choisir un Sprite/Costume/Backdrop/Son\", qui ouvrent la bibliothèque par défaut.", "paint-by-default/@name": "Éditeur de costume par défaut", - "paint-by-default/@settings-name-backdrop": "Ajouté", + "paint-by-default/@settings-name-backdrop": "Ajouter un arrière-plan", "paint-by-default/@settings-name-costume": "Ajouter un costume", - "paint-by-default/@settings-name-sound": "Ajouté un son", - "paint-by-default/@settings-name-sprite": "Ajouté un lutin", + "paint-by-default/@settings-name-sound": "Ajouter un son", + "paint-by-default/@settings-name-sprite": "Ajouter un sprite", "paint-by-default/@settings-select-backdrop-library": "Bibliothèque", "paint-by-default/@settings-select-backdrop-paint": "Peindre", - "paint-by-default/@settings-select-backdrop-upload": "Uploadé", + "paint-by-default/@settings-select-backdrop-upload": "Importer", "paint-by-default/@settings-select-costume-library": "Bibliothèque", "paint-by-default/@settings-select-costume-paint": "Peindre", - "paint-by-default/@settings-select-costume-upload": "Uploadé", + "paint-by-default/@settings-select-costume-upload": "Importer", "paint-by-default/@settings-select-sound-library": "Bibliothèque", "paint-by-default/@settings-select-sound-record": "Enregistrer", - "paint-by-default/@settings-select-sound-upload": "Uploadé", + "paint-by-default/@settings-select-sound-upload": "Importer", "paint-by-default/@settings-select-sprite-library": "Bibliothèque", "paint-by-default/@settings-select-sprite-paint": "Peindre", - "paint-by-default/@settings-select-sprite-upload": "Uploadé", + "paint-by-default/@settings-select-sprite-upload": "Importer", "block-cherry-picking/@description": "Ajoutes la possibilité de déplacé les blocs un par un avec la touche Ctrl (plutôt que le script le suivant)", "block-cherry-picking/@info-flipControls": "Si les \"contrôles inversés\" sont activés, la saisie de blocs individuellement sera activer par défaut. Maintenez la touche Ctrl enfoncée pour faire glisser toute la pile.", "block-cherry-picking/@info-macContextDisabled": "Sur macOS, utilisé la touche cmd plutôt que la touche Ctrl.", @@ -275,6 +275,7 @@ "move-to-top-bottom/@info-developer-tools": "Cet addon faisait auparavant partie de l'addon \"outils de développement\" mais a été déplacé ici.", "move-to-top-bottom/@name": "Déplacer le costume en haut ou en bas", "disable-paste-offset/@description": "Collez les éléments copiés à leur position d'origine au lieu de les déplacer légèrement dans l'éditeur de costumes.", + "disable-paste-offset/@info-vanilla": "Ce comportement peut également être obtenu sans cet addon en faisant Alt+clic sur l'élément.", "disable-paste-offset/@name": "Ne pas déplacer les éléments collés", "block-duplicate/@description": "Dupliquez rapidement un script en le déplaçant tout en maintenant la touche Alt enfoncée. Maintenez la touche Ctrl enfoncée pour ne dupliquer qu'un seul bloc au lieu de toute la pile attachée en dessous.", "block-duplicate/@info-mac": "Sur macOS, utilisez la touche Option au lieu de la touche Alt et la touche Commande au lieu de la touche Contrôle.", diff --git a/src/addons/addons-l10n-settings/hu.json b/src/addons/addons-l10n-settings/hu.json index 5936e642a..4d2f074e1 100644 --- a/src/addons/addons-l10n-settings/hu.json +++ b/src/addons/addons-l10n-settings/hu.json @@ -1,13 +1,17 @@ { "cat-blocks/@description": "Visszahozza a szerkesztőbe a macskás kinézetű kezdőblokkokat a 2020-as Áprilisi Bolondok napról.", + "cat-blocks/@info-watch": "A \"Figyeld az egérmutatót\" opció hatással lehet a teljesítményre, miközben a szerkesztő meg van nyitva.", "cat-blocks/@name": "Cica-blokkok", "cat-blocks/@settings-name-watch": "Figyeld az egérmutatót", + "editor-devtools/@description": "Hozzáad új menüopciókat a szerkesztőhöz: másolj/illessz be blokkokat, jobb rendrakás, és még sok más!", "editor-devtools/@name": "Fejlesztői eszközök", "editor-devtools/@settings-name-enableCleanUpPlus": "Fejlesztett \"Rendrakás\"", "editor-devtools/@settings-name-enablePasteBlocksAtMouse": "Blokkok beillesztése a kurzorhoz", "find-bar/@description": "Hozzáad egy keresőmezőt a hang fültől jobbra, ami megkeresi és odavisz egy adott kód részhez, jelmezhez vagy hanghoz. Használd a Ctrl+Bal-t és Ctrl+Jobb-ot a kód mezőben, hogy navigálj az előfordulások között.", "find-bar/@info-developer-tools": "Ez a bővítmény korábban a \"Fejlesztői eszközök\" bővítmény része volt, de mostanra át lett helyezve ide.", "find-bar/@name": "Szerkesztő keresőmező", + "middle-click-popup/@description": "Középső egérgombbal kattintás a kódterületre, Ctrl+Szóköz vagy Shift+Kattintás használatakor felugrik egy lebegő bemeneti mező, ahova be lehet írni egy blokk nevét (vagy nevének részeit), majd azt ki is lehet a kódterületre húzni. Tartsd a Shiftet lenyomva egy blokk kihúzása közben, hogy nyitva maradjon a mező, s több blokk is hozzáadható lehessen egyszerre.", + "middle-click-popup/@info-developer-tools": "Ez a kiegészítő korábban a „fejlesztői eszközök” része volt, de most ide költözött.", "middle-click-popup/@name": "Blokkok beillesztése név alapján", "jump-to-def/@description": "Megengedi, hogy egy egyéni blokk definiálásához ugorj a középső egérgombbal, vagy Shift+Kattintással az adott blokkon.", "jump-to-def/@info-developer-tools": "Ez a bővítmény korábban a \"Fejlesztői eszközök\" bővítmény része volt, de mostanra át lett helyezve ide.", @@ -24,8 +28,12 @@ "hide-flyout/@description": "Elrejti a blokk választót, ha nem felette van a kurzor. Kattints a lakat ikonra, hogy átmenetileg zárold a pozícióját. Alternatívaként használd a \"kategória kattintásra\" módot.", "hide-flyout/@info-hoverExplanation": "A \"kurzor a választó felület felett\" mód csak a látóteredet növeli meg. Ha oda is szeretnél húzni blokkokat a törlődésük nélkül, akkor használj egy másik módot.", "hide-flyout/@name": "Blokk választó automatikus elrejtése", + "hide-flyout/@settings-name-speed": "Animáció sebessége", "hide-flyout/@settings-name-toggle": "Váltás ha...", "hide-flyout/@settings-select-speed-default": "Alap", + "hide-flyout/@settings-select-speed-long": "Lassú", + "hide-flyout/@settings-select-speed-none": "Azonnali", + "hide-flyout/@settings-select-speed-short": "Gyors", "hide-flyout/@settings-select-toggle-category": "Kategória kattintásra", "hide-flyout/@settings-select-toggle-cathover": "Kurzor a kategóriák felett", "hide-flyout/@settings-select-toggle-hover": "Kurzor a választó felület felett", @@ -47,6 +55,7 @@ "mute-project/@description": "Ctrl+Kattints a zöld zászlóra, hogy némítsd/feloldd a némítást egy projektben.", "mute-project/@info-macOS": "MacOS-en használja a Cmd billentyűt a Ctrl helyett.", "mute-project/@name": "Némított projekt lejátszó mód", + "vol-slider/@description": "Hozzáad egy hangcsúszkát a zöld zászló mellé", "vol-slider/@name": "Projekt-hangerőcsúszka", "vol-slider/@settings-name-defVol": "Alapértelmezett hangerő", "clones/@description": "Hozzáad egy számlálót a szerkesztőhöz a színpad fölé, ami megmutatja a másolatok számát.", @@ -74,7 +83,22 @@ "onion-skinning/@settings-select-layering-front": "Elé", "onion-skinning/@settings-select-mode-merge": "Képek összeolvasztása", "onion-skinning/@settings-select-mode-tint": "Szín árnyalás", + "paint-snap/@description": "Illessz objektumokat a körülvevő mezőkhöz és vektorvégpontokhoz a jelmezszerkesztőben .", "paint-snap/@name": "Illesztés a jelmezszerkesztőben", + "paint-snap/@settings-name-boxCenter": "Illesztés a kijelölés középpontjától", + "paint-snap/@settings-name-boxCorners": "Illesztés a kijelölés sarkaitól", + "paint-snap/@settings-name-boxEdgeMids": "Illesztés a kijelölés széleinek középpontjától", + "paint-snap/@settings-name-enable-default": "Automatikus bekapcsolása", + "paint-snap/@settings-name-guide-color": "Illesztésmutató színe", + "paint-snap/@settings-name-objectCenters": "Illesztés az objektumok középpontjához", + "paint-snap/@settings-name-objectCorners": "Illesztés az objektumok sarkaihoz", + "paint-snap/@settings-name-objectEdges": "Illesztés az objektumok széleihez", + "paint-snap/@settings-name-objectMidlines": "Illesztés az objektumok középvonalához", + "paint-snap/@settings-name-pageAxes": "Illesztés a lap x és y tengelyeihez", + "paint-snap/@settings-name-pageCenter": "Illesztés a lap középpontjához", + "paint-snap/@settings-name-pageCorners": "Illesztés a lap sarkaihoz", + "paint-snap/@settings-name-pageEdges": "Illesztés a lap széleihez", + "paint-snap/@settings-name-threshold": "Illesztési távolság", "default-costume-editor-color/@description": "Megváltoztatja az alap színeit és körvonal méreteit a jelmezszerkesztőnek.", "default-costume-editor-color/@name": "Személyre szabható alapértelmezett jelmezszerkesztőszínek", "default-costume-editor-color/@settings-name-fill": "Alapkitöltőszín", @@ -160,6 +184,15 @@ "variable-manager/@update": "Lista elemek már Shift nyomvatartása nélkül is beszúrhatók.", "search-sprites/@description": "Hozzáad egy kereső mezőt a szereplő kijelzőhőz, hogy kereshess a szereplők között név alapján.", "search-sprites/@name": "Szereplők keresése név alapján", + "sprite-properties/@description": "Elrejti alapértelmezetten a szereplőjellemzők panelt, mint a Scratch 2.0-ban. Használd az információs gombot az éppen kiválasztott szereplőnél vagy kattints duplán egy szereplőre, hogy előbújtasd ismét a tulajdonságokat mutató panelt. Az újra-elrejtéséhez pedig használd az összecsukó gombot a panelen, vagy kattints kétszer egy szereplőre.", + "sprite-properties/@name": "Összecsukható szereplőjellemzők", + "sprite-properties/@settings-name-autoCollapse": "Csukódjon automatikusan, amikor az egér elhagyja a szereplői panelt", + "sprite-properties/@settings-name-hideByDefault": "Panel összecsukása alapból", + "sprite-properties/@settings-name-transitionDuration": "Animáció sebessége", + "sprite-properties/@settings-select-transitionDuration-default": "Alapértelmezett", + "sprite-properties/@settings-select-transitionDuration-long": "Lassú", + "sprite-properties/@settings-select-transitionDuration-none": "Azonnali", + "sprite-properties/@settings-select-transitionDuration-short": "Gyors", "gamepad/@description": "Lépj kapcsolatba projektekkel USB, vagy Bluetooth kontroller/gamepad használata által.", "gamepad/@name": "Gamepad támogatás", "gamepad/@settings-name-hide": "Tüntesd el a beállítások gombot, amikor nem érzékelhetők kontrollerek", @@ -195,9 +228,13 @@ "custom-zoom/@settings-name-autohide": "Nagyítás irányítógombjainak automatikus elrejtése", "custom-zoom/@settings-name-maxZoom": "Maximum nagyítás (100-500%)", "custom-zoom/@settings-name-minZoom": "Minimum nagyítás (1-100%)", + "custom-zoom/@settings-name-speed": "Animáció sebességének automatikus elrejtése", "custom-zoom/@settings-name-startZoom": "Kezdeti nagyítás (50-500%)", "custom-zoom/@settings-name-zoomSpeed": "Nagyítási sebesség (50-200%)", "custom-zoom/@settings-select-speed-default": "Alapértelmezett", + "custom-zoom/@settings-select-speed-long": "Lassú", + "custom-zoom/@settings-select-speed-none": "Azonnali", + "custom-zoom/@settings-select-speed-short": "Gyors", "initialise-sprite-position/@description": "Megváltoztatja az alapértelmezett x/y pozícióját az újonnan készített szereplőknek", "initialise-sprite-position/@name": "Személyre szabható pozíció az új szereplőknek", "initialise-sprite-position/@settings-name-duplicate": "Szereplőduplikáláskori viselkedés", @@ -245,8 +282,12 @@ "block-cherry-picking/@settings-name-invertDrag": "Fordított irányítás", "hide-new-variables/@description": "Ne készíts automatikusan kijelzőket az újonnan készített változóknak vagy listáknak.", "hide-new-variables/@name": "Új változók elrejtése", + "editor-extra-keys/@description": "Több billentyűvel bővíti a „() gomb lenyomva?” és a „() gomb lenyomásakor” blokk lenyíló listáját, mint például sz enterrel, a ponttal, a vesszővel, de még többel is. Ezek a gombok működni fognak azoknak a szereplőknek is, akiknek nincs meg ez a kiegészítő", "editor-extra-keys/@info-experimentalKeysWarn": "A \"kísérleti gombok\" tartalmaz egyenlőségjelet, perjelet, pontosvesszőt és még pár irásjelet. Ezek lehet nem működnek minden operációs rendszeren vagy billentyűzet nyelvezetben.", "editor-extra-keys/@info-shiftKeysWarn": "A \"Shift billentyűk\" tartalmaznak olyan billentyűket, amiket a Shift billentyű nyomvatartásakor lehet csak begépelni, ilyen a hashtag, a felkijáltójel és még pár. Ezek a billentyűk csak a \"() gomb lenyomásakor\" bolkkal működnek és nem működnek minden operációs rendszeren illetve billentyűzeten.", + "editor-extra-keys/@name": "Extra billentyűopciók", + "editor-extra-keys/@settings-name-experimentalKeys": "Mutassa a kísérleti billentyűket is", + "editor-extra-keys/@settings-name-shiftKeys": "Mutassa a Shiftes billentyűket is (angol billentyűzeten)", "hide-delete-button/@description": "Elrejti a törlés gombot (kuka ikont) a szereplőkből, jelmezekből és hangokból. Ezután még törölhetőek lesznek a jobb kattos helyi menüből.", "hide-delete-button/@name": "Törlés gomb elrejtése", "hide-delete-button/@settings-name-costumes": "Jelmezek és hátterek", @@ -260,6 +301,7 @@ "move-to-top-bottom/@info-developer-tools": "Ez a bővítmény korábban a \"Fejlesztői eszközök\" bővítmény része volt, de mostanra át lett helyezve ide.", "move-to-top-bottom/@name": "Jelmez áthelyezése legfelülre vagy legalulra", "disable-paste-offset/@description": "A bemásolt elemeket az eredeti helyükre kerülnek, nem tolódnak el a jelmez szerkesztőben.", + "disable-paste-offset/@info-vanilla": "Ez a viselkedés elérhető ezen kiegészítő nélkül is Alt+Kattintással az elemre", "disable-paste-offset/@name": "Ne helyezd át a bemásolt elemeket", "block-duplicate/@description": "Duplikálj egy kódot gyorsan azzal, hogy az Alt lenyomva tartása közben mozgatod. Ha a Ctrl-t is nyomva tartod, akkor csak egy blokkot duplikálsz az egész alatta levő blokk sor helyett.", "block-duplicate/@info-mac": "A macOS-on, használd az Option gombot Alt helyett és a Command gombot a Control helyett.", diff --git a/src/addons/addons-l10n-settings/sl.json b/src/addons/addons-l10n-settings/sl.json index c6be35f6b..0af2ccc19 100644 --- a/src/addons/addons-l10n-settings/sl.json +++ b/src/addons/addons-l10n-settings/sl.json @@ -10,6 +10,7 @@ "find-bar/@description": "Poleg zavihka Zvoki doda vrstico, s katero lahko poiščete in se premaknete na skripto, videz ali zvok. Uporabite Ctrl+levo ali Ctrl+desno v prostoru za kodo, da se premaknete na prejšnji ali naslednji položaj.", "find-bar/@info-developer-tools": "Ta funkcija je bila prej del dodatka \"orodje za razvijalce\", vendar smo jo premaknili sem.", "find-bar/@name": "Iskalna vrstica v urejevalniku", + "middle-click-popup/@info-developer-tools": "Ta funkcija je bila prej del dodatka \"orodje za razvijalce\", vendar smo jo premaknili sem.", "jump-to-def/@description": "Omogoča, da se premaknete na definicijo \"mojega bloka\" s srednjim miškinim gumbom ali Shift+klikom.", "jump-to-def/@info-developer-tools": "Ta funkcija je bila prej del dodatka \"orodje za razvijalce\", vendar smo jo premaknili sem.", "jump-to-def/@name": "Skoči na definicijo \"mojega bloka\"", @@ -300,6 +301,7 @@ "editor-comment-previews/@settings-select-delay-short": "Kratko", "columns/@description": "Razdeli seznam kategorij blokov na dva stolpca in ga premakne na vrh palete blokov, kot v Scratchu 2.0.", "columns/@name": "Seznam kategorij z dvema stolpcema", + "number-pad/@name": "Vedno pokaži številčnico", "script-snap/@description": "Potegnite skripto, da se njen položaj samodejno poravna s pikami na ozadju prostora za skripte.", "script-snap/@name": "Pritrdi skripte na mrežo", "script-snap/@preset-name-default": "Navadno", diff --git a/src/addons/addons-l10n-settings/tr.json b/src/addons/addons-l10n-settings/tr.json index b67e4c233..785bb937d 100644 --- a/src/addons/addons-l10n-settings/tr.json +++ b/src/addons/addons-l10n-settings/tr.json @@ -3,7 +3,7 @@ "cat-blocks/@info-watch": "\"Fare imlecini izle\" ayarı, düzenleyici açıkken performansı etkileyebilir.", "cat-blocks/@name": "Kedi blokları", "cat-blocks/@settings-name-watch": "Fare imlecini izle", - "editor-devtools/@description": "Düzenleyiciye yeni menü seçenekleri ekler: blokları kopyalama/yapıştırma, daha iyi temizleme ve çok daha fazlası!", + "editor-devtools/@description": "Düzenleyiciye yeni menü seçenekleri ekler: blokları kopyalama/yapıştırma, daha iyi çekidüzen verme ve çok daha fazlası!", "editor-devtools/@name": "Geliştirici araçları", "editor-devtools/@settings-name-enableCleanUpPlus": "\"Blokları temizle\"yi geliştir", "editor-devtools/@settings-name-enablePasteBlocksAtMouse": "Blokları fare imlecinin bulunduğu konuma yapıştır", @@ -11,7 +11,7 @@ "find-bar/@info-developer-tools": "Bu eklenti öncesinde \"geliştirici araçları\" eklentisinin bir parçasıydı ancak artık buraya taşındı.", "find-bar/@name": "Editörde arama çubuğu", "middle-click-popup/@description": "Kod alanına farenizin orta tuşuyla tıklayın, bir bloğun adını (veya parçalarını) yazabileceğiniz ve bloğu kod alanına sürükleyebileceğiniz kayan bir giriş kutusu getirmek için Ctrl+Boşluk veya Shift+Tıkla tuşlarını kullanın. Aynı anda birden çok blok eklerken kutuyu kapatmamak için sürüklerken Shift tuşunu basılı tutun.", - "middle-click-popup/@info-developer-tools": "Bu eklenti daha önce \"geliştirici araçları\" eklentisinin bir parçasıydı ancak artık buraya taşındı.", + "middle-click-popup/@info-developer-tools": "Bu eklenti daha önce \"geliştirici araçları\" eklentisinin bir parçasıydı ancak buraya taşındı.", "middle-click-popup/@name": "İsmine göre blok ekleme", "jump-to-def/@description": "Orta fare düğmesiyle veya bloğa Shift+Tıklayarak özel bir bloğun tanımına gitmenize izin verir.", "jump-to-def/@info-developer-tools": "Bu eklenti öncesinde \"geliştirici araçları\" eklentisinin bir parçasıydı ancak artık buraya taşındı.", @@ -84,17 +84,17 @@ "onion-skinning/@settings-select-layering-front": "Ön", "onion-skinning/@settings-select-mode-merge": "Görüntüleri birleştir", "onion-skinning/@settings-select-mode-tint": "Renk tonu", - "paint-snap/@description": "Kostüm düzenleyicideki objeleri sınırlayıcı kutulara ve vektör düğümlerine tutturun.", + "paint-snap/@description": "Kostüm düzenleyicideki nesneleri sınırlayıcı kutulara ve vektör düğümlerine tutturun.", "paint-snap/@name": "Kostüm editöründe tutturma", "paint-snap/@settings-name-boxCenter": "Seçim kutusunun merkezinden tuttur", "paint-snap/@settings-name-boxCorners": "Seçim kutusunun köşelerinden tuttur", "paint-snap/@settings-name-boxEdgeMids": "Seçim kutusunun kenar orta noktalarından tuttur", - "paint-snap/@settings-name-enable-default": "Varsayılan olarak aktif", + "paint-snap/@settings-name-enable-default": "Varsayılan olarak etkinleştir", "paint-snap/@settings-name-guide-color": "Kılavuz rengini tuttur", - "paint-snap/@settings-name-objectCenters": "Objelerin merkezlerine tuttur", - "paint-snap/@settings-name-objectCorners": "Objenin köşelerine tuttur", - "paint-snap/@settings-name-objectEdges": "Objelerin kenarlarına tuttur", - "paint-snap/@settings-name-objectMidlines": "Objenin orta hatlarına tuttur", + "paint-snap/@settings-name-objectCenters": "Nesnelerin merkezlerine tuttur", + "paint-snap/@settings-name-objectCorners": "Nesnelerin köşelerine tuttur", + "paint-snap/@settings-name-objectEdges": "Nesnelerin kenarlarına tuttur", + "paint-snap/@settings-name-objectMidlines": "Nesnelerin orta hatlarına tuttur", "paint-snap/@settings-name-pageAxes": "Sayfanın x ve y eksenlerine tuttur", "paint-snap/@settings-name-pageCenter": "Sayfanın merkezine tuttur", "paint-snap/@settings-name-pageCorners": "Sayfanın köşelerine tuttur", @@ -103,7 +103,7 @@ "default-costume-editor-color/@description": "Kostüm düzenleyici tarafından kullanılan varsayılan renkleri ve kenarlık boyutunu değiştirir.", "default-costume-editor-color/@name": "Özelleştirilebilir varsayılan kostüm düzenleyicisi renkleri", "default-costume-editor-color/@settings-name-fill": "Varsayılan doldurma rengi", - "default-costume-editor-color/@settings-name-persistence": "Araçları değiştirdikten sonra sıfırlanması yerine önceki rengi kullan", + "default-costume-editor-color/@settings-name-persistence": "Araçları değiştirdikten sonra sıfırlanma yerine önceki rengi kullan", "default-costume-editor-color/@settings-name-stroke": "Varsayılan kenarlık rengi", "default-costume-editor-color/@settings-name-strokeSize": "Varsayılan kenarlık boyutu", "bitmap-copy/@description": "Kostüm düzenleyiciden bir bitmap görüntüsünü sistem panosuna kopyalamanıza izin verir. Böylece görselleri başka sitelerle veya yazılımlarla paylaşabilirsiniz.", @@ -118,7 +118,7 @@ "better-img-uploads/@settings-select-fitting-fill": "Sahneyi doldurmak için gerdir", "better-img-uploads/@settings-select-fitting-fit": "Sahneye sığdırmak için küçült", "better-img-uploads/@settings-select-fitting-full": "Orijinal boyut", - "pick-colors-from-stage/@description": "Kostüm editöründeki damla aracının da sahneden renkleri seçmesine izin verir.", + "pick-colors-from-stage/@description": "Kostüm editöründeki damla aracının renkleri sahneden de seçmesine izin verir.", "pick-colors-from-stage/@name": "Kostüm düzenleyicide sahne renklerini seç", "custom-block-shape/@description": "Blokların dolgusunu, köşe yarıçapını ve çentik yüksekliğini ayarlayın.", "custom-block-shape/@info-paddingWarning": "Dolgu boyutunun küçültülmesi yalnızca sizin tarafınızdan görülebilir. Bu nedenle projeleriniz diğer kullanıcılar tarafından görüntülendiğinde komut dosyalarınız çakışabilir.", @@ -168,7 +168,7 @@ "editor-theme3/@settings-select-text-colorOnBlack": "Siyah arka plan üzerine renkli", "editor-theme3/@settings-select-text-colorOnWhite": "Beyaz arka plan üzerine renkli", "editor-theme3/@settings-select-text-white": "Beyaz", - "editor-theme3/@update": "\"Düzenleyici koyu modu ve özelleştirilebilir renkler\"indeki \"Koyu yorumlar\" ayarı buraya taşındı ve artık özelleştirilebilir.", + "editor-theme3/@update": "\"Düzenleyici koyu modu ve özelleştirilebilir renkler\"deki \"Koyu yorumlar\" ayarı buraya taşındı ve artık özelleştirilebilir.", "custom-block-text/@description": "Bloklardaki metnin kalınlığını değiştirir ve isteğe bağlı olarak bir metin gölgesi ekler.", "custom-block-text/@name": "Özelleştirilebilir blok metin stili", "custom-block-text/@settings-name-bold": "Kalın metin", @@ -185,7 +185,7 @@ "variable-manager/@update": "Liste ögeleri artık Shift tuşuna basılmadan eklenebilir.", "search-sprites/@description": "Karakterleri ismine göre aramak için kukla bölmesine bir arama kutusu ekler.", "search-sprites/@name": "İsmine göre kukla arama", - "sprite-properties/@description": "Varsayılan olarak -Scratch 2.0'daki gibi- kukla özellikler panelini gizler. Özellikler panelini tekrar göstermek için seçili kuklanın üzerindeki bilgi düğmesine veya kuklaya çift tıklayın. Tekrar gizlemek için özellikler panelindeki daraltma düğmesine veya kuklaya çift tıklayın.", + "sprite-properties/@description": "Varsayılan olarak - Scratch 2.0'daki gibi - kukla özellikleri panelini gizler. Özellikler panelini tekrar göstermek için seçili kuklanın üzerindeki bilgi düğmesine veya kuklaya çift tıklayın. Tekrar gizlemek için özellikler panelindeki daraltma düğmesine veya kuklaya çift tıklayın.", "sprite-properties/@name": "Daraltılmış kukla özellikleri", "sprite-properties/@settings-name-autoCollapse": "Fare kukla panelinden çıktığında otomatik olarak daralt", "sprite-properties/@settings-name-hideByDefault": "Varsayılan olarak paneli daralt", @@ -283,7 +283,7 @@ "block-cherry-picking/@settings-name-invertDrag": "Kontrolleri çevir", "hide-new-variables/@description": "Yeni oluşturulan değişkenler veya listeler için otomatik olarak görüntüler oluşturmayın.", "hide-new-variables/@name": "Yeni eklenen değişkenleri gizle", - "editor-extra-keys/@description": "\"() tuşuna basılı mı?\" ve \"() tuşuna basıldığında\" bloklarının açılır menülerine enter, nokta, virgül ve daha fazlası gibi fazladan tuşlar tuşlar ekler. Bu anahtarlar, bu eklentiye sahip olmayan kullanıcılarda bile çalışacaktır.", + "editor-extra-keys/@description": "\"() tuşuna basılı mı?\" ve \"() tuşuna basıldığında\" bloklarının açılır menülerine enter, nokta ve virgül gibi fazladan tuşlar tuşlar ekler. Bu anahtarlar, bu eklentiye sahip olmayan kullanıcılarda bile çalışacaktır.", "editor-extra-keys/@info-experimentalKeysWarn": "\"Deneysel tuşlar\" eşittir, eğik çizgi, noktalı virgül ve daha fazlasını içerir. Tüm işletim sistemlerinde veya klavye düzenlerinde çalışmayabilirler.", "editor-extra-keys/@info-shiftKeysWarn": "\"Shift tuşları\", çoğunlukla Shift tuşunu ve bir sayı tuşunu gerektiren tuşları içerir, heştek, ünlem işareti ve daha fazlası gibi. Bu tuşlar yalnızca \"() tuşuna basıldığında\" bloğu ile çalışır ve tüm işletim sistemlerinde veya klavye düzenlerinde çalışmaz.", "editor-extra-keys/@name": "Fazladan tuş seçenekleri", @@ -302,7 +302,7 @@ "move-to-top-bottom/@info-developer-tools": "Bu eklenti öncesinde \"geliştirici araçları\" eklentisinin bir parçasıydı ancak artık buraya taşındı.", "move-to-top-bottom/@name": "Kostümü yukarı veya aşağı taşı", "disable-paste-offset/@description": "Çoğaltılan ögeleri kostüm düzenleyicide hafifçe kaydırmak yerine orijinal konumlarına yapıştırın.", - "disable-paste-offset/@info-vanilla": "Bu davranış bu eklenti olmadan da Alt+Ögeye tıklatılarak gerçekleştirilebilir.", + "disable-paste-offset/@info-vanilla": "Bu davranış bu eklenti olmadan da ögeye Alt+Tıklamayla gerçekleştirilebilir.", "disable-paste-offset/@name": "Yapıştırılan öğeleri kenara kaydırmama", "block-duplicate/@description": "Alt tuşunu basılı tutarken bir kodu sürükleyerek onu hızlıca çoğaltın. Altına eklenen yığının tamamı yerine yalnızca tek bir bloğu çoğaltmak için Ctrl tuşuna da basılı tutun.", "block-duplicate/@info-mac": "macOS’ta Alt tuşu yerine Option tuşunu ve Kontrol tuşu yerine Komut tuşunu kullanın.", diff --git a/src/addons/addons-l10n/fr.json b/src/addons/addons-l10n/fr.json index bb09ffba8..5335058cd 100644 --- a/src/addons/addons-l10n/fr.json +++ b/src/addons/addons-l10n/fr.json @@ -28,6 +28,7 @@ "mediarecorder/click-flag": "En attente...", "mediarecorder/click-flag-description": "Cliquez sur le drapeau vert pour démarrer l'enregistrement. Cliquez sur ce bouton pour arrêter.", "mediarecorder/option-title": "Options d'enregistrement", + "mediarecorder/record": "Enregistrer", "mediarecorder/record-after-flag": "Ne démarrez pas l'enregistrement tant que le drapeau vert n'est pas été cliqué", "mediarecorder/record-audio": "Inclure les sons du projet", "mediarecorder/record-audio-description": "Cela n'inclut pas la synthèse vocale.", @@ -82,6 +83,7 @@ "onion-skinning/settings": "Paramètres de Pelure d'Oignon", "onion-skinning/tint": "Teinte", "onion-skinning/toggle": "Activer la Pelure d'Oignon", + "paint-snap/objectEdges": "Bords des objets", "paint-snap/pageEdges": "Bords de la page", "paint-snap/settings": "Réglages du Snap", "paint-snap/snapTo": "Snap à :", diff --git a/src/addons/addons-l10n/hu.json b/src/addons/addons-l10n/hu.json index 1984d48b0..445160588 100644 --- a/src/addons/addons-l10n/hu.json +++ b/src/addons/addons-l10n/hu.json @@ -13,6 +13,7 @@ "editor-devtools/unused-var": "{count, plural, one {Fejlesztői eszközök: Törölni szeretnél 1 nem használt helyi változót? Itt van:\n} other {Fejlesztői eszközök: Törölni szeretnél # nem használt helyi változót? Itt vannak:\n} }", "editor-devtools/var-not-exist": "Ez a változó nem létezik...", "editor-devtools/variables": "változók", + "find-bar/complex-broadcast": "(kifejezés)", "find-bar/find-placeholder": "Keresés (Ctrl+F)", "middle-click-popup/start-typing": "Kezdjen el gépelni...", "editor-searchable-dropdowns/createBroadcast": "\"{name}\" üzenet létrehozása", @@ -29,9 +30,11 @@ "mediarecorder/click-flag": "Várakozás...", "mediarecorder/click-flag-description": "Kattints a zöld zászlóra a felvételhez. Kattints erre a gombra, hogy leállítsd a felvételt.", "mediarecorder/option-title": "Felvétel Opciók", + "mediarecorder/record": "Felvétel", "mediarecorder/record-after-flag": "Ne kezdődjön el a felvétel, amíg a zöld zászlóra rá nem kattintasz", "mediarecorder/record-audio": "Projekt hangok felvétele", "mediarecorder/record-audio-description": "Ez nem tartalmaz Text-to-Speech-t.", + "mediarecorder/record-description": "Felveheted a színpadot WebM fájlként. Ezt elmentheted a számítógépedre miután a felvétel véget ért.\nMegjegyzés: a változó- és listamegjelenítők nem lesznek láthatóak rajta.", "mediarecorder/record-duration": "Felvétel Időtartama (másodperc)", "mediarecorder/record-mic": "Mikrofon hangjának felvétele", "mediarecorder/record-until-stop": "Felvétel leállítása miután a projekt megállt", @@ -109,8 +112,11 @@ "variable-manager/for-all-sprites": "Változók minden szereplőnek", "variable-manager/for-this-sprite": "Változók ennek a szereplőnek", "variable-manager/search": "Keresés", + "variable-manager/too-big": "Kattints a nagyon hosszú érték megjelenítéséhez.", "variable-manager/variables": "Változók", "search-sprites/placeholder": "Szereplők keresése...", + "sprite-properties/close-properties-panel-tooltip": "Tulajdonságok panel összecsukása", + "sprite-properties/open-properties-panel-tooltip": "Tulajdonságok panel megnyitása", "gamepad/axes-a-b": "Tengelyek {a} & {b}", "gamepad/axis-arrows": "Nyíl-billentyűk", "gamepad/axis-cursor": "Kurzor", diff --git a/src/addons/addons-l10n/pl.json b/src/addons/addons-l10n/pl.json index 1aa035ac9..69e5f3021 100644 --- a/src/addons/addons-l10n/pl.json +++ b/src/addons/addons-l10n/pl.json @@ -13,6 +13,7 @@ "editor-devtools/unused-var": "{count, plural, one {Narzędzia Developerskie: Usunąć 1 nieużywaną zmienną o nazwie: \n} few {Narzędzia Developerskie: Usunąć # nieużywanych zmiennych? Oto one: \n} many {Narzędzia Developerskie: Usunąć # nieużywanych zmiennych? Oto one: \n} other {Narzędzia Developerskie: Usunąć # nieużywanych zmiennych? Oto one: \n} }", "editor-devtools/var-not-exist": "Ta zmienna nie istnieje...", "editor-devtools/variables": "zmienne", + "find-bar/complex-broadcast": "(działanie)", "find-bar/find-placeholder": "Szukaj (Ctr+F)", "middle-click-popup/start-typing": "Zacznij pisać...", "editor-searchable-dropdowns/createBroadcast": "Stwórz wiadomość \"{name}\"", diff --git a/src/addons/addons-l10n/sl.json b/src/addons/addons-l10n/sl.json index ca17e5cda..bae357746 100644 --- a/src/addons/addons-l10n/sl.json +++ b/src/addons/addons-l10n/sl.json @@ -13,6 +13,7 @@ "editor-devtools/unused-var": "{count, plural, one {Developer tools: Naj izbrišem 1 neuporabljeno lokalno spremenljivko? Tukaj je:\n} two {Developer tools: Naj izbrišem 2 neuporabljeni lokalni spremenljivki? Tukaj sta:\n} few {Developer tools: Naj izbrišem # neuporabljene lokalne spremenljivke? Tukaj so:\n} other {Orodje za razvijalce: Naj izbrišem # neuporabljenih lokalnih spremenljivk? Tukaj so:\n} }", "editor-devtools/var-not-exist": "Ta spremenljivka ne obstaja...", "editor-devtools/variables": "spremenljivke", + "find-bar/complex-broadcast": "(izraz)", "find-bar/find-placeholder": "Iskanje (Ctrl+F)", "middle-click-popup/start-typing": "Začnite tipkati...", "editor-searchable-dropdowns/createBroadcast": "Ustvari sporočilo \"{name}\"", @@ -29,9 +30,11 @@ "mediarecorder/click-flag": "Čakanje...", "mediarecorder/click-flag-description": "Kliknite zeleno zastavico, da začnete snemanje. Kliknite ta gumb, da ga ustavite.", "mediarecorder/option-title": "Možnosti snemanja", + "mediarecorder/record": "Snemaj", "mediarecorder/record-after-flag": "Ne začni snemanja, dokler ne kliknem zelene zastavice", "mediarecorder/record-audio": "Vključi zvoke projekta", "mediarecorder/record-audio-description": "To ne vključuje razširitve Besedilo v govor.", + "mediarecorder/record-description": "Posnemite oder kot datoteko WebM. Lahko jo shranite na računalnik, ko je snemanje končano.\nSpremenljivke in seznami ne bodo vidni na posnetku.", "mediarecorder/record-duration": "Trajanje snemanja (v sekundah)", "mediarecorder/record-mic": "Vključi zvok mikrofona", "mediarecorder/record-until-stop": "Končaj snemanje, ko se projekt ustavi", @@ -85,13 +88,27 @@ "onion-skinning/settings": "Nastavitve za onion skinning", "onion-skinning/tint": "Barva", "onion-skinning/toggle": "Vključi ali izključi onion skinning", + "paint-snap/boxCenter": "Središče izbire", + "paint-snap/boxCorners": "Oglišča izbire", + "paint-snap/boxEdgeMids": "Razpolovišča robov izbire", + "paint-snap/objectCenters": "Središča predmetov", + "paint-snap/objectCorners": "Oglišča predmetov", + "paint-snap/objectEdges": "Robovi predmetov", + "paint-snap/objectMidlines": "Osi predmetov", + "paint-snap/pageAxes": "Osi x in y strani", + "paint-snap/pageCenter": "Središče strani", + "paint-snap/pageCorners": "Oglišča strani", + "paint-snap/pageEdges": "Robovi strani", "2d-color-picker/shade": "Odtenek", "better-img-uploads/upload": "Naloži HD", "variable-manager/for-all-sprites": "Spremenljivke za vse figure", "variable-manager/for-this-sprite": "Spremenljivke za to figuro", "variable-manager/search": "Iskanje", + "variable-manager/too-big": "Kliknite za prikaz zelo velike vrednosti.", "variable-manager/variables": "Spremenljivke", "search-sprites/placeholder": "Iskanje figur...", + "sprite-properties/close-properties-panel-tooltip": "Skrči lastnosti", + "sprite-properties/open-properties-panel-tooltip": "Odpri lastnosti", "gamepad/axes-a-b": "Osi {a} in {b}", "gamepad/axis-arrows": "Tipke s puščicami", "gamepad/axis-cursor": "Kazalec miške", diff --git a/src/addons/addons-l10n/tr.json b/src/addons/addons-l10n/tr.json index 7d031c7e3..395529b37 100644 --- a/src/addons/addons-l10n/tr.json +++ b/src/addons/addons-l10n/tr.json @@ -34,7 +34,7 @@ "mediarecorder/record-after-flag": "Yeşil Bayrağa tıklanana kadar kayda başlama", "mediarecorder/record-audio": "Proje seslerini de kaydet", "mediarecorder/record-audio-description": "Bu, Metinden Sese tekniğini desteklemez.", - "mediarecorder/record-description": "Sahneyi bir WebM dosyası olarak kaydedin. Kayıt bittikten sonra bilgisayarınıza kaydedebilirsiniz.\nNot: değişken ve liste alanları görünmeyecek.", + "mediarecorder/record-description": "Sahneyi bir WebM dosyası olarak kaydedin. Kayıt bittikten sonra bilgisayarınıza kaydedebilirsiniz.\nNot: değişken ve liste ekranları görünmeyecek.", "mediarecorder/record-duration": "Kayıt Süresi (saniye ile)", "mediarecorder/record-mic": "Mikrofondaki sesleri de kaydet", "mediarecorder/record-until-stop": "Proje durduğunda kaydı durdur", @@ -92,10 +92,10 @@ "paint-snap/boxCenter": "Seçimin merkezinden", "paint-snap/boxCorners": "Seçimin köşelerinden", "paint-snap/boxEdgeMids": "Seçimin orta kenar noktalarından", - "paint-snap/objectCenters": "Objelerin merkezlerine", - "paint-snap/objectCorners": "Objelerin köşelerine", - "paint-snap/objectEdges": "Objelerin kenarlarına", - "paint-snap/objectMidlines": "Objelerin orta hatlarına", + "paint-snap/objectCenters": "Nesnelerin merkezlerine", + "paint-snap/objectCorners": "Nesnelerin köşelerine", + "paint-snap/objectEdges": "Nesnelerin kenarlarına", + "paint-snap/objectMidlines": "Nesnelerin orta hatlarına", "paint-snap/off": "Kapalı", "paint-snap/on": "Açık", "paint-snap/pageAxes": "Sayfanın x ve y eksenlerine", @@ -106,13 +106,13 @@ "paint-snap/snapFrom": "Şuradan tuttur:", "paint-snap/snapTo": "Şuraya tuttur:", "paint-snap/threshold": "Tutturma mesafesi", - "paint-snap/toggle": "Yapışmayı Değiştir", + "paint-snap/toggle": "Tutturmayı Değiştir", "2d-color-picker/shade": "Ton", "better-img-uploads/upload": "HD Yükle", "variable-manager/for-all-sprites": "Tüm kuklaların değişkenleri", "variable-manager/for-this-sprite": "Bu kuklanın değişkenleri", "variable-manager/search": "Ara", - "variable-manager/too-big": "Çok büyük değerleri görmek için tıkla.", + "variable-manager/too-big": "Çok büyük değeri görmek için tıkla.", "variable-manager/variables": "Değişkenler", "search-sprites/placeholder": "Kuklalarda ara...", "sprite-properties/close-properties-panel-tooltip": "Özellikler panelini daralt", diff --git a/src/addons/addons/editor-theme3/_manifest_entry.js b/src/addons/addons/editor-theme3/_manifest_entry.js index 81f3132d4..589cb9900 100644 --- a/src/addons/addons/editor-theme3/_manifest_entry.js +++ b/src/addons/addons/editor-theme3/_manifest_entry.js @@ -45,7 +45,7 @@ const manifest = { } }, { - "name": "inputColor-forumText", + "name": "inputColor-blackText", "value": { "type": "alphaThreshold", "source": { diff --git a/src/addons/addons/editor-theme3/black_text.css b/src/addons/addons/editor-theme3/black_text.css index ed0d659a7..9be63aba2 100644 --- a/src/addons/addons/editor-theme3/black_text.css +++ b/src/addons/addons/editor-theme3/black_text.css @@ -1,21 +1,36 @@ +@namespace xlink url("http://www.w3.org/1999/xlink"); + .scratchCategoryItemBubble::after { /* block-palette-icons */ filter: brightness(0); - opacity: 0.6; +} + +.blocklyEditableText > text { + fill: var(--editorTheme3-inputColor-blackText); +} +.blocklyHtmlInput { + color: var(--editorTheme3-inputColor-blackText); +} + +[class*="blocks_blocks_"] image[xlink|href$="/rotate-left.svg"], +[class*="blocks_blocks_"] image[xlink|href$="/rotate-right.svg"], +[class*="blocks_blocks_"] image[xlink|href$="/repeat.svg"] { + filter: invert(1) hue-rotate(180deg); } .blocklyDropDownDiv .goog-menuitem, .sa-contextmenu-colored .blocklyContextMenu .goog-menuitem .goog-menuitem-content { - color: #575e75; + color: black; } .blocklyDropDownDiv .blocklyText { - fill: #575e75; + fill: black; } /* Compatibility */ .sa-block-color { - --sa-block-text: #575e75; - --sa-block-gray-text: #575e75; - --sa-block-text-on-bright-background: #575e75; + --sa-block-text: black; + --sa-block-gray-text: black; + --sa-block-colored-text: var(--sa-block-background-tertiary); + --sa-block-text-on-bright-background: black; } diff --git a/src/addons/addons/editor-theme3/compatibility.css b/src/addons/addons/editor-theme3/compatibility.css index 459c55fcc..b619c720d 100644 --- a/src/addons/addons/editor-theme3/compatibility.css +++ b/src/addons/addons/editor-theme3/compatibility.css @@ -2,7 +2,7 @@ .sa-block-color { --sa-block-colored-background: var(--sa-block-background-primary); - --sa-block-colored-background-secondary: var(--sa-block-background-tertiary); + --sa-block-colored-background-secondary: var(--sa-block-field-background); --sa-block-bright-background: var(--sa-block-background-primary); --sa-block-text: white; --sa-block-gray-text: white; diff --git a/src/addons/addons/editor-theme3/forums/base.css b/src/addons/addons/editor-theme3/forums/base.css index 85fed6018..5a41b6204 100644 --- a/src/addons/addons/editor-theme3/forums/base.css +++ b/src/addons/addons/editor-theme3/forums/base.css @@ -179,7 +179,7 @@ .sb-label.sb-literal-number-dropdown, .sb-literal-number-dropdown + polygon /* dropdown arrow */, .sb-label.sb-literal-string { - fill: var(--editorTheme3-inputColor-forumText); + fill: var(--editorTheme3-inputColor-blackText); } .sb3-label.sb3-literal-number, .sb3-label.sb3-literal-string { diff --git a/src/addons/addons/editor-theme3/forums/black_text.css b/src/addons/addons/editor-theme3/forums/black_text.css index d065d8fd2..d6c94fbde 100644 --- a/src/addons/addons/editor-theme3/forums/black_text.css +++ b/src/addons/addons/editor-theme3/forums/black_text.css @@ -1,7 +1,88 @@ -.sb-label { +.sb3-motion, +.sb3-looks, +.sb3-sound, +.sb3-events, +.sb3-control, +.sb3-sensing, +.sb3-operators, +.sb3-variables, +.sb3-list, +.sb3-custom, +.sb3-custom-arg, +.sb3-extension, +.sb3-pen { + stroke: rgba(0, 0, 0, 0.35); +} + +.sb3-motion-alt, +.sb3-looks-alt, +.sb3-sound-alt, +.sb3-events-alt, +.sb3-control-alt, +.sb3-sensing-alt, +.sb3-operators-alt, +.sb3-variables-alt, +.sb3-list-alt, +.sb3-custom-alt, +.sb3-custom-arg-alt, +.sb3-extension-alt, +.sb3-pen-alt { + fill: rgba(255, 255, 255, 0.4); + stroke: rgba(0, 0, 0, 0.4); +} +.sb3-motion-dark, +.sb3-looks-dark, +.sb3-sound-dark, +.sb3-events-dark, +.sb3-control-dark, +.sb3-sensing-dark, +.sb3-operators-dark, +.sb3-variables-dark, +.sb3-list-dark, +.sb3-custom-dark, +.sb3-custom-arg-dark, +.sb3-extension-dark, +.sb3-pen-dark { + fill: rgba(0, 0, 0, 0.35); +} +.sb3-extension-line { + stroke: rgba(0, 0, 0, 0.35); +} + +.sb-motion ~ .sb-label, +.sb-looks ~ .sb-label, +.sb-sound ~ .sb-label, +.sb-events ~ .sb-label, +.sb-control ~ .sb-label, +.sb-sensing ~ .sb-label, +.sb-operators ~ .sb-label, +.sb-variables ~ .sb-label, +.sb-list ~ .sb-label, +.sb-custom ~ .sb-label, +.sb-custom-arg ~ .sb-label, +.sb-extension ~ .sb-label, +.sb-pen ~ .sb-label, +.sb3-motion ~ .sb3-label, +.sb3-looks ~ .sb3-label, +.sb3-sound ~ .sb3-label, +.sb3-events ~ .sb3-label, +.sb3-control ~ .sb3-label, +.sb3-sensing ~ .sb3-label, +.sb3-operators ~ .sb3-label, +.sb3-variables ~ .sb3-label, +.sb3-list ~ .sb3-label, +.sb3-custom ~ .sb3-label, +.sb3-custom-arg ~ .sb3-label, +.sb3-extension ~ .sb3-label, +.sb3-pen ~ .sb3-label, +#sb3-dropdownArrow path, +#sb3-loopArrow path[fill="#fff"], +#sb3-turnLeft path[fill="#fff"], +#sb3-turnRight path[fill="#fff"] { fill: black; } -.sb3-label, -#sb3-dropdownArrow path { - fill: #575e75; + +.sb3-label.sb3-literal-number, +.sb3-label.sb3-literal-string { + fill: var(--editorTheme3-inputColor-blackText); } diff --git a/src/addons/addons/editor-theme3/forums/color_on_white.css b/src/addons/addons/editor-theme3/forums/color_on_white.css index 1d48e1fef..c19a0688a 100644 --- a/src/addons/addons/editor-theme3/forums/color_on_white.css +++ b/src/addons/addons/editor-theme3/forums/color_on_white.css @@ -44,10 +44,6 @@ fill: white; stroke: var(--editorTheme3-commentColor); } -.sb-label, -.sb3-label { - fill: black; -} #sb3-dropdownArrow path { fill: #575e75; } diff --git a/src/addons/addons/editor-theme3/theme3.js b/src/addons/addons/editor-theme3/theme3.js index aecb4a524..a25943bc2 100644 --- a/src/addons/addons/editor-theme3/theme3.js +++ b/src/addons/addons/editor-theme3/theme3.js @@ -1,5 +1,12 @@ -import { removeAlpha, multiply, alphaBlend, recolorFilter } from "../../libraries/common/cs/text-color.esm.js"; +import { + removeAlpha, + multiply, + brighten, + alphaBlend, + recolorFilter, +} from "../../libraries/common/cs/text-color.esm.js"; +const dataUriRegex = new RegExp("^data:image/svg\\+xml;base64,([A-Za-z0-9+/=]*)$"); const extensionsCategory = { id: null, settingId: "Pen-color", @@ -85,47 +92,52 @@ export default async function ({ addon, console }) { tertiary: "#e64444" }; - let textMode = addon.settings.get("text"); - const isColoredTextMode = () => !addon.self.disabled && (textMode === "colorOnWhite" || textMode === "colorOnBlack"); + let textModeSetting = addon.settings.get("text"); + const textMode = () => (addon.self.disabled ? "white" : textModeSetting); + const isColoredTextMode = () => textMode() === "colorOnWhite" || textMode() === "colorOnBlack"; const primaryColor = (category) => { if (addon.self.disabled) return originalColors[category.colorId].primary; // Colored on white: can't use #ffffff because of editor-dark-mode dropdown div handling - if (textMode === "colorOnWhite") return "#feffff"; - if (textMode === "colorOnBlack") return "#282828"; + if (textMode() === "colorOnWhite") return "#feffff"; + if (textMode() === "colorOnBlack") return "#282828"; return addon.settings.get(category.settingId); }; const secondaryColor = (category) => { if (addon.self.disabled) return originalColors[category.colorId].secondary; if (isColoredTextMode()) return alphaBlend(primaryColor(category), multiply(addon.settings.get(category.settingId), { a: 0.15 })); + if (textMode() === "black") return brighten(addon.settings.get(category.settingId), { r: 0.6, g: 0.6, b: 0.6 }); return multiply(addon.settings.get(category.settingId), { r: 0.9, g: 0.9, b: 0.9 }); }; const tertiaryColor = (category) => { if (addon.self.disabled) return originalColors[category.colorId].tertiary; if (isColoredTextMode()) return addon.settings.get(category.settingId); + if (textMode() === "black") return multiply(addon.settings.get(category.settingId), { r: 0.65, g: 0.65, b: 0.65 }); return multiply(addon.settings.get(category.settingId), { r: 0.8, g: 0.8, b: 0.8 }); }; const fieldBackground = (category) => { - // Background color for open dropdowns and Boolean inputs + // Background color for open dropdowns and (in some textModes) Boolean inputs // The argument can be a block, field, or category if (category instanceof Blockly.Block || category instanceof Blockly.Field) { const block = category instanceof Blockly.Block ? category : category.sourceBlock_; - if (isColoredTextMode()) { + if (isColoredTextMode() || textMode() === "black") { let primary; if (block.isShadow() && block.getParent()) primary = block.getParent().getColour(); else primary = block.getColour(); - return alphaBlend(primary, multiply(block.getColourTertiary(), { a: 0.25 })); + if (isColoredTextMode()) return alphaBlend(primary, multiply(block.getColourTertiary(), { a: 0.25 })); + else return brighten(primary, { r: 0.4, g: 0.4, b: 0.4 }); } return block.getColourTertiary(); } if (isColoredTextMode()) return alphaBlend(primaryColor(category), multiply(addon.settings.get(category.settingId), { a: 0.25 })); + if (textMode() === "black") return brighten(primaryColor(category), { r: 0.4, g: 0.4, b: 0.4 }); return tertiaryColor(category); }; const textColor = (field) => { - if (addon.self.disabled || textMode === "white") return "#ffffff"; - if (textMode === "black") return "#575e75"; + if (addon.self.disabled || textMode() === "white") return "#ffffff"; + if (textMode() === "black") return "#000000"; if (field) return field.sourceBlock_.getColourTertiary(); return "#000000"; }; @@ -153,6 +165,21 @@ export default async function ({ addon, console }) { const oldCategoryCreateDom = Blockly.Toolbox.Category.prototype.createDom; Blockly.Toolbox.Category.prototype.createDom = function () { // Category bubbles + if (this.iconURI_) { + if (addon.self.disabled) return oldCategoryCreateDom.call(this); + if (!["sa-blocks", "videoSensing", "text2speech"].includes(this.id_)) return oldCategoryCreateDom.call(this); + + const match = dataUriRegex.exec(this.iconURI_); + if (match) { + const oldSvg = atob(match[1]); + const category = this.id_ === "sa-blocks" ? saCategory : extensionsCategory; + const newColor = isColoredTextMode ? tertiaryColor(category) : primaryColor(category); + if (newColor) { + const newSvg = oldSvg.replace(/#29beb8|#0ebd8c/gi, newColor); + this.iconURI_ = `data:image/svg+xml;base64,${btoa(newSvg)}`; + } + } + } oldCategoryCreateDom.call(this); if (this.iconURI_) return; const category = categories.find((item) => item.id === this.id_); @@ -182,9 +209,11 @@ export default async function ({ addon, console }) { Blockly.BlockSvg.prototype.updateColour = function () { oldBlockUpdateColour.call(this); // Boolean inputs - for (const input of this.inputList) { - if (input.outlinePath) { - input.outlinePath.setAttribute("fill", fieldBackground(this)); + if (isColoredTextMode()) { + for (const input of this.inputList) { + if (input.outlinePath) { + input.outlinePath.setAttribute("fill", fieldBackground(this)); + } } } }; @@ -277,10 +306,17 @@ export default async function ({ addon, console }) { return oldFieldMatrixCreateButton.call(this, fill); }; + const oldFieldVerticalSeparatorInit = Blockly.FieldVerticalSeparator.prototype.init; + Blockly.FieldVerticalSeparator.prototype.init = function () { + // Vertical line between extension icon and block label + oldFieldVerticalSeparatorInit.call(this); + if (textMode() === "black") this.lineElement_.setAttribute("stroke", this.sourceBlock_.getColourTertiary()); + }; + const updateColors = () => { const vm = addon.tab.traps.vm; - textMode = addon.settings.get("text"); + textModeSetting = addon.settings.get("text"); for (const category of categories) { // CSS variables are used for compatibility with other addons diff --git a/src/addons/addons/find-bar/userscript.js b/src/addons/addons/find-bar/userscript.js index 670018187..174bbc203 100644 --- a/src/addons/addons/find-bar/userscript.js +++ b/src/addons/addons/find-bar/userscript.js @@ -203,7 +203,7 @@ export default async function ({ addon, msg, console }) { } } - this.utils.offsetX = this.dropdownOut.getBoundingClientRect().right + 26; + this.utils.offsetX = this.dropdownOut.getBoundingClientRect().width + 32; this.utils.offsetY = 32; } diff --git a/src/addons/addons/find-bar/userstyle.css b/src/addons/addons/find-bar/userstyle.css index 872e23ec0..058f21e0d 100644 --- a/src/addons/addons/find-bar/userstyle.css +++ b/src/addons/addons/find-bar/userstyle.css @@ -105,7 +105,7 @@ /* Drop down items */ .sa-find-dropdown > li:hover, .sa-find-dropdown > li.sel { - color: white; + color: var(--sa-block-text-on-bright-background); cursor: pointer; } @@ -116,9 +116,11 @@ .sa-find-flag { color: #4cbf56; } -.sa-find-flag:hover, -.sa-find-flag.sel { +/* .sa-find-dropdown added for specificity */ +.sa-find-dropdown > .sa-find-flag:hover, +.sa-find-dropdown > .sa-find-flag.sel { background-color: #4cbf56; + color: white; } .sa-find-dropdown .sa-block-color { diff --git a/src/addons/addons/paint-snap/updateSelectTool.js b/src/addons/addons/paint-snap/updateSelectTool.js index d2acaab7e..1f0f14012 100644 --- a/src/addons/addons/paint-snap/updateSelectTool.js +++ b/src/addons/addons/paint-snap/updateSelectTool.js @@ -89,7 +89,7 @@ export const updateSelectTool = (paper, tool) => { let removeGuides; - moveTool.constructor.prototype.onMouseDrag = function (event) { + function onMouseDrag(event) { const point = event.point; const actionBounds = getActionBounds(this.mode in BitmapModes); @@ -130,7 +130,7 @@ export const updateSelectTool = (paper, tool) => { removeGuides(); - if (snapOn && !event.modifiers.shift && this.mode !== Modes.RESHAPE) { + if (!event.modifiers.shift && this.mode !== Modes.RESHAPE) { const paintLayer = getLayer("isPaintingLayer"); const snapPoints = createSnapPoints(paper, selectionBounds, lib, paintLayer.children); @@ -301,6 +301,17 @@ export const updateSelectTool = (paper, tool) => { ); } // else the rotation center is within selection bounds, always show drag crosshair at full opacity getDragCrosshairLayer().opacity = CROSSHAIR_FULL_OPACITY * opacityMultiplier; + } + + const oldMouseDrag = moveTool.constructor.prototype.onMouseDrag; + moveTool.constructor.prototype.onMouseDrag = onMouseDrag; + + const oldMouseDown = moveTool.constructor.prototype.onMouseDown; + moveTool.constructor.prototype.onMouseDown = function (...a) { + if (snapOn) moveTool.constructor.prototype.onMouseDrag = onMouseDrag; + else moveTool.constructor.prototype.onMouseDrag = oldMouseDrag; + + oldMouseDown.apply(this, a); }; const oldMouseUp = moveTool.constructor.prototype.onMouseUp; diff --git a/src/addons/generated/upstream-meta.json b/src/addons/generated/upstream-meta.json index 9d29c6186..c92390c91 100644 --- a/src/addons/generated/upstream-meta.json +++ b/src/addons/generated/upstream-meta.json @@ -1 +1 @@ -{"commit":"3cb8b52"} \ No newline at end of file +{"commit":"f31e959"} \ No newline at end of file