Add expand/compress image button on image view box (#15068)

* add zoom image button

* enhance zoom algorithm & add translation

* code structure

* code structure

* code structure

* enhance grab performance

* rm useless state

* fix behavior on Firefox & scroll lock & horizontal scroll with mousewheel

* remove scroll lock on MouseWheelEvent

* code structure

* enhance algorithm and code structure

* rm Gemfile.lock from tree

* codeclimate

* fix a stupid mistake
This commit is contained in:
Mashiro 2020-11-03 04:16:38 +08:00 committed by GitHub
parent 4b2ec4a2dc
commit 6a2db10f76
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
79 changed files with 2029 additions and 23 deletions

View file

@ -9,8 +9,10 @@
"account.browse_more_on_origin_server": "Encontre mais no perfil original",
"account.cancel_follow_request": "Cancelar solicitação para seguir",
"account.direct": "Enviar toot direto para @{name}",
"account.disable_notifications": "Stop notifying me when @{name} posts",
"account.domain_blocked": "Domínio bloqueado",
"account.edit_profile": "Editar perfil",
"account.enable_notifications": "Notify me when @{name} posts",
"account.endorse": "Destacar no perfil",
"account.follow": "Seguir",
"account.followers": "Seguidores",
@ -166,7 +168,9 @@
"empty_column.notifications": "Nada aqui. Interaja com outros usuários para começar a conversar.",
"empty_column.public": "Não há nada aqui! Escreva algo publicamente, ou siga manualmente usuários de outros servidores para enchê-la",
"error.unexpected_crash.explanation": "Devido a um bug em nosso código ou um problema de compatibilidade de navegador, esta página não pôde ser exibida corretamente.",
"error.unexpected_crash.explanation_addons": "This page could not be displayed correctly. This error is likely caused by a browser add-on or automatic translation tools.",
"error.unexpected_crash.next_steps": "Tente atualizar a página. Se não resolver, você ainda pode conseguir usar o Mastodon por meio de um navegador ou app nativo diferente.",
"error.unexpected_crash.next_steps_addons": "Try disabling them and refreshing the page. If that does not help, you may still be able to use Mastodon through a different browser or native app.",
"errors.unexpected_crash.copy_stacktrace": "Copiar stacktrace para área de transferência",
"errors.unexpected_crash.report_issue": "Denunciar problema",
"follow_request.authorize": "Aprovar",
@ -250,6 +254,8 @@
"keyboard_shortcuts.unfocus": "para desfocar de área de texto de composição/pesquisa",
"keyboard_shortcuts.up": "para mover para cima na lista",
"lightbox.close": "Fechar",
"lightbox.compress": "Compress image view box",
"lightbox.expand": "Expand image view box",
"lightbox.next": "Próximo",
"lightbox.previous": "Anterior",
"lightbox.view_context": "Ver contexto",
@ -260,6 +266,10 @@
"lists.edit.submit": "Renomear",
"lists.new.create": "Criar lista",
"lists.new.title_placeholder": "Nome da lista",
"lists.replies_policy.all_replies": "Any followed user",
"lists.replies_policy.list_replies": "Members of the list",
"lists.replies_policy.no_replies": "No one",
"lists.replies_policy.title": "Show replies to:",
"lists.search": "Procurar entre as pessoas que você segue",
"lists.subheading": "Suas listas",
"load_pending": "{count, plural, one {# novo item} other {# novos items}}",
@ -267,7 +277,9 @@
"media_gallery.toggle_visible": "Esconder mídia",
"missing_indicator.label": "Não encontrado",
"missing_indicator.sublabel": "Esse recurso não pôde ser encontrado",
"mute_modal.duration": "Duration",
"mute_modal.hide_notifications": "Ocultar notificações deste usuário?",
"mute_modal.indefinite": "Indefinite",
"navigation_bar.apps": "Aplicativos",
"navigation_bar.blocks": "Usuários bloqueados",
"navigation_bar.bookmarks": "Salvos",
@ -298,6 +310,7 @@
"notification.own_poll": "Sua enquete terminou",
"notification.poll": "Uma enquete que você votou terminou",
"notification.reblog": "{name} boostou seu status",
"notification.status": "{name} just posted",
"notifications.clear": "Limpar notificações",
"notifications.clear_confirmation": "Você tem certeza de que deseja limpar todas as suas notificações?",
"notifications.column_settings.alert": "Notificações no computador",
@ -313,13 +326,22 @@
"notifications.column_settings.reblog": "Boosts:",
"notifications.column_settings.show": "Mostrar nas colunas",
"notifications.column_settings.sound": "Tocar som",
"notifications.column_settings.status": "New toots:",
"notifications.filter.all": "Tudo",
"notifications.filter.boosts": "Boosts",
"notifications.filter.favourites": "Favoritos",
"notifications.filter.follows": "Seguindo",
"notifications.filter.mentions": "Menções",
"notifications.filter.polls": "Resultados de enquete",
"notifications.filter.statuses": "Updates from people you follow",
"notifications.group": "{count} notificações",
"notifications.mark_as_read": "Mark every notification as read",
"notifications.permission_denied": "Desktop notifications are unavailable due to previously denied browser permissions request",
"notifications.permission_denied_alert": "Desktop notifications can't be enabled, as browser permission has been denied before",
"notifications_permission_banner.enable": "Enable desktop notifications",
"notifications_permission_banner.how_to_control": "To receive notifications when Mastodon isn't open, enable desktop notifications. You can control precisely which types of interactions generate desktop notifications through the {icon} button above once they're enabled.",
"notifications_permission_banner.title": "Never miss a thing",
"picture_in_picture.restore": "Put it back",
"poll.closed": "Fechou",
"poll.refresh": "Atualizar",
"poll.total_people": "{count, plural, one {# pessoa} other {# pessoas}}",
@ -446,6 +468,7 @@
"upload_modal.detect_text": "Detectar texto da imagem",
"upload_modal.edit_media": "Editar mídia",
"upload_modal.hint": "Clique ou arraste o círculo na prévia para escolher o ponto focal que vai estar sempre visível em todas as thumbnails.",
"upload_modal.preparing_ocr": "Preparing OCR…",
"upload_modal.preview_label": "Prévia ({ratio})",
"upload_progress.label": "Fazendo upload...",
"video.close": "Fechar vídeo",