wireshark/ui/qt/widgets
Michael Mann f789736521 Qt: Handle UAT editor dialogs explicitly.
QAbstractItemView assumes that editors are widgets, not windows.
QAbstractItemView::edit calls QAbstractItemViewPrivate::openEditor,
which simply calls show() and setFocus() on the editor widget. If that
widget happens to be a native dialog, its event loop might not be
processed. This is the case on macOS at least.

Create widgets derived from QLineEdit that edit the value directly along
with a button that can open the associated modal dialog. Install event
filters so that we keep the correct tab behavior between fields of the
UAT.

Bug: 13958
Ping-Bug: 14031
Bug: 7761
Change-Id: Ie5f0a5cbde33bb9add8217029c2063a0bbfd804a
Reviewed-on: https://code.wireshark.org/review/23015
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
2018-03-07 10:09:47 +00:00
..
additional_toolbar.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
additional_toolbar.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
apply_line_edit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
apply_line_edit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
byte_view_text.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
byte_view_text.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
capture_filter_combo.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
capture_filter_combo.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
capture_filter_edit.cpp Qt: Improve our capture filter completions. 2018-02-22 05:01:53 +00:00
capture_filter_edit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
clickable_label.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
clickable_label.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
display_filter_combo.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
display_filter_combo.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
display_filter_edit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
display_filter_edit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
dissector_tables_view.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
dissector_tables_view.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
drag_drop_toolbar.cpp Qt: Replace the toolbar extension icon. 2018-02-17 08:26:46 +00:00
drag_drop_toolbar.h Qt: Replace the toolbar extension icon. 2018-02-17 08:26:46 +00:00
drag_label.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
drag_label.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
editor_color_dialog.cpp Qt: Handle UAT editor dialogs explicitly. 2018-03-07 10:09:47 +00:00
editor_color_dialog.h Qt: Handle UAT editor dialogs explicitly. 2018-03-07 10:09:47 +00:00
editor_file_dialog.cpp Qt: Handle UAT editor dialogs explicitly. 2018-03-07 10:09:47 +00:00
editor_file_dialog.h Qt: Handle UAT editor dialogs explicitly. 2018-03-07 10:09:47 +00:00
elided_label.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
elided_label.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
expert_info_view.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
expert_info_view.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
export_objects_view.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
export_objects_view.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
field_filter_edit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
field_filter_edit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
find_line_edit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
find_line_edit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
follow_stream_text.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
follow_stream_text.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
interface_toolbar_lineedit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
interface_toolbar_lineedit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
label_stack.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
label_stack.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
overlay_scroll_bar.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
overlay_scroll_bar.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
pref_module_view.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
pref_module_view.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
qcustomplot.cpp Fix MacOS build 2017-08-31 06:29:25 +00:00
qcustomplot.h Qt: Move utils to separate utils directory 2017-07-26 10:11:55 +00:00
range_syntax_lineedit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
range_syntax_lineedit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
stock_icon_tool_button.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
stock_icon_tool_button.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
syntax_line_edit.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
syntax_line_edit.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
tabnav_tree_view.cpp replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00
tabnav_tree_view.h replace SPDX identifier GPL-2.0+ with GPL-2.0-or-later. 2018-02-08 14:57:36 +00:00