diff options
Diffstat (limited to '')
-rw-r--r-- | ui/qt/capture_file_dialog.cpp | 1 | ||||
-rw-r--r-- | ui/qt/capture_options_dialog.ui | 2 | ||||
-rw-r--r-- | ui/qt/funnel_text_dialog.cpp | 18 | ||||
-rw-r--r-- | ui/qt/main_application.cpp | 3 | ||||
-rw-r--r-- | ui/qt/models/interface_tree_cache_model.cpp | 7 | ||||
-rw-r--r-- | ui/qt/tcp_stream_dialog.cpp | 17 | ||||
-rw-r--r-- | ui/qt/utils/color_utils.cpp | 14 | ||||
-rw-r--r-- | ui/qt/welcome_page.ui | 3 | ||||
-rw-r--r-- | ui/qt/widgets/byte_view_text.cpp | 2 | ||||
-rw-r--r-- | ui/qt/wireshark_de.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_en.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_es.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_fr.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_it.ts | 10 | ||||
-rw-r--r-- | ui/qt/wireshark_ja_JP.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_ko.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_pl.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_ru.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_sv.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_tr_TR.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_uk.ts | 4 | ||||
-rw-r--r-- | ui/qt/wireshark_zh_CN.ts | 4 |
22 files changed, 105 insertions, 20 deletions
diff --git a/ui/qt/capture_file_dialog.cpp b/ui/qt/capture_file_dialog.cpp index 3e1e623..797f09a 100644 --- a/ui/qt/capture_file_dialog.cpp +++ b/ui/qt/capture_file_dialog.cpp @@ -963,6 +963,7 @@ void CaptureFileDialog::preview(const QString & path) g_free(err_info); preview_size_.setText(tr("%1, error after %Ln data record(s)", "", stats.records) .arg(size_str)); + wtap_close(wth); return; } diff --git a/ui/qt/capture_options_dialog.ui b/ui/qt/capture_options_dialog.ui index 2ace9a9..f1e8914 100644 --- a/ui/qt/capture_options_dialog.ui +++ b/ui/qt/capture_options_dialog.ui @@ -782,7 +782,7 @@ For example, use 1 hour to have a new file created every hour on the hour.</stri </sizepolicy> </property> <property name="toolTip"> - <string>Stop capturing after the specified number of packets have been captured.</string> + <string>Stop capturing after the specified number of files have been created.</string> </property> <property name="buttonSymbols"> <enum>QAbstractSpinBox::PlusMinus</enum> diff --git a/ui/qt/funnel_text_dialog.cpp b/ui/qt/funnel_text_dialog.cpp index 84bbb94..ad18cf7 100644 --- a/ui/qt/funnel_text_dialog.cpp +++ b/ui/qt/funnel_text_dialog.cpp @@ -57,17 +57,17 @@ void FunnelTextDialog::reject() close_cb_(close_cb_data_); } - QHash<QObject *, funnel_bt_t*>::iterator i; - for (i = text_button_to_funnel_button_.begin(); i != text_button_to_funnel_button_.end(); ++i) { - funnel_bt_t *funnel_button = i.value(); - if (funnel_button->free_data_fcn) { - funnel_button->free_data_fcn(funnel_button->data); - } - if (funnel_button->free_fcn) { - funnel_button->free_fcn(funnel_button); + for (const auto& button : ui->buttonBox->buttons()) { + funnel_bt_t *funnel_button = text_button_to_funnel_button_.take(qobject_cast<QObject*>(button)); + if (funnel_button != nullptr) { + if (funnel_button->free_data_fcn) { + funnel_button->free_data_fcn(funnel_button->data); + } + if (funnel_button->free_fcn) { + funnel_button->free_fcn(funnel_button); + } } } - text_button_to_funnel_button_.clear(); disconnect(); deleteLater(); diff --git a/ui/qt/main_application.cpp b/ui/qt/main_application.cpp index bc52b6c..da88112 100644 --- a/ui/qt/main_application.cpp +++ b/ui/qt/main_application.cpp @@ -288,7 +288,8 @@ QDir MainApplication::openDialogInitialDir() { void MainApplication::setLastOpenDirFromFilename(const QString file_name) { - QString directory = QFileInfo(file_name).absolutePath(); + /* XXX - Use canonicalPath() instead of absolutePath()? */ + QString directory = QDir::toNativeSeparators(QFileInfo(file_name).absolutePath()); /* XXX - printable? */ set_last_open_dir(qUtf8Printable(directory)); } diff --git a/ui/qt/models/interface_tree_cache_model.cpp b/ui/qt/models/interface_tree_cache_model.cpp index 71eda50..cad22b3 100644 --- a/ui/qt/models/interface_tree_cache_model.cpp +++ b/ui/qt/models/interface_tree_cache_model.cpp @@ -140,6 +140,13 @@ void InterfaceTreeCacheModel::save() /* No devices are hidden until checking "Show" state */ prefStorage[&prefs.capture_devices_hide] = QStringList(); + /* Some of the columns we only add entries to the QStringList for + * interfaces that have a non-default value, so we need to ensure + * that we set the pref string to empty if no interface is set. + */ + prefStorage[&prefs.capture_devices_descr] = QStringList(); + prefStorage[&prefs.capture_devices_monitor_mode] << QStringList(); + /* Storing new devices first including their changed values */ saveNewDevices(); diff --git a/ui/qt/tcp_stream_dialog.cpp b/ui/qt/tcp_stream_dialog.cpp index 8d668f6..b8e1542 100644 --- a/ui/qt/tcp_stream_dialog.cpp +++ b/ui/qt/tcp_stream_dialog.cpp @@ -295,7 +295,7 @@ TCPStreamDialog::TCPStreamDialog(QWidget *parent, capture_file *cf, tcp_graph_ty sack2_eb_->setDataPlottable(sack2_graph_); // RWin graph - displays upper extent of RWIN advertised on reverse packets - rwin_graph_ = sp->addGraph(sp->xAxis, sp->yAxis2); + rwin_graph_ = sp->addGraph(); rwin_graph_->setPen(QPen(QBrush(graph_color_3), pen_width)); rwin_graph_->setLineStyle(QCPGraph::lsStepLeft); @@ -554,6 +554,9 @@ void TCPStreamDialog::fillGraph(bool reset_axes, bool set_focus) sp->yAxis2->setVisible(false); sp->yAxis2->setLabel(QString()); + /* For graphs other than receive window, the axes are not in sync. */ + disconnect(sp->yAxis, QOverload<const QCPRange&>::of(&QCPAxis::rangeChanged), sp->yAxis2, QOverload<const QCPRange&>::of(&QCPAxis::setRange)); + if (!cap_file_) { QString dlg_title = QString(tr("No Capture Data")); setWindowTitle(dlg_title); @@ -905,6 +908,7 @@ void TCPStreamDialog::fillTcptrace() sack_eb_->setData(sack_span); sack2_graph_->setData(sack2_time, sack2_center, true); sack2_eb_->setData(sack2_span); + rwin_graph_->setValueAxis(sp->yAxis); rwin_graph_->setData(ackrwin_time, rwin, true); dup_ack_graph_->setData(dup_ack_time, dup_ack, true); zero_win_graph_->setData(zero_win_time, zero_win, true); @@ -1585,15 +1589,24 @@ void TCPStreamDialog::fillWindowScale() /* base_graph_ is the one that the tracer is on and allows selecting * segments. XXX - Is the congestion window more interesting to see * the exact value and select? + * + * We'll put the graphs on the same axis so they'll use the same scale. */ base_graph_->setData(cwnd_time, cwnd_size); + rwin_graph_->setValueAxis(sp->yAxis); rwin_graph_->setData(rel_time, win_size); - sp->yAxis->setLabel(cwnd_label_); + /* The left axis has the color and label for the unacked bytes, + * and the right axis will have the color and label for the window size. + */ + sp->yAxis->setLabel(cwnd_label_); sp->yAxis2->setLabel(window_size_label_); sp->yAxis2->setLabelColor(QColor(graph_color_3)); sp->yAxis2->setTickLabelColor(QColor(graph_color_3)); sp->yAxis2->setVisible(true); + + /* Keep the ticks on the two axes in sync. */ + connect(sp->yAxis, QOverload<const QCPRange&>::of(&QCPAxis::rangeChanged), sp->yAxis2, QOverload<const QCPRange&>::of(&QCPAxis::setRange)); } QString TCPStreamDialog::streamDescription() diff --git a/ui/qt/utils/color_utils.cpp b/ui/qt/utils/color_utils.cpp index e7d7c6c..e7e396d 100644 --- a/ui/qt/utils/color_utils.cpp +++ b/ui/qt/utils/color_utils.cpp @@ -148,10 +148,16 @@ QRgb ColorUtils::sequenceColor(int item) bool ColorUtils::themeIsDark() { #if QT_VERSION >= QT_VERSION_CHECK(6, 5, 0) - return qApp->styleHints()->colorScheme() == Qt::ColorScheme::Dark; -#else - return qApp->palette().windowText().color().lightness() > qApp->palette().window().color().lightness(); + switch (qApp->styleHints()->colorScheme()) { + case Qt::ColorScheme::Dark: + return true; + case Qt::ColorScheme::Light: + return false; + case Qt::ColorScheme::Unknown: + break; + } #endif + return qApp->palette().windowText().color().lightness() > qApp->palette().window().color().lightness(); } // Qt < 5.12.6 on macOS always uses Qt::blue for the link color, which is @@ -191,8 +197,10 @@ const QColor ColorUtils::contrastingTextColor(const QColor color) { bool background_is_light = color.lightness() > 127; if ( (background_is_light && !ColorUtils::themeIsDark()) || (!background_is_light && ColorUtils::themeIsDark()) ) { + // usually black/darker color in light mode and white/lighter color in dark mode return QApplication::palette().text().color(); } + // usually white/lighter color in light mode and black/darker color in dark mode return QApplication::palette().base().color(); } diff --git a/ui/qt/welcome_page.ui b/ui/qt/welcome_page.ui index afc50f5..d1a0c4f 100644 --- a/ui/qt/welcome_page.ui +++ b/ui/qt/welcome_page.ui @@ -304,6 +304,9 @@ a:hover { <property name="textInteractionFlags"> <set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> </property> + <property name="wordWrap"> + <bool>true</bool> + </property> </widget> </item> <item> diff --git a/ui/qt/widgets/byte_view_text.cpp b/ui/qt/widgets/byte_view_text.cpp index e81dc0a..a85fd91 100644 --- a/ui/qt/widgets/byte_view_text.cpp +++ b/ui/qt/widgets/byte_view_text.cpp @@ -410,7 +410,7 @@ int ByteViewText::stringWidth(const QString &line) #if (QT_VERSION >= QT_VERSION_CHECK(5, 11, 0)) return viewport()->fontMetrics().horizontalAdvance(line); #else - return viewport()->fontMetrics().boundingRect(line).width(); + return viewport()->fontMetrics().width(line); #endif } diff --git a/ui/qt/wireshark_de.ts b/ui/qt/wireshark_de.ts index a42e3c3..d100b7f 100644 --- a/ui/qt/wireshark_de.ts +++ b/ui/qt/wireshark_de.ts @@ -1466,6 +1466,10 @@ Um zum Beispiel eine neue Datei zu jeder vollen Stunde zu haben, 1 Stunde angebe <translation><html><head/><body><p>Mitschneiden beenden, nachdem die angegebene Anzahl an Paketen mitgeschnitten wurde.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Mitschneiden beenden, nachdem die angegebene Datenmenge mitgeschnitten wurde.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_en.ts b/ui/qt/wireshark_en.ts index 4478363..ef92aa8 100644 --- a/ui/qt/wireshark_en.ts +++ b/ui/qt/wireshark_en.ts @@ -1463,6 +1463,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation type="unfinished"></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation type="unfinished"></translation> </message> diff --git a/ui/qt/wireshark_es.ts b/ui/qt/wireshark_es.ts index dc08202..2118a58 100644 --- a/ui/qt/wireshark_es.ts +++ b/ui/qt/wireshark_es.ts @@ -1441,6 +1441,10 @@ Por ejemplo, use 1 hora para tener creado un nuevo archivo cada hora en punto.</ <translation><html><head/><body><p>Detiene la captura después de haber sido creado el número especificado de archivos.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Detiene la captura después de haber sido capturada la cantidad de datos especificada.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_fr.ts b/ui/qt/wireshark_fr.ts index 7c63477..13e4d4b 100644 --- a/ui/qt/wireshark_fr.ts +++ b/ui/qt/wireshark_fr.ts @@ -1443,6 +1443,10 @@ Pas exemple, inquiquez 1 heure pour avoir un nouveau fichier créé toutes les h <translation><html><head/><body><p>Arrête la capture après avoir créé le nombre de fichiers indiqués.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Arrêter la capture après avoir capturé le volume de données indiqué.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_it.ts b/ui/qt/wireshark_it.ts index 18daca0..40167e0 100644 --- a/ui/qt/wireshark_it.ts +++ b/ui/qt/wireshark_it.ts @@ -1466,6 +1466,10 @@ Ad esempio, usa 1 ora per fare in modo che un nuovo file sia creato ogni ora.</t <translation><html><head/><body><p>Ferma la cattura dopo che il numero di file specificato è stato creato.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation>Ferma la cattura dopo che il numero di file specificato è stato creato.</translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Ferma la cattura dopo che una certa quantità di dati è stata catturata.</p></body></html></translation> </message> @@ -12910,7 +12914,7 @@ a:hover { </message> <message> <source>Export TLS Session Keys…</source> - <translation>Esporta chiavi di sessione SSL...</translation> + <translation>Esporta chiavi di sessione TLS...</translation> </message> <message> <source>List Files</source> @@ -13777,7 +13781,7 @@ a:hover { </message> <message> <source>Show UTP multicast stream statistics.</source> - <translation>Mostra le statistiche del flusso multicast UDP.</translation> + <translation>Mostra le statistiche del flusso multicast UTP.</translation> </message> <message> <source>WLAN Traffic</source> @@ -14723,7 +14727,7 @@ a:hover { </message> <message> <source>There are no TLS Session Keys to save.</source> - <translation>Non ci sono chiavi di sessione SSL da salvare.</translation> + <translation>Non ci sono chiavi di sessione TLS da salvare.</translation> </message> <message numerus="yes"> <source>Export TLS Session Keys (%Ln key(s))</source> diff --git a/ui/qt/wireshark_ja_JP.ts b/ui/qt/wireshark_ja_JP.ts index 610d74d..631db5c 100644 --- a/ui/qt/wireshark_ja_JP.ts +++ b/ui/qt/wireshark_ja_JP.ts @@ -1458,6 +1458,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation><html><head/><body><p>指定した数のファイルを作成した後キャプチャを停止します</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation>指定したファイル数が作成された後にキャプチャを停止します</translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>指定した量のデータがキャプチャされたらキャプチャを停止します</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_ko.ts b/ui/qt/wireshark_ko.ts index 8a2f795..f9851df 100644 --- a/ui/qt/wireshark_ko.ts +++ b/ui/qt/wireshark_ko.ts @@ -1459,6 +1459,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation><html><head/><body><p>지정한 개수의 파일을 생성한 후 캡처를 정지합니다.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>지정한 분량의 데이터를 캡처한 후 캡처를 정지합니다.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_pl.ts b/ui/qt/wireshark_pl.ts index 65abbd7..ed6ef97 100644 --- a/ui/qt/wireshark_pl.ts +++ b/ui/qt/wireshark_pl.ts @@ -1470,6 +1470,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation><html><head/><body><p>Zatrzymaj przechwytywanie po stworzeniu określonej liczby plików.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Zatrzymaj przechwytywanie po przekroczeniu ustalonego rozmiaru danych.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_ru.ts b/ui/qt/wireshark_ru.ts index 870d0df..b3d6b73 100644 --- a/ui/qt/wireshark_ru.ts +++ b/ui/qt/wireshark_ru.ts @@ -1447,6 +1447,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation><html><head/><body><p>Останавливать захват после создания указанного числа файлов.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Остановить захват при достижении указанного объёма захваченных данных.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_sv.ts b/ui/qt/wireshark_sv.ts index d9936d0..5db51c9 100644 --- a/ui/qt/wireshark_sv.ts +++ b/ui/qt/wireshark_sv.ts @@ -1443,6 +1443,10 @@ Till exempel, använd 1 timma för att en ny fil skall skapas varje timma vid he <translation><html><head/><body><p>Sluta fånga efter att det angivna antalet filer har skapats.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Sluta fånga efter att den angivna mängden data har infångats.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_tr_TR.ts b/ui/qt/wireshark_tr_TR.ts index 1328942..b96f551 100644 --- a/ui/qt/wireshark_tr_TR.ts +++ b/ui/qt/wireshark_tr_TR.ts @@ -1439,6 +1439,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation><html><head/><body><p>Belirtilen sayıda dosya oluşturulduktan sonra yakalamayı durdurun.</p></body></html></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation><html><head/><body><p>Belirtilen miktarda veri yakalandıktan sonra yakalamayı durdurun.</p></body></html></translation> </message> diff --git a/ui/qt/wireshark_uk.ts b/ui/qt/wireshark_uk.ts index 4720152..75040b3 100644 --- a/ui/qt/wireshark_uk.ts +++ b/ui/qt/wireshark_uk.ts @@ -1446,6 +1446,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation type="unfinished"></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation type="unfinished"></translation> </message> diff --git a/ui/qt/wireshark_zh_CN.ts b/ui/qt/wireshark_zh_CN.ts index 13b953b..d57f206 100644 --- a/ui/qt/wireshark_zh_CN.ts +++ b/ui/qt/wireshark_zh_CN.ts @@ -1437,6 +1437,10 @@ For example, use 1 hour to have a new file created every hour on the hour.</sour <translation type="unfinished"></translation> </message> <message> + <source>Stop capturing after the specified number of files have been created.</source> + <translation type="unfinished"></translation> + </message> + <message> <source><html><head/><body><p>Stop capturing after the specified amount of data has been captured.</p></body></html></source> <translation type="unfinished"></translation> </message> |