From 0e0e75fd76d3a73f5de2eaac5cc40235456906ed Mon Sep 17 00:00:00 2001
From: Thomas Weber
Date: Wed, 5 May 2021 10:42:54 -0500
Subject: [PATCH] Update addons (1.14 w/o new addons)
Just patches for existing addons. Nothing new yet.
---
src/addons/addons-l10n/de/gamepad.json | 1 +
.../addons-l10n/es/editor-devtools.json | 2 +-
src/addons/addons-l10n/es/editor-theme3.json | 2 +-
src/addons/addons-l10n/es/gamepad.json | 1 +
.../addons-l10n/fr/2d-color-picker.json | 2 +-
.../addons-l10n/fr/block-palette-icons.json | 2 +-
src/addons/addons-l10n/fr/blocks2image.json | 1 +
src/addons/addons-l10n/fr/custom-zoom.json | 1 +
.../addons-l10n/fr/editor-devtools.json | 2 +-
src/addons/addons-l10n/fr/editor-theme3.json | 2 +-
src/addons/addons-l10n/fr/gamepad.json | 1 +
.../fr/initialise-sprite-position.json | 1 +
.../addons-l10n/it/editor-devtools.json | 2 +-
src/addons/addons-l10n/it/gamepad.json | 1 +
.../addons-l10n/ja/block-palette-icons.json | 2 +-
src/addons/addons-l10n/ja/drag-drop.json | 2 +-
.../addons-l10n/ja/editor-devtools.json | 2 +-
src/addons/addons-l10n/ja/editor-theme3.json | 2 +-
src/addons/addons-l10n/ja/gamepad.json | 1 +
src/addons/addons-l10n/ko/blocks2image.json | 1 +
.../ko/editor-colored-context-menus.json | 1 +
.../addons-l10n/ko/editor-stage-left.json | 1 +
src/addons/addons-l10n/ko/editor-theme3.json | 1 +
src/addons/addons-l10n/ko/gamepad.json | 1 +
src/addons/addons-l10n/nl/editor-theme3.json | 2 +-
.../addons-l10n/pl/block-palette-icons.json | 2 +-
src/addons/addons-l10n/pl/blocks2image.json | 2 +-
.../pl/data-category-tweaks-v2.json | 2 +-
.../addons-l10n/pl/editor-devtools.json | 2 +-
src/addons/addons-l10n/pl/gamepad.json | 1 +
.../pl/initialise-sprite-position.json | 2 +-
src/addons/addons-l10n/pl/onion-skinning.json | 2 +-
.../addons-l10n/pt-br/editor-theme3.json | 2 +-
src/addons/addons-l10n/pt-br/gamepad.json | 1 +
src/addons/addons-l10n/ro/blocks2image.json | 1 +
src/addons/addons-l10n/ro/custom-zoom.json | 1 +
.../addons-l10n/ro/editor-devtools.json | 2 +-
src/addons/addons-l10n/ro/editor-theme3.json | 2 +-
src/addons/addons-l10n/ro/gamepad.json | 1 +
.../addons-l10n/ru/block-switching.json | 2 +-
.../ru/data-category-tweaks-v2.json | 2 +-
src/addons/addons-l10n/ru/editor-theme3.json | 2 +-
src/addons/addons-l10n/ru/gamepad.json | 1 +
src/addons/addons-l10n/ru/hide-flyout.json | 2 +-
src/addons/addons-l10n/ru/mediarecorder.json | 2 +-
.../addons-l10n/sl/editor-devtools.json | 2 +-
src/addons/addons-l10n/sl/editor-theme3.json | 2 +-
src/addons/addons-l10n/sl/gamepad.json | 1 +
src/addons/addons-l10n/tr/blocks2image.json | 2 +-
src/addons/addons-l10n/tr/editor-theme3.json | 2 +-
src/addons/addons-l10n/tr/gamepad.json | 1 +
src/addons/addons/2d-color-picker/addon.json | 2 +-
.../addons/2d-color-picker/paint-editor.js | 6 +-
src/addons/addons/bitmap-copy/addon.json | 2 +-
.../addons/block-palette-icons/addon.json | 2 +-
.../block-palette-icons/icons/block_icon.svg | 2 +-
.../icons/control_icon.svg | 2 +-
.../block-palette-icons/icons/events_icon.svg | 2 +-
.../block-palette-icons/icons/list_icon.svg | 2 +-
.../block-palette-icons/icons/looks_icon.svg | 2 +-
.../block-palette-icons/icons/motion_icon.svg | 2 +-
.../icons/operators_icon.svg | 2 +-
.../icons/sensing_icon.svg | 2 +-
.../block-palette-icons/icons/sound_icon.svg | 2 +-
.../icons/variables_icon.svg | 2 +-
src/addons/addons/block-switching/addon.json | 2 +-
src/addons/addons/blocks2image/addon.json | 2 +-
src/addons/addons/blocks2image/userscript.js | 17 +++---
src/addons/addons/cat-blocks/addon.json | 6 +-
src/addons/addons/clones/addon.json | 2 +-
src/addons/addons/clones/userscript.js | 1 +
src/addons/addons/color-picker/addon.json | 2 +-
src/addons/addons/color-picker/code-editor.js | 6 +-
.../addons/color-picker/paint-editor.js | 6 +-
.../addons/custom-block-shape/addon.json | 2 +-
src/addons/addons/custom-zoom/addon.json | 2 +-
.../addons/data-category-tweaks-v2/addon.json | 2 +-
.../editor-colored-context-menus/addon.json | 2 +-
src/addons/addons/editor-devtools/DevTools.js | 2 +-
src/addons/addons/editor-devtools/addon.json | 2 +-
.../addons/editor-devtools/userscript.js | 2 +-
.../editor-searchable-dropdowns/addon.json | 3 +-
.../editor-searchable-dropdowns/userscript.js | 12 ++--
.../addons/editor-stage-left/addon.json | 2 +-
src/addons/addons/editor-theme3/addon.json | 2 +-
src/addons/addons/editor-theme3/theme3.js | 8 +--
src/addons/addons/folders/userscript.js | 6 +-
src/addons/addons/gamepad/addon.json | 5 +-
src/addons/addons/gamepad/close.svg | 2 +-
src/addons/addons/gamepad/dot.svg | 2 +-
src/addons/addons/gamepad/gamepad.svg | 3 +-
src/addons/addons/gamepad/gamepadlib.js | 2 +-
src/addons/addons/hide-flyout/addon.json | 2 +-
src/addons/addons/hide-flyout/userscript.js | 2 +-
src/addons/addons/load-extensions/addon.json | 2 +-
src/addons/addons/mediarecorder/addon.json | 2 +-
src/addons/addons/mediarecorder/userscript.js | 2 +-
src/addons/addons/mouse-pos/addon.json | 2 +-
src/addons/addons/mute-project/addon.json | 2 +-
src/addons/addons/mute-project/icon--mute.svg | 20 +++----
src/addons/addons/onion-skinning/addon.json | 2 +-
.../addons/onion-skinning/userscript.js | 1 +
src/addons/addons/pause/addon.json | 2 +-
.../addons/remove-sprite-confirm/addon.json | 2 +-
.../addons/variable-manager/userscript.js | 3 +-
.../libraries/common/cs/download-blob.js | 33 +++++++++++
.../{ => common/cs}/normalize-color.js | 2 +-
.../libraries/{ => common/cs}/rate-limiter.js | 6 +-
.../libraries/common/cs/text-color.esm.js | 58 +++++++++++++++++++
src/addons/libraries/download-blob.js | 34 -----------
src/addons/libraries/text_color.js | 37 ------------
.../{ => thirdparty/cs}/tinycolor-min.js | 0
src/addons/upstream-meta.json | 2 +-
113 files changed, 240 insertions(+), 194 deletions(-)
create mode 100644 src/addons/addons-l10n/de/gamepad.json
create mode 100644 src/addons/addons-l10n/es/gamepad.json
create mode 100644 src/addons/addons-l10n/fr/blocks2image.json
create mode 100644 src/addons/addons-l10n/fr/custom-zoom.json
create mode 100644 src/addons/addons-l10n/fr/gamepad.json
create mode 100644 src/addons/addons-l10n/fr/initialise-sprite-position.json
create mode 100644 src/addons/addons-l10n/it/gamepad.json
create mode 100644 src/addons/addons-l10n/ja/gamepad.json
create mode 100644 src/addons/addons-l10n/ko/blocks2image.json
create mode 100644 src/addons/addons-l10n/ko/editor-colored-context-menus.json
create mode 100644 src/addons/addons-l10n/ko/editor-stage-left.json
create mode 100644 src/addons/addons-l10n/ko/editor-theme3.json
create mode 100644 src/addons/addons-l10n/ko/gamepad.json
create mode 100644 src/addons/addons-l10n/pl/gamepad.json
create mode 100644 src/addons/addons-l10n/pt-br/gamepad.json
create mode 100644 src/addons/addons-l10n/ro/blocks2image.json
create mode 100644 src/addons/addons-l10n/ro/custom-zoom.json
create mode 100644 src/addons/addons-l10n/ro/gamepad.json
create mode 100644 src/addons/addons-l10n/ru/gamepad.json
create mode 100644 src/addons/addons-l10n/sl/gamepad.json
create mode 100644 src/addons/addons-l10n/tr/gamepad.json
create mode 100644 src/addons/libraries/common/cs/download-blob.js
rename src/addons/libraries/{ => common/cs}/normalize-color.js (99%)
rename src/addons/libraries/{ => common/cs}/rate-limiter.js (86%)
create mode 100644 src/addons/libraries/common/cs/text-color.esm.js
delete mode 100644 src/addons/libraries/download-blob.js
delete mode 100644 src/addons/libraries/text_color.js
rename src/addons/libraries/{ => thirdparty/cs}/tinycolor-min.js (100%)
diff --git a/src/addons/addons-l10n/de/gamepad.json b/src/addons/addons-l10n/de/gamepad.json
new file mode 100644
index 000000000..59beec5e9
--- /dev/null
+++ b/src/addons/addons-l10n/de/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Gamepad-Einstellungen","gamepad/key-space":"Leertaste","gamepad/key-up":"Oben","gamepad/key-down":"Unten","gamepad/key-left":"Links","gamepad/key-right":"Rechts","gamepad/key-none":"(keine)","gamepad/key-click":"Klicken","gamepad/axis-none":"Keine","gamepad/axis-arrows":"Pfeiltasten","gamepad/no-controllers":"Keine Controller gefunden. Schließe einen an und drücke einen der Knöpfe.","gamepad/button-n":"Knopf {n}","gamepad/axes-a-b":"Achsen {a} & {b}","gamepad/@name":"Gamepad-Unterstützung","gamepad/@description":"Interagiere mit einem USB- oder Bluetoothcontroller/Gamepad mit Projekten."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/es/editor-devtools.json b/src/addons/addons-l10n/es/editor-devtools.json
index 31effee8f..a0f8d3527 100644
--- a/src/addons/addons-l10n/es/editor-devtools.json
+++ b/src/addons/addons-l10n/es/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-title":"Herramientas de Desarrollador de Scratch 3","editor-devtools/help-by":"por {url} y contribuidores y traductores de Scratch Addons","editor-devtools/ctrl-space":"Ctrl + Espacio o click medio","editor-devtools/ctrl-space-desc":"Pone una ventana flotante donde puedes escribir el nombre de un bloque (o partes de él) y arrastrar el bloque al código para usarlo allí.","editor-devtools/code-tab-features":"Funciones de la Pestaña de Código","editor-devtools/interactive-find-bar":"Barra de Búsqueda Interactiva (Ctrl + F)","editor-devtools/improved-tidy-up":"Ordenado de Bloques Mejorado","editor-devtools/help-new":"★Nuevo★","editor-devtools/help-make-space":"Hacer Espacio","editor-devtools/help-make-space-desc":"Haga espacio extra alrededor de un script haciéndole click derecho y eligiendo \"Hacer Espacio\".","editor-devtools/copy-to-clipboard":"Copiar al Portapapeles","editor-devtools/copy-to-clipboard-desc":"Haga click derecho a un bloque y 3 nuevas opciones estarán disponisbles: Copiar Todos, Copiar Bloque y Cortar Bloque. El botón Copiar Todos copiará todo incluido abajo del bloque que clickeaste. Copiar Bloque solo copiará el bloque actual y sus contenidos, pero nada de abajo. Cortar Bloque lo copiará y lo eliminará.","editor-devtools/paste-from-clipboard":"Pegar del Portapapeles","editor-devtools/paste-from-clipboard-desc":"Pega del portapapeles, pero lo pega donde está su cursor del ratón para que puedas posicionarlo (en vez de ponerlo donde lo copió, como la implementación actual de Scratch).","editor-devtools/swap-variable":"Intercambiar Variable en Objeto","editor-devtools/swap-variable-desc":"Haga click derecho a una variable en la parte de código para esta nueva opción. Te permite intercambiar todas las referencias a esta variable en el objeto actual a otra variable. Esto es bueno para cuando cometió un error y quiere cambiar todas las referencias a una variable a otra o tiene que cambiar \"para todos los objetos\" a \"solo para este objeto\". Esta opción no quitará la variable antigua y no afectará las variables de otros objetos.","editor-devtools/middleclick":"Click Medi","editor-devtools/middleclick-desc":"Usando el botón del medio del ratón en una variable o bloque propio, puedes saltar a su definición o abrirlo en la barra de búsqueda interativa.","editor-devtools/ctrl-lr":"Ctrl + Izquierda, Ctrl + Derecha","editor-devtools/ctrl-lr-desc":"Navegue a la posición siguiente o anterior de la ventana de código (luego de usar la función \"navegar a bloque\" o la barra de búsqueda). Esto le permite hacer click medio en un bloque propio para ir a su definición, luego presione Ctrl + Izquierda para volver donde estaba antes.","editor-devtools/costume-tab-features":"Funciones de la Pestaña de Disfraces","editor-devtools/find-bar":"Barra de Búsqueda","editor-devtools/ctrl-lr-costume-desc":"Estas flechas le permiten navegar al anterior o próximo disfraz del objeto.","editor-devtools/send-top-bottom":"Mandar al Frente, Mandar al Fondo","editor-devtools/send-top-bottom-desc":"Haga click derecho a un disfraz y 2 nuevas opciones estarán presentes. Estas pueden ser usadas para enviar el disfraz actual al frente o al final de la lista de disfraces para un reordenado rápido.","editor-devtools/youtube":"Tutoriales en YouTube","editor-devtools/var-not-exist":"Esa variable no existe..","editor-devtools/find":"Buscar","editor-devtools/find-placeholder":"Buscar (Ctrl+F)","editor-devtools/deep":"Profundo","editor-devtools/help":"Ayuda","editor-devtools/tutorials":"Tutoriales","editor-devtools/clean-plus":"Ordenar Bloques +","editor-devtools/paste":"Pegar","editor-devtools/copy-all":"Copiar Todos","editor-devtools/copy-block":"Copiar Bloque","editor-devtools/cut-block":"Cortar Bloque","editor-devtools/make-space":"Hacer Espacio","editor-devtools/swap":"Intercambiar Variable {var} en Objeto","editor-devtools/lists":"listas","editor-devtools/insert":"Insertar","editor-devtools/start-typing":"Empiece a escribir...","editor-devtools/extension-description-not-for-addon":"Herramientas de Desarrollador de Scratch 3 para mejorar su experiencia editando en https://scratch.mit.edu","editor-devtools/@name":"Herramientas de desarrollador","editor-devtools/@description":"Agrega una barra de búsqueda y nuevas opciones de menú para el editor: copie y pegue bloques, ordene de mejor manera, vaya directamente a la definición de un bloque propio y más.","editor-devtools/@info-shortcuts":"Presione \"Ctrl+F\" para enfocar la barra de búsqueda, \"Ctrl+Espacio\" para abrir la ventana flotante de \"encontrar bloque por nombre\", \"Ctrl+Izquierda/Derecha\" para navegar el historial de búsqueda.","editor-devtools/@settings-name-enableCleanUpPlus":"Mejorar \"Ordenar Bloques\"","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Pegar bloques en la posición del cursor","editor-devtools/@settings-name-enableMiddleClickFinder":"Click medio del mouse en variables, bloques personalizados o eventos para navegar"}
\ No newline at end of file
+{"editor-devtools/help-title":"Herramientas de Desarrollador de Scratch 3","editor-devtools/help-by":"por {url} y contribuidores y traductores de Scratch Addons","editor-devtools/ctrl-space":"Ctrl + Espacio o click medio","editor-devtools/ctrl-space-desc":"Pone una ventana flotante donde puedes escribir el nombre de un bloque (o partes de él) y arrastrar el bloque al código para usarlo allí.","editor-devtools/code-tab-features":"Funciones de la Pestaña de Código","editor-devtools/interactive-find-bar":"Barra de Búsqueda Interactiva (Ctrl + F)","editor-devtools/interactive-find-bar-desc":"Rápidamente busque y salte a cualquier bloque propio, variable, evento o bloque sombrero definido en un objeto clickeando en la nueva barra de búsqueda ubicada a la derecha de las pestañas de Código, Disfraces y Sonidos. Empiece a escribir para filtrar la lista. Use las teclas arriba y abajo para cambiar entre las posibles entradas y las flechas izquierda y derecha para revisar cada resultado de ese bloque.","editor-devtools/improved-tidy-up":"Ordenado de Bloques Mejorado","editor-devtools/improved-tidy-up-desc":"Haga click derecho en la ventana de código para mostrar el menú y la opción de ordenar bloques será reemplazada por una opción de \"Ordenar Bloques +\". Use esto para ordenar sus scripts, preservando las columnas como también intentando alinear los comentarios y quitar toda variable huérfana, etc. ¡Le va a encantar, se lo garantizo!\n ","editor-devtools/help-new":"★Nuevo★","editor-devtools/help-make-space":"Hacer Espacio","editor-devtools/help-make-space-desc":"Haga espacio extra alrededor de un script haciéndole click derecho y eligiendo \"Hacer Espacio\".","editor-devtools/copy-to-clipboard":"Copiar al Portapapeles","editor-devtools/copy-to-clipboard-desc":"Haga click derecho a un bloque y 3 nuevas opciones estarán disponisbles: Copiar Todos, Copiar Bloque y Cortar Bloque. El botón Copiar Todos copiará todo incluido abajo del bloque que clickeaste. Copiar Bloque solo copiará el bloque actual y sus contenidos, pero nada de abajo. Cortar Bloque lo copiará y lo eliminará.","editor-devtools/paste-from-clipboard":"Pegar del Portapapeles","editor-devtools/paste-from-clipboard-desc":"Pega del portapapeles, pero lo pega donde está su cursor del ratón para que puedas posicionarlo (en vez de ponerlo donde lo copió, como la implementación actual de Scratch).","editor-devtools/swap-variable":"Intercambiar Variable en Objeto","editor-devtools/swap-variable-desc":"Haga click derecho a una variable en la parte de código para esta nueva opción. Te permite intercambiar todas las referencias a esta variable en el objeto actual a otra variable. Esto es bueno para cuando cometió un error y quiere cambiar todas las referencias a una variable a otra o tiene que cambiar \"para todos los objetos\" a \"solo para este objeto\". Esta opción no quitará la variable antigua y no afectará las variables de otros objetos.","editor-devtools/middleclick":"Click Medi","editor-devtools/middleclick-desc":"Usando el botón del medio del ratón en una variable o bloque propio, puedes saltar a su definición o abrirlo en la barra de búsqueda interativa.","editor-devtools/ctrl-lr":"Ctrl + Izquierda, Ctrl + Derecha","editor-devtools/ctrl-lr-desc":"Navegue a la posición siguiente o anterior de la ventana de código (luego de usar la función \"navegar a bloque\" o la barra de búsqueda). Esto le permite hacer click medio en un bloque propio para ir a su definición, luego presione Ctrl + Izquierda para volver donde estaba antes.","editor-devtools/costume-tab-features":"Funciones de la Pestaña de Disfraces","editor-devtools/find-bar":"Barra de Búsqueda","editor-devtools/find-bar-costume-desc":"Haga click para listar todos los disfraces por nombre, y escriba para encontrar uno solo. Use las flechas o el ratón para clickear un nombre e ir directamente a ese disfraz.","editor-devtools/ctrl-lr-costume-desc":"Estas flechas le permiten navegar al anterior o próximo disfraz del objeto.","editor-devtools/send-top-bottom":"Mandar al Frente, Mandar al Fondo","editor-devtools/send-top-bottom-desc":"Haga click derecho a un disfraz y 2 nuevas opciones estarán presentes. Estas pueden ser usadas para enviar el disfraz actual al frente o al final de la lista de disfraces para un reordenado rápido.","editor-devtools/youtube":"Tutoriales en YouTube","editor-devtools/orphaned":"{count, plural, one {Herramientas de desarrollador: ¿borrar 1 bloque reportero huérfano?} other {Herramientas de desarrollador: ¿borrar # bloques reporteros huérfanos?} }","editor-devtools/unused-var":"{count, plural, one {Herramientas de desarrollador: ¿borrar 1 variable local sin usar? Estas son:\n} other {Herramientas de desarrollador: ¿borrar # variables locales sin usar? Estas son:\n} }","editor-devtools/var-not-exist":"Esa variable no existe..","editor-devtools/find":"Buscar","editor-devtools/find-placeholder":"Buscar (Ctrl+F)","editor-devtools/deep":"Profundo","editor-devtools/help":"Ayuda","editor-devtools/tutorials":"Tutoriales","editor-devtools/replace":"Herramientas de desarrollador: cambiar todos los {name} en este objeto por la variable llamada:","editor-devtools/top":"mandar al frente","editor-devtools/bottom":"mandar al fondo","editor-devtools/clean-plus":"Ordenar Bloques +","editor-devtools/paste":"Pegar","editor-devtools/copy-all":"Copiar Todos","editor-devtools/copy-block":"Copiar Bloque","editor-devtools/cut-block":"Cortar Bloque","editor-devtools/make-space":"Hacer Espacio","editor-devtools/swap":"Intercambiar Variable {var} en Objeto","editor-devtools/lists":"listas","editor-devtools/insert":"Insertar","editor-devtools/start-typing":"Empiece a escribir...","editor-devtools/extension-description-not-for-addon":"Herramientas de Desarrollador de Scratch 3 para mejorar su experiencia editando en https://scratch.mit.edu","editor-devtools/@name":"Herramientas de desarrollador","editor-devtools/@description":"Agrega una barra de búsqueda y nuevas opciones de menú para el editor: copie y pegue bloques, ordene de mejor manera, vaya directamente a la definición de un bloque propio y más.","editor-devtools/@info-shortcuts":"Presione \"Ctrl+F\" para enfocar la barra de búsqueda, \"Ctrl+Espacio\" para abrir la ventana flotante de \"encontrar bloque por nombre\", \"Ctrl+Izquierda/Derecha\" para navegar el historial de búsqueda.","editor-devtools/@settings-name-enableCleanUpPlus":"Mejorar \"Ordenar Bloques\"","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Pegar bloques en la posición del cursor","editor-devtools/@settings-name-enableMiddleClickFinder":"Click medio del mouse en variables, bloques personalizados o eventos para navegar"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/es/editor-theme3.json b/src/addons/addons-l10n/es/editor-theme3.json
index f6c6fc0cb..a1557bb0b 100644
--- a/src/addons/addons-l10n/es/editor-theme3.json
+++ b/src/addons/addons-l10n/es/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Colores de bloques personalizables","editor-theme3/@description":"Edite los colores para cada categoria de bloques del editor.","editor-theme3/@info-refresheditor":"Actualice el editor luego de activar/desactivar este tema.","editor-theme3/@preset-name-tweaks":"3.0 Mejorado","editor-theme3/@preset-description-tweaks":"Usa colores inspirados en 2.0 en las categorías Eventos, Control y Mis bloques. ","editor-theme3/@preset-name-original":"Colores de 2.0","editor-theme3/@preset-description-original":"Los oclores originales de Scratch 2.0","editor-theme3/@settings-name-motion-color":"movimiento","editor-theme3/@settings-name-looks-color":"apariencia","editor-theme3/@settings-name-sounds-color":"sonidos","editor-theme3/@settings-name-events-color":"eventos","editor-theme3/@settings-name-sensing-color":"sensores","editor-theme3/@settings-name-operators-color":"operadores","editor-theme3/@settings-name-data-lists-color":"listas","editor-theme3/@settings-name-custom-color":"personalizado","editor-theme3/@settings-name-Pen-color":"extensiones"}
\ No newline at end of file
+{"editor-theme3/@name":"Colores de bloques personalizables","editor-theme3/@description":"Edite los colores para cada categoria de bloques del editor.","editor-theme3/@info-refresheditor":"Actualice el editor luego de activar/desactivar este tema.","editor-theme3/@preset-name-tweaks":"3.0 Mejorado","editor-theme3/@preset-description-tweaks":"Usa colores inspirados en 2.0 en las categorías Eventos, Control y Mis bloques. ","editor-theme3/@preset-name-original":"Colores de 2.0","editor-theme3/@preset-description-original":"Los oclores originales de Scratch 2.0","editor-theme3/@preset-name-dark":"Oscuro","editor-theme3/@preset-description-dark":"Versiones oscuras de colores predeterminados","editor-theme3/@preset-name-black":"Negro","editor-theme3/@preset-description-black":"Hace negros los fondos de los bloques","editor-theme3/@settings-name-motion-color":"movimiento","editor-theme3/@settings-name-looks-color":"apariencia","editor-theme3/@settings-name-sounds-color":"sonidos","editor-theme3/@settings-name-events-color":"eventos","editor-theme3/@settings-name-sensing-color":"sensores","editor-theme3/@settings-name-operators-color":"operadores","editor-theme3/@settings-name-data-lists-color":"listas","editor-theme3/@settings-name-custom-color":"personalizado","editor-theme3/@settings-name-Pen-color":"extensiones","editor-theme3/@settings-name-input-color":"Campos de bloques","editor-theme3/@settings-name-text":"Color del texto","editor-theme3/@settings-select-text-white":"Blanco","editor-theme3/@settings-select-text-black":"Negro","editor-theme3/@settings-select-text-colorOnWhite":"Con color en fondo blanco","editor-theme3/@settings-select-text-colorOnBlack":"Con color en fondo negro"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/es/gamepad.json b/src/addons/addons-l10n/es/gamepad.json
new file mode 100644
index 000000000..9273bf2e1
--- /dev/null
+++ b/src/addons/addons-l10n/es/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Ajustes del Mando","gamepad/key-space":"Espacio","gamepad/key-up":"Arriba","gamepad/key-down":"Abaj","gamepad/key-left":"Izquierda","gamepad/key-right":"Derecha","gamepad/key-none":"(ninguno)","gamepad/axis-none":"Ninguno","gamepad/axis-arrows":"Flechas del Teclado","gamepad/no-controllers":"No se detectó ningún mando. Intente conectar uno y presionar cualquier botón de él.","gamepad/button-n":"Botón {n}","gamepad/axes-a-b":"Ejes {a} y {b}","gamepad/@name":"Soporte de mando de videojuegos","gamepad/@description":"Interactúe con proyectos usando un control/mando de videojuegos mediante USB o Bluetooth."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/2d-color-picker.json b/src/addons/addons-l10n/fr/2d-color-picker.json
index 3a52a01de..606324f01 100644
--- a/src/addons/addons-l10n/fr/2d-color-picker.json
+++ b/src/addons/addons-l10n/fr/2d-color-picker.json
@@ -1 +1 @@
-{"2d-color-picker/shade":"Nuancier","2d-color-picker/@name":"Sélecteur de couleurs 2D","2d-color-picker/@description":"Remplacec les curseurs de saturation et de luminosité par un sélecteur de couleurs 2D. Maintenez Shit enfoncé tout en déplaçant le curseur pour changer les valeurs sur un seul axe."}
\ No newline at end of file
+{"2d-color-picker/shade":"Nuancier","2d-color-picker/@name":"Sélecteur de couleurs 2D","2d-color-picker/@description":"Remplace les curseurs de saturation et de luminosité par un sélecteur de couleurs 2D. Maintenez Shit enfoncé tout en déplaçant le curseur pour changer les valeurs sur un seul axe."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/block-palette-icons.json b/src/addons/addons-l10n/fr/block-palette-icons.json
index 5a8359dc6..3b1f68c8d 100644
--- a/src/addons/addons-l10n/fr/block-palette-icons.json
+++ b/src/addons/addons-l10n/fr/block-palette-icons.json
@@ -1 +1 @@
-{"block-palette-icons/@name":"Icones de catégories de blocs de la palette"}
\ No newline at end of file
+{"block-palette-icons/@name":"Icones de catégories de blocs de la palette","block-palette-icons/@description":"Ajoute des icônes dans les cercles qui identifient les catégories de blocs"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/blocks2image.json b/src/addons/addons-l10n/fr/blocks2image.json
new file mode 100644
index 000000000..e25d988f1
--- /dev/null
+++ b/src/addons/addons-l10n/fr/blocks2image.json
@@ -0,0 +1 @@
+{"blocks2image/export_selected_to_SVG":"Exporter la sélection au format SVG","blocks2image/export_all_to_SVG":"Tout exporter au format SVG","blocks2image/export_selected_to_PNG":"Exporter la sélection au format PNG","blocks2image/export_all_to_PNG":"Tout exporter au format PNG","blocks2image/error_blocks_unselected":"Clique sur le bloc que tu veux exporter"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/custom-zoom.json b/src/addons/addons-l10n/fr/custom-zoom.json
new file mode 100644
index 000000000..5c9fa12e1
--- /dev/null
+++ b/src/addons/addons-l10n/fr/custom-zoom.json
@@ -0,0 +1 @@
+{"custom-zoom/@settings-name-maxZoom":"Zoom Maximum (50-500 %)","custom-zoom/@settings-name-minZoom":"Zoom Minimum (1-100 %)","custom-zoom/@settings-name-startZoom":"Zoom de Départ (50-500 %)","custom-zoom/@settings-select-speed-short":"Court","custom-zoom/@settings-select-speed-default":"Par défaut"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/editor-devtools.json b/src/addons/addons-l10n/fr/editor-devtools.json
index 99375d72f..377a183b6 100644
--- a/src/addons/addons-l10n/fr/editor-devtools.json
+++ b/src/addons/addons-l10n/fr/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-title":"Outils de Développement pour Scratch 3","editor-devtools/ctrl-space":"Ctrl+Espace ou Clic De Molette","editor-devtools/code-tab-features":"Fonctionnalités De l'Onglet de Code","editor-devtools/interactive-find-bar":"Barre De Recherche Interactive (Ctrl+F)","editor-devtools/improved-tidy-up":"Nettoyage Des Blocs Amélioré","editor-devtools/copy-to-clipboard":"Copier dans le Presse-Papiers","editor-devtools/copy-to-clipboard-desc":"Faites un clic droit sur un bloc et 3 nouvelles options seront disponibles : Copier tout, Copier le Bloc et Couper le Bloc. Le bouton Copier Tout copiera le bloc entier dans le presse-papiers, comprenant les blocs intégrés dans celui-ci et ceux accrochés au dessous. Copier le Bloc copiera uniquement le bloc ainsi que les blocs intégrés dans celui-ci, mais aucun en dessous. Couper le Bloc copiera le bloc et le supprimera ensuite de l'espace de travail.","editor-devtools/paste-from-clipboard":"Coller à partir du presse-papiers","editor-devtools/paste-from-clipboard-desc":"Colle depuis le presse-papiers, mais surtout le colle où votre souris se situe pour pouvoir le placer (meilleur que le placer là où vous l'avez copié, système actuellement implémenté dans Scratch)","editor-devtools/swap-variable":"Echanger des Variables dans un Sprite","editor-devtools/swap-variable-desc":"Faites un clic droit sur une variable dans votre code pour cette nouvelle option. Elle vous permet d'échanger toutes les références à cette variable dans le sprite actuel d'un seul coup vers une autre variable. C'est idéal lorsque vous avez fait une erreur et que vous voulez échanger d'une variable à une autre ou que vous voulez changer de \"pour tous les sprites\" à \"pour ce sprite uniquement\". Cette option ne supprimera pas l'ancienne variable et n'affectera aucun autre variable du sprite.","editor-devtools/middleclick":"Clic du milieu","editor-devtools/middleclick-desc":"Utiliser le clic du milieu sur une variable ou un bloc personnalisé vous permet d'aller directement à sa définition ou l'ouvre dans la barre de recherche interactive.","editor-devtools/ctrl-lr":"Ctrl+Gauche, Ctrl+Droite","editor-devtools/ctrl-lr-desc":"Naviguer à la précédente/prochaine position visitée dans la fenêtre de code (après avoir utilisé aller au bloc ou la barre de recherche). Cela vous permet d'effectuer un clic du milieu sur un bloc personnalisé pour aller à sa définition, puis d'appuyer sur Ctrl+Gauche pour revenir là où vous étiez juste avant.","editor-devtools/costume-tab-features":"Fonctionnalités De l'Onglet Des Costumes","editor-devtools/find-bar":"Barre De Recherche","editor-devtools/ctrl-lr-costume-desc":"Ces touches vous font naviguer au précédent/prochain costume dans le sprite.","editor-devtools/send-top-bottom":"Envoyer en Haut, Envoyer en Bas","editor-devtools/send-top-bottom-desc":"Faites un clic droit sur un costume et 2 nouvelles options seront présentes. Elles peuvent être utilisées pour envoyer un costume tout en haut ou tout en bas de la liste des costumes pour une réorganisation rapide.","editor-devtools/youtube":"Tutoriels YouTube","editor-devtools/var-not-exist":"Cette variable n'existe pas...","editor-devtools/find":"Chercher","editor-devtools/find-placeholder":"Chercher (Ctrl+F)","editor-devtools/deep":"Profond","editor-devtools/help":"Aide","editor-devtools/tutorials":"Tutoriels","editor-devtools/paste":"Coller","editor-devtools/copy-all":"Tout Copier","editor-devtools/copy-block":"Copier Le Bloc","editor-devtools/cut-block":"Couper le bloc","editor-devtools/lists":"listes","editor-devtools/insert":"Insérer","editor-devtools/start-typing":"Commencez à écrire...","editor-devtools/extension-description-not-for-addon":"Les Outils de Développeur Scratch 3 pour améliorer votre expérience d'Edition Scratch sur https://scratch.mit.edu","editor-devtools/@name":"Outils pour Développeurs","editor-devtools/@description":"Ajoute une une barre de recherche et de nouvelles options de menus à l'éditeur : copier/coller des blocs, un meilleur nettoyage, aller à la définition d'un bloc personnalisé, et plus !"}
\ No newline at end of file
+{"editor-devtools/help-title":"Outils de Développement pour Scratch 3","editor-devtools/ctrl-space":"Ctrl+Espace ou Clic De Molette","editor-devtools/code-tab-features":"Fonctionnalités De l'Onglet de Code","editor-devtools/interactive-find-bar":"Barre De Recherche Interactive (Ctrl+F)","editor-devtools/improved-tidy-up":"Nettoyage Des Blocs Amélioré","editor-devtools/help-new":"★Nouveau★","editor-devtools/copy-to-clipboard":"Copier dans le Presse-Papiers","editor-devtools/copy-to-clipboard-desc":"Faites un clic droit sur un bloc et 3 nouvelles options seront disponibles : Copier tout, Copier le Bloc et Couper le Bloc. Le bouton Copier Tout copiera le bloc entier dans le presse-papiers, comprenant les blocs intégrés dans celui-ci et ceux accrochés au dessous. Copier le Bloc copiera uniquement le bloc ainsi que les blocs intégrés dans celui-ci, mais aucun en dessous. Couper le Bloc copiera le bloc et le supprimera ensuite de l'espace de travail.","editor-devtools/paste-from-clipboard":"Coller à partir du presse-papiers","editor-devtools/paste-from-clipboard-desc":"Colle depuis le presse-papiers, mais surtout le colle où votre souris se situe pour pouvoir le placer (meilleur que le placer là où vous l'avez copié, système actuellement implémenté dans Scratch)","editor-devtools/swap-variable":"Echanger des Variables dans un Sprite","editor-devtools/swap-variable-desc":"Faites un clic droit sur une variable dans votre code pour cette nouvelle option. Elle vous permet d'échanger toutes les références à cette variable dans le sprite actuel d'un seul coup vers une autre variable. C'est idéal lorsque vous avez fait une erreur et que vous voulez échanger d'une variable à une autre ou que vous voulez changer de \"pour tous les sprites\" à \"pour ce sprite uniquement\". Cette option ne supprimera pas l'ancienne variable et n'affectera aucun autre variable du sprite.","editor-devtools/middleclick":"Clic du milieu","editor-devtools/middleclick-desc":"Utiliser le clic du milieu sur une variable ou un bloc personnalisé vous permet d'aller directement à sa définition ou l'ouvre dans la barre de recherche interactive.","editor-devtools/ctrl-lr":"Ctrl + Gauche, Ctrl + Droite","editor-devtools/ctrl-lr-desc":"Naviguer à la précédente/prochaine position visitée dans la fenêtre de code (après avoir utilisé aller au bloc ou la barre de recherche). Cela vous permet d'effectuer un clic du milieu sur un bloc personnalisé pour aller à sa définition, puis d'appuyer sur Ctrl+Gauche pour revenir là où vous étiez juste avant.","editor-devtools/costume-tab-features":"Fonctionnalités De l'Onglet Des Costumes","editor-devtools/find-bar":"Barre De Recherche","editor-devtools/ctrl-lr-costume-desc":"Ces touches vous font naviguer au précédent/prochain costume dans le sprite.","editor-devtools/send-top-bottom":"Envoyer en Haut, Envoyer en Bas","editor-devtools/send-top-bottom-desc":"Faites un clic droit sur un costume et 2 nouvelles options seront présentes. Elles peuvent être utilisées pour envoyer un costume tout en haut ou tout en bas de la liste des costumes pour une réorganisation rapide.","editor-devtools/youtube":"Tutoriels YouTube","editor-devtools/var-not-exist":"Cette variable n'existe pas...","editor-devtools/find":"Chercher","editor-devtools/find-placeholder":"Chercher (Ctrl+F)","editor-devtools/deep":"Profond","editor-devtools/help":"Aide","editor-devtools/tutorials":"Tutoriels","editor-devtools/top":"envoyer en haut","editor-devtools/bottom":"envoyer en bas","editor-devtools/clean-plus":"Nettoyer les blocs +","editor-devtools/paste":"Coller","editor-devtools/copy-all":"Tout Copier","editor-devtools/copy-block":"Copier Le Bloc","editor-devtools/cut-block":"Couper le bloc","editor-devtools/lists":"listes","editor-devtools/insert":"Insérer","editor-devtools/start-typing":"Commencez à écrire...","editor-devtools/extension-description-not-for-addon":"Les Outils de Développeur Scratch 3 pour améliorer votre expérience d'Edition Scratch sur https://scratch.mit.edu","editor-devtools/@name":"Outils pour Développeurs","editor-devtools/@description":"Ajoute une une barre de recherche et de nouvelles options de menus à l'éditeur : copier/coller des blocs, un meilleur nettoyage, aller à la définition d'un bloc personnalisé, et plus !","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Coller les blocs au niveau du curseur"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/editor-theme3.json b/src/addons/addons-l10n/fr/editor-theme3.json
index 0e49478bd..788fbce17 100644
--- a/src/addons/addons-l10n/fr/editor-theme3.json
+++ b/src/addons/addons-l10n/fr/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Couleur des blocs personnalisable","editor-theme3/@description":"Personnalisez la couleur des blocs pour chaque catégorie dans l'éditeur.","editor-theme3/@info-refresheditor":"Rafraichissez la page après avoir activé/désactivé ce thème.","editor-theme3/@preset-name-tweaks":"Ajustements 3.0","editor-theme3/@preset-description-tweaks":"Évènements, Contrôles et Blocs personnalisés avec les couleurs inspirées de la 2.0","editor-theme3/@preset-name-original":"Couleurs 2.0","editor-theme3/@preset-description-original":"Les couleurs classiques des blocs de Scratch 2.0","editor-theme3/@settings-name-motion-color":"mouvement","editor-theme3/@settings-name-looks-color":"apparence","editor-theme3/@settings-name-sounds-color":"son","editor-theme3/@settings-name-events-color":"événements","editor-theme3/@settings-name-control-color":"contrôle","editor-theme3/@settings-name-sensing-color":"capteurs","editor-theme3/@settings-name-operators-color":"opérateurs","editor-theme3/@settings-name-data-lists-color":"listes","editor-theme3/@settings-name-custom-color":"personnalisé"}
\ No newline at end of file
+{"editor-theme3/@name":"Couleur des blocs personnalisable","editor-theme3/@description":"Personnalisez la couleur des blocs pour chaque catégorie dans l'éditeur.","editor-theme3/@info-refresheditor":"Rafraichissez la page après avoir activé/désactivé ce thème.","editor-theme3/@preset-name-tweaks":"Ajustements 3.0","editor-theme3/@preset-description-tweaks":"Évènements, Contrôles et Blocs personnalisés avec les couleurs inspirées de la 2.0","editor-theme3/@preset-name-original":"Couleurs 2.0","editor-theme3/@preset-description-original":"Les couleurs classiques des blocs de Scratch 2.0","editor-theme3/@preset-name-dark":"Sombre","editor-theme3/@preset-description-dark":"Version sombre des couleurs par défaut","editor-theme3/@preset-name-black":"Noir","editor-theme3/@settings-name-motion-color":"mouvement","editor-theme3/@settings-name-looks-color":"apparence","editor-theme3/@settings-name-sounds-color":"son","editor-theme3/@settings-name-events-color":"événements","editor-theme3/@settings-name-control-color":"contrôle","editor-theme3/@settings-name-sensing-color":"capteurs","editor-theme3/@settings-name-operators-color":"opérateurs","editor-theme3/@settings-name-data-lists-color":"listes","editor-theme3/@settings-name-custom-color":"personnalisé","editor-theme3/@settings-name-text":"Couleur du texte","editor-theme3/@settings-select-text-white":"Blanc","editor-theme3/@settings-select-text-black":"Noir","editor-theme3/@settings-select-text-colorOnWhite":"Coloré sur un fond blanc","editor-theme3/@settings-select-text-colorOnBlack":"Coloré sur un fond noir"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/gamepad.json b/src/addons/addons-l10n/fr/gamepad.json
new file mode 100644
index 000000000..15b7f8b21
--- /dev/null
+++ b/src/addons/addons-l10n/fr/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/key-space":"Espace","gamepad/key-up":"Haut","gamepad/key-down":"Bas","gamepad/key-left":"Gauche","gamepad/key-right":"Droite","gamepad/key-click":"Clic","gamepad/axis-arrows":"Flèches","gamepad/axis-cursor":"Curseur","gamepad/button-n":"Bouton {n}"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/fr/initialise-sprite-position.json b/src/addons/addons-l10n/fr/initialise-sprite-position.json
new file mode 100644
index 000000000..b4765e71b
--- /dev/null
+++ b/src/addons/addons-l10n/fr/initialise-sprite-position.json
@@ -0,0 +1 @@
+{"initialise-sprite-position/@name":"Changer la nouvelle position par défaut des sprites","initialise-sprite-position/@settings-name-x":"Abscisse x","initialise-sprite-position/@settings-name-y":"Ordonnée y","initialise-sprite-position/@settings-name-library":"Rend aléatoire la position des sprites de la bibliothèque"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/it/editor-devtools.json b/src/addons/addons-l10n/it/editor-devtools.json
index 7bde9d926..f2a0352a3 100644
--- a/src/addons/addons-l10n/it/editor-devtools.json
+++ b/src/addons/addons-l10n/it/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-title":"Strumenti per Sviluppatori di Scratch 3","editor-devtools/help-by":"di {url} e dagli svlluppatori e traduttori degli Scratch Addons","editor-devtools/ctrl-space":"Ctrl + Spazio o clic col tasto centrale","editor-devtools/ctrl-space-desc":"Fa comparire una casella di testo fluttuante dove puoi digitare il nome di un blocco (o parte di esso) e trascinare il blocco nel codice per usarlo in quel punto.","editor-devtools/code-tab-features":"Funzioni Scheda Codice","editor-devtools/interactive-find-bar":"Barra di Ricerca Interattiva (Ctrl + F)","editor-devtools/interactive-find-bar-desc":"Trova e vai rapidamente a qualunque Blocco Personalizzato, Variabile, Evento o Cappello definito in uno sprite cliccando la nuova barra di ricerca che trovi a destra delle schede Codice, Costumi e Suoni. Usa le frecce su e giù per scorrere le opzioni e le frecce destra e sinistra per spostarti da un'istanza all'altra del blocco.","editor-devtools/improved-tidy-up":"Funzione migliorata di Riordino dei Blocchi di Codice ","editor-devtools/improved-tidy-up-desc":"Clicca con il tasto destro nell'area degli script per far comparire il menu e l'opzione Riordina i Blocchi sarà stata rimpiazzata dall'opzione Riordina i blocchi (+). Puoi usarla per riordinare i blocchi preservando le colonne in cui hai disposto gli script ma anche per provare ad allineare i commenti e per rimuovere le variabili inutilizzate, ecc.","editor-devtools/help-new":"★Nuovo★","editor-devtools/help-make-space":"Fai Spazio","editor-devtools/help-make-space-desc":"Crea uno spazio maggiore attorno ad uno script cliccandolo con il tasto destro e selezionando \"Fai Spazio\"","editor-devtools/copy-to-clipboard":"Copia negli Appunti","editor-devtools/copy-to-clipboard-desc":"Clic destro su un blocco e sono disponibili 3 nuove opzioni per Copia Tutti, Copia un Blocco e Taglia un Blocco. Copia Tutti copierà il blocco e tutti i blocchi sotto di esso negli appunti. Copia Blocco copierà solo il blocco corrente e i suoi contenuti. E Taglia Blocco lo copierà e lo rimuoverà dall'area di lavoro.","editor-devtools/paste-from-clipboard":"Incolla dagli Appunti","editor-devtools/paste-from-clipboard-desc":"Incolla dagli appunti nel punto in cui si trova il cursore del mouse in modo che tu possa posizionare i blocchi in quel punto (invece di posizionarli nel punto da cui li hai copiati, come accade normalmente in Scratch).","editor-devtools/swap-variable":"Sostituisci Variabile nello Sprite","editor-devtools/swap-variable-desc":"Clic destro su una variabile nei tuoi script. Ti permette di sostituire tutti i riferimenti a questa variabile nello sprite attuale con un'altra variabile. Questo è utile per quando fai un errore e vuoi passare da una variabile a un'altra o se hai bisogno di passare da 'Per tutti gli sprite' a 'Solo per questo sprite' o viceversa. La variabile vecchia non verrà rimossa.","editor-devtools/middleclick":"Clic centrale","editor-devtools/middleclick-desc":"Usa il tasto centrale del mouse su una variabile o su un blocco personalizzato per passare alla sua definizione o per aprirlo nella barra di ricerca interattiva.","editor-devtools/ctrl-lr":"Ctrl + Destra, Ctrl + Sinistro","editor-devtools/ctrl-lr-desc":"Naviga alla posizione visitata precedentemente/successivamente nell'area degli script (dopo aver usato la funzione naviga al blocco o la barra di ricerca). Questo ti permette di fare clic centrale su un blocco personalizzato per andare alla sua definizione e di tornare dove eri prima premendo Ctrl + Sinistra.","editor-devtools/costume-tab-features":"Funzioni nella Scheda dei Costumi","editor-devtools/find-bar":"Barra di Ricerca","editor-devtools/find-bar-costume-desc":"Clicca per vedere l'elenco di tutti i costumi ordinato per nome, e inserisci il nome per trovarne uno. Usa le frecce o il mouse per cliccare un nome e andare direttamente a quel costume.","editor-devtools/ctrl-lr-costume-desc":"Usa questi tasti per navigare al costume precedente/seguente nello sprite.","editor-devtools/send-top-bottom":"Porta in Cima, Porta in Fondo","editor-devtools/send-top-bottom-desc":"Clic destro su un costume e vedrai 2 nuovi elementi nel menu. Questi possono essere usati per spostare il costume selezionato in cima o in fondo nella lista dei costumi per riordinare i costumi velocemente.","editor-devtools/youtube":"Tutorial YouTube","editor-devtools/orphaned":"{count, plural, one {Strumenti per sviluppatori: Rimuovere 1 blocco monitor non collegato agli script?} other {Strumenti per sviluppatori: Rimuovere # blocchi monitor non collegati agli script?} }","editor-devtools/unused-var":"{count, plural, one {Strumenti per sviluppatori: Rimuovere 1 variabile locale inutilizzata? Eccola qui:\n} other {Strumenti per sviluppatori: Rimuovere # variabili locali inutilizzate? Eccole qui:\n} }","editor-devtools/var-not-exist":"Questa variabile non esiste...","editor-devtools/find":"Trova","editor-devtools/find-placeholder":"Trova (Ctrl + F)","editor-devtools/deep":"Profondo","editor-devtools/help":"Aiuto","editor-devtools/tutorials":"Tutorial","editor-devtools/replace":"Strumenti per sviluppatori: Scambia tutti i {name} in questo sprite con la variabile:","editor-devtools/top":"porta in primo piano","editor-devtools/bottom":"porta in secondo piano","editor-devtools/clean-plus":"Riordina i Blocchi (+)","editor-devtools/paste":"Incolla","editor-devtools/copy-all":"Copia Tutti","editor-devtools/copy-block":"Copia il Blocco","editor-devtools/cut-block":"Taglia il Blocco","editor-devtools/make-space":"Fai Spazio","editor-devtools/swap":"Scambia {var} nello Sprite","editor-devtools/lists":"liste","editor-devtools/variables":"variabili","editor-devtools/insert":"Inserisci","editor-devtools/start-typing":"Inizia a Scrivere...","editor-devtools/extension-description-not-for-addon":"Strumenti di sviluppo per Scratch 3 per migliorare la tua esperienza di programmazione su https://scratch.mit.edu","editor-devtools/@name":"Strumenti per sviluppatori","editor-devtools/@description":"Aggiunge una casella di ricerca e nuove opzioni nei menu all'editor: copia/incolla blocchi, riordina blocchi migliorato, vai alla definizione di un blocco personalizzato e molto altro!","editor-devtools/@info-shortcuts":"Premi \"Ctrl+F\" per spostarti sulla casella di ricerca, \"Ctrl+Space\" per far comparire il menu \"aggiungi blocco per nome\", \"Ctrl+Left/Right\" per navigare la cronologia delle ricerche.","editor-devtools/@settings-name-enableCleanUpPlus":"Migliora \"Riordina i Blocchi\"","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Incolla i blocchi dove si trova il puntatore del mouse.","editor-devtools/@settings-name-enableMiddleClickFinder":"Clicca nel centro i blocchi delle variabili, i blocchi personalizzati o gli eventi per cercarne altre occorrenze"}
\ No newline at end of file
+{"editor-devtools/help-title":"Strumenti per Sviluppatori di Scratch 3","editor-devtools/help-by":"di {url} e dagli svlluppatori e traduttori degli Scratch Addons","editor-devtools/ctrl-space":"Ctrl + Spazio o clic col tasto centrale","editor-devtools/ctrl-space-desc":"Fa comparire una casella di testo fluttuante dove puoi digitare il nome di un blocco (o parte di esso) e trascinare il blocco nel codice per usarlo in quel punto.","editor-devtools/code-tab-features":"Funzioni Scheda Codice","editor-devtools/interactive-find-bar":"Barra di Ricerca Interattiva (Ctrl + F)","editor-devtools/interactive-find-bar-desc":"Trova e vai rapidamente a qualunque Blocco Personalizzato, Variabile, Evento o Cappello definito in uno sprite cliccando la nuova barra di ricerca che trovi a destra delle schede Codice, Costumi e Suoni. Usa le frecce su e giù per scorrere le opzioni e le frecce destra e sinistra per spostarti da un'istanza all'altra del blocco.","editor-devtools/improved-tidy-up":"Funzione migliorata di Riordino dei Blocchi di Codice ","editor-devtools/improved-tidy-up-desc":"Clicca con il tasto destro nell'area degli script per far comparire il menu e l'opzione Riordina i Blocchi sarà stata rimpiazzata dall'opzione Riordina i blocchi (+). Puoi usarla per riordinare i blocchi preservando le colonne in cui hai disposto gli script ma anche per provare ad allineare i commenti e per rimuovere le variabili inutilizzate, ecc.","editor-devtools/help-new":"★Nuovo★","editor-devtools/help-make-space":"Fai Spazio","editor-devtools/help-make-space-desc":"Crea uno spazio maggiore attorno ad uno script cliccandolo con il tasto destro e selezionando \"Fai Spazio\"","editor-devtools/copy-to-clipboard":"Copia negli Appunti","editor-devtools/copy-to-clipboard-desc":"Clic destro su un blocco e sono disponibili 3 nuove opzioni per Copia Tutti, Copia un Blocco e Taglia un Blocco. Copia Tutti copierà il blocco e tutti i blocchi sotto di esso negli appunti. Copia Blocco copierà solo il blocco corrente e i suoi contenuti. E Taglia Blocco lo copierà e lo rimuoverà dall'area di lavoro.","editor-devtools/paste-from-clipboard":"Incolla dagli Appunti","editor-devtools/paste-from-clipboard-desc":"Incolla dagli appunti nel punto in cui si trova il cursore del mouse in modo che tu possa posizionare i blocchi in quel punto (invece di posizionarli nel punto da cui li hai copiati, come accade normalmente in Scratch).","editor-devtools/swap-variable":"Sostituisci Variabile nello Sprite","editor-devtools/swap-variable-desc":"Clic destro su una variabile nei tuoi script. Ti permette di sostituire tutti i riferimenti a questa variabile nello sprite attuale con un'altra variabile. Questo è utile per quando fai un errore e vuoi passare da una variabile a un'altra o se hai bisogno di passare da 'Per tutti gli sprite' a 'Solo per questo sprite' o viceversa. La variabile vecchia non verrà rimossa.","editor-devtools/middleclick":"Clic centrale","editor-devtools/middleclick-desc":"Usa il tasto centrale del mouse su una variabile o su un blocco personalizzato per passare alla sua definizione o per aprirlo nella barra di ricerca interattiva.","editor-devtools/ctrl-lr":"Ctrl + Destra, Ctrl + Sinistro","editor-devtools/ctrl-lr-desc":"Naviga alla posizione visitata precedentemente/successivamente nell'area degli script (dopo aver usato la funzione naviga al blocco o la barra di ricerca). Questo ti permette di fare clic centrale su un blocco personalizzato per andare alla sua definizione e di tornare dove eri prima premendo Ctrl + Sinistra.","editor-devtools/costume-tab-features":"Funzioni nella Scheda dei Costumi","editor-devtools/find-bar":"Barra di Ricerca","editor-devtools/find-bar-costume-desc":"Clicca per vedere l'elenco di tutti i costumi ordinato per nome, e inserisci il nome per trovarne uno. Usa le frecce o il mouse per cliccare un nome e andare direttamente a quel costume.","editor-devtools/ctrl-lr-costume-desc":"Usa questi tasti per navigare al costume precedente/seguente nello sprite.","editor-devtools/send-top-bottom":"Porta in Cima, Porta in Fondo","editor-devtools/send-top-bottom-desc":"Clic destro su un costume e vedrai 2 nuovi elementi nel menu. Questi possono essere usati per spostare il costume selezionato in cima o in fondo nella lista dei costumi per riordinare i costumi velocemente.","editor-devtools/youtube":"Tutorial YouTube","editor-devtools/orphaned":"{count, plural, one {Strumenti per sviluppatori: Rimuovere 1 blocco monitor non collegato agli script?} other {Strumenti per sviluppatori: Rimuovere # blocchi monitor non collegati agli script?} }","editor-devtools/unused-var":"{count, plural, one {Strumenti per sviluppatori: Rimuovere 1 variabile locale inutilizzata? Eccola qui:\n} other {Strumenti per sviluppatori: Rimuovere # variabili locali inutilizzate? Eccole qui:\n} }","editor-devtools/var-not-exist":"Questa variabile non esiste...","editor-devtools/find":"Trova","editor-devtools/find-placeholder":"Trova (Ctrl + F)","editor-devtools/deep":"Profondo","editor-devtools/help":"Aiuto","editor-devtools/tutorials":"Tutorial","editor-devtools/replace":"Strumenti per sviluppatori: Scambia tutti le occorrenze della variabile {name} in questo sprite con la variabile:","editor-devtools/top":"porta in prima posizione","editor-devtools/bottom":"sposta in ultima posizione","editor-devtools/clean-plus":"Riordina i Blocchi (+)","editor-devtools/paste":"Incolla","editor-devtools/copy-all":"Copia Tutti","editor-devtools/copy-block":"Copia il Blocco","editor-devtools/cut-block":"Taglia il Blocco","editor-devtools/make-space":"Fai Spazio","editor-devtools/swap":"Scambia {var} nello Sprite","editor-devtools/lists":"liste","editor-devtools/variables":"variabili","editor-devtools/insert":"Inserisci","editor-devtools/start-typing":"Inizia a Scrivere...","editor-devtools/extension-description-not-for-addon":"Strumenti di sviluppo per Scratch 3 per migliorare la tua esperienza di programmazione su https://scratch.mit.edu","editor-devtools/@name":"Strumenti per sviluppatori","editor-devtools/@description":"Aggiunge una casella di ricerca e nuove opzioni nei menu all'editor: copia/incolla blocchi, riordina blocchi migliorato, vai alla definizione di un blocco personalizzato e molto altro!","editor-devtools/@info-shortcuts":"Premi \"Ctrl+F\" per spostarti sulla casella di ricerca, \"Ctrl+Space\" per far comparire il menu \"aggiungi blocco per nome\", \"Ctrl+Left/Right\" per navigare la cronologia delle ricerche.","editor-devtools/@settings-name-enableCleanUpPlus":"Migliora \"Riordina i Blocchi\"","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Incolla i blocchi dove si trova il puntatore del mouse.","editor-devtools/@settings-name-enableMiddleClickFinder":"Clicca nel centro i blocchi delle variabili, i blocchi personalizzati o gli eventi per cercarne altre occorrenze"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/it/gamepad.json b/src/addons/addons-l10n/it/gamepad.json
new file mode 100644
index 000000000..ed64a01d2
--- /dev/null
+++ b/src/addons/addons-l10n/it/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Impostazioni Gamepad","gamepad/key-space":"Spazio","gamepad/key-up":"Su","gamepad/key-down":"Giù","gamepad/key-left":"Sinistra","gamepad/key-right":"Destra","gamepad/key-none":"(nessuno)","gamepad/axis-none":"Nessuno","gamepad/axis-arrows":"Tasti Freccia","gamepad/axis-cursor":"Cursore","gamepad/no-controllers":"Nessun controller rilevato. Prova a collegarne uno e a premere un pulsante del controller.","gamepad/button-n":"Pulsante (n)","gamepad/axes-a-b":"Assi (a) & (b)","gamepad/@name":"Supporto Gamepad","gamepad/@description":"Interagisci con i progetti usando un controller/gamepad USB o bluetooth."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ja/block-palette-icons.json b/src/addons/addons-l10n/ja/block-palette-icons.json
index bb21cac96..3b9a138bb 100644
--- a/src/addons/addons-l10n/ja/block-palette-icons.json
+++ b/src/addons/addons-l10n/ja/block-palette-icons.json
@@ -1 +1 @@
-{"block-palette-icons/@name":"ブロックパレットアイコン"}
\ No newline at end of file
+{"block-palette-icons/@name":"ブロックパレットアイコン","block-palette-icons/@description":"ブロックパレットのカテゴリーにアイコンを追加する。"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ja/drag-drop.json b/src/addons/addons-l10n/ja/drag-drop.json
index f9ff029e3..40fdc35d2 100644
--- a/src/addons/addons-l10n/ja/drag-drop.json
+++ b/src/addons/addons-l10n/ja/drag-drop.json
@@ -1 +1 @@
-{"drag-drop/@name":"ファイルをドロップ"}
\ No newline at end of file
+{"drag-drop/@name":"ファイルをドロップ","drag-drop/@description":"エディターのスプライトペインやコスチュームペインにファイルをドロップしたり、リストや「聞いて待つ」画面にテキストファイルをドロップできるようにする。"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ja/editor-devtools.json b/src/addons/addons-l10n/ja/editor-devtools.json
index d075f3c1b..9c1ab5191 100644
--- a/src/addons/addons-l10n/ja/editor-devtools.json
+++ b/src/addons/addons-l10n/ja/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-title":"Scratch 3 開発者ツール","editor-devtools/help-by":"{url}とScratch Addons貢献者・翻訳者による","editor-devtools/ctrl-space":"Ctrl+スペース・中ボタンクリック","editor-devtools/ctrl-space-desc":"ブロックの名前を入力すると、ブロックが出てきます。","editor-devtools/code-tab-features":"コードタブの機能","editor-devtools/interactive-find-bar":"検索バー (Ctrl+F)","editor-devtools/improved-tidy-up":"きれいさ改善","editor-devtools/help-new":"新機能!","editor-devtools/help-make-space":"スペースを確保","editor-devtools/help-make-space-desc":"コードを右クリックして「スペースを確保」を押して、スクリプトの周りにスペースを確保する。","editor-devtools/copy-to-clipboard":"クリップボードにコピー","editor-devtools/copy-to-clipboard-desc":"右クリックメニューに「すべてコピー」「ブロックをコピー」「ブロックを切り取り」を追加する。「すべてコピー」で選択したブロックとそれ以下のブロックをコピー。「ブロックをコピー」で選択したブロックをコピー。「ブロックを切り取り」で、ブロックをコピーして削除。","editor-devtools/paste-from-clipboard":"クリップボードを貼り付け","editor-devtools/paste-from-clipboard-desc":"クリップボードの中身をマウスの位置に貼り付け。","editor-devtools/swap-variable":"スプライト内の変数を入れ替え","editor-devtools/swap-variable-desc":"変数を右クリックし、スプライト内のすべての変数を別の変数に置き換える。古い変数は削除せず、他のスプライトは変更しない。","editor-devtools/middleclick":"中ボタンクリック","editor-devtools/middleclick-desc":"中ボタンクリックで、定義ブロックに移動したり検索バーを開く。","editor-devtools/ctrl-lr":"Ctrl+左右キー","editor-devtools/ctrl-lr-desc":"中ボタンクリックや検索バーを使用後、使用前の場所に移動する。これで、中ボタンクリックで定義ブロックを確認し、すぐに戻ることができる。","editor-devtools/costume-tab-features":"コスチュームタブの機能","editor-devtools/find-bar":"検索バー","editor-devtools/ctrl-lr-costume-desc":"スプライトのコスチュームを前のコスチューム・次のコスチュームにする。","editor-devtools/send-top-bottom":"一番上・一番下","editor-devtools/send-top-bottom-desc":"コスチュームを右クリックして、コスチュームを一覧の一番上・下に移動する。","editor-devtools/youtube":"YouTubeチュートリアル","editor-devtools/var-not-exist":"その変数は存在しません。","editor-devtools/find":"検索","editor-devtools/find-placeholder":"検索 (Ctrl+F)","editor-devtools/deep":"再帰的に検索","editor-devtools/help":"ヘルプ","editor-devtools/tutorials":"チュートリアル","editor-devtools/clean-plus":"きれいにする +","editor-devtools/paste":"貼り付け","editor-devtools/copy-all":"すべてコピー","editor-devtools/copy-block":"ブロックをコピー","editor-devtools/cut-block":"ブロックを切り取り","editor-devtools/make-space":"スペースを確保","editor-devtools/swap":"スプライト内の{var}を一括切り替え","editor-devtools/lists":"リスト","editor-devtools/variables":"変数","editor-devtools/insert":"挿入","editor-devtools/start-typing":"入力してください...","editor-devtools/extension-description-not-for-addon":"Scratch 3 Developer Toolsで、 https://scratch.mit.edu でのScratch編集をよりよくします。","editor-devtools/@name":"開発者ツール","editor-devtools/@description":"検索バー、メニューオプション、ブロックのコピペ、きれいにする、定義ブロックに移動、その他。","editor-devtools/@info-shortcuts":"Ctrl+Fで検索ボックスをフォーカスし、Ctrl+スペースで「挿入」ポップアップを表示し、Ctrl+左右キーで検索履歴を表示する。","editor-devtools/@settings-name-enableCleanUpPlus":"きれいにする +","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"カーソルの位置にブロックを配置","editor-devtools/@settings-name-enableMiddleClickFinder":"変数、カスタムブロック、イベントをマウスの中ボタンでクリックして案内"}
\ No newline at end of file
+{"editor-devtools/help-title":"Scratch 3 開発者ツール","editor-devtools/help-by":"{url}とScratch Addons貢献者・翻訳者による","editor-devtools/ctrl-space":"Ctrl+スペース・中ボタンクリック","editor-devtools/ctrl-space-desc":"ブロックの名前を入力すると、ブロックが出てきます。","editor-devtools/code-tab-features":"コードタブの機能","editor-devtools/interactive-find-bar":"検索バー (Ctrl+F)","editor-devtools/interactive-find-bar-desc":"タブの横の検索バーをクリックし、スプライト内の定義ブロック、変数、イベント、ハットブロックに移動する。入力し、上下キーでブロックの種類を選び、左右キーでブロックを選ぶ。","editor-devtools/improved-tidy-up":"きれいさ改善","editor-devtools/improved-tidy-up-desc":"右クリックメニューの「きれいにする」を「きれいにする +」で置き換える。スクリプトやコメントを整列させ、未使用の変数を削除する。","editor-devtools/help-new":"新機能!","editor-devtools/help-make-space":"スペースを確保","editor-devtools/help-make-space-desc":"コードを右クリックして「スペースを確保」を押して、スクリプトの周りにスペースを確保する。","editor-devtools/copy-to-clipboard":"クリップボードにコピー","editor-devtools/copy-to-clipboard-desc":"右クリックメニューに「すべてコピー」「ブロックをコピー」「ブロックを切り取り」を追加する。「すべてコピー」で選択したブロックとそれ以下のブロックをコピー。「ブロックをコピー」で選択したブロックをコピー。「ブロックを切り取り」で、ブロックをコピーして削除。","editor-devtools/paste-from-clipboard":"クリップボードを貼り付け","editor-devtools/paste-from-clipboard-desc":"クリップボードの中身をマウスの位置に貼り付け。","editor-devtools/swap-variable":"スプライト内の変数を入れ替え","editor-devtools/swap-variable-desc":"変数を右クリックし、スプライト内のすべての変数を別の変数に置き換える。古い変数は削除せず、他のスプライトは変更しない。","editor-devtools/middleclick":"中ボタンクリック","editor-devtools/middleclick-desc":"中ボタンクリックで、定義ブロックに移動したり検索バーを開く。","editor-devtools/ctrl-lr":"Ctrl+左右キー","editor-devtools/ctrl-lr-desc":"中ボタンクリックや検索バーを使用後、使用前の場所に移動する。これで、中ボタンクリックで定義ブロックを確認し、すぐに戻ることができる。","editor-devtools/costume-tab-features":"コスチュームタブの機能","editor-devtools/find-bar":"検索バー","editor-devtools/find-bar-costume-desc":"クリックしてコスチューム一覧を表示し、入力して絞り込む。矢印キーやマウスでクリックしてコスチュームを選択する。","editor-devtools/ctrl-lr-costume-desc":"スプライトのコスチュームを前のコスチューム・次のコスチュームにする。","editor-devtools/send-top-bottom":"一番上・一番下","editor-devtools/send-top-bottom-desc":"コスチュームを右クリックして、コスチュームを一覧の一番上・下に移動する。","editor-devtools/youtube":"YouTubeチュートリアル","editor-devtools/orphaned":"{count, plural, other {開発者ツール: 未使用の値ブロックを # 個見つけました。削除しますか?} }","editor-devtools/unused-var":"{count, plural, other {開発者ツール: 未使用のこのスプライトのみの変数を # 個見つけました。削除しますか? 以下が一覧です:\n} }","editor-devtools/var-not-exist":"その変数は存在しません。","editor-devtools/find":"検索","editor-devtools/find-placeholder":"検索 (Ctrl+F)","editor-devtools/deep":"再帰的に検索","editor-devtools/help":"ヘルプ","editor-devtools/tutorials":"チュートリアル","editor-devtools/replace":"開発者ツール: このスプライト内の変数{name}をすべて置き換える:","editor-devtools/top":"一番上に移動","editor-devtools/bottom":"一番下に移動","editor-devtools/clean-plus":"きれいにする +","editor-devtools/paste":"貼り付け","editor-devtools/copy-all":"すべてコピー","editor-devtools/copy-block":"ブロックをコピー","editor-devtools/cut-block":"ブロックを切り取り","editor-devtools/make-space":"スペースを確保","editor-devtools/swap":"スプライト内の{var}を一括切り替え","editor-devtools/lists":"リスト","editor-devtools/variables":"変数","editor-devtools/insert":"挿入","editor-devtools/start-typing":"入力してください...","editor-devtools/extension-description-not-for-addon":"Scratch 3 Developer Toolsで、 https://scratch.mit.edu でのScratch編集をよりよくします。","editor-devtools/@name":"開発者ツール","editor-devtools/@description":"検索バー、メニューオプション、ブロックのコピペ、きれいにする、定義ブロックに移動、その他。","editor-devtools/@info-shortcuts":"Ctrl+Fで検索ボックスをフォーカスし、Ctrl+スペースで「挿入」ポップアップを表示し、Ctrl+左右キーで検索履歴を表示する。","editor-devtools/@settings-name-enableCleanUpPlus":"きれいにする +","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"カーソルの位置にブロックを配置","editor-devtools/@settings-name-enableMiddleClickFinder":"変数、カスタムブロック、イベントをマウスの中ボタンでクリックして案内"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ja/editor-theme3.json b/src/addons/addons-l10n/ja/editor-theme3.json
index 74682ab49..b17d59b52 100644
--- a/src/addons/addons-l10n/ja/editor-theme3.json
+++ b/src/addons/addons-l10n/ja/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"ブロックの色をカスタマイズ","editor-theme3/@description":"ブロックの色をカテゴリーごとに変更する。","editor-theme3/@info-refresheditor":"テーマの設定変更後は再読み込みしてください。","editor-theme3/@preset-description-tweaks":"Scratch 2.0風のイベント、制御、定義ブロック","editor-theme3/@preset-name-original":"2.0の色","editor-theme3/@preset-description-original":"Scratch 2.0の色","editor-theme3/@settings-name-motion-color":"動き","editor-theme3/@settings-name-looks-color":"見た目","editor-theme3/@settings-name-sounds-color":"音","editor-theme3/@settings-name-events-color":"イベント","editor-theme3/@settings-name-control-color":"制御","editor-theme3/@settings-name-sensing-color":"調べる","editor-theme3/@settings-name-operators-color":"演算","editor-theme3/@settings-name-data-color":"変数","editor-theme3/@settings-name-data-lists-color":"リスト","editor-theme3/@settings-name-custom-color":"定義","editor-theme3/@settings-name-Pen-color":"拡張機能"}
\ No newline at end of file
+{"editor-theme3/@name":"ブロックの色をカスタマイズ","editor-theme3/@description":"ブロックの色をカテゴリーごとに変更する。","editor-theme3/@info-refresheditor":"テーマの設定変更後は再読み込みしてください。","editor-theme3/@preset-description-tweaks":"Scratch 2.0風のイベント、制御、定義ブロック","editor-theme3/@preset-name-original":"2.0の色","editor-theme3/@preset-description-original":"Scratch 2.0の色","editor-theme3/@preset-name-dark":"ダーク","editor-theme3/@preset-description-dark":"既定の色を暗くしたバージョン","editor-theme3/@preset-name-black":"黒","editor-theme3/@preset-description-black":"ブロックの背景色を黒にする","editor-theme3/@settings-name-motion-color":"動き","editor-theme3/@settings-name-looks-color":"見た目","editor-theme3/@settings-name-sounds-color":"音","editor-theme3/@settings-name-events-color":"イベント","editor-theme3/@settings-name-control-color":"制御","editor-theme3/@settings-name-sensing-color":"調べる","editor-theme3/@settings-name-operators-color":"演算","editor-theme3/@settings-name-data-color":"変数","editor-theme3/@settings-name-data-lists-color":"リスト","editor-theme3/@settings-name-custom-color":"定義","editor-theme3/@settings-name-Pen-color":"拡張機能","editor-theme3/@settings-name-input-color":"ブロックの入力","editor-theme3/@settings-name-text":"文字色","editor-theme3/@settings-select-text-white":"白","editor-theme3/@settings-select-text-black":"黒","editor-theme3/@settings-select-text-colorOnWhite":"白背景に色","editor-theme3/@settings-select-text-colorOnBlack":"黒背景に色"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ja/gamepad.json b/src/addons/addons-l10n/ja/gamepad.json
new file mode 100644
index 000000000..a4a3e4bbe
--- /dev/null
+++ b/src/addons/addons-l10n/ja/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"ゲームパッド設定","gamepad/key-space":"スペース","gamepad/key-up":"上","gamepad/key-down":"下","gamepad/key-left":"左","gamepad/key-right":"右","gamepad/key-none":"(なし)","gamepad/key-click":"クリック","gamepad/axis-none":"なし","gamepad/axis-arrows":"矢印キー","gamepad/axis-cursor":"カーソル","gamepad/no-controllers":"コントローラーが接続されていません。接続して、ボタンを押してください。","gamepad/button-n":"ボタン{n}","gamepad/axes-a-b":"軸 {a} と {b}","gamepad/@name":"ゲームパッド","gamepad/@description":"USBかBluetoothのコントローラーやゲームパッドを利用する。"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ko/blocks2image.json b/src/addons/addons-l10n/ko/blocks2image.json
new file mode 100644
index 000000000..e858cde55
--- /dev/null
+++ b/src/addons/addons-l10n/ko/blocks2image.json
@@ -0,0 +1 @@
+{"blocks2image/export_selected_to_SVG":"SVG로 내보내기 선택","blocks2image/export_all_to_SVG":"모두 SVG로 내보내기","blocks2image/export_selected_to_PNG":"PNG로 내보내기 선택","blocks2image/export_all_to_PNG":"모두 PNG로 내보내기","blocks2image/error_blocks_unselected":"내보낼 블록을 클릭하세요!","blocks2image/error_blocks_not_added":"작업 공간에 블록을 추가합니다!","blocks2image/@name":"블럭을 이미지로 저장하기","blocks2image/@description":"편집기 작업영역에서 마우스 오른쪽 단추를 눌러 블록을 SVG/PNG 이미지로 내보냅니다."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ko/editor-colored-context-menus.json b/src/addons/addons-l10n/ko/editor-colored-context-menus.json
new file mode 100644
index 000000000..31ffe182d
--- /dev/null
+++ b/src/addons/addons-l10n/ko/editor-colored-context-menus.json
@@ -0,0 +1 @@
+{"editor-colored-context-menus/@name":"컨텍스트 메뉴 색상","editor-colored-context-menus/@description":"블록을 마우스 오른쪽 단추로 클릭할 때 편집기 컨텍스트 메뉴를 컬러로 만듭니다."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ko/editor-stage-left.json b/src/addons/addons-l10n/ko/editor-stage-left.json
new file mode 100644
index 000000000..917ee731e
--- /dev/null
+++ b/src/addons/addons-l10n/ko/editor-stage-left.json
@@ -0,0 +1 @@
+{"editor-stage-left/@name":"무대 왼쪽에서 보이기","editor-stage-left/@description":"무대를 편집기의 왼쪽으로 옮깁니다."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ko/editor-theme3.json b/src/addons/addons-l10n/ko/editor-theme3.json
new file mode 100644
index 000000000..3f3a2b37c
--- /dev/null
+++ b/src/addons/addons-l10n/ko/editor-theme3.json
@@ -0,0 +1 @@
+{"editor-theme3/@name":"블럭 색 커스텀","editor-theme3/@description":"편집기의 각 카데고리에 대한 블록 색상을 편집합니다.","editor-theme3/@info-refresheditor":"이 테마를 활성화/비활성화한 후 편집기를 새로 고칩니다.","editor-theme3/@preset-name-tweaks":"3.0 개선","editor-theme3/@preset-description-tweaks":"2.0에서 영감을 얻은 색상의 이벤트, 제어, 사용자 지정 블록","editor-theme3/@preset-name-original":"2.0 색상","editor-theme3/@preset-description-original":"2.0의 원 색상","editor-theme3/@preset-name-dark":"어두운","editor-theme3/@preset-description-dark":"기본 색상의 어두운 버전","editor-theme3/@preset-name-black":"검정","editor-theme3/@preset-description-black":"블럭 배경을 검정으로 만듭니다.","editor-theme3/@settings-name-motion-color":"움직임","editor-theme3/@settings-name-looks-color":"형태","editor-theme3/@settings-name-sounds-color":"소리","editor-theme3/@settings-name-events-color":"이벤트","editor-theme3/@settings-name-control-color":"제어","editor-theme3/@settings-name-sensing-color":"감지","editor-theme3/@settings-name-operators-color":"연산","editor-theme3/@settings-name-data-color":"변수","editor-theme3/@settings-name-data-lists-color":"리스트","editor-theme3/@settings-name-custom-color":"사용자 지정","editor-theme3/@settings-name-Pen-color":"확장 기능","editor-theme3/@settings-name-input-color":"블럭 입력","editor-theme3/@settings-name-text":"글자색","editor-theme3/@settings-select-text-white":"하양","editor-theme3/@settings-select-text-black":"검정","editor-theme3/@settings-select-text-colorOnWhite":"흰 배경에서의 색","editor-theme3/@settings-select-text-colorOnBlack":"검은 배경에서의 색"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ko/gamepad.json b/src/addons/addons-l10n/ko/gamepad.json
new file mode 100644
index 000000000..82c1d1ef8
--- /dev/null
+++ b/src/addons/addons-l10n/ko/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"게임패드 설정","gamepad/key-space":"스페이스","gamepad/key-up":"위","gamepad/key-down":"아래","gamepad/key-left":"좌","gamepad/key-right":"우","gamepad/key-click":"클릭","gamepad/axis-arrows":"방향키","gamepad/axis-cursor":"커서","gamepad/no-controllers":"감지된 컨트롤러가 없습니다. 하나를 꽂고 버튼을 눌러 보세요.","gamepad/button-n":"버튼 {n}","gamepad/axes-a-b":"축 {a}와 {b}","gamepad/@name":"게임패드 지원","gamepad/@description":"USB 또는 Bluetooth 컨트롤러/게임 패드를 사용하여 프로젝트와 상호작용합니다."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/nl/editor-theme3.json b/src/addons/addons-l10n/nl/editor-theme3.json
index adbd9e5d0..d76f2ed82 100644
--- a/src/addons/addons-l10n/nl/editor-theme3.json
+++ b/src/addons/addons-l10n/nl/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Bewerkbare blok kleuren","editor-theme3/@preset-name-tweaks":"3.0 Aanpassingen","editor-theme3/@preset-name-original":"2.0 Kleuren","editor-theme3/@settings-name-motion-color":"beweging","editor-theme3/@settings-name-looks-color":"uiterlijken","editor-theme3/@settings-name-sounds-color":"geluid","editor-theme3/@settings-name-events-color":"gebeurtenissen","editor-theme3/@settings-name-control-color":"besturen","editor-theme3/@settings-name-sensing-color":"waarnemen","editor-theme3/@settings-name-operators-color":"functies","editor-theme3/@settings-name-data-color":"variabelen","editor-theme3/@settings-name-data-lists-color":"lijsten","editor-theme3/@settings-name-Pen-color":"extensies"}
\ No newline at end of file
+{"editor-theme3/@name":"Bewerkbare blok kleuren","editor-theme3/@preset-name-tweaks":"3.0 Aanpassingen","editor-theme3/@preset-name-original":"2.0 Kleuren","editor-theme3/@preset-name-dark":"Donker","editor-theme3/@preset-name-black":"Zwart","editor-theme3/@settings-name-motion-color":"beweging","editor-theme3/@settings-name-looks-color":"uiterlijken","editor-theme3/@settings-name-sounds-color":"geluid","editor-theme3/@settings-name-events-color":"gebeurtenissen","editor-theme3/@settings-name-control-color":"besturen","editor-theme3/@settings-name-sensing-color":"waarnemen","editor-theme3/@settings-name-operators-color":"functies","editor-theme3/@settings-name-data-color":"variabelen","editor-theme3/@settings-name-data-lists-color":"lijsten","editor-theme3/@settings-name-custom-color":"aanpasbaar","editor-theme3/@settings-name-Pen-color":"extensies","editor-theme3/@settings-name-text":"Tekst kleur","editor-theme3/@settings-select-text-white":"Wit","editor-theme3/@settings-select-text-black":"Zwart"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/block-palette-icons.json b/src/addons/addons-l10n/pl/block-palette-icons.json
index 7657cba0d..f99190dd5 100644
--- a/src/addons/addons-l10n/pl/block-palette-icons.json
+++ b/src/addons/addons-l10n/pl/block-palette-icons.json
@@ -1 +1 @@
-{"block-palette-icons/@name":"Ikony kategorii bloków"}
\ No newline at end of file
+{"block-palette-icons/@name":"Ikony kategorii bloków","block-palette-icons/@description":"Dodaje ikony wewnątrz kolorowych okręgów, które identyfikują kategorie bloków."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/blocks2image.json b/src/addons/addons-l10n/pl/blocks2image.json
index 82ab83d47..07d32df42 100644
--- a/src/addons/addons-l10n/pl/blocks2image.json
+++ b/src/addons/addons-l10n/pl/blocks2image.json
@@ -1 +1 @@
-{"blocks2image/export_selected_to_SVG":"Eksportuj wybrane do SVG","blocks2image/export_all_to_SVG":"Eksportuj wszystkie do SVG","blocks2image/export_selected_to_PNG":"Eksportuj wybrane do PNG","blocks2image/export_all_to_PNG":"Eskportuj wszystkie do PNG","blocks2image/error_blocks_not_added":"Dodaj bloki do przestrzeni roboczej!","blocks2image/@name":"Zapisz bloki jako obraz"}
\ No newline at end of file
+{"blocks2image/export_selected_to_SVG":"Eksportuj wybrane do SVG","blocks2image/export_all_to_SVG":"Eksportuj wszystkie do SVG","blocks2image/export_selected_to_PNG":"Eksportuj wybrane do PNG","blocks2image/export_all_to_PNG":"Eskportuj wszystkie do PNG","blocks2image/error_blocks_unselected":"Kliknij na bloki, które chcesz wyeksportować!","blocks2image/error_blocks_not_added":"Dodaj bloki do przestrzeni roboczej!","blocks2image/@name":"Zapisz bloki jako obraz"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/data-category-tweaks-v2.json b/src/addons/addons-l10n/pl/data-category-tweaks-v2.json
index 40eb33d33..4b4bc6aa4 100644
--- a/src/addons/addons-l10n/pl/data-category-tweaks-v2.json
+++ b/src/addons/addons-l10n/pl/data-category-tweaks-v2.json
@@ -1 +1 @@
-{"data-category-tweaks-v2/list-category":"listy","data-category-tweaks-v2/for-all-sprites":"Dla wszystkich duszków:","data-category-tweaks-v2/for-this-sprite-only":"Tylko dla tego duszka:","data-category-tweaks-v2/@name":"Kategorie typów danych","data-category-tweaks-v2/@settings-name-separateListCategory":"Oddziel kategorię Listy"}
\ No newline at end of file
+{"data-category-tweaks-v2/list-category":"listy","data-category-tweaks-v2/for-all-sprites":"Dla wszystkich duszków:","data-category-tweaks-v2/for-this-sprite-only":"Tylko dla tego duszka:","data-category-tweaks-v2/@name":"Kategorie typów danych","data-category-tweaks-v2/@description":"Zapewnia poprawki dla kategorii Dane („Zmienne”) w edytorze.","data-category-tweaks-v2/@settings-name-separateListCategory":"Oddziel kategorię Listy"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/editor-devtools.json b/src/addons/addons-l10n/pl/editor-devtools.json
index 2e4226609..3a692982d 100644
--- a/src/addons/addons-l10n/pl/editor-devtools.json
+++ b/src/addons/addons-l10n/pl/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-title":"Narzędzia deweloperskie Scratch 3","editor-devtools/ctrl-space":"Ctrl + Spacja lub środkowy przycisk myszy","editor-devtools/paste-from-clipboard-desc":"Wkleja ze schowka, ale co ważne, wkleja go tam, gdzie znajduje się kursor myszy, dzięki czemu można go umieścić (zamiast umieszczać go w miejscu, z którego został skopiowany, tak jak w przypadku obecnej implementacji scratch).","editor-devtools/swap-variable-desc":"Kliknij prawym przyciskiem myszy zmienną w skryptach dla tej nowej opcji. Pozwala na przełączenie wszystkich odwołań do tej zmiennej w aktualnym duszku za jednym razem do innej zmiennej. Jest to świetne rozwiązanie, gdy popełniłeś błąd i chcesz przełączyć się z jednej zmiennej na inną lub musisz zmienić z „dla wszystkich duszków” na „tylko dla tego duszka”. Ta opcja nie usunie starej zmiennej i nie wpłynie na żadne inne zmienne duszków.","editor-devtools/middleclick":"Kliknij środkowym przyciskiem","editor-devtools/send-top-bottom":"Wyślij na górę, Wyślij na dół","editor-devtools/send-top-bottom-desc":"Kliknij prawym przyciskiem myszy kostium, aby pojawiły się 2 nowe pozycje menu. Można ich użyć do wysłania klikniętego duszka na górę lub dół listy kostiumów w celu szybkiej zmiany kolejności.","editor-devtools/youtube":"przewodniki na youtube","editor-devtools/var-not-exist":"Ta zmienna nie istnieje...","editor-devtools/find":"Wyszukaj","editor-devtools/find-placeholder":"Wyszukaj (Ctrl+F)","editor-devtools/deep":"Głębokość","editor-devtools/help":"pomoc","editor-devtools/tutorials":"przewodniki","editor-devtools/replace":"Developer tools: Przełącz wszystkie {name} w tym duszku na zmienną o nazwie:","editor-devtools/top":"wyślij na wierzch","editor-devtools/bottom":"wyślij na spód","editor-devtools/clean-plus":"Wyczyść bloki +","editor-devtools/paste":"Wklej","editor-devtools/copy-all":"Kopiuj Wszystko","editor-devtools/copy-block":"Kopiuj Blok","editor-devtools/cut-block":"Wytnij blok","editor-devtools/make-space":"Zrób miejsce","editor-devtools/swap":"Zamień {var} w Duszku","editor-devtools/lists":"listy","editor-devtools/variables":"zmienne","editor-devtools/insert":"Zamień","editor-devtools/start-typing":"Zacznij pisać...","editor-devtools/extension-description-not-for-addon":"Scratch 3 Developer Tools do ulepszania swoich wrażeń z edycji Scratch na https://scratch.mit.edu","editor-devtools/@name":"Narzędzia Developerskie","editor-devtools/@description":"Dodaje pole wyszukiwania i nowe opcje menu do edytora: kopiuj/wklej bloki, lepiej posprzątaj, przejdź do niestandardowej definicji bloku i nie tylko!","editor-devtools/@info-shortcuts":"Naciśnij „Ctrl + F”, aby zaznaczyć pole wyszukiwania, „Ctrl + Spacja”, aby wyświetlić wyskakujące okienko „Dodaj blok według nazwy”, „Ctrl + Lewo/Prawo”, aby przejść do historii wyszukiwania.","editor-devtools/@settings-name-enableCleanUpPlus":"Ulepszone „Wyczyść bloki”","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Wklej bloki w miejscu kursora myszy","editor-devtools/@settings-name-enableMiddleClickFinder":"Kliknij środkowym przyciskiem myszy zmienne, niestandardowe bloki lub zdarzenia do nawigacji"}
\ No newline at end of file
+{"editor-devtools/help-title":"Narzędzia deweloperskie Scratch 3","editor-devtools/help-by":"{url} zrobione przez współpracowników i tłumaczy Scratch Addons","editor-devtools/ctrl-space":"Ctrl + Spacja lub środkowy przycisk myszy","editor-devtools/ctrl-space-desc":"Wyskakuje pływające pole wejściowe, w którym można wpisać nazwę bloku (lub jego części) i przeciągnąć blok do kodu, aby wykorzystać go właśnie tam.","editor-devtools/interactive-find-bar-desc":"Szybko znajdź i przejdź do dowolnego bloku niestandardowego, zmiennej, zdarzenia lub bloków nadających i odbierających komunikaty zdefiniowanego w duszkach, klikając na nowy pasek wyszukiwania znajdujący się po prawej stronie zakładek Kod, Kostiumy i Dźwięk. Zacznij wpisywać tekst, aby przefiltrować listę. Użyj klawiszy strzałek w górę i w dół, aby przełączać się między możliwymi wpisami, oraz strzałek w lewo i w prawo, aby przechodzić między wszystkimi znalezionymi wystąpieniami danego bloku.","editor-devtools/help-new":"★Nowe★","editor-devtools/help-make-space":"Zrób miejsce","editor-devtools/help-make-space-desc":"Zrób dodatkowe miejsce wokół skryptu, klikając prawym przyciskiem myszy na blokach kodu i wybierając opcję \"Zrób miejsce\".","editor-devtools/copy-to-clipboard":"Skopiuj do schowka","editor-devtools/paste-from-clipboard":"Wklej z schowka","editor-devtools/paste-from-clipboard-desc":"Wkleja ze schowka, ale co ważne, wkleja go tam, gdzie znajduje się kursor myszy, dzięki czemu można go umieścić (zamiast umieszczać go w miejscu, z którego został skopiowany, tak jak w przypadku obecnej implementacji scratch).","editor-devtools/swap-variable":"Zamień zmienną w Duszku","editor-devtools/swap-variable-desc":"Kliknij prawym przyciskiem myszy zmienną w skryptach dla tej nowej opcji. Pozwala na przełączenie wszystkich odwołań do tej zmiennej w aktualnym duszku za jednym razem do innej zmiennej. Jest to świetne rozwiązanie, gdy popełniłeś błąd i chcesz przełączyć się z jednej zmiennej na inną lub musisz zmienić z „dla wszystkich duszków” na „tylko dla tego duszka”. Ta opcja nie usunie starej zmiennej i nie wpłynie na żadne inne zmienne duszków.","editor-devtools/middleclick":"Kliknij środkowym przyciskiem","editor-devtools/middleclick-desc":"Użycie środkowego przycisku myszy na zmiennej lub bloku niestandardowym pozwala przejść do jego definicji lub otworzyć go w interaktywnym pasku wyszukiwania.","editor-devtools/find-bar-costume-desc":"Kliknij, aby wyświetlić listę wszystkich kostiumów według nazwy, i wpisz, aby zlokalizować jeden z nich. Użyj klawiszy strzałek lub myszy, aby kliknąć nazwę, aby przejść bezpośrednio do tego kostiumu.","editor-devtools/ctrl-lr-costume-desc":"Klawisze te nawigują do poprzedniego / następnego kostiumu w duszku.","editor-devtools/send-top-bottom":"Wyślij na górę, Wyślij na dół","editor-devtools/send-top-bottom-desc":"Kliknij prawym przyciskiem myszy kostium, aby pojawiły się 2 nowe pozycje menu. Można ich użyć do wysłania klikniętego duszka na górę lub dół listy kostiumów w celu szybkiej zmiany kolejności.","editor-devtools/youtube":"przewodniki na youtube","editor-devtools/var-not-exist":"Ta zmienna nie istnieje...","editor-devtools/find":"Wyszukaj","editor-devtools/find-placeholder":"Wyszukaj (Ctrl+F)","editor-devtools/deep":"Głębokość","editor-devtools/help":"pomoc","editor-devtools/tutorials":"przewodniki","editor-devtools/replace":"Developer tools: Przełącz wszystkie {name} w tym duszku na zmienną o nazwie:","editor-devtools/top":"przesuń na wierzch","editor-devtools/bottom":"przesuń na spód","editor-devtools/clean-plus":"Wyczyść bloki +","editor-devtools/paste":"Wklej","editor-devtools/copy-all":"Kopiuj Wszystko","editor-devtools/copy-block":"Kopiuj Blok","editor-devtools/cut-block":"Wytnij blok","editor-devtools/make-space":"Zrób miejsce","editor-devtools/swap":"Zamień {var} w Duszku","editor-devtools/lists":"listy","editor-devtools/variables":"zmienne","editor-devtools/insert":"Zamień","editor-devtools/start-typing":"Zacznij pisać...","editor-devtools/extension-description-not-for-addon":"Scratch 3 Developer Tools do ulepszania swoich wrażeń z edycji Scratch na https://scratch.mit.edu","editor-devtools/@name":"Narzędzia Developerskie","editor-devtools/@description":"Dodaje pole wyszukiwania i nowe opcje menu do edytora: kopiuj/wklej bloki, lepiej posprzątaj, przejdź do niestandardowej definicji bloku i nie tylko!","editor-devtools/@info-shortcuts":"Naciśnij „Ctrl + F”, aby zaznaczyć pole wyszukiwania, „Ctrl + Spacja”, aby wyświetlić wyskakujące okienko „Dodaj blok według nazwy”, „Ctrl + Lewo/Prawo”, aby przejść do historii wyszukiwania.","editor-devtools/@settings-name-enableCleanUpPlus":"Ulepszone „Wyczyść bloki”","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Wklej bloki w miejscu kursora myszy","editor-devtools/@settings-name-enableMiddleClickFinder":"Kliknij środkowym przyciskiem myszy zmienne, niestandardowe bloki lub zdarzenia do nawigacji"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/gamepad.json b/src/addons/addons-l10n/pl/gamepad.json
new file mode 100644
index 000000000..90d948c15
--- /dev/null
+++ b/src/addons/addons-l10n/pl/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/key-space":"Spacja","gamepad/key-up":"Góra","gamepad/key-down":"Dół","gamepad/key-left":"Lewo","gamepad/key-right":"Prawo","gamepad/key-none":"(nic)","gamepad/axis-none":"Nic","gamepad/axis-cursor":"Kursor","gamepad/no-controllers":"Nie wykryto kontrolerów. Spróbuj podłączyć jeden z nich i nacisnąć przycisk na nim.","gamepad/button-n":"Przycisk {n}","gamepad/@name":"Wsparcie dla padów"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/initialise-sprite-position.json b/src/addons/addons-l10n/pl/initialise-sprite-position.json
index 7872a46f7..d74e91752 100644
--- a/src/addons/addons-l10n/pl/initialise-sprite-position.json
+++ b/src/addons/addons-l10n/pl/initialise-sprite-position.json
@@ -1 +1 @@
-{"initialise-sprite-position/@name":"Zmień nową domyślną pozycję duszka","initialise-sprite-position/@settings-name-x":"pozycja X","initialise-sprite-position/@settings-name-y":"pozycja Y","initialise-sprite-position/@settings-name-library":"Losuj pozycję duszków w bibliotece"}
\ No newline at end of file
+{"initialise-sprite-position/@name":"Zmień nową domyślną pozycję duszka","initialise-sprite-position/@description":"Przenosi duszki do określonej pozycji x/y kiedy są tworzone.","initialise-sprite-position/@settings-name-x":"pozycja X","initialise-sprite-position/@settings-name-y":"pozycja Y","initialise-sprite-position/@settings-name-library":"Losuj pozycję duszków w bibliotece"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pl/onion-skinning.json b/src/addons/addons-l10n/pl/onion-skinning.json
index ab8519cff..72146c736 100644
--- a/src/addons/addons-l10n/pl/onion-skinning.json
+++ b/src/addons/addons-l10n/pl/onion-skinning.json
@@ -1 +1 @@
-{"onion-skinning/toggle":"Przełącz Onion Skinning","onion-skinning/settings":"Ustawienia Onion Skinning","onion-skinning/previous":"Poprzednie kostiumy","onion-skinning/next":"Następne kostiumy","onion-skinning/opacity":"Nieprzezroczystość (%)","onion-skinning/opacityStep":"Nieprzezroczystość kroku (%)","onion-skinning/mode":"Tryb","onion-skinning/merge":"Łącz","onion-skinning/tint":"Odcień","onion-skinning/layering":"Warstwowanie","onion-skinning/front":"Przód","onion-skinning/behind":"Tył","onion-skinning/@description":"Pokazuje przezroczyste warstwy poprzednich lub następnych kostiumów podczas edytowania kostiumu. Kontrolowane przez przyciski pod edytorem obok przycisków zoomowania.","onion-skinning/@settings-name-default":"Włączone domyślnie","onion-skinning/@settings-name-previous":"Domyślnie poprzednie kostiumy","onion-skinning/@settings-name-next":"Domyślnie następne kostiumy","onion-skinning/@settings-name-opacity":"Nieprzezroczystość (%)","onion-skinning/@settings-name-opacityStep":"Nieprzezroczystość kroku (%)","onion-skinning/@settings-name-layering":"Domyślne warstwowanie","onion-skinning/@settings-select-layering-front":"Przód","onion-skinning/@settings-select-layering-behind":"Tył","onion-skinning/@settings-name-mode":"Tryb domyślny","onion-skinning/@settings-select-mode-merge":"Łącz obrazy","onion-skinning/@settings-select-mode-tint":"Kolor odcienia","onion-skinning/@settings-name-beforeTint":"Odcień poprzedniego kostiumu","onion-skinning/@settings-name-afterTint":"Odcień następnego kostiumu"}
\ No newline at end of file
+{"onion-skinning/toggle":"Przełącz Onion Skinning","onion-skinning/settings":"Ustawienia Onion Skinning","onion-skinning/previous":"Poprzednie kostiumy","onion-skinning/next":"Następne kostiumy","onion-skinning/opacity":"Nieprzezroczystość (%)","onion-skinning/opacityStep":"Nieprzezroczystość kroku (%)","onion-skinning/mode":"Tryb","onion-skinning/merge":"Łącz","onion-skinning/tint":"Odcień","onion-skinning/layering":"Warstwowanie","onion-skinning/front":"Przód","onion-skinning/behind":"Tył","onion-skinning/@description":"Pokazuje przezroczyste warstwy poprzednich lub następnych kostiumów podczas edytowania kostiumu. Kontrolowane przez przyciski pod edytorem obok przycisków zoomowania.","onion-skinning/@settings-name-default":"Włączone domyślnie","onion-skinning/@settings-name-previous":"Domyślnie poprzednie kostiumy","onion-skinning/@settings-name-next":"Domyślnie następne kostiumy","onion-skinning/@settings-name-opacity":"Nieprzezroczystość (%)","onion-skinning/@settings-name-opacityStep":"Nieprzezroczystość następnych kostiumów (%)","onion-skinning/@settings-name-layering":"Domyślne warstwowanie","onion-skinning/@settings-select-layering-front":"Przód","onion-skinning/@settings-select-layering-behind":"Tył","onion-skinning/@settings-name-mode":"Tryb domyślny","onion-skinning/@settings-select-mode-merge":"Łącz obrazy","onion-skinning/@settings-select-mode-tint":"Kolor odcienia","onion-skinning/@settings-name-beforeTint":"Odcień poprzedniego kostiumu","onion-skinning/@settings-name-afterTint":"Odcień następnego kostiumu"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pt-br/editor-theme3.json b/src/addons/addons-l10n/pt-br/editor-theme3.json
index 534c0f1e3..9b2811855 100644
--- a/src/addons/addons-l10n/pt-br/editor-theme3.json
+++ b/src/addons/addons-l10n/pt-br/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Cores de bloco customizadas","editor-theme3/@description":"Edite as cores dos blocos de cada categoria no editor.","editor-theme3/@info-refresheditor":"Recarregue o editor depois de ativar/desativar esse tema.","editor-theme3/@preset-name-tweaks":"Ajustes ao 3.0","editor-theme3/@preset-description-tweaks":"Cores inspiradas no 2.0 nos blocos de Evento, Controle e Customizados.","editor-theme3/@preset-name-original":"Cores do 2.0","editor-theme3/@preset-description-original":"As cores de blocos originais do Scratch 2.0","editor-theme3/@settings-name-motion-color":"movimento","editor-theme3/@settings-name-looks-color":"aparência","editor-theme3/@settings-name-sounds-color":"som","editor-theme3/@settings-name-events-color":"eventos","editor-theme3/@settings-name-control-color":"controle","editor-theme3/@settings-name-sensing-color":"sensores","editor-theme3/@settings-name-operators-color":"operadores","editor-theme3/@settings-name-data-color":"variáveis","editor-theme3/@settings-name-data-lists-color":"listas","editor-theme3/@settings-name-custom-color":"meus blocos","editor-theme3/@settings-name-Pen-color":"extensões"}
\ No newline at end of file
+{"editor-theme3/@name":"Cores de bloco customizadas","editor-theme3/@description":"Edite as cores dos blocos de cada categoria no editor.","editor-theme3/@info-refresheditor":"Recarregue o editor depois de ativar/desativar esse tema.","editor-theme3/@preset-name-tweaks":"Ajustes ao 3.0","editor-theme3/@preset-description-tweaks":"Cores inspiradas no 2.0 nos blocos de Evento, Controle e Customizados.","editor-theme3/@preset-name-original":"Cores do 2.0","editor-theme3/@preset-description-original":"As cores de blocos originais do Scratch 2.0","editor-theme3/@preset-name-dark":"Escuro","editor-theme3/@preset-description-dark":"Versões escuras das cores padrão","editor-theme3/@preset-name-black":"Preto","editor-theme3/@preset-description-black":"Deixa os blocos pretos","editor-theme3/@settings-name-motion-color":"movimento","editor-theme3/@settings-name-looks-color":"aparência","editor-theme3/@settings-name-sounds-color":"som","editor-theme3/@settings-name-events-color":"eventos","editor-theme3/@settings-name-control-color":"controle","editor-theme3/@settings-name-sensing-color":"sensores","editor-theme3/@settings-name-operators-color":"operadores","editor-theme3/@settings-name-data-color":"variáveis","editor-theme3/@settings-name-data-lists-color":"listas","editor-theme3/@settings-name-custom-color":"meus blocos","editor-theme3/@settings-name-Pen-color":"extensões","editor-theme3/@settings-name-input-color":"Entradas de texto nos blocos","editor-theme3/@settings-name-text":"Cor do texto","editor-theme3/@settings-select-text-white":"Branco","editor-theme3/@settings-select-text-black":"Preto","editor-theme3/@settings-select-text-colorOnWhite":"Colorido no fundo branco","editor-theme3/@settings-select-text-colorOnBlack":"Colorido no fundo preto"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/pt-br/gamepad.json b/src/addons/addons-l10n/pt-br/gamepad.json
new file mode 100644
index 000000000..48909cbbd
--- /dev/null
+++ b/src/addons/addons-l10n/pt-br/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Configurações do Controle","gamepad/key-space":"Espaço","gamepad/key-up":"Cima","gamepad/key-down":"Baixo","gamepad/key-left":"Esquerda","gamepad/key-right":"Direita","gamepad/key-none":"(nenhum)","gamepad/key-click":"Clique","gamepad/axis-none":"Nenhum","gamepad/axis-arrows":"Setinhas","gamepad/no-controllers":"Nenhum controle detectado. Tente conectar um e apertar um botão nele.","gamepad/button-n":"Botão {n}","gamepad/axes-a-b":"Direcionais {a} e {b}","gamepad/@name":"Suporte para controle","gamepad/@description":"Interaja com projetos usando um controle USB ou Bluetooth"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ro/blocks2image.json b/src/addons/addons-l10n/ro/blocks2image.json
new file mode 100644
index 000000000..8eb3cf440
--- /dev/null
+++ b/src/addons/addons-l10n/ro/blocks2image.json
@@ -0,0 +1 @@
+{"blocks2image/export_selected_to_SVG":"Exportă selectat la SVG","blocks2image/export_all_to_SVG":"Exportă tot la SVG","blocks2image/export_selected_to_PNG":"Exportă selectat la PNG","blocks2image/export_all_to_PNG":"Exportă tot la PNG","blocks2image/error_blocks_unselected":"Dă clic pe blocurile de exportat!","blocks2image/error_blocks_not_added":"Adaugă câteva blocuri!","blocks2image/@name":"Salvează blocurile ca imagine","blocks2image/@description":"Dă clic dreapta pe zona scripturilor din editor pentru a exporta blocurile ca imagini."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ro/custom-zoom.json b/src/addons/addons-l10n/ro/custom-zoom.json
new file mode 100644
index 000000000..0b7afd10a
--- /dev/null
+++ b/src/addons/addons-l10n/ro/custom-zoom.json
@@ -0,0 +1 @@
+{"custom-zoom/@name":"Setări personalizate pentru zoom","custom-zoom/@description":"Ajustează minimul, maximul, viteza și valoarea de început a zoom-ului din editor."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ro/editor-devtools.json b/src/addons/addons-l10n/ro/editor-devtools.json
index 83905453b..787bc7cd9 100644
--- a/src/addons/addons-l10n/ro/editor-devtools.json
+++ b/src/addons/addons-l10n/ro/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-title":"Instrumente pentru Dezvoltatori Scratch 3","editor-devtools/ctrl-space":"Ctrl + Spațiu sau Clic Mijloc","editor-devtools/code-tab-features":"Funcții pentru Fila Codului","editor-devtools/interactive-find-bar":"Bară de căutare interactivă (Ctrl + F)","editor-devtools/improved-tidy-up":"Aranjare a blocurilor îmbunătățită","editor-devtools/copy-to-clipboard":"Copiază în Clipboard","editor-devtools/copy-to-clipboard-desc":"Clic-dreapta pe un bloc și 3 noi opțiuni vor apărea: Copiază Toate, Copiază Blocul, și Decupează Blocul. Opțiunea Copiază Toate va copia totul incluzând și ceea ce este sub blocul pe care ai dat clic. Copază Blocul va copia doar blocul curent și componentele lui, dar nimic de dedesupt. Și opțiunea Decupează Blocul în va și copia și îl va și elimina din spațiul de lucru.","editor-devtools/paste-from-clipboard":"Inserează din Clipboard","editor-devtools/paste-from-clipboard-desc":"Inserează din clipboard, dar cel mai important, inserează unde este cursorul mouse-ului tău ca tu apoi să poți să îl plasezi (mai bine decât să-l plasezi de unde l-ai copiat, ca în implementarea Scratch actuală).","editor-devtools/swap-variable":"Transferă Variabila în Personaj","editor-devtools/swap-variable-desc":"Clic dreapta pe o variabilă în script-urile tale pentru această nouă opțiune. Îți permite să schimbi în același timp toate referințele la această variabilă în personajul actual cu o altă variabilă. Este folositor când ai făcut o greșeală și vrei să schimbi variabilele dintr-una într-alta sau trebuie să schimbi dintr-o variabilă „pentru toate personajele” într-una „doar pentru acest personaj”. Această opțiune nu va elimina variabila cea veche și nu va afecta alte variabile ale personajelor.","editor-devtools/middleclick":"Clic Mijloc","editor-devtools/middleclick-desc":"Folosirea butonului din mijloc al mouse-ului pe o variabilă sau un bloc personalizat îți permite să mergi direct la definiția lui sau să îl/o deschizi în bara de căutare interactivă.","editor-devtools/ctrl-lr":"Ctrl + Stânga, Ctrl + Dreapta","editor-devtools/ctrl-lr-desc":"Navighează la anterioara / următoarea poziție vizitată în fereastra script-urilor (după folosirea navigării la bloc sau bara de căutare). Îți permite să dai clic-mijloc pe un bloc personalizat pentru a merge la definiția lui, apoi apasă ctrl + Stânga pentru a merge înapoi unde ai fost înainte.","editor-devtools/costume-tab-features":"Funcții pentru Fila Costumelor","editor-devtools/find-bar":"Bara de Căutare","editor-devtools/ctrl-lr-costume-desc":"Aceste taste te mută la costumul anterior / următor în personaj.","editor-devtools/send-top-bottom":"Trimite în Vârf, Trimite în Partea de Jos","editor-devtools/send-top-bottom-desc":"Clic dreapta pe un costum și 2 noi opțiuni apar în meniu. Acestea pot fi folosite pentru a trimite personajul respectiv în topul sau în josul listei de costume pentru o reordonare rapidă.","editor-devtools/youtube":"Tutoriale YouTube","editor-devtools/var-not-exist":"Acea variabilă nu există...","editor-devtools/find":"Caută","editor-devtools/find-placeholder":"Caută (Ctrl+F)","editor-devtools/deep":"Adâncime","editor-devtools/help":"Ajutor","editor-devtools/tutorials":"Tutoriale","editor-devtools/paste":"Inserează","editor-devtools/copy-all":"Copiază Toate","editor-devtools/copy-block":"Copiază Blocul","editor-devtools/cut-block":"Decupează Blocul","editor-devtools/lists":"liste","editor-devtools/variables":"variabile","editor-devtools/insert":"Inserează","editor-devtools/start-typing":"Începe să Tastezi...","editor-devtools/extension-description-not-for-addon":"Instrumente pentru Dezvoltatori Scratch 3 pentru a mări Experiența ta în Editarea Scratch pe https://scratch.mit.edu","editor-devtools/@name":"Instrumente pentru dezvoltatori","editor-devtools/@description":"Adaugă o bară de căutare și noi opțiuni pentru meniurile din editor: copiază/inserează blocuri, aranjare a blocurilor mai bună, mergi la definiția blocului personalizat, și multe altele!"}
\ No newline at end of file
+{"editor-devtools/help-title":"Instrumente pentru Dezvoltatori Scratch 3","editor-devtools/ctrl-space":"Ctrl + Spațiu sau Clic Mijloc","editor-devtools/code-tab-features":"Funcții pentru Fila Codului","editor-devtools/interactive-find-bar":"Bară de căutare interactivă (Ctrl + F)","editor-devtools/improved-tidy-up":"Aranjare a blocurilor îmbunătățită","editor-devtools/help-new":"Nou✨","editor-devtools/help-make-space":"Fă spațiu","editor-devtools/copy-to-clipboard":"Copiază în Clipboard","editor-devtools/copy-to-clipboard-desc":"Clic-dreapta pe un bloc și 3 noi opțiuni vor apărea: Copiază Toate, Copiază Blocul, și Decupează Blocul. Opțiunea Copiază Toate va copia totul incluzând și ceea ce este sub blocul pe care ai dat clic. Copază Blocul va copia doar blocul curent și componentele lui, dar nimic de dedesupt. Și opțiunea Decupează Blocul în va și copia și îl va și elimina din spațiul de lucru.","editor-devtools/paste-from-clipboard":"Inserează din Clipboard","editor-devtools/paste-from-clipboard-desc":"Inserează din clipboard, dar cel mai important, inserează unde este cursorul mouse-ului tău ca tu apoi să poți să îl plasezi (mai bine decât să-l plasezi de unde l-ai copiat, ca în implementarea Scratch actuală).","editor-devtools/swap-variable":"Transferă Variabila în Personaj","editor-devtools/swap-variable-desc":"Clic dreapta pe o variabilă în script-urile tale pentru această nouă opțiune. Îți permite să schimbi în același timp toate referințele la această variabilă în personajul actual cu o altă variabilă. Este folositor când ai făcut o greșeală și vrei să schimbi variabilele dintr-una într-alta sau trebuie să schimbi dintr-o variabilă „pentru toate personajele” într-una „doar pentru acest personaj”. Această opțiune nu va elimina variabila cea veche și nu va afecta alte variabile ale personajelor.","editor-devtools/middleclick":"Clic Mijloc","editor-devtools/middleclick-desc":"Folosirea butonului din mijloc al mouse-ului pe o variabilă sau un bloc personalizat îți permite să mergi direct la definiția lui sau să îl/o deschizi în bara de căutare interactivă.","editor-devtools/ctrl-lr":"Ctrl + Stânga, Ctrl + Dreapta","editor-devtools/ctrl-lr-desc":"Navighează la anterioara / următoarea poziție vizitată în fereastra script-urilor (după folosirea navigării la bloc sau bara de căutare). Îți permite să dai clic-mijloc pe un bloc personalizat pentru a merge la definiția lui, apoi apasă ctrl + Stânga pentru a merge înapoi unde ai fost înainte.","editor-devtools/costume-tab-features":"Funcții pentru Fila Costumelor","editor-devtools/find-bar":"Bara de Căutare","editor-devtools/ctrl-lr-costume-desc":"Aceste taste te mută la costumul anterior / următor în personaj.","editor-devtools/send-top-bottom":"Trimite în Vârf, Trimite în Partea de Jos","editor-devtools/send-top-bottom-desc":"Clic dreapta pe un costum și 2 noi opțiuni apar în meniu. Acestea pot fi folosite pentru a trimite personajul respectiv în topul sau în josul listei de costume pentru o reordonare rapidă.","editor-devtools/youtube":"Tutoriale YouTube","editor-devtools/var-not-exist":"Acea variabilă nu există...","editor-devtools/find":"Caută","editor-devtools/find-placeholder":"Caută (Ctrl+F)","editor-devtools/deep":"Adâncime","editor-devtools/help":"Ajutor","editor-devtools/tutorials":"Tutoriale","editor-devtools/paste":"Inserează","editor-devtools/copy-all":"Copiază Toate","editor-devtools/copy-block":"Copiază Blocul","editor-devtools/cut-block":"Decupează Blocul","editor-devtools/lists":"liste","editor-devtools/variables":"variabile","editor-devtools/insert":"Inserează","editor-devtools/start-typing":"Începe să Tastezi...","editor-devtools/extension-description-not-for-addon":"Instrumente pentru Dezvoltatori Scratch 3 pentru a mări Experiența ta în Editarea Scratch pe https://scratch.mit.edu","editor-devtools/@name":"Instrumente pentru dezvoltatori","editor-devtools/@description":"Adaugă o bară de căutare și noi opțiuni pentru meniurile din editor: copiază/inserează blocuri, aranjare a blocurilor mai bună, mergi la definiția blocului personalizat, și multe altele!"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ro/editor-theme3.json b/src/addons/addons-l10n/ro/editor-theme3.json
index 48dff10b7..3bfda57ad 100644
--- a/src/addons/addons-l10n/ro/editor-theme3.json
+++ b/src/addons/addons-l10n/ro/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Culori personalizate ale blocurilor","editor-theme3/@description":"Editează culoarea blocurilor pentru fiecare categorie în editor.","editor-theme3/@info-refresheditor":"Reîncărcați editorul după activarea/dezactivarea acestei teme.","editor-theme3/@preset-name-tweaks":"Modificări 3.0","editor-theme3/@preset-description-tweaks":"Culorile Blocurilor Personalizate, de Evenimente și de Control inspirate din Scratch 2.0","editor-theme3/@preset-name-original":"Culori 2.0","editor-theme3/@preset-description-original":"Culorile originale ale blocurilor din Scratch 2.0","editor-theme3/@settings-name-motion-color":"mișcare","editor-theme3/@settings-name-looks-color":"aspect","editor-theme3/@settings-name-sounds-color":"sunete","editor-theme3/@settings-name-events-color":"evenimente","editor-theme3/@settings-name-sensing-color":"detectare","editor-theme3/@settings-name-operators-color":"operatori","editor-theme3/@settings-name-data-color":"variabile","editor-theme3/@settings-name-data-lists-color":"liste","editor-theme3/@settings-name-custom-color":"blocuri personalizate","editor-theme3/@settings-name-Pen-color":"extensii"}
\ No newline at end of file
+{"editor-theme3/@name":"Culori personalizate ale blocurilor","editor-theme3/@description":"Editează culoarea blocurilor pentru fiecare categorie în editor.","editor-theme3/@info-refresheditor":"Reîncărcați editorul după activarea/dezactivarea acestei teme.","editor-theme3/@preset-name-tweaks":"Modificări 3.0","editor-theme3/@preset-description-tweaks":"Culorile Blocurilor Personalizate, de Evenimente și de Control inspirate din Scratch 2.0","editor-theme3/@preset-name-original":"Culori 2.0","editor-theme3/@preset-description-original":"Culorile originale ale blocurilor din Scratch 2.0","editor-theme3/@preset-name-dark":"Întunecat","editor-theme3/@preset-description-dark":"Versiuni întunecate ale blocurilor implicite","editor-theme3/@preset-name-black":"Negru","editor-theme3/@preset-description-black":"Face fundalul blocurilor negru","editor-theme3/@settings-name-motion-color":"mișcare","editor-theme3/@settings-name-looks-color":"aspect","editor-theme3/@settings-name-sounds-color":"sunete","editor-theme3/@settings-name-events-color":"evenimente","editor-theme3/@settings-name-sensing-color":"detectare","editor-theme3/@settings-name-operators-color":"operatori","editor-theme3/@settings-name-data-color":"variabile","editor-theme3/@settings-name-data-lists-color":"liste","editor-theme3/@settings-name-custom-color":"blocuri personalizate","editor-theme3/@settings-name-Pen-color":"extensii","editor-theme3/@settings-name-input-color":"Intrări din blocuri","editor-theme3/@settings-name-text":"Culoarea textului","editor-theme3/@settings-select-text-white":"Alb","editor-theme3/@settings-select-text-black":"Negru","editor-theme3/@settings-select-text-colorOnWhite":"Colorat pe fundal alb","editor-theme3/@settings-select-text-colorOnBlack":"Colorat pe fundal negru"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ro/gamepad.json b/src/addons/addons-l10n/ro/gamepad.json
new file mode 100644
index 000000000..800a7ab1f
--- /dev/null
+++ b/src/addons/addons-l10n/ro/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Setări gamepad","gamepad/key-space":"Spațiu","gamepad/key-up":"Sus","gamepad/key-down":"Jos","gamepad/key-left":"Stânga","gamepad/key-right":"Dreapta","gamepad/key-none":"(nimic)","gamepad/key-click":"Clic","gamepad/axis-none":"Nimic","gamepad/axis-arrows":"Taste săgeți","gamepad/no-controllers":"Niciun controller detectat. Încearcă să conectezi unul.","gamepad/button-n":"Buton {n}","gamepad/axes-a-b":"Axele {a} și {b}","gamepad/@name":"Suport gamepad"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ru/block-switching.json b/src/addons/addons-l10n/ru/block-switching.json
index 0529491de..fda283f08 100644
--- a/src/addons/addons-l10n/ru/block-switching.json
+++ b/src/addons/addons-l10n/ru/block-switching.json
@@ -1 +1 @@
-{"block-switching/event_broadcast":"передать","block-switching/event_broadcastandwait":"передать и ждать до конца","block-switching/control_if":"если","block-switching/control_if_else":"если... иначе","block-switching/control_repeat_until":"повторять до","block-switching/control_forever":"всегда","block-switching/control_wait_until":"ждать до","block-switching/data_changevariableby":"изменить переменную","block-switching/data_setvariableto":"установить переменную","block-switching/data_showvariable":"показать переменную","block-switching/data_hidevariable":"спрятать переменную","block-switching/data_showlist":"показать список","block-switching/data_hidelist":"скрыть список","block-switching/looks_changesizeby":"изменить размер","block-switching/looks_show":"показаться","block-switching/looks_hide":"спрятаться","block-switching/looks_nextcostume":"следующий костюм","block-switching/looks_nextbackdrop":"следующий фон","block-switching/looks_say":"сказать","block-switching/looks_think":"думать","block-switching/looks_sayforsecs":"говорить секунд","block-switching/looks_thinkforsecs":"думать секунд","block-switching/looks_switchbackdropto":"переключить фон на","block-switching/operator_and":"и","block-switching/operator_or":"или","block-switching/pen_penDown":"опустить перо","block-switching/pen_penUp":"поднять перо","block-switching/@settings-name-border":"Добавить границу","block-switching/@settings-name-motion":"Блоки движения","block-switching/@settings-name-event":"Блоки событий","block-switching/@settings-name-control":"Блоки управления","block-switching/@settings-name-operator":"Блоки операторов","block-switching/@settings-name-sensing":"Блоки сенсоров","block-switching/@settings-name-extension":"Блоки расширений"}
\ No newline at end of file
+{"block-switching/event_broadcast":"передать","block-switching/event_broadcastandwait":"передать и ждать до конца","block-switching/control_if":"если","block-switching/control_if_else":"если... иначе","block-switching/control_repeat_until":"повторять до","block-switching/control_forever":"всегда","block-switching/control_wait_until":"ждать до","block-switching/data_changevariableby":"изменить переменную","block-switching/data_setvariableto":"установить переменную","block-switching/data_showvariable":"показать переменную","block-switching/data_hidevariable":"спрятать переменную","block-switching/data_showlist":"показать список","block-switching/data_hidelist":"скрыть список","block-switching/data_replaceitemoflist":"заменить элемент","block-switching/data_insertatlist":"вставить элемент","block-switching/looks_changeeffectby":"изменить эффект","block-switching/looks_seteffectto":"установить эффект","block-switching/looks_changesizeby":"изменить размер","block-switching/looks_setsizeto":"установить размер","block-switching/looks_costumenumbername":"номер костюма или имя костюма","block-switching/looks_backdropnumbername":"номер фона или имя фона","block-switching/looks_show":"показаться","block-switching/looks_hide":"спрятаться","block-switching/looks_nextcostume":"следующий костюм","block-switching/looks_nextbackdrop":"следующий фон","block-switching/looks_say":"сказать","block-switching/looks_think":"думать","block-switching/looks_sayforsecs":"говорить секунд","block-switching/looks_thinkforsecs":"думать секунд","block-switching/looks_switchbackdropto":"переключить фон на","block-switching/looks_switchbackdroptoandwait":"изменить фон и ждать","block-switching/motion_turnright":"повернуть направо","block-switching/motion_turnleft":"повернуть налево","block-switching/motion_setx":"установить x","block-switching/motion_changexby":"изменить x","block-switching/motion_sety":"установить y","block-switching/motion_changeyby":"изменить y","block-switching/motion_xposition":"позиция x","block-switching/motion_yposition":"позиция y","block-switching/operator_and":"и","block-switching/operator_or":"или","block-switching/pen_penDown":"опустить перо","block-switching/pen_penUp":"поднять перо","block-switching/@settings-name-border":"Добавить границу","block-switching/@settings-name-motion":"Блоки движения","block-switching/@settings-name-event":"Блоки событий","block-switching/@settings-name-control":"Блоки управления","block-switching/@settings-name-operator":"Блоки операторов","block-switching/@settings-name-sensing":"Блоки сенсоров","block-switching/@settings-name-extension":"Блоки расширений"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ru/data-category-tweaks-v2.json b/src/addons/addons-l10n/ru/data-category-tweaks-v2.json
index 697a00fcf..a187cd622 100644
--- a/src/addons/addons-l10n/ru/data-category-tweaks-v2.json
+++ b/src/addons/addons-l10n/ru/data-category-tweaks-v2.json
@@ -1 +1 @@
-{"data-category-tweaks-v2/list-category":"Списки","data-category-tweaks-v2/for-all-sprites":"Для всех спрайтов:","data-category-tweaks-v2/for-this-sprite-only":"Только для этого спрайта:","data-category-tweaks-v2/@name":"Поправки категории данных ","data-category-tweaks-v2/@description":"Предоставляет поправки для категории данных (\"пепеременных\") в редакторе.","data-category-tweaks-v2/@settings-name-separateListCategory":"Отдельная категория списков.","data-category-tweaks-v2/@settings-name-separateLocalVariables":"Отделить переменные только для одного спрайта"}
\ No newline at end of file
+{"data-category-tweaks-v2/list-category":"Списки","data-category-tweaks-v2/for-all-sprites":"Для всех спрайтов:","data-category-tweaks-v2/for-this-sprite-only":"Только для этого спрайта:","data-category-tweaks-v2/@name":"Поправки категории данных ","data-category-tweaks-v2/@description":"Предоставляет поправки для категории данных (\"пепеременных\") в редакторе.","data-category-tweaks-v2/@settings-name-separateListCategory":"Отдельная категория списков.","data-category-tweaks-v2/@settings-name-separateLocalVariables":"Отделить переменные только для одного спрайта","data-category-tweaks-v2/@settings-name-moveReportersDown":"Переместить блоки данных выше списка переменных."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ru/editor-theme3.json b/src/addons/addons-l10n/ru/editor-theme3.json
index 4e5918db2..ba95d0828 100644
--- a/src/addons/addons-l10n/ru/editor-theme3.json
+++ b/src/addons/addons-l10n/ru/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Настраиваемые цвета блоков","editor-theme3/@description":"Отредактируйте цвета блоков для каждой категории в редакторе.","editor-theme3/@info-refresheditor":"Обновите редактор после включения/отключения этой темы.","editor-theme3/@preset-description-tweaks":"Блоки событий, управления и другие с цветами, вдохновленными 2.0","editor-theme3/@preset-name-original":"Цвета 2.0","editor-theme3/@preset-description-original":"Оригинальные цвета блоков из Scratch 2.0","editor-theme3/@settings-name-motion-color":"движение","editor-theme3/@settings-name-looks-color":"внешний вид","editor-theme3/@settings-name-sounds-color":"звук","editor-theme3/@settings-name-events-color":"события","editor-theme3/@settings-name-control-color":"управление","editor-theme3/@settings-name-sensing-color":"сенсоры","editor-theme3/@settings-name-operators-color":"операторы","editor-theme3/@settings-name-data-color":"переменные","editor-theme3/@settings-name-data-lists-color":"списки","editor-theme3/@settings-name-Pen-color":"расширения"}
\ No newline at end of file
+{"editor-theme3/@name":"Настраиваемые цвета блоков","editor-theme3/@description":"Отредактируйте цвета блоков для каждой категории в редакторе.","editor-theme3/@info-refresheditor":"Обновите редактор после включения/отключения этой темы.","editor-theme3/@preset-description-tweaks":"Блоки событий, управления и другие с цветами, вдохновленными 2.0","editor-theme3/@preset-name-original":"Цвета 2.0","editor-theme3/@preset-description-original":"Оригинальные цвета блоков из Scratch 2.0","editor-theme3/@preset-name-dark":"Тёмная","editor-theme3/@preset-description-dark":"Тёмные версии цветов по умолчанию","editor-theme3/@preset-name-black":"Чёрный","editor-theme3/@preset-description-black":"Делает фоны блоков чёрными","editor-theme3/@settings-name-motion-color":"движение","editor-theme3/@settings-name-looks-color":"внешний вид","editor-theme3/@settings-name-sounds-color":"звук","editor-theme3/@settings-name-events-color":"события","editor-theme3/@settings-name-control-color":"управление","editor-theme3/@settings-name-sensing-color":"сенсоры","editor-theme3/@settings-name-operators-color":"операторы","editor-theme3/@settings-name-data-color":"переменные","editor-theme3/@settings-name-data-lists-color":"списки","editor-theme3/@settings-name-custom-color":"свой","editor-theme3/@settings-name-Pen-color":"расширения","editor-theme3/@settings-name-input-color":"Поля ввода в блоках","editor-theme3/@settings-name-text":"Цвет текста","editor-theme3/@settings-select-text-white":"Белый","editor-theme3/@settings-select-text-black":"Чёрный","editor-theme3/@settings-select-text-colorOnWhite":"Цветной на белом фоне","editor-theme3/@settings-select-text-colorOnBlack":"Цветной на чёрном фоне"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ru/gamepad.json b/src/addons/addons-l10n/ru/gamepad.json
new file mode 100644
index 000000000..7ec8d3bb1
--- /dev/null
+++ b/src/addons/addons-l10n/ru/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Настройки геймпада","gamepad/key-space":"Пробел","gamepad/key-up":"Вверх","gamepad/key-down":"Вниз","gamepad/key-left":"Налево","gamepad/key-right":"Направо","gamepad/key-none":"(ничего)","gamepad/key-click":"Нажатие","gamepad/axis-none":"Ничего","gamepad/axis-arrows":"Клавиши стрелок","gamepad/axis-cursor":"Курсор","gamepad/no-controllers":"Не обнаружены контроллеры. Попробуйте подключить какой-нибудь контроллер и нажать на ней кнопку.","gamepad/button-n":"Кнопка{n}","gamepad/axes-a-b":"Оси {a}и{b}","gamepad/@name":"Поддержка геймпада"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ru/hide-flyout.json b/src/addons/addons-l10n/ru/hide-flyout.json
index dbc5fb5c9..7b1086413 100644
--- a/src/addons/addons-l10n/ru/hide-flyout.json
+++ b/src/addons/addons-l10n/ru/hide-flyout.json
@@ -1 +1 @@
-{"hide-flyout/@name":"Автоматически скрывать палитру блоков","hide-flyout/@description":"Скрывает палитру блоков, если не наведено. Щелкните значок замкА, чтобы временно заблокировать его. Как вариант, используйте режим «щелчок по категории».","hide-flyout/@settings-name-toggle":"Включить...","hide-flyout/@settings-select-toggle-category":"Нажатие категории","hide-flyout/@settings-name-speed":"Длительность анимации","hide-flyout/@settings-select-speed-none":"Nul","hide-flyout/@settings-select-speed-short":"Короткий","hide-flyout/@settings-select-speed-default":"По умолчанию","hide-flyout/@settings-select-speed-long":"Длинный"}
\ No newline at end of file
+{"hide-flyout/@name":"Автоматически скрывать палитру блоков","hide-flyout/@description":"Скрывает палитру блоков, если не наведено. Щелкните значок замкА, чтобы временно заблокировать его. Как вариант, используйте режим «щелчок по категории».","hide-flyout/@settings-name-toggle":"Включить...","hide-flyout/@settings-select-toggle-hover":"Наведение на область палитры","hide-flyout/@settings-select-toggle-cathover":"Наведение на категорию","hide-flyout/@settings-select-toggle-category":"Нажатие категории","hide-flyout/@settings-name-speed":"Длительность анимации","hide-flyout/@settings-select-speed-none":"Nul","hide-flyout/@settings-select-speed-short":"Короткий","hide-flyout/@settings-select-speed-default":"По умолчанию","hide-flyout/@settings-select-speed-long":"Длинный"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/ru/mediarecorder.json b/src/addons/addons-l10n/ru/mediarecorder.json
index 492bb3ed3..993c8453b 100644
--- a/src/addons/addons-l10n/ru/mediarecorder.json
+++ b/src/addons/addons-l10n/ru/mediarecorder.json
@@ -1 +1 @@
-{"mediarecorder/record":"Начать запись","mediarecorder/stop":"Остановить запись","mediarecorder/option-title":"Настройки записи","mediarecorder/record-duration":"Продолжительность записи (в секундах)","mediarecorder/record-audio":"Включить звуки проекта","mediarecorder/record-mic":"Включить звуки из микрофона","mediarecorder/record-audio-description":"Это не включает Text-to-Speech.","mediarecorder/record-after-flag":"Не начинать запись, пока не нажат зеленый флаг","mediarecorder/record-until-stop":"Остановить запись после остановки проекта","mediarecorder/record-description":"Записывает сцену в файл WebM. Вы можете сохранить его на свой компьютер после завершения записи.","mediarecorder/start":"Начать","mediarecorder/cancel":"Отмена","mediarecorder/click-flag":"Ожидание...","mediarecorder/click-flag-description":"Нажмите зеленый флаг, чтобы начать запись. Нажмите эту кнопку, чтобы остановить.","mediarecorder/record-until-stop-disabled":"Вы должны включить \"{afterFlagOption}\", чтобы использовать эту настройку.","mediarecorder/@name":"Записать проект как видео","mediarecorder/@description":"Добавляет в редактор кнопку \"Начать запись\", позволяющую записывать сцену проекта."}
\ No newline at end of file
+{"mediarecorder/record":"Начать запись","mediarecorder/stop":"Остановить запись","mediarecorder/option-title":"Настройки записи","mediarecorder/record-duration":"Продолжительность записи (в секундах)","mediarecorder/record-audio":"Включить звуки проекта","mediarecorder/record-mic":"Включить звуки из микрофона","mediarecorder/record-audio-description":"Это не включает Text-to-Speech.","mediarecorder/record-after-flag":"Не начинать запись, пока не нажат зеленый флаг","mediarecorder/record-until-stop":"Остановить запись после остановки проекта","mediarecorder/record-description":"Записывает сцену в файл WebM. Вы можете сохранить его на свой компьютер после завершения записи.","mediarecorder/start":"Начать","mediarecorder/cancel":"Отмена","mediarecorder/added-by":"Добавлено расширением для браузера Scratch Addons.","mediarecorder/click-flag":"Ожидание...","mediarecorder/click-flag-description":"Нажмите зеленый флаг, чтобы начать запись. Нажмите эту кнопку, чтобы остановить.","mediarecorder/record-until-stop-disabled":"Вы должны включить \"{afterFlagOption}\", чтобы использовать эту настройку.","mediarecorder/@name":"Записать проект как видео","mediarecorder/@description":"Добавляет в редактор кнопку \"Начать запись\", позволяющую записывать сцену проекта."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/sl/editor-devtools.json b/src/addons/addons-l10n/sl/editor-devtools.json
index 46cf810b3..eda23ea72 100644
--- a/src/addons/addons-l10n/sl/editor-devtools.json
+++ b/src/addons/addons-l10n/sl/editor-devtools.json
@@ -1 +1 @@
-{"editor-devtools/help-by":"{url} ter sodelavci in prevajalci Scratch Addons","editor-devtools/ctrl-space":"Ctrl + presledek ali srednji miškin gumb","editor-devtools/ctrl-space-desc":"Pokaže polje, v katerega lahko vnesete ime (ali del imena) bloka in ga povlečete v kodo, da ga takoj uporabite.","editor-devtools/code-tab-features":"Funkcije na zavihku Koda","editor-devtools/interactive-find-bar":"Interaktivna iskalna vrstica (Ctrl + F)","editor-devtools/improved-tidy-up":"Izboljšano čiščenje kode","editor-devtools/help-new":"★Novo★","editor-devtools/help-make-space":"Naredi prostor","editor-devtools/help-make-space-desc":"Naredite dodaten prostor okrog skripte, tako da jo kliknite z desno miškino tipko in izberete \"Naredi prostor\".","editor-devtools/copy-to-clipboard":"Kopiraj v odložišče","editor-devtools/copy-to-clipboard-desc":"Kliknite na blok z desno tipko in na voljo bodo 3 nove možnosti: Kopiraj vse, Kopiraj blok in Izreži blok. Kopiraj vse kopira blok, ki ste ga kliknili, in vse, kar je pod njim. Kopiraj blok kopira trenutni blok, ne pa tudi blokov pod njim. In Izreži blok ga kopira in odstrani iz delovnega prostora.","editor-devtools/paste-from-clipboard":"Prilepi z odložišča","editor-devtools/paste-from-clipboard-desc":"Prilepi bloke z odložišča, ampak jih postavi tja, kjer je miškin kazalec, da jih lahko potem postavite, kamor želite (namesto da bi jih prilepil tja, od koder ste jih kopirali, kakor trenutna različica Scratcha).","editor-devtools/swap-variable":"Zamenjaj spremenljivko v figuri","editor-devtools/swap-variable-desc":"Kliknite spremenljivko v kodi z desno miškino tipko, da uporabite to novo možnost. Omogoča, da spremenite vso kodo v trenutni figuri, ki se nanaša na to spremenljivko, v drugo spremenljivko. To je odlično, če ste se zmotili in bi radi uporabili drugo spremenljivko ali pa morate spremeniti spremenljivko za vse figure v spremenljivko za to figuro. Ta možnost ne bo odstranila stare spremenljivke in ne vpliva na spremenljivke v ostalih figurah.","editor-devtools/middleclick":"Srednja miškina tipka","editor-devtools/middleclick-desc":"Če uporabite srednji miškin gumb na spremenljivki ali \"mojem bloku\", lahko skočite na njegovo definicijo ali spremenljivko odprete v interaktivnem iskalnem polju.","editor-devtools/ctrl-lr":"Ctrl + desno, Ctrl + levo","editor-devtools/ctrl-lr-desc":"Premaknite se na prejšnji / naslednji obiskan položaj v oknu s skriptami (potem ko uporabite srednji miškin gumb ali iskalno vrstico). To vam omogoča, da kliknete blok s srednjo miškino tipko da se premaknete na njegovo definicijo, potem pa pritisnete Ctrl + levo da se vrnete na prejšnji položaj.","editor-devtools/costume-tab-features":"Funkcije na zavihku Videzi","editor-devtools/find-bar":"Iskalna vrstica","editor-devtools/ctrl-lr-costume-desc":"Ti tipki izbereta prejšnji / naslednji videz figure.","editor-devtools/send-top-bottom":"Na vrh, Na dno","editor-devtools/send-top-bottom-desc":"Ko kliknete videz z desno miškino tipko, sta v meniju 2 novi možnosti. Uporabite jih, da premaknete izbran videz na vrh ali na dno seznama videzov za hitro preurejanje.","editor-devtools/youtube":"Vodiči na YouTube","editor-devtools/var-not-exist":"Ta spremenljivka ne obstaja...","editor-devtools/find":"Iskanje","editor-devtools/find-placeholder":"Iskanje (Ctrl+F)","editor-devtools/deep":"Globoko iskanje","editor-devtools/help":"Pomoč","editor-devtools/tutorials":"Vodiči","editor-devtools/clean-plus":"Počisti bloke +","editor-devtools/paste":"Prilepi","editor-devtools/copy-all":"Kopiraj vse","editor-devtools/copy-block":"Kopiraj blok","editor-devtools/cut-block":"Izreži blok","editor-devtools/make-space":"Naredi prostor","editor-devtools/swap":"Zamenjaj {var} v figuri","editor-devtools/lists":"seznami","editor-devtools/variables":"spremenljivke","editor-devtools/insert":"Vstavi","editor-devtools/start-typing":"Začnite tipkati...","editor-devtools/extension-description-not-for-addon":"Scratch 3 Developer Tools izboljša urejanje projektov na https://scratch.mit.edu","editor-devtools/@description":"Doda iskalno polje in nove možnosti v menijih v urejevalnik: kopiranje blokov, boljše čiščenje, skok k definiciji bloka, in drugo.","editor-devtools/@info-shortcuts":"Pritisnite \"Ctrl+F\" da označite iskalno polje, \"Ctrl+presledek\" za iskanje blokov po imenu in \"Ctrl+levo/desno\" za premikanje po zgodovini iskanja.","editor-devtools/@settings-name-enableCleanUpPlus":"Izboljšaj možnost \"Počisti bloke\"","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Prilepi bloke poleg kazalca miške","editor-devtools/@settings-name-enableMiddleClickFinder":"Omogoči klik spremenljivk, mojih blokov ali dogodkov s srednjo miškino tipko za navigacijo"}
\ No newline at end of file
+{"editor-devtools/help-by":"{url} ter sodelavci in prevajalci Scratch Addons","editor-devtools/ctrl-space":"Ctrl + presledek ali srednji miškin gumb","editor-devtools/ctrl-space-desc":"Pokaže polje, v katerega lahko vnesete ime (ali del imena) bloka in ta blok povlečete v kodo, da ga takoj uporabite.","editor-devtools/code-tab-features":"Funkcije na zavihku Koda","editor-devtools/interactive-find-bar":"Interaktivna iskalna vrstica (Ctrl + F)","editor-devtools/interactive-find-bar-desc":"Hitro najdite katerikoli \"moj blok\", spremenljivko ali dogodek v figuri, tako da kliknete novo iskalno vrstico desno od zavihkov Koda, Videzi in Zvoki. Začnite tipkati za iskanje po seznamu. Uporabite tipki gor in dol da izberete možne zadetke ter tipki levo in desno da izberete posamezno pojavitev tistega bloka.","editor-devtools/improved-tidy-up":"Izboljšano čiščenje kode","editor-devtools/improved-tidy-up-desc":"Kliknite na okno s kodo z desno miškino tipko, da odprete meni, kjer je možnost Počisti bloke zamenjana s Počisti bloke +. Uporabite jo, da uredite svoje skripte, in ohranila bo razporeditev po stolpcih ter poskusila poravnati komentarje in odstraniti tiste neuporabljene spremenljivke, itd.","editor-devtools/help-new":"★Novo★","editor-devtools/help-make-space":"Naredi prostor","editor-devtools/help-make-space-desc":"Naredite dodaten prostor okrog skripte, tako da jo kliknite z desno miškino tipko in izberete \"Naredi prostor\".","editor-devtools/copy-to-clipboard":"Kopiraj v odložišče","editor-devtools/copy-to-clipboard-desc":"Kliknite na blok z desno tipko in na voljo bodo 3 nove možnosti: Kopiraj vse, Kopiraj blok in Izreži blok. Kopiraj vse kopira blok, ki ste ga kliknili, in vse, kar je pod njim. Kopiraj blok kopira trenutni blok, ne pa tudi blokov pod njim. In Izreži blok ga kopira in odstrani iz delovnega prostora.","editor-devtools/paste-from-clipboard":"Prilepi z odložišča","editor-devtools/paste-from-clipboard-desc":"Prilepi bloke z odložišča, ampak jih postavi tja, kjer je miškin kazalec, da jih lahko potem postavite, kamor želite (namesto da bi jih prilepil tja, od koder ste jih kopirali, kakor trenutna različica Scratcha).","editor-devtools/swap-variable":"Zamenjaj spremenljivko v figuri","editor-devtools/swap-variable-desc":"Kliknite spremenljivko v kodi z desno miškino tipko, da uporabite to novo možnost. Omogoča, da spremenite vso kodo v trenutni figuri, ki se nanaša na to spremenljivko, v drugo spremenljivko. To je odlično, če ste se zmotili in bi radi uporabili drugo spremenljivko ali pa morate spremeniti spremenljivko za vse figure v spremenljivko za to figuro. Ta možnost ne bo odstranila stare spremenljivke in ne vpliva na spremenljivke v ostalih figurah.","editor-devtools/middleclick":"Srednja miškina tipka","editor-devtools/middleclick-desc":"Če uporabite srednji miškin gumb na spremenljivki ali \"mojem bloku\", lahko skočite na njegovo definicijo ali spremenljivko odprete v interaktivnem iskalnem polju.","editor-devtools/ctrl-lr":"Ctrl + desno, Ctrl + levo","editor-devtools/ctrl-lr-desc":"Premaknite se na prejšnji / naslednji obiskan položaj v oknu s skriptami (potem ko uporabite srednji miškin gumb ali iskalno vrstico). To vam omogoča, da kliknete blok s srednjo miškino tipko da se premaknete na njegovo definicijo, potem pa pritisnete Ctrl + levo da se vrnete na prejšnji položaj.","editor-devtools/costume-tab-features":"Funkcije na zavihku Videzi","editor-devtools/find-bar":"Iskalna vrstica","editor-devtools/find-bar-costume-desc":"Kliknite za seznam vseh videzov, razvrščenih po imenu, in vnesite ime za iskanje. Uporabite puščice ali kliknite ime z miško, da se premaknete na izbran videz.","editor-devtools/ctrl-lr-costume-desc":"Ti tipki izbereta prejšnji / naslednji videz figure.","editor-devtools/send-top-bottom":"Na vrh, Na dno","editor-devtools/send-top-bottom-desc":"Ko kliknete videz z desno miškino tipko, sta v meniju 2 novi možnosti. Uporabite jih, da premaknete izbran videz na vrh ali na dno seznama videzov za hitro preurejanje.","editor-devtools/youtube":"Vodiči na YouTube","editor-devtools/orphaned":"{count, plural, one {Developer tools: Naj izbrišem 1 neuporabljen okrogel blok?} two {Developer tools: Naj izbrišem 2 neuporabljena okrogla bloka?} few {Developer tools: Naj izbrišem # neuporabljene okrogle bloke?} other {Developer tools: Naj izbrišem # neuporabljenih okroglih blokov?} }","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 {Developer tools: Naj izbrišem # neuporabljenih lokalnih spremenljivk? Tukaj so:\n} }","editor-devtools/var-not-exist":"Ta spremenljivka ne obstaja...","editor-devtools/find":"Iskanje","editor-devtools/find-placeholder":"Iskanje (Ctrl+F)","editor-devtools/deep":"Globoko iskanje","editor-devtools/help":"Pomoč","editor-devtools/tutorials":"Vodiči","editor-devtools/replace":"Developer tools: Zamenjaj vse {name} v tej figuri s spremenljivko z imenom:","editor-devtools/top":"na vrh","editor-devtools/bottom":"na dno","editor-devtools/clean-plus":"Počisti bloke +","editor-devtools/paste":"Prilepi","editor-devtools/copy-all":"Kopiraj vse","editor-devtools/copy-block":"Kopiraj blok","editor-devtools/cut-block":"Izreži blok","editor-devtools/make-space":"Naredi prostor","editor-devtools/swap":"Zamenjaj {var} v figuri","editor-devtools/lists":"seznami","editor-devtools/variables":"spremenljivke","editor-devtools/insert":"Vstavi","editor-devtools/start-typing":"Začnite tipkati...","editor-devtools/extension-description-not-for-addon":"Scratch 3 Developer Tools, ki izboljša urejanje projektov na https://scratch.mit.edu","editor-devtools/@description":"Doda iskalno polje in nove možnosti v menijih v urejevalnik: kopiranje blokov, boljše čiščenje, skok k definiciji bloka, in drugo.","editor-devtools/@info-shortcuts":"Pritisnite \"Ctrl+F\" da označite iskalno polje, \"Ctrl+presledek\" za iskanje blokov po imenu in \"Ctrl+levo/desno\" za premikanje po zgodovini iskanja.","editor-devtools/@settings-name-enableCleanUpPlus":"Izboljšaj možnost \"Počisti bloke\"","editor-devtools/@settings-name-enablePasteBlocksAtMouse":"Prilepi bloke poleg kazalca miške","editor-devtools/@settings-name-enableMiddleClickFinder":"Omogoči klik spremenljivk, mojih blokov ali dogodkov s srednjo miškino tipko za navigacijo"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/sl/editor-theme3.json b/src/addons/addons-l10n/sl/editor-theme3.json
index 82d01ff56..a26f692e5 100644
--- a/src/addons/addons-l10n/sl/editor-theme3.json
+++ b/src/addons/addons-l10n/sl/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Prilagojene barve blokov","editor-theme3/@description":"Uredite barve blokov za vse kategorije v urejevalniku.","editor-theme3/@info-refresheditor":"Ko vključite ali izključite to temo, osvežite urejevalnik.","editor-theme3/@preset-name-tweaks":"Izboljšane barva Scratcha 3.0","editor-theme3/@preset-description-tweaks":"Bloki za dogodke, krmiljenje in \"moji bloki\" z barvami, podobnimi kot v Scratchu 2.0","editor-theme3/@preset-name-original":"Barve Scratcha 2.0","editor-theme3/@preset-description-original":"Originalne barve blokov iz Scratcha 2.0","editor-theme3/@settings-name-motion-color":"gibanje","editor-theme3/@settings-name-looks-color":"videzi","editor-theme3/@settings-name-sounds-color":"zvok","editor-theme3/@settings-name-events-color":"dogodki","editor-theme3/@settings-name-control-color":"krmiljenje","editor-theme3/@settings-name-sensing-color":"zaznavanje","editor-theme3/@settings-name-operators-color":"operatorji","editor-theme3/@settings-name-data-color":"spremenljivke","editor-theme3/@settings-name-data-lists-color":"seznami","editor-theme3/@settings-name-custom-color":"moji bloki","editor-theme3/@settings-name-Pen-color":"razširitve"}
\ No newline at end of file
+{"editor-theme3/@name":"Prilagojene barve blokov","editor-theme3/@description":"Uredite barve blokov za vse kategorije v urejevalniku.","editor-theme3/@info-refresheditor":"Ko vključite ali izključite to temo, osvežite urejevalnik.","editor-theme3/@preset-name-tweaks":"Izboljšane barva Scratcha 3.0","editor-theme3/@preset-description-tweaks":"Bloki za dogodke, krmiljenje in \"moji bloki\" z barvami, podobnimi kot v Scratchu 2.0","editor-theme3/@preset-name-original":"Barve Scratcha 2.0","editor-theme3/@preset-description-original":"Originalne barve blokov iz Scratcha 2.0","editor-theme3/@preset-name-dark":"Temno","editor-theme3/@preset-description-dark":"Temne različice običajnih barv","editor-theme3/@preset-name-black":"Črno","editor-theme3/@preset-description-black":"Naredi ozadje blokov črno","editor-theme3/@settings-name-motion-color":"gibanje","editor-theme3/@settings-name-looks-color":"videzi","editor-theme3/@settings-name-sounds-color":"zvok","editor-theme3/@settings-name-events-color":"dogodki","editor-theme3/@settings-name-control-color":"krmiljenje","editor-theme3/@settings-name-sensing-color":"zaznavanje","editor-theme3/@settings-name-operators-color":"operatorji","editor-theme3/@settings-name-data-color":"spremenljivke","editor-theme3/@settings-name-data-lists-color":"seznami","editor-theme3/@settings-name-custom-color":"moji bloki","editor-theme3/@settings-name-Pen-color":"razširitve","editor-theme3/@settings-name-input-color":"Vnosna polja blokov","editor-theme3/@settings-name-text":"Barva besedila","editor-theme3/@settings-select-text-white":"Bela","editor-theme3/@settings-select-text-black":"Črna","editor-theme3/@settings-select-text-colorOnWhite":"Barvna na belem ozadju","editor-theme3/@settings-select-text-colorOnBlack":"Barvna na črnem ozadju"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/sl/gamepad.json b/src/addons/addons-l10n/sl/gamepad.json
new file mode 100644
index 000000000..bf0c45297
--- /dev/null
+++ b/src/addons/addons-l10n/sl/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Nastavitve igralnih ploščkov","gamepad/key-space":"Presledek","gamepad/key-up":"Gor","gamepad/key-down":"Dol","gamepad/key-left":"Levo","gamepad/key-right":"Desno","gamepad/key-none":"(brez)","gamepad/key-click":"Klik miške","gamepad/axis-none":"Brez","gamepad/axis-arrows":"Tipke s puščicami","gamepad/axis-cursor":"Kazalec miške","gamepad/no-controllers":"Noben igralni plošček ni bil zaznan. Poskusite ga priključiti in pritisniti gumb na njem.","gamepad/button-n":"Gumb {n}","gamepad/axes-a-b":"Osi {a} in {b}","gamepad/@name":"Podpora igralnih ploščkov","gamepad/@description":"Uporabljajte USB ali Bluetooth igralni plošček v projektih."}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/tr/blocks2image.json b/src/addons/addons-l10n/tr/blocks2image.json
index 8a4687d2d..42d72820c 100644
--- a/src/addons/addons-l10n/tr/blocks2image.json
+++ b/src/addons/addons-l10n/tr/blocks2image.json
@@ -1 +1 @@
-{"blocks2image/export_all_to_SVG":"Hepsini SVG olarak dışa aktar","blocks2image/export_all_to_PNG":"Hepsini PNG olarak dışa aktar","blocks2image/error_blocks_not_added":"Çalışma alanına bloklar ekleyin!","blocks2image/@name":"Blokları resim olarak kaydedin"}
\ No newline at end of file
+{"blocks2image/export_selected_to_SVG":"Seçilenleri SVG'ye dışa aktar","blocks2image/export_all_to_SVG":"Hepsini SVG olarak dışa aktar","blocks2image/export_selected_to_PNG":"Seçilenleri PNG'ye dışa aktar","blocks2image/export_all_to_PNG":"Hepsini PNG olarak dışa aktar","blocks2image/error_blocks_unselected":"Dışa aktarmak istediğiniz bloklara tıklayın!","blocks2image/error_blocks_not_added":"Çalışma alanına bloklar ekleyin!","blocks2image/@name":"Blokları resim olarak kaydedin"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/tr/editor-theme3.json b/src/addons/addons-l10n/tr/editor-theme3.json
index 738ade412..1e14a8277 100644
--- a/src/addons/addons-l10n/tr/editor-theme3.json
+++ b/src/addons/addons-l10n/tr/editor-theme3.json
@@ -1 +1 @@
-{"editor-theme3/@name":"Özelleştirilebilen blok renkleri","editor-theme3/@description":"Düzenleyicideki her kategori için blok renklerini düzenleyin.","editor-theme3/@info-refresheditor":"Bu temayı etkinleştirdikten / devre dışı bıraktıktan sonra düzenleyiciyi yenileyin","editor-theme3/@preset-name-tweaks":"3.0 Araçları","editor-theme3/@preset-description-tweaks":"2.0'dan ilham alan renklerle Olaylar, Kontrol ve Özel bloklar","editor-theme3/@preset-name-original":"2.0 renkler","editor-theme3/@preset-description-original":"Scratch 2.0'den orijinal blok renkleri","editor-theme3/@settings-name-motion-color":"hareket","editor-theme3/@settings-name-looks-color":"görünüm","editor-theme3/@settings-name-sounds-color":"sesler","editor-theme3/@settings-name-events-color":"olaylar","editor-theme3/@settings-name-control-color":"kontrol","editor-theme3/@settings-name-sensing-color":"algılama","editor-theme3/@settings-name-operators-color":"operatörler","editor-theme3/@settings-name-data-color":"değişkenler","editor-theme3/@settings-name-data-lists-color":"listeler","editor-theme3/@settings-name-custom-color":"özel","editor-theme3/@settings-name-Pen-color":"eklentiler"}
\ No newline at end of file
+{"editor-theme3/@name":"Özelleştirilebilen blok renkleri","editor-theme3/@description":"Düzenleyicideki her kategori için blok renklerini düzenleyin.","editor-theme3/@info-refresheditor":"Bu temayı etkinleştirdikten / devre dışı bıraktıktan sonra düzenleyiciyi yenileyin","editor-theme3/@preset-name-tweaks":"3.0 Araçları","editor-theme3/@preset-description-tweaks":"2.0'dan ilham alan renklerle Olaylar, Kontrol ve Özel bloklar","editor-theme3/@preset-name-original":"2.0 renkler","editor-theme3/@preset-description-original":"Scratch 2.0'den orijinal blok renkleri","editor-theme3/@preset-name-dark":"Karanlık","editor-theme3/@preset-description-dark":"Varsayılan renklerin koyu versiyonları","editor-theme3/@preset-name-black":"Siyah","editor-theme3/@preset-description-black":"Blok arka planlarını siyah yapar","editor-theme3/@settings-name-motion-color":"hareket","editor-theme3/@settings-name-looks-color":"görünüm","editor-theme3/@settings-name-sounds-color":"sesler","editor-theme3/@settings-name-events-color":"olaylar","editor-theme3/@settings-name-control-color":"kontrol","editor-theme3/@settings-name-sensing-color":"algılama","editor-theme3/@settings-name-operators-color":"operatörler","editor-theme3/@settings-name-data-color":"değişkenler","editor-theme3/@settings-name-data-lists-color":"listeler","editor-theme3/@settings-name-custom-color":"özel","editor-theme3/@settings-name-Pen-color":"eklentiler","editor-theme3/@settings-name-input-color":"Blok Girişleri","editor-theme3/@settings-name-text":"Yazı rengi","editor-theme3/@settings-select-text-white":"Beyaz","editor-theme3/@settings-select-text-black":"Siyah","editor-theme3/@settings-select-text-colorOnWhite":"Beyaz arka plan üzerinde renkli","editor-theme3/@settings-select-text-colorOnBlack":"Siyah arka plan üzerinde renkli"}
\ No newline at end of file
diff --git a/src/addons/addons-l10n/tr/gamepad.json b/src/addons/addons-l10n/tr/gamepad.json
new file mode 100644
index 000000000..04d8c79fa
--- /dev/null
+++ b/src/addons/addons-l10n/tr/gamepad.json
@@ -0,0 +1 @@
+{"gamepad/settings":"Oyun Kumandası Ayarları","gamepad/key-space":"Boşluk","gamepad/key-up":"Yukarı","gamepad/key-down":"Aşağı","gamepad/key-left":"Sol","gamepad/key-right":"Sağ","gamepad/key-none":"(hiçbiri)","gamepad/key-click":"Tıklat","gamepad/axis-none":"Hiçbiri","gamepad/axis-arrows":"Ok Tuşları","gamepad/axis-cursor":"Fare","gamepad/no-controllers":"Kumanda bulunamadı. Bir tana takıp üzerinde bir tuşa basmayı deneyin.","gamepad/button-n":"Buton {n}","gamepad/@name":"Oyun kumandası desteği"}
\ No newline at end of file
diff --git a/src/addons/addons/2d-color-picker/addon.json b/src/addons/addons/2d-color-picker/addon.json
index 62718ada5..b16b45652 100644
--- a/src/addons/addons/2d-color-picker/addon.json
+++ b/src/addons/addons/2d-color-picker/addon.json
@@ -1,7 +1,7 @@
{
"name": "2D color picker",
"description": "Replaces saturation and brightness sliders with a 2D color picker. Hold Shift while dragging the cursor to change the values on a single axis.",
- "tags": ["editor", "beta"],
+ "tags": ["editor", "costumeEditor"],
"credits": [
{
"name": "Ucrash"
diff --git a/src/addons/addons/2d-color-picker/paint-editor.js b/src/addons/addons/2d-color-picker/paint-editor.js
index 5313823af..85a42a8b1 100644
--- a/src/addons/addons/2d-color-picker/paint-editor.js
+++ b/src/addons/addons/2d-color-picker/paint-editor.js
@@ -8,9 +8,9 @@ const _twGetAsset = (path) => {
// this script was happily stolen from the color-picker addon, developed by Richie Bendall and apple502j
// import required libraries
-import { normalizeHex } from "../../libraries/normalize-color.js";
-import RateLimiter from "../../libraries/rate-limiter.js";
-import tinycolor from "../../libraries/tinycolor-min.js";
+import { normalizeHex } from "../../libraries/common/cs/normalize-color.js";
+import RateLimiter from "../../libraries/common/cs/rate-limiter.js";
+import tinycolor from "../../libraries/thirdparty/cs/tinycolor-min.js";
export default async ({ addon, console, msg }) => {
let prevEventHandler;
diff --git a/src/addons/addons/bitmap-copy/addon.json b/src/addons/addons/bitmap-copy/addon.json
index e25a41698..5311442de 100644
--- a/src/addons/addons/bitmap-copy/addon.json
+++ b/src/addons/addons/bitmap-copy/addon.json
@@ -14,7 +14,7 @@
"matches": ["https://scratch.mit.edu/projects/*"]
}
],
- "tags": ["editor", "recommended"],
+ "tags": ["editor", "costumeEditor"],
"permissions": ["clipboardWrite"],
"enabledByDefault": true,
"l10n": true
diff --git a/src/addons/addons/block-palette-icons/addon.json b/src/addons/addons/block-palette-icons/addon.json
index 8d0e48406..76223166b 100644
--- a/src/addons/addons/block-palette-icons/addon.json
+++ b/src/addons/addons/block-palette-icons/addon.json
@@ -1,7 +1,7 @@
{
"name": "Block palette category icons",
"description": "Adds icons inside the colored circles that identify block categories.",
- "tags": ["editor", "theme"],
+ "tags": ["editor", "codeEditor", "theme"],
"enabledByDefault": false,
"dynamicEnable": true,
"dynamicDisable": true,
diff --git a/src/addons/addons/block-palette-icons/icons/block_icon.svg b/src/addons/addons/block-palette-icons/icons/block_icon.svg
index 34febcc99..9be550cfa 100644
--- a/src/addons/addons/block-palette-icons/icons/block_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/block_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/control_icon.svg b/src/addons/addons/block-palette-icons/icons/control_icon.svg
index 454fa3c9f..4fb2fa187 100644
--- a/src/addons/addons/block-palette-icons/icons/control_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/control_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/events_icon.svg b/src/addons/addons/block-palette-icons/icons/events_icon.svg
index 859b2e03a..b148a7cfe 100644
--- a/src/addons/addons/block-palette-icons/icons/events_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/events_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/list_icon.svg b/src/addons/addons/block-palette-icons/icons/list_icon.svg
index 954ecbc16..5285be47e 100644
--- a/src/addons/addons/block-palette-icons/icons/list_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/list_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/looks_icon.svg b/src/addons/addons/block-palette-icons/icons/looks_icon.svg
index 95d2dc0a2..91a3241fc 100644
--- a/src/addons/addons/block-palette-icons/icons/looks_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/looks_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/motion_icon.svg b/src/addons/addons/block-palette-icons/icons/motion_icon.svg
index d35a0981b..97fb2c636 100644
--- a/src/addons/addons/block-palette-icons/icons/motion_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/motion_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/operators_icon.svg b/src/addons/addons/block-palette-icons/icons/operators_icon.svg
index 427e73026..d8316cdc4 100644
--- a/src/addons/addons/block-palette-icons/icons/operators_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/operators_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/sensing_icon.svg b/src/addons/addons/block-palette-icons/icons/sensing_icon.svg
index fe780365a..de698463d 100644
--- a/src/addons/addons/block-palette-icons/icons/sensing_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/sensing_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/sound_icon.svg b/src/addons/addons/block-palette-icons/icons/sound_icon.svg
index 7bb6fba6a..68ff3ae2a 100644
--- a/src/addons/addons/block-palette-icons/icons/sound_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/sound_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-palette-icons/icons/variables_icon.svg b/src/addons/addons/block-palette-icons/icons/variables_icon.svg
index cc1d4458a..025a3de0a 100644
--- a/src/addons/addons/block-palette-icons/icons/variables_icon.svg
+++ b/src/addons/addons/block-palette-icons/icons/variables_icon.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/addons/addons/block-switching/addon.json b/src/addons/addons/block-switching/addon.json
index f3971dd42..78825b8cf 100644
--- a/src/addons/addons/block-switching/addon.json
+++ b/src/addons/addons/block-switching/addon.json
@@ -14,7 +14,7 @@
"matches": ["https://scratch.mit.edu/projects/*"]
}
],
- "tags": ["editor", "recommended"],
+ "tags": ["editor", "codeEditor", "recommended"],
"settings": [
{
"name": "Show option to change block to self",
diff --git a/src/addons/addons/blocks2image/addon.json b/src/addons/addons/blocks2image/addon.json
index 77c875514..cd7e4d1d3 100644
--- a/src/addons/addons/blocks2image/addon.json
+++ b/src/addons/addons/blocks2image/addon.json
@@ -1,7 +1,7 @@
{
"name": "Save blocks as image",
"description": "Right click the editor workspace to export blocks as SVG/PNG images.",
- "tags": ["editor", "beta"],
+ "tags": ["editor", "codeEditor"],
"credits": [
{
"name": "summerscar"
diff --git a/src/addons/addons/blocks2image/userscript.js b/src/addons/addons/blocks2image/userscript.js
index 5f708718a..e7e7e8c20 100644
--- a/src/addons/addons/blocks2image/userscript.js
+++ b/src/addons/addons/blocks2image/userscript.js
@@ -68,14 +68,15 @@ export default async function ({ addon, global, console, msg }) {
}
}
- while (true) {
- let blocklyWorkspace = await addon.tab.waitForElement("g.blocklyWorkspace", {
- markAsSeen: true,
- });
-
- // insert contextmenu
- blocklyWorkspace.addEventListener("mousedown", (e) => eventMouseDown(e));
- }
+ document.addEventListener(
+ "mousedown",
+ (e) => {
+ if (e.target.closest("g.blocklyWorkspace")) {
+ eventMouseDown(e);
+ }
+ },
+ true
+ );
function exportBlock(request, sender, sendMessage) {
// console.log(request)
diff --git a/src/addons/addons/cat-blocks/addon.json b/src/addons/addons/cat-blocks/addon.json
index 83a241527..46e9a445d 100644
--- a/src/addons/addons/cat-blocks/addon.json
+++ b/src/addons/addons/cat-blocks/addon.json
@@ -5,6 +5,9 @@
{
"name": "TheColaber",
"link": "https://scratch.mit.edu/users/TheColaber"
+ },
+ {
+ "name": "GarboMuffin"
}
],
"userscripts": [
@@ -28,7 +31,8 @@
"type": "boolean"
}
],
- "tags": ["easterEgg"],
+ "tags": ["editor", "codeEditor"],
+ "versionAdded": "1.14.0",
"enabledByDefault": false,
"libraries": ["scratch-blocks"],
"l10n": true
diff --git a/src/addons/addons/clones/addon.json b/src/addons/addons/clones/addon.json
index 80637e76d..dbc45247a 100644
--- a/src/addons/addons/clones/addon.json
+++ b/src/addons/addons/clones/addon.json
@@ -20,7 +20,7 @@
"matches": ["https://scratch.mit.edu/projects/*"]
}
],
- "tags": ["editor"],
+ "tags": ["editor", "projectPlayer"],
"enabledByDefault": false,
"l10n": true
}
diff --git a/src/addons/addons/clones/userscript.js b/src/addons/addons/clones/userscript.js
index 11b1134e5..d0f89821a 100644
--- a/src/addons/addons/clones/userscript.js
+++ b/src/addons/addons/clones/userscript.js
@@ -59,6 +59,7 @@ async function hideInSmallStageMode({ addon }) {
await addon.tab.waitForElement("[class*='stage-header_stage-size-toggle-group']", {
markAsSeen: true,
reduxEvents: ["scratch-gui/mode/SET_PLAYER"],
+ condition: () => !addon.tab.redux.state.scratchGui.mode.isPlayerOnly,
});
document.querySelector("[class*='stage-header_stage-button-first']").addEventListener("click", () => {
diff --git a/src/addons/addons/color-picker/addon.json b/src/addons/addons/color-picker/addon.json
index 1d7039ac5..4955d599b 100644
--- a/src/addons/addons/color-picker/addon.json
+++ b/src/addons/addons/color-picker/addon.json
@@ -1,7 +1,7 @@
{
"name": "Hex color picker",
"description": "Adds hex code inputs to color pickers.",
- "tags": ["editor", "recommended"],
+ "tags": ["editor", "costumeEditor", "recommended"],
"credits": [
{
"name": "Richie Bendall"
diff --git a/src/addons/addons/color-picker/code-editor.js b/src/addons/addons/color-picker/code-editor.js
index 3db7a146c..b2d20e22b 100644
--- a/src/addons/addons/color-picker/code-editor.js
+++ b/src/addons/addons/color-picker/code-editor.js
@@ -1,6 +1,6 @@
-import { normalizeHex, getHexRegex } from "../../libraries/normalize-color.js";
-import RateLimiter from "../../libraries/rate-limiter.js";
-import tinycolor from "../../libraries/tinycolor-min.js";
+import { normalizeHex, getHexRegex } from "../../libraries/common/cs/normalize-color.js";
+import RateLimiter from "../../libraries/common/cs/rate-limiter.js";
+import tinycolor from "../../libraries/thirdparty/cs/tinycolor-min.js";
export default async ({ addon, console, msg }) => {
// 250-ms rate limit
diff --git a/src/addons/addons/color-picker/paint-editor.js b/src/addons/addons/color-picker/paint-editor.js
index 202eb0241..9c0766e69 100644
--- a/src/addons/addons/color-picker/paint-editor.js
+++ b/src/addons/addons/color-picker/paint-editor.js
@@ -1,6 +1,6 @@
-import { normalizeHex, getHexRegex } from "../../libraries/normalize-color.js";
-import RateLimiter from "../../libraries/rate-limiter.js";
-import tinycolor from "../../libraries/tinycolor-min.js";
+import { normalizeHex, getHexRegex } from "../../libraries/common/cs/normalize-color.js";
+import RateLimiter from "../../libraries/common/cs/rate-limiter.js";
+import tinycolor from "../../libraries/thirdparty/cs/tinycolor-min.js";
export default async ({ addon, console, msg }) => {
let prevEventHandler;
diff --git a/src/addons/addons/custom-block-shape/addon.json b/src/addons/addons/custom-block-shape/addon.json
index 0468f3238..a07005a5b 100644
--- a/src/addons/addons/custom-block-shape/addon.json
+++ b/src/addons/addons/custom-block-shape/addon.json
@@ -1,7 +1,7 @@
{
"name": "Custom block shape",
"description": "Adjust the padding, corner radius, and notch height of Scratch blocks.",
- "tags": ["editor", "theme"],
+ "tags": ["editor", "codeEditor", "theme", "recommended"],
"credits": [
{
"name": "SheepTester",
diff --git a/src/addons/addons/custom-zoom/addon.json b/src/addons/addons/custom-zoom/addon.json
index e6ef5fae0..0f64d0172 100644
--- a/src/addons/addons/custom-zoom/addon.json
+++ b/src/addons/addons/custom-zoom/addon.json
@@ -1,7 +1,7 @@
{
"name": "Custom scripts area zoom settings",
"description": "Adjust the minimum, maximum, speed, and start size of the zoom in the project code editor, and autohide the controls.",
- "tags": ["editor"],
+ "tags": ["editor", "codeEditor"],
"credits": [
{
"name": "ErrorGamer2000",
diff --git a/src/addons/addons/data-category-tweaks-v2/addon.json b/src/addons/addons/data-category-tweaks-v2/addon.json
index 79a95ce13..bb065747b 100644
--- a/src/addons/addons/data-category-tweaks-v2/addon.json
+++ b/src/addons/addons/data-category-tweaks-v2/addon.json
@@ -36,7 +36,7 @@
"reloadRequired": false
}
],
- "tags": ["editor", "recommended"],
+ "tags": ["editor", "codeEditor", "recommended"],
"enabledByDefault": false,
"l10n": true
}
diff --git a/src/addons/addons/editor-colored-context-menus/addon.json b/src/addons/addons/editor-colored-context-menus/addon.json
index 2d4713b2e..4a958a734 100644
--- a/src/addons/addons/editor-colored-context-menus/addon.json
+++ b/src/addons/addons/editor-colored-context-menus/addon.json
@@ -21,7 +21,7 @@
"matches": ["https://scratch.mit.edu/projects/*"]
}
],
- "tags": ["editor", "theme"],
+ "tags": ["editor", "codeEditor", "theme"],
"enabledByDefault": false,
"l10n": true
}
diff --git a/src/addons/addons/editor-devtools/DevTools.js b/src/addons/addons/editor-devtools/DevTools.js
index b2e678174..4f8c97ea7 100644
--- a/src/addons/addons/editor-devtools/DevTools.js
+++ b/src/addons/addons/editor-devtools/DevTools.js
@@ -2227,7 +2227,7 @@ export default class DevTools {