From cd559e844bd32e08c18da2c5443a4ce29f5028f0 Mon Sep 17 00:00:00 2001 From: Muhend Belkacem Date: Fri, 25 Mar 2022 10:10:48 +0000 Subject: [PATCH 01/34] Pontoon: Update Kabyle (kab) localization of Firefox Profiler Co-authored-by: Muhend Belkacem --- locales/kab/app.ftl | 63 +++++++++++++++++++++++++++++++++------------ 1 file changed, 46 insertions(+), 17 deletions(-) diff --git a/locales/kab/app.ftl b/locales/kab/app.ftl index 0ca24b84d4..74edf4b491 100644 --- a/locales/kab/app.ftl +++ b/locales/kab/app.ftl @@ -29,16 +29,11 @@ AppHeader--github-icon = ## AppViewRouter ## This is used for displaying errors when loading the application. -AppViewRouter--error-message-unpublished = - .message = Ur yezmir ara ad d-yerr amaɣnu seg { -firefox-brand-name }. -AppViewRouter--error-message-from-file = - .message = Taɣuri n faylu neɣ tasleḍt n ufylu yellan deg-s d awezɣi. -AppViewRouter--error-message-local = - .message = Ur yettwasebded ara yakan. -AppViewRouter--error-message-public = - .message = Ur yezmir ara ad d-yader umaɣnu. -AppViewRouter--error-message-from-url = - .message = Ur yezmir ara ad d-yader umaɣnu. +AppViewRouter--error-unpublished = Ur yezmir ara ad d-yaf amaɣnu seg { -firefox-brand-name }. +AppViewRouter--error-from-file = Ur izmir ara ad d-iɣer afaylu neɣ ad yesleḍ amaɣnu yellan deg-s. +AppViewRouter--error-local = Ur yebdid ara yakan. +AppViewRouter--error-public = Ur yezmir ara ad d-yader amaɣnu. +AppViewRouter--error-from-url = Ur yezmir ara ad d-yessader amaɣnu. AppViewRouter--route-not-found--home = .specialMessage = URL wuɣur tettaɛraḍeḍ ad tawḍeḍ ur tettwassen ara. @@ -55,6 +50,8 @@ CallNodeContextMenu--transform-focus-function = Siḍes ef twuri .title = { CallNodeContextMenu--transform-focus-function-title } CallNodeContextMenu--transform-focus-function-inverted = Siḍeṣ ɣef twuri (imitti) .title = { CallNodeContextMenu--transform-focus-function-title } +CallNodeContextMenu--transform-collapse-function-subtree = Ṭebbeq tawuri + .title = Aṭebbeq n twuri ad yekkes meṛṛa ayen iwumi tessawaldaɣen ad tefk akk akud n uselkem i twuri. Aya ad yefk tallelt i usifses n umaɣnu ara yessiwlen i tengalt ur yattwaslaḍen ara. CallNodeContextMenu--expand-all = Snefli akk # Searchfox is a source code indexing tool for Mozilla Firefox. # See: https://searchfox.org/ @@ -67,6 +64,13 @@ CallNodeContextMenu--copy-stack = Nqel tanebdant ## This is the component for Call Tree panel. +## Call tree "badges" (icons) with tooltips +## +## These inlining badges are displayed in the call tree in front of some +## functions for native code (C / C++ / Rust). They're a small "inl" icon with +## a tooltip. + + ## CallTreeSidebar ## This is the sidebar component that is used in Call Tree and Flame Graph panels. @@ -170,7 +174,6 @@ MarkerContextMenu--end-selection-here = Taggara n ufran da MarkerContextMenu--copy-description = Nɣel aglam MarkerContextMenu--copy-call-stack = Nɣel tanebdant n usiwel MarkerContextMenu--copy-url = Nɣel URL -MarkerContextMenu--copy-full-payload = Nɣel tuttra tummidt ## MarkerSettings ## This is used in all panels related to markers. @@ -217,7 +220,6 @@ MenuButtons--metaInfo--symbols = Izamulen: MenuButtons--metaInfo--cpu = CPU: MenuButtons--metaInfo--recording-started = Asekles yebda: MenuButtons--metaInfo--interval = Azilal: -MenuButtons--metaInfo--profile-version = Lqem n umaɣnu: MenuButtons--metaInfo--buffer-capacity = Tazmert n uḥraz: MenuButtons--metaInfo--buffer-duration = Tanzgat n uḥraz: # Buffer Duration in Seconds in Meta Info Panel @@ -313,10 +315,6 @@ ProfileFilterNavigator--full-range = Azilal ummid ## Profile Loader Animation -ProfileLoaderAnimation--loading-message-local = - .message = Ur yettwasebded ara yakan. -ProfileLoaderAnimation--loading-message-view-not-found = - .message = Ur tettwaf ara teskant ## ProfileRootMessage @@ -353,7 +351,6 @@ TabBar--network-tab = Aẓeṭṭa ## This is used as a context menu for timeline to organize the tracks in the ## analysis UI. -TrackContextMenu--only-show-this-process-group = Sken kan agraw-a n ukala # This is used as the context menu item to show only the given track. # Variables: # $trackName (String) - Name of the selected track to isolate. @@ -363,6 +360,16 @@ TrackContextMenu--only-show-track = Sken kan “{ $trackName }” # $trackName (String) - Name of the selected track to hide. TrackContextMenu--hide-track = Ffer “{ $trackName }” +## TrackMemoryGraph +## This is used to show the memory graph of that process in the timeline part of +## the UI. To learn more about it, visit: +## https://profiler.firefox.com/docs/#/./memory-allocations?id=memory-track + + +## TrackSearchField +## The component that is used for the search input in the track context menu. + + ## TransformNavigator ## Navigator for the applied transforms in the Call Tree, Flame Graph, and Stack ## Chart components. @@ -409,6 +416,28 @@ TransformNavigator--drop-function = Sers: { $item } # $item (String) - Name of the function that transform applied to. TransformNavigator--collapse-direct-recursion = Fneẓ asniles: { $item } +## Source code view in a box at the bottom of the UI. + +# Displayed below SourceView--cannot-obtain-source, if the browser could not +# be queried for source code using the symbolication API. +# Variables: +# $browserConnectionErrorMessage (String) - The raw internal error message, not localized +SourceView--browser-connection-error-when-obtaining-source = Ur yezmir ara ad yessuter i API n uzamul n yiminig: { $browserConnectionErrorMessage } +# Displayed below SourceView--cannot-obtain-source, if the browser was queried +# for source code using the symbolication API, and this query returned an error. +# Variables: +# $apiErrorMessage (String) - The raw internal error message from the API, not localized +SourceView--browser-api-error-when-obtaining-source = API n uzamul n yiminig yerra-d tuccḍa: { $apiErrorMessage } +# Displayed below SourceView--cannot-obtain-source, if the file format of an +# "archive" file was not recognized. The only supported archive formats at the +# moment are .tar and .tar.gz, because that's what crates.io uses for .crates files. +# Variables: +# $url (String) - The URL from which the "archive" file was downloaded. +# $parsingErrorMessage (String) - The raw internal error message during parsing, not localized +SourceView--archive-parsing-error-when-obtaining-source = Aḥraz deg { $url } ur yezmir ara ad yettwasleḍ: { $parsingErrorMessage } +SourceView--close-button = + .title = Mdel timeẓri taneṣlit + ## UploadedRecordingsHome ## This is the page that displays all the profiles that user has uploaded. ## See: https://profiler.firefox.com/uploaded-recordings/ From d2df52cc907454f2d8714c61619069571e7bd995 Mon Sep 17 00:00:00 2001 From: "Francesco Lodolo [:flod]" Date: Wed, 30 Mar 2022 08:32:57 +0000 Subject: [PATCH 02/34] Pontoon: Update Italian (it) localization of Firefox Profiler Co-authored-by: Francesco Lodolo [:flod] --- locales/it/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/it/app.ftl b/locales/it/app.ftl index 6d8e9100f2..8e56b58c76 100644 --- a/locales/it/app.ftl +++ b/locales/it/app.ftl @@ -255,6 +255,16 @@ MarkerContextMenu--copy-description = Copia descrizione MarkerContextMenu--copy-call-stack = Copia stack di chiamata MarkerContextMenu--copy-url = Copia URL MarkerContextMenu--copy-as-json = Copia come JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Seleziona il thread di destinazione “{ $threadName }” +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Seleziona il thread di origine “{ $threadName }” ## MarkerSettings ## This is used in all panels related to markers. From 1e259518671903c566de8f49f6d20226784e60e6 Mon Sep 17 00:00:00 2001 From: Pin-guang Chen Date: Wed, 30 Mar 2022 09:10:09 +0000 Subject: [PATCH 03/34] Pontoon: Update Chinese (Taiwan) (zh-TW) localization of Firefox Profiler Co-authored-by: Pin-guang Chen --- locales/zh-TW/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/zh-TW/app.ftl b/locales/zh-TW/app.ftl index e734b3160d..e9d907741f 100644 --- a/locales/zh-TW/app.ftl +++ b/locales/zh-TW/app.ftl @@ -251,6 +251,16 @@ MarkerContextMenu--copy-description = 複製描述 MarkerContextMenu--copy-call-stack = 複製呼叫堆疊 MarkerContextMenu--copy-url = 複製網址 MarkerContextMenu--copy-as-json = 以 JSON 格式複製 +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = 選擇接收執行緒「{ $threadName }」 +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = 選擇傳送執行緒「{ $threadName }」 ## MarkerSettings ## This is used in all panels related to markers. From 86f1613b305cf5327755791ef9a897b5dda243e2 Mon Sep 17 00:00:00 2001 From: Mark Heijl Date: Wed, 30 Mar 2022 09:33:08 +0000 Subject: [PATCH 04/34] Pontoon: Update Dutch (nl) localization of Firefox Profiler Co-authored-by: Mark Heijl --- locales/nl/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/nl/app.ftl b/locales/nl/app.ftl index c2efdc0b83..0856a746a4 100644 --- a/locales/nl/app.ftl +++ b/locales/nl/app.ftl @@ -320,6 +320,16 @@ MarkerContextMenu--copy-description = Beschrijving kopiëren MarkerContextMenu--copy-call-stack = Aanroepstack kopiëren MarkerContextMenu--copy-url = URL kopiëren MarkerContextMenu--copy-as-json = Kopiëren als JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Selecteer de ontvangerthread ‘{ $threadName }’ +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Selecteer de afzenderthread ‘{ $threadName }’ ## MarkerSettings ## This is used in all panels related to markers. From 60a7bde0cb7f52a716a7274a190a69e605deee11 Mon Sep 17 00:00:00 2001 From: Jim Spentzos Date: Wed, 30 Mar 2022 10:23:01 +0000 Subject: [PATCH 05/34] Pontoon: Update Greek (el) localization of Firefox Profiler Co-authored-by: Jim Spentzos --- locales/el/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/el/app.ftl b/locales/el/app.ftl index 28d663db15..7b5af430b8 100644 --- a/locales/el/app.ftl +++ b/locales/el/app.ftl @@ -316,6 +316,16 @@ MarkerContextMenu--copy-description = Αντιγραφή περιγραφής MarkerContextMenu--copy-call-stack = Αντιγραφή στοίβας κλήσεων MarkerContextMenu--copy-url = Αντιγραφή URL MarkerContextMenu--copy-as-json = Αντιγραφή ως JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Επιλέξτε το νήμα παραλήπτη «{ $threadName }» +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Επιλέξτε το νήμα αποστολέα «{ $threadName }» ## MarkerSettings ## This is used in all panels related to markers. From 9a169119035aa847dbcd55f8f70793c3ebd0b061 Mon Sep 17 00:00:00 2001 From: Julien Wajsberg Date: Wed, 30 Mar 2022 16:16:47 +0200 Subject: [PATCH 06/34] Use the whole list item as the click target (PR #3963) Fixes #3962 --- src/components/shared/FilterNavigatorBar.js | 93 +++++++++++-------- .../FilterNavigatorBar.test.js.snap | 6 +- .../ProfileCallTreeView.test.js.snap | 2 +- 3 files changed, 60 insertions(+), 41 deletions(-) diff --git a/src/components/shared/FilterNavigatorBar.js b/src/components/shared/FilterNavigatorBar.js index 0fe2bb0257..d9f1682fd3 100644 --- a/src/components/shared/FilterNavigatorBar.js +++ b/src/components/shared/FilterNavigatorBar.js @@ -9,27 +9,53 @@ import classNames from 'classnames'; import { CSSTransition, TransitionGroup } from 'react-transition-group'; import './FilterNavigatorBar.css'; -type FilterNavigatorBarButtonProps = {| - onClick: (number) => mixed, - index: number, - children: React.Node, +type FilterNavigatorBarListItemProps = {| + +onClick?: null | ((number) => mixed), + +index: number, + +isFirstItem: boolean, + +isLastItem: boolean, + +isSelectedItem: boolean, + +title?: string, + +additionalClassName?: string, + +children: React.Node, |}; -class FilterNavigatorBarButton extends React.PureComponent { +class FilterNavigatorBarListItem extends React.PureComponent { _onClick = () => { const { index, onClick } = this.props; - onClick(index); + if (onClick) { + onClick(index); + } }; render() { + const { + isFirstItem, + isLastItem, + isSelectedItem, + children, + additionalClassName, + onClick, + title, + } = this.props; return ( - + {onClick ? ( + + ) : ( + {children} + )} + ); } } @@ -57,22 +83,17 @@ export class FilterNavigatorBar extends React.PureComponent { classNames="filterNavigatorBarTransition" timeout={250} > -
  • - {i === items.length - 1 && !uncommittedItem ? ( - {item} - ) : ( - - {item} - - )} -
  • + {item} + ))} {uncommittedItem ? ( @@ -81,18 +102,16 @@ export class FilterNavigatorBar extends React.PureComponent { classNames="filterNavigatorBarUncommittedTransition" timeout={0} > -
  • - - {uncommittedItem} - -
  • + {uncommittedItem} + ) : null} diff --git a/src/test/components/__snapshots__/FilterNavigatorBar.test.js.snap b/src/test/components/__snapshots__/FilterNavigatorBar.test.js.snap index 13cc7bbd05..1812b085a7 100644 --- a/src/test/components/__snapshots__/FilterNavigatorBar.test.js.snap +++ b/src/test/components/__snapshots__/FilterNavigatorBar.test.js.snap @@ -21,7 +21,7 @@ exports[`app/ProfileFilterNavigator renders ProfileFilterNavigator properly 2`] class="filterNavigatorBar profileFilterNavigator" >
  • @@ -27,7 +27,7 @@ exports[`app/ProfileFilterNavigator renders ProfileFilterNavigator properly 2`] class="filterNavigatorBarItemContent" type="button" > - Full Range + Full Range (⁨51ms⁩)
  • - Full Range + Full Range (⁨51ms⁩)
  • Date: Wed, 30 Mar 2022 16:23:02 +0000 Subject: [PATCH 09/34] Pontoon: Update German (de) localization of Firefox Profiler MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Michael Köhler --- locales/de/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/de/app.ftl b/locales/de/app.ftl index 1816c66682..9f5a354898 100644 --- a/locales/de/app.ftl +++ b/locales/de/app.ftl @@ -305,6 +305,16 @@ MarkerContextMenu--copy-description = Beschreibung kopieren MarkerContextMenu--copy-call-stack = Aufrufstack kopieren MarkerContextMenu--copy-url = URL kopieren MarkerContextMenu--copy-as-json = Als JSON kopieren +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Empfänger-Thread „{ $threadName }“ auswählen +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Absender-Thread „{ $threadName }“ auswählen ## MarkerSettings ## This is used in all panels related to markers. From 499065d301672e118ad082de0e543c81c1545dce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=A0=E6=88=91=E7=9A=86=E5=87=A1=E4=BA=BA?= Date: Wed, 30 Mar 2022 19:53:50 +0000 Subject: [PATCH 10/34] Pontoon: Update Chinese (China) (zh-CN) localization of Firefox Profiler MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 你我皆凡人 --- locales/zh-CN/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/zh-CN/app.ftl b/locales/zh-CN/app.ftl index 432b0a5885..99dd513406 100644 --- a/locales/zh-CN/app.ftl +++ b/locales/zh-CN/app.ftl @@ -251,6 +251,16 @@ MarkerContextMenu--copy-description = 复制描述 MarkerContextMenu--copy-call-stack = 复制调用栈 MarkerContextMenu--copy-url = 复制 URL MarkerContextMenu--copy-as-json = 复制为 JSON 格式 +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = 选择 Receiver 线程“{ $threadName }” +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = 选择 Sender 线程“{ $threadName }” ## MarkerSettings ## This is used in all panels related to markers. From 0f268111ddcdde450c9267bde179daa459ba31aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=86hor=20Hordiichuk?= Date: Wed, 30 Mar 2022 20:33:18 +0000 Subject: [PATCH 11/34] Pontoon: Update Ukrainian (uk) localization of Firefox Profiler MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Іhor Hordiichuk --- locales/uk/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/uk/app.ftl b/locales/uk/app.ftl index 382836d41b..10d3d39ab5 100644 --- a/locales/uk/app.ftl +++ b/locales/uk/app.ftl @@ -317,6 +317,16 @@ MarkerContextMenu--copy-description = Скопіювати опис MarkerContextMenu--copy-call-stack = Скопіювати стек викликів MarkerContextMenu--copy-url = Скопіювати URL-адресу MarkerContextMenu--copy-as-json = Скопіювати як JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Виберіть потік-одержувач “{ $threadName }” +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Виберіть потік-відправник “{ $threadName }” ## MarkerSettings ## This is used in all panels related to markers. From 23b3d0d0dcc4e900675c6f98b337d252c0f5b2b6 Mon Sep 17 00:00:00 2001 From: Andreas Pettersson Date: Wed, 30 Mar 2022 21:53:05 +0000 Subject: [PATCH 12/34] Pontoon: Update Swedish (sv-SE) localization of Firefox Profiler Co-authored-by: Andreas Pettersson --- locales/sv-SE/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/sv-SE/app.ftl b/locales/sv-SE/app.ftl index f840926b2d..8130d96314 100644 --- a/locales/sv-SE/app.ftl +++ b/locales/sv-SE/app.ftl @@ -313,6 +313,16 @@ MarkerContextMenu--copy-description = Kopiera beskrivning MarkerContextMenu--copy-call-stack = Kopiera anropsstack MarkerContextMenu--copy-url = Kopiera URL MarkerContextMenu--copy-as-json = Kopiera som JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Välj mottagartråden "{ $threadName }" +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Välj avsändartråden "{ $threadName }" ## MarkerSettings ## This is used in all panels related to markers. From 4689efae34937290a2a7006e7d794943274602c6 Mon Sep 17 00:00:00 2001 From: Ian Neal Date: Wed, 30 Mar 2022 23:13:40 +0000 Subject: [PATCH 13/34] Pontoon: Update English (Great Britain) (en-GB) localization of Firefox Profiler Co-authored-by: Ian Neal --- locales/en-GB/app.ftl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/locales/en-GB/app.ftl b/locales/en-GB/app.ftl index 561e0b4fe5..0f7298637e 100644 --- a/locales/en-GB/app.ftl +++ b/locales/en-GB/app.ftl @@ -320,6 +320,16 @@ MarkerContextMenu--copy-description = Copy description MarkerContextMenu--copy-call-stack = Copy call stack MarkerContextMenu--copy-url = Copy URL MarkerContextMenu--copy-as-json = Copy as JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Select the receiver thread “{ $threadName }” +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Select the sender thread “{ $threadName }” ## MarkerSettings ## This is used in all panels related to markers. From d6dd04eec1da1a60487536d4b9bba02fe19702c2 Mon Sep 17 00:00:00 2001 From: Pin-guang Chen Date: Thu, 31 Mar 2022 08:28:49 +0000 Subject: [PATCH 14/34] Pontoon: Update Chinese (Taiwan) (zh-TW) localization of Firefox Profiler Co-authored-by: Pin-guang Chen --- locales/zh-TW/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/zh-TW/app.ftl b/locales/zh-TW/app.ftl index e9d907741f..c9cc893e85 100644 --- a/locales/zh-TW/app.ftl +++ b/locales/zh-TW/app.ftl @@ -469,7 +469,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = 完整範圍 +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = 完整範圍({ $fullRangeDuration }) ## Profile Loader Animation From 4d28f953bea888868cdc106e6b757bbdd6f5de4a Mon Sep 17 00:00:00 2001 From: Mark Heijl Date: Thu, 31 Mar 2022 09:04:15 +0000 Subject: [PATCH 15/34] Pontoon: Update Dutch (nl) localization of Firefox Profiler Co-authored-by: Mark Heijl --- locales/nl/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/nl/app.ftl b/locales/nl/app.ftl index 0856a746a4..b110cdbfa6 100644 --- a/locales/nl/app.ftl +++ b/locales/nl/app.ftl @@ -543,7 +543,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Volledig bereik +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Volledig bereik ({ $fullRangeDuration }) ## Profile Loader Animation From d469ce641ce12cf895a8e6076bd570a874adf449 Mon Sep 17 00:00:00 2001 From: "Francesco Lodolo [:flod]" Date: Thu, 31 Mar 2022 09:13:01 +0000 Subject: [PATCH 16/34] Pontoon: Update Italian (it) localization of Firefox Profiler Co-authored-by: Francesco Lodolo [:flod] --- locales/it/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/it/app.ftl b/locales/it/app.ftl index 8e56b58c76..f8ddc53144 100644 --- a/locales/it/app.ftl +++ b/locales/it/app.ftl @@ -477,7 +477,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Intervallo completo +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Intervallo completo ({ $fullRangeDuration }) ## Profile Loader Animation From d45c2e7b3a02cfe6236041f1dac4992f033fcb37 Mon Sep 17 00:00:00 2001 From: Jim Spentzos Date: Thu, 31 Mar 2022 10:42:32 +0000 Subject: [PATCH 17/34] Pontoon: Update Greek (el) localization of Firefox Profiler Co-authored-by: Jim Spentzos --- locales/el/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/el/app.ftl b/locales/el/app.ftl index 7b5af430b8..cd01786145 100644 --- a/locales/el/app.ftl +++ b/locales/el/app.ftl @@ -539,7 +539,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Πλήρες εύρος +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Πλήρες εύρος ({ $fullRangeDuration }) ## Profile Loader Animation From 7a9d572a731e5e73f7c95dc43fc02615d81d111d Mon Sep 17 00:00:00 2001 From: Philipp Fischbeck Date: Thu, 31 Mar 2022 11:34:08 +0000 Subject: [PATCH 18/34] Pontoon: Update German (de) localization of Firefox Profiler Co-authored-by: Philipp Fischbeck --- locales/de/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/de/app.ftl b/locales/de/app.ftl index 9f5a354898..46725b0cba 100644 --- a/locales/de/app.ftl +++ b/locales/de/app.ftl @@ -528,7 +528,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Vollständiger Bereich +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Vollständiger Zeitraum ({ $fullRangeDuration }) ## Profile Loader Animation From 897e87676399bcf4a8212322c5f7140cef95d6f4 Mon Sep 17 00:00:00 2001 From: "Francesco Lodolo [:flod]" Date: Thu, 31 Mar 2022 15:43:56 +0000 Subject: [PATCH 19/34] Pontoon: Update Dutch (nl) localization of Firefox Profiler Co-authored-by: Francesco Lodolo [:flod] --- locales/nl/app.ftl | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/locales/nl/app.ftl b/locales/nl/app.ftl index b110cdbfa6..d03ec9a4c5 100644 --- a/locales/nl/app.ftl +++ b/locales/nl/app.ftl @@ -155,7 +155,7 @@ CallTree--bytes-self = Zelf (bytes) # Variables: # $calledFunction (String) - Name of the function whose call was sometimes inlined. CallTree--divergent-inlining-badge = - .title = Sommige aanroepen naar { $callFunction } zijn inline door de compiler geplaatst. + .title = Sommige aanroepen naar { $calledFunction } zijn inline door de compiler geplaatst. # Variables: # $calledFunction (String) - Name of the function whose call was inlined. # $outerFunction (String) - Name of the outer function into which the called function was inlined. @@ -252,10 +252,6 @@ Home--web-channel-unavailable = devtools.performance.recording.ui-base-url. Als u nieuwe profielen wilt vastleggen met deze instantie, en er programmatische controle over de profiler-menuknop aan wilt geven, dan kunt u naar about:config gaan en de voorkeur wijzigen. -Home--record-instructions = - Klik om te starten met het maken van een profiel op de profielknop of gebruik de - sneltoetsen. Het pictogram is blauw als er een profiel wordt opgenomen. - Klik op SHIFT om de gegevens in profiler.firefox.com te laden. Home--instructions-title = Profielen bekijken en opnemen Home--instructions-content = Het opnemen van prestatieprofielen vereist { -firefox-brand-name }. From c0373d81d24c2b7a68802f4b965bc74ee02df8f8 Mon Sep 17 00:00:00 2001 From: "Francesco Lodolo [:flod]" Date: Thu, 31 Mar 2022 15:43:58 +0000 Subject: [PATCH 20/34] Pontoon: Update French (fr) localization of Firefox Profiler Co-authored-by: Francesco Lodolo [:flod] --- locales/fr/app.ftl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/locales/fr/app.ftl b/locales/fr/app.ftl index aae207ad0d..3ca802f266 100644 --- a/locales/fr/app.ftl +++ b/locales/fr/app.ftl @@ -103,7 +103,7 @@ CallTree--bytes-self = Individuel (octets) # Variables: # $calledFunction (String) - Name of the function whose call was sometimes inlined. CallTree--divergent-inlining-badge = - .title = Certains appels à { $callFunction } ont été regroupés par le compilateur. + .title = Certains appels à { $calledFunction } ont été regroupés par le compilateur. # Variables: # $calledFunction (String) - Name of the function whose call was inlined. # $outerFunction (String) - Name of the outer function into which the called function was inlined. @@ -468,7 +468,6 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Intervalle complet ## Profile Loader Animation From 2e8edffd7164e71593e85d30cd08e293a87bcdd6 Mon Sep 17 00:00:00 2001 From: "Francesco Lodolo [:flod]" Date: Thu, 31 Mar 2022 15:43:59 +0000 Subject: [PATCH 21/34] Pontoon: Update Spanish (Chile) (es-CL) localization of Firefox Profiler Co-authored-by: Francesco Lodolo [:flod] --- locales/es-CL/app.ftl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/locales/es-CL/app.ftl b/locales/es-CL/app.ftl index 5700ccbcf8..39f11b8621 100644 --- a/locales/es-CL/app.ftl +++ b/locales/es-CL/app.ftl @@ -107,7 +107,7 @@ CallTree--bytes-self = Propio (bytes) # Variables: # $calledFunction (String) - Name of the function whose call was sometimes inlined. CallTree--divergent-inlining-badge = - .title = Algunas llamadas a { $callFunction } fueron incorporadas por el compilador. + .title = Algunas llamadas a { $calledFunction } fueron incorporadas por el compilador. # Variables: # $calledFunction (String) - Name of the function whose call was inlined. # $outerFunction (String) - Name of the outer function into which the called function was inlined. @@ -472,7 +472,6 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Rango completo ## Profile Loader Animation From 5b080c6609125e612494a37ee46e361cf52580fe Mon Sep 17 00:00:00 2001 From: Marcelo Ghelman Date: Thu, 31 Mar 2022 16:10:17 +0000 Subject: [PATCH 22/34] Pontoon: Update Portuguese (Brazil) (pt-BR) localization of Firefox Profiler Co-authored-by: Marcelo Ghelman --- locales/pt-BR/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/pt-BR/app.ftl b/locales/pt-BR/app.ftl index 62031fd45b..1e079ec060 100644 --- a/locales/pt-BR/app.ftl +++ b/locales/pt-BR/app.ftl @@ -480,7 +480,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Intervalo completo +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Intervalo completo ({ $fullRangeDuration }) ## Profile Loader Animation From 2629cee0e0a401c5be86f28069df7c79c2aa143d Mon Sep 17 00:00:00 2001 From: Andreas Pettersson Date: Fri, 1 Apr 2022 00:10:17 +0000 Subject: [PATCH 23/34] Pontoon: Update Swedish (sv-SE) localization of Firefox Profiler Co-authored-by: Andreas Pettersson --- locales/sv-SE/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/sv-SE/app.ftl b/locales/sv-SE/app.ftl index 8130d96314..1c0b058980 100644 --- a/locales/sv-SE/app.ftl +++ b/locales/sv-SE/app.ftl @@ -536,7 +536,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Hela intervallet +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Fullt intervall ({ $fullRangeDuration }) ## Profile Loader Animation From 41b7b12d23ddcb5201b2095057bfcdb3d85b136a Mon Sep 17 00:00:00 2001 From: "Francesco Lodolo [:flod]" Date: Fri, 1 Apr 2022 05:42:39 +0000 Subject: [PATCH 24/34] Pontoon: Update Dutch (nl) localization of Firefox Profiler Co-authored-by: Francesco Lodolo [:flod] --- locales/nl/app.ftl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/locales/nl/app.ftl b/locales/nl/app.ftl index d03ec9a4c5..e30f114904 100644 --- a/locales/nl/app.ftl +++ b/locales/nl/app.ftl @@ -252,6 +252,10 @@ Home--web-channel-unavailable = devtools.performance.recording.ui-base-url. Als u nieuwe profielen wilt vastleggen met deze instantie, en er programmatische controle over de profiler-menuknop aan wilt geven, dan kunt u naar about:config gaan en de voorkeur wijzigen. +Home--record-instructions = + Klik om te starten met het maken van een profiel op de profielknop of gebruik de + sneltoetsen. Het pictogram is blauw als er een profiel wordt opgenomen. + Klik op Vastleggen om de gegevens in profiler.firefox.com te laden. Home--instructions-title = Profielen bekijken en opnemen Home--instructions-content = Het opnemen van prestatieprofielen vereist { -firefox-brand-name }. From 5740f6ba7c11f107d522e55554c9f465b1ea4bca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=86hor=20Hordiichuk?= Date: Fri, 1 Apr 2022 17:12:57 +0000 Subject: [PATCH 25/34] Pontoon: Update Ukrainian (uk) localization of Firefox Profiler MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Іhor Hordiichuk --- locales/uk/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/uk/app.ftl b/locales/uk/app.ftl index 10d3d39ab5..73362a5a34 100644 --- a/locales/uk/app.ftl +++ b/locales/uk/app.ftl @@ -545,7 +545,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Повний спектр +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Повний діапазон ({ $fullRangeDuration }) ## Profile Loader Animation From 41ec246513fb3a371d6e0af9115f605c5e7362df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=A0=E6=88=91=E7=9A=86=E5=87=A1=E4=BA=BA?= Date: Sat, 2 Apr 2022 07:33:41 +0000 Subject: [PATCH 26/34] Pontoon: Update Chinese (China) (zh-CN) localization of Firefox Profiler MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 你我皆凡人 --- locales/zh-CN/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/zh-CN/app.ftl b/locales/zh-CN/app.ftl index 99dd513406..50770d0b93 100644 --- a/locales/zh-CN/app.ftl +++ b/locales/zh-CN/app.ftl @@ -469,7 +469,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = 完整范围 +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = 完整范围({ $fullRangeDuration }) ## Profile Loader Animation From e5a3c068cf9147b694a5111f400842b77a6b288d Mon Sep 17 00:00:00 2001 From: Ian Neal Date: Sun, 3 Apr 2022 13:23:09 +0000 Subject: [PATCH 27/34] Pontoon: Update English (Great Britain) (en-GB) localization of Firefox Profiler Co-authored-by: Ian Neal --- locales/en-GB/app.ftl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/locales/en-GB/app.ftl b/locales/en-GB/app.ftl index 0f7298637e..361211521f 100644 --- a/locales/en-GB/app.ftl +++ b/locales/en-GB/app.ftl @@ -543,7 +543,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Full Range +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Full Range ({ $fullRangeDuration }) ## Profile Loader Animation From f7678e17e6b3bda52038eae61ca986421391dab8 Mon Sep 17 00:00:00 2001 From: Melo46 Date: Mon, 4 Apr 2022 09:14:13 +0000 Subject: [PATCH 28/34] Pontoon: Update Interlingua (ia) localization of Firefox Profiler Co-authored-by: Melo46 --- locales/ia/app.ftl | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/locales/ia/app.ftl b/locales/ia/app.ftl index 74e30c6e5c..534017e6ce 100644 --- a/locales/ia/app.ftl +++ b/locales/ia/app.ftl @@ -313,6 +313,16 @@ MarkerContextMenu--copy-description = Copiar le description MarkerContextMenu--copy-call-stack = Copiar pila de appellos MarkerContextMenu--copy-url = Copiar URL MarkerContextMenu--copy-as-json = Copiar como JSON +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-receiver-thread = Selige le argumento destinatario “{ $threadName }” +# This string is used on the marker context menu item when right clicked on an +# IPC marker. +# Variables: +# $threadName (String) - Name of the thread that will be selected. +MarkerContextMenu--select-the-sender-thread = Selige le argumento mittente “{ $threadName }” ## MarkerSettings ## This is used in all panels related to markers. @@ -526,7 +536,13 @@ ProfileDeleteButton--delete-button = ## ProfileFilterNavigator ## This is used at the top of the profile analysis UI. -ProfileFilterNavigator--full-range = Plen gamma +# This string is used on the top left side of the profile analysis UI as the +# "Full Range" button. In the profiler UI, it's possible to zoom in to a time +# range. This button reverts it back to the full range. It also includes the +# duration of the full range. +# Variables: +# $fullRangeDuration (String) - The duration of the full profile data. +ProfileFilterNavigator--full-range-with-duration = Intervallo complete ({ $fullRangeDuration }) ## Profile Loader Animation From 1d9981468af5b11e15886c21f11044c832145729 Mon Sep 17 00:00:00 2001 From: "depfu[bot]" <23717796+depfu[bot]@users.noreply.github.com> Date: Mon, 4 Apr 2022 15:20:24 +0200 Subject: [PATCH 29/34] Update all development Yarn dependencies (2022-04-04) (PR #3971) Co-authored-by: depfu[bot] <23717796+depfu[bot]@users.noreply.github.com> --- package.json | 8 ++++---- yarn.lock | 34 +++++++++++++++++----------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 7194bf04b1..d1bc3269d4 100644 --- a/package.json +++ b/package.json @@ -102,13 +102,13 @@ "@babel/preset-env": "^7.16.11", "@babel/preset-flow": "^7.16.7", "@babel/preset-react": "^7.16.7", - "@testing-library/dom": "^8.11.3", - "@testing-library/jest-dom": "^5.16.2", + "@testing-library/dom": "^8.12.0", + "@testing-library/jest-dom": "^5.16.3", "@testing-library/react": "^12.1.4", "alex": "^10.0.0", "autoprefixer": "^10.4.4", "babel-jest": "^27.5.1", - "babel-loader": "^8.2.3", + "babel-loader": "^8.2.4", "babel-plugin-module-resolver": "^4.1.0", "browserslist": "^4.20.2", "caniuse-lite": "^1.0.30001320", @@ -129,7 +129,7 @@ "eslint-plugin-jest-dom": "^4.0.1", "eslint-plugin-jest-formatting": "^3.1.0", "eslint-plugin-prettier": "^4.0.0", - "eslint-plugin-react": "^7.29.3", + "eslint-plugin-react": "^7.29.4", "eslint-plugin-testing-library": "^5.0.6", "fake-indexeddb": "^3.1.7", "file-loader": "^6.2.0", diff --git a/yarn.lock b/yarn.lock index 5b7c5c9390..ab7c8e176f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1658,10 +1658,10 @@ dependencies: defer-to-connect "^2.0.0" -"@testing-library/dom@^8.0.0", "@testing-library/dom@^8.11.1", "@testing-library/dom@^8.11.3": - version "8.11.3" - resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.11.3.tgz#38fd63cbfe14557021e88982d931e33fb7c1a808" - integrity sha512-9LId28I+lx70wUiZjLvi1DB/WT2zGOxUh46glrSNMaWVx849kKAluezVzZrXJfTKKoQTmEOutLes/bHg4Bj3aA== +"@testing-library/dom@^8.0.0", "@testing-library/dom@^8.11.1", "@testing-library/dom@^8.12.0": + version "8.12.0" + resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.12.0.tgz#fef5e545533fb084175dda6509ee71d7d2f72e23" + integrity sha512-rBrJk5WjI02X1edtiUcZhgyhgBhiut96r5Jp8J5qktKdcvLcZpKDW8i2hkGMMItxrghjXuQ5AM6aE0imnFawaw== dependencies: "@babel/code-frame" "^7.10.4" "@babel/runtime" "^7.12.5" @@ -1672,10 +1672,10 @@ lz-string "^1.4.4" pretty-format "^27.0.2" -"@testing-library/jest-dom@^5.16.2": - version "5.16.2" - resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.2.tgz#f329b36b44aa6149cd6ced9adf567f8b6aa1c959" - integrity sha512-6ewxs1MXWwsBFZXIk4nKKskWANelkdUehchEOokHsN8X7c2eKXGw+77aRV63UU8f/DTSVUPLaGxdrj4lN7D/ug== +"@testing-library/jest-dom@^5.16.3": + version "5.16.3" + resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.3.tgz#b76851a909586113c20486f1679ffb4d8ec27bfa" + integrity sha512-u5DfKj4wfSt6akfndfu1eG06jsdyA/IUrlX2n3pyq5UXgXMhXY+NJb8eNK/7pqPWAhCKsCGWDdDO0zKMKAYkEA== dependencies: "@babel/runtime" "^7.9.2" "@types/testing-library__jest-dom" "^5.9.1" @@ -2853,13 +2853,13 @@ babel-jest@^27.5.1: graceful-fs "^4.2.9" slash "^3.0.0" -babel-loader@^8.2.3: - version "8.2.3" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.3.tgz#8986b40f1a64cacfcb4b8429320085ef68b1342d" - integrity sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw== +babel-loader@^8.2.4: + version "8.2.4" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.4.tgz#95f5023c791b2e9e2ca6f67b0984f39c82ff384b" + integrity sha512-8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A== dependencies: find-cache-dir "^3.3.1" - loader-utils "^1.4.0" + loader-utils "^2.0.0" make-dir "^3.1.0" schema-utils "^2.6.5" @@ -5236,10 +5236,10 @@ eslint-plugin-prettier@^4.0.0: dependencies: prettier-linter-helpers "^1.0.0" -eslint-plugin-react@^7.29.3: - version "7.29.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.29.3.tgz#f4eab757f2756d25d6d4c2a58a9e20b004791f05" - integrity sha512-MzW6TuCnDOcta67CkpDyRfRsEVx9FNMDV8wZsDqe1luHPdGTrQIUaUXD27Ja3gHsdOIs/cXzNchWGlqm+qRVRg== +eslint-plugin-react@^7.29.4: + version "7.29.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.29.4.tgz#4717de5227f55f3801a5fd51a16a4fa22b5914d2" + integrity sha512-CVCXajliVh509PcZYRFyu/BoUEz452+jtQJq2b3Bae4v3xBUWPLCmtmBM+ZinG4MzwmxJgJ2M5rMqhqLVn7MtQ== dependencies: array-includes "^3.1.4" array.prototype.flatmap "^1.2.5" From 82019de992885487be52e1c17983c775da699f69 Mon Sep 17 00:00:00 2001 From: "depfu[bot]" <23717796+depfu[bot]@users.noreply.github.com> Date: Mon, 4 Apr 2022 15:24:31 +0200 Subject: [PATCH 30/34] =?UTF-8?q?=E2=AC=86=EF=B8=8F=20Update=20@codemirror?= =?UTF-8?q?/highlight=20to=20version=200.19.8=20(PR=20#3970)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: depfu[bot] <23717796+depfu[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index d1bc3269d4..fd1bebdacb 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ }, "dependencies": { "@codemirror/gutter": "^0.19.9", - "@codemirror/highlight": "^0.19.7", + "@codemirror/highlight": "^0.19.8", "@codemirror/lang-cpp": "^0.19.1", "@codemirror/lang-javascript": "^0.19.6", "@codemirror/lang-rust": "^0.19.2", diff --git a/yarn.lock b/yarn.lock index ab7c8e176f..871cd5f131 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1051,15 +1051,15 @@ "@codemirror/state" "^0.19.0" "@codemirror/view" "^0.19.23" -"@codemirror/highlight@^0.19.0", "@codemirror/highlight@^0.19.7": - version "0.19.7" - resolved "https://registry.yarnpkg.com/@codemirror/highlight/-/highlight-0.19.7.tgz#91a0c9994c759f5f153861e3aae74ff9e7c7c35b" - integrity sha512-3W32hBCY0pbbv/xidismw+RDMKuIag+fo4kZIbD7WoRj+Ttcaxjf+vP6RttRHXLaaqbWh031lTeON8kMlDhMYw== +"@codemirror/highlight@^0.19.0", "@codemirror/highlight@^0.19.7", "@codemirror/highlight@^0.19.8": + version "0.19.8" + resolved "https://registry.yarnpkg.com/@codemirror/highlight/-/highlight-0.19.8.tgz#a95aee8ae4389b01f820aa79c48f7b4388087d92" + integrity sha512-v/lzuHjrYR8MN2mEJcUD6fHSTXXli9C1XGYpr+ElV6fLBIUhMTNKR3qThp611xuWfXfwDxeL7ppcbkM/MzPV3A== dependencies: "@codemirror/language" "^0.19.0" "@codemirror/rangeset" "^0.19.0" "@codemirror/state" "^0.19.3" - "@codemirror/view" "^0.19.0" + "@codemirror/view" "^0.19.39" "@lezer/common" "^0.15.0" style-mod "^4.0.0" @@ -1153,10 +1153,10 @@ "@codemirror/state" "^0.19.0" "@codemirror/view" "^0.19.0" -"@codemirror/view@^0.19.0", "@codemirror/view@^0.19.23", "@codemirror/view@^0.19.47": - version "0.19.47" - resolved "https://registry.yarnpkg.com/@codemirror/view/-/view-0.19.47.tgz#2163c3016d7680bf50dd695c0e3abdaf80f45363" - integrity sha512-SfbagKvJQl5dtt+9wYpo9sa3ZkMgUxTq+/hXDf0KVwIx+zu3cJIqfEm9xSx6yXkq7it7RsPGHaPasApNffF/8g== +"@codemirror/view@^0.19.0", "@codemirror/view@^0.19.23", "@codemirror/view@^0.19.39", "@codemirror/view@^0.19.47": + version "0.19.48" + resolved "https://registry.yarnpkg.com/@codemirror/view/-/view-0.19.48.tgz#1c657e2b0f8ed896ac6448d6e2215ab115e2a0fc" + integrity sha512-0eg7D2Nz4S8/caetCTz61rK0tkHI17V/d15Jy0kLOT8dTLGGNJUponDnW28h2B6bERmPlVHKh8MJIr5OCp1nGw== dependencies: "@codemirror/rangeset" "^0.19.5" "@codemirror/state" "^0.19.3" From 9bcfa3e6f1a5dc25b1bf761c7cdf7bd2e74259a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Naz=C4=B1m=20Can=20Alt=C4=B1nova?= Date: Wed, 30 Mar 2022 13:52:24 +0200 Subject: [PATCH 31/34] Move the IPC tracks right below their threads --- src/profile-logic/tracks.js | 36 +++++++++++++++++++++---- src/test/components/MarkerTable.test.js | 16 +++++------ 2 files changed, 39 insertions(+), 13 deletions(-) diff --git a/src/profile-logic/tracks.js b/src/profile-logic/tracks.js index c6d16011ef..9eaa1d2fe1 100644 --- a/src/profile-logic/tracks.js +++ b/src/profile-logic/tracks.js @@ -61,8 +61,12 @@ const LOCAL_TRACK_INDEX_ORDER = { const LOCAL_TRACK_DISPLAY_ORDER = { network: 0, memory: 1, - thread: 2, - ipc: 3, + // IPC tracks that belong to the global track will appear right after network + // and memory tracks. But we want to show the IPC tracks that belong to the + // local threads right after their track. This special handling happens inside + // the sort function. + ipc: 2, + thread: 3, 'event-delay': 4, 'process-cpu': 5, }; @@ -85,11 +89,33 @@ const GLOBAL_TRACK_DISPLAY_ORDER = { function _getDefaultLocalTrackOrder(tracks: LocalTrack[]) { const trackOrder = tracks.map((_, index) => index); // In place sort! - trackOrder.sort( - (a, b) => + trackOrder.sort((a, b) => { + if ( + tracks[a].type === 'thread' && + tracks[b].type === 'ipc' && + tracks[a].threadIndex === tracks[b].threadIndex + ) { + // If the IPC track belongs to that local thread, put the IPC tracks right + // after it. + return -1; + } + + if ( + tracks[a].type === 'ipc' && + tracks[b].type === 'thread' && + tracks[a].threadIndex === tracks[b].threadIndex + ) { + // If the IPC track belongs to that local thread, put the IPC tracks right + // after it. + return 1; + } + + return ( LOCAL_TRACK_DISPLAY_ORDER[tracks[a].type] - LOCAL_TRACK_DISPLAY_ORDER[tracks[b].type] - ); + ); + }); + return trackOrder; } diff --git a/src/test/components/MarkerTable.test.js b/src/test/components/MarkerTable.test.js index bbb86ca73f..58fc1952ba 100644 --- a/src/test/components/MarkerTable.test.js +++ b/src/test/components/MarkerTable.test.js @@ -295,10 +295,10 @@ describe('MarkerTable', function () { 'hide [thread GeckoMain process]', ' - show [ipc GeckoMain]', 'show [thread GeckoMain tab] SELECTED', - ' - show [thread DOM Worker]', - ' - show [thread Style]', ' - show [ipc GeckoMain] SELECTED', + ' - show [thread DOM Worker]', ' - show [ipc DOM Worker]', + ' - show [thread Style]', ' - show [ipc Style]', ]); @@ -313,10 +313,10 @@ describe('MarkerTable', function () { 'show [thread GeckoMain process] SELECTED', ' - show [ipc GeckoMain] SELECTED', 'show [thread GeckoMain tab]', - ' - show [thread DOM Worker]', - ' - show [thread Style]', ' - show [ipc GeckoMain]', + ' - show [thread DOM Worker]', ' - show [ipc DOM Worker]', + ' - show [thread Style]', ' - show [ipc Style]', ]); }); @@ -353,10 +353,10 @@ describe('MarkerTable', function () { 'show [thread GeckoMain process] SELECTED', ' - show [ipc GeckoMain] SELECTED', 'hide [thread GeckoMain tab]', - ' - hide [thread DOM Worker]', - ' - show [thread Style]', ' - show [ipc GeckoMain]', + ' - hide [thread DOM Worker]', ' - show [ipc DOM Worker]', + ' - show [thread Style]', ' - show [ipc Style]', ]); @@ -371,10 +371,10 @@ describe('MarkerTable', function () { 'show [thread GeckoMain process]', ' - show [ipc GeckoMain]', 'show [thread GeckoMain tab]', - ' - show [thread DOM Worker] SELECTED', - ' - show [thread Style]', ' - show [ipc GeckoMain]', + ' - show [thread DOM Worker] SELECTED', ' - show [ipc DOM Worker] SELECTED', + ' - show [thread Style]', ' - show [ipc Style]', ]); }); From c133938ce82097f88225cd7df6b4aed4274737a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Naz=C4=B1m=20Can=20Alt=C4=B1nova?= Date: Wed, 30 Mar 2022 14:02:22 +0200 Subject: [PATCH 32/34] Fix a typo --- src/test/store/tracks.test.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/store/tracks.test.js b/src/test/store/tracks.test.js index 59485208b0..5a8c387cde 100644 --- a/src/test/store/tracks.test.js +++ b/src/test/store/tracks.test.js @@ -351,7 +351,7 @@ describe('ordering and hiding', function () { ); }); - it('creates a separate user-facing ordering that is different from the internal sortiong', function () { + it('creates a separate user-facing ordering that is different from the internal sorting', function () { const { globalTracks, globalTrackOrder } = setup(); expect( globalTrackOrder.map((trackIndex) => globalTracks[trackIndex].type) @@ -623,7 +623,7 @@ describe('ordering and hiding', function () { ); }); - it('creates a separate user-facing ordering that is different from the internal sortiong', function () { + it('creates a separate user-facing ordering that is different from the internal sorting', function () { const { localTracks, localTrackOrder } = setup(); expect( localTrackOrder.map((trackIndex) => localTracks[trackIndex].type) From a32bb0e56e1a777e506646b7a1cf2ac48244843e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Naz=C4=B1m=20Can=20Alt=C4=B1nova?= Date: Wed, 30 Mar 2022 14:19:38 +0200 Subject: [PATCH 33/34] Add a test for the new IPC special case for track ordering --- src/test/store/tracks.test.js | 44 +++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/test/store/tracks.test.js b/src/test/store/tracks.test.js index 5a8c387cde..02094508c2 100644 --- a/src/test/store/tracks.test.js +++ b/src/test/store/tracks.test.js @@ -5,6 +5,7 @@ import { getScreenshotTrackProfile, getNetworkTrackProfile, + addIPCMarkerPairToThreads, } from '../fixtures/profiles/processed-profile'; import { getEmptyThread } from '../../profile-logic/data-structures'; import { storeWithProfile } from '../fixtures/stores'; @@ -630,6 +631,49 @@ describe('ordering and hiding', function () { ).toEqual(userFacingSortOrder); }); }); + + it('properly initializes the sorting with for the IPC tracks', function () { + // IPC tracks have a special case for the track ordering. They always + // appear after the thread tracks that they belong to. If they belong to + // the global track, then it should show up before the other local tracks. + // If it belongs to a local track, it should appear right after the local + // thread track. + const profile = getProfileWithNiceTracks(); + const { pid } = profile.threads[1]; + addIPCMarkerPairToThreads( + { + startTime: 1, + endTime: 10, + messageSeqno: 1, + }, + profile.threads[1], // tab process + profile.threads[2] // DOM Worker + ); + const { getState } = storeWithProfile(profile); + const localTracks = ProfileViewSelectors.getLocalTracks(getState(), pid); + const localTrackOrder = UrlStateSelectors.getLocalTrackOrder( + getState(), + pid + ); + + // Check that we properly put the two IPC tracks right after their threads. + // Since the first IPC track belongs to the global track, it should appear + // first, and the second IPC track should appear after the DOM Worker track. + expect( + localTrackOrder.map((trackIndex) => localTracks[trackIndex].type) + ).toEqual(['ipc', 'thread', 'ipc', 'thread']); + + expect(getHumanReadableTracks(getState())).toEqual([ + 'show [thread GeckoMain process]', + 'show [thread GeckoMain tab] SELECTED', + // Belongs to the global tab track. + ' - show [ipc GeckoMain] SELECTED', + ' - show [thread DOM Worker]', + // Belongs to the DOM Worker local track. + ' - show [ipc DOM Worker]', + ' - show [thread Style]', + ]); + }); }); }); From 0f064c769c7287fc0090c8d75515e43a55714e51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Naz=C4=B1m=20Can=20Alt=C4=B1nova?= Date: Tue, 5 Apr 2022 16:12:17 +0200 Subject: [PATCH 34/34] Remove animations from various places for users with prefer-reduced-motion (PR #3972) --- src/components/app/Home.css | 19 +++++++++++-------- src/components/app/MenuButtons/Publish.css | 7 +++++++ src/components/app/ProfileRootMessage.css | 13 +++++++++++++ src/components/app/ProfileViewer.css | 14 ++++++++++++++ src/components/shared/FilterNavigatorBar.css | 8 ++++++++ 5 files changed, 53 insertions(+), 8 deletions(-) diff --git a/src/components/app/Home.css b/src/components/app/Home.css index 2183a0b96c..89056df043 100644 --- a/src/components/app/Home.css +++ b/src/components/app/Home.css @@ -165,15 +165,18 @@ position: relative; } -.homeTransition-enter { - opacity: 0.1; - transform: translateX(100px); -} +/* Only show the home transition when reduced motion is not preferred */ +@media (prefers-reduced-motion: no-preference) { + .homeTransition-enter { + opacity: 0.1; + transform: translateX(100px); + } -.homeTransition-enter.homeTransition-enter-active { - opacity: 1; - transform: translateX(0); - transition: opacity 300ms ease-out, transform 300ms ease-out; + .homeTransition-enter.homeTransition-enter-active { + opacity: 1; + transform: translateX(0); + transition: opacity 300ms ease-out, transform 300ms ease-out; + } } .homeSectionUploadFromFileInput { diff --git a/src/components/app/MenuButtons/Publish.css b/src/components/app/MenuButtons/Publish.css index de3e3d2a7a..ddfa09113c 100644 --- a/src/components/app/MenuButtons/Publish.css +++ b/src/components/app/MenuButtons/Publish.css @@ -175,3 +175,10 @@ .menuButtonsPublishError { margin: 10px 0; } + +/* Do not animate the publish animation for stripes at the top loading bar. */ +@media (prefers-reduced-motion) { + .menuButtonsPublishUploadBarInner { + animation: none; + } +} diff --git a/src/components/app/ProfileRootMessage.css b/src/components/app/ProfileRootMessage.css index 87201c0626..fde52de4e9 100644 --- a/src/components/app/ProfileRootMessage.css +++ b/src/components/app/ProfileRootMessage.css @@ -1,3 +1,7 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + .rootMessageContainer { position: absolute; top: 0; @@ -165,3 +169,12 @@ transform: translateX(-100px); } } + +/* Do not animate the loading animation when user prefers reduced motion. The + * other alternative was to remove these boxes completely, but it's still nice + * to keep the boxes as a nice visualization. */ +@media (prefers-reduced-motion) { + .loading-div { + animation: none; + } +} diff --git a/src/components/app/ProfileViewer.css b/src/components/app/ProfileViewer.css index decc21a247..8e650a18b5 100644 --- a/src/components/app/ProfileViewer.css +++ b/src/components/app/ProfileViewer.css @@ -1,3 +1,7 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + @keyframes profileViewerFadeIn { 0% { opacity: 0; @@ -114,3 +118,13 @@ .profileViewerSpacer { flex: 1; } + +/* Do no animate the whole profile viewer during loading and publishing if user + * prefers reduced motion. */ +@media (prefers-reduced-motion) { + .profileViewer, + .profileViewerFadeOut, + .profileViewerFadeInSanitized { + animation: none; + } +} diff --git a/src/components/shared/FilterNavigatorBar.css b/src/components/shared/FilterNavigatorBar.css index b60bdac8c8..06b7090f59 100644 --- a/src/components/shared/FilterNavigatorBar.css +++ b/src/components/shared/FilterNavigatorBar.css @@ -160,3 +160,11 @@ opacity: 0; transform: translateX(50%); } + +/* Do not animate the filter navigator bar items when user prefers reduced motion */ +@media (prefers-reduced-motion) { + .filterNavigatorBarItem { + animation: none; + transition: none; + } +}