Commit graph

105 commits

Author SHA1 Message Date
Stefan Sauer
248d18ee72 GstDebugViewer/Timeline: port timeline widgets to gtk3 2016-03-25 18:58:49 +01:00
Stefan Sauer
9deda12d08 GstDebugViewer: basic port to gtk3 and python gobject 2016-03-25 18:58:49 +01:00
René Stadler
658690c296 timeline: disable tooltip while scrolling 2014-09-11 20:51:48 +02:00
René Stadler
b3960cf8e0 timeline: fix incorrect position after scrolling using the timeline
Apparently events are dropped internally, so the last position after you stop
dragging can be off.
2014-09-11 20:51:48 +02:00
René Stadler
66ed3bb258 Use pango markup instead of attributes
Attributes don't work from introspection, so this blocks porting to gtk3.

In MessageColumn, admit that multiple highlighters don't actually work.
2014-09-11 20:51:48 +02:00
René Stadler
634f17ed7d findbar: highlight multiple matches in a message 2014-09-11 20:51:48 +02:00
René Stadler
6cfca1c322 timeline: only redraw updated parts of the graph
Improves rendering performance a lot.
2014-09-11 20:51:48 +02:00
René Stadler
af308379b4 timeline: fix position rectangle missing on first click
Regression caused by previous commit.
2014-09-11 20:51:48 +02:00
René Stadler
985ef29bb3 timeline: only redraw required areas when updating position rectangle 2014-09-11 20:51:48 +02:00
René Stadler
ca6aee7388 timeline: clean up widget drawing 2014-09-11 20:51:48 +02:00
René Stadler
2d508773cc timeline: make log level calculation a lot faster
This is the step where the timeline graph gets colored with the individual log
level colors. It's roughly 4.5 times faster now. Probably can be made even
better, the code also needs a cleanup.
2014-09-11 20:51:48 +02:00
René Stadler
409ae7e522 timeline: remove broken actions from context menu
Hide lines before/after doesn't work as expected in this case.
2014-09-11 20:51:47 +02:00
René Stadler
c8dc50da40 timeline: grab when scrolling in TimelineWidget
Also use gdk_event_request_motions.
2014-09-11 20:51:47 +02:00
René Stadler
bff238279d timeline: move mouse handling into TimelineWidget 2014-09-11 20:51:47 +02:00
René Stadler
039f5a1d7b timeline: replace self.connect calls with vmethod overrides 2014-09-11 20:51:47 +02:00
René Stadler
980aca88cf timeline: don't select row when changing position in the timeline
Behaves just like the scrollbar now.
2014-09-11 20:51:47 +02:00
René Stadler
ad959763af timeline: stop scanning the file while filtering 2014-09-11 20:51:47 +02:00
René Stadler
6d6f71049f timeline: small cleanup 2014-09-11 20:51:47 +02:00
René Stadler
ae75acd50d Timeline: small cleanup 2014-09-11 20:51:46 +02:00
Stefan Kost
4e334e0e00 Add 'fixme' and 'trace' log levels 2014-09-11 20:51:46 +02:00
Stefan Kost
5fae4aa235 timeline: add tooltip to histogram as well 2014-09-11 20:51:46 +02:00
René Stadler
c89cada72a timeline: fix grey background artifact when enlarging window 2014-09-11 20:51:46 +02:00
René Stadler
05aa65551a Fix glib warnings on model property access
Seems like pygobject can all of the sudden not handle a NULL model on a
property. Using the getter works around this. Also using the setter now for
consistency.
2014-09-11 20:51:46 +02:00
René Stadler
e46367c073 timeline: fix possible lag when dragging on timeline
I need to idle-aggregate scroll updates, since gtk performs heavy operations in
a synchronous fashion here (ironically, they do that to make scrolling smooth).
2014-09-11 20:51:46 +02:00
René Stadler
d71d09759b Split giant GUI module into submodules 2014-09-11 20:51:46 +02:00
René Stadler
7b57fe2423 timeline: fix timestamp binary search
Fixes dragging the mouse over bigger gaps of log activity making the red
position rectangle come out next to the mouse pointer. Also selects the proper
row now, not randomly 1-2 rows before or after the gap.
2014-09-11 20:51:45 +02:00
René Stadler
390262a363 Cleanup whitespace 2014-09-11 20:51:45 +02:00
René Stadler
c9aeb0ce2b Update vertical timeline when the widget size changes 2014-09-11 20:51:45 +02:00
René Stadler
43badaea0c Faster handling of partial expose events in timeline 2014-09-11 20:51:45 +02:00
René Stadler
35c11f13ab Add FIXME comment 2014-09-11 20:51:44 +02:00
René Stadler
04d90a4e38 Sync show-timeline action state before connecting signal handler 2014-09-11 20:51:44 +02:00
René Stadler
8b6e0d193f Timeline.py: Move per-window management into own class 2014-09-11 20:51:44 +02:00
René Stadler
500e68ca3e Re-format long line 2014-09-11 20:51:44 +02:00
René Stadler
e1182e28c3 Replace gdk.ALL_EVENTS_MASK with proper minimal set of event flags 2014-09-11 20:51:44 +02:00
René Stadler
f998069d6b Add TODO comment 2014-09-11 20:51:44 +02:00
René Stadler
e5d490cabe Use GdkColors for level column, cleanup color handling 2014-09-11 20:51:44 +02:00
René Stadler
0eb58cff84 Restore search to a consistent state when showing the search bar again 2014-09-11 20:51:43 +02:00
René Stadler
cd378c7302 Add accelerators to search result navigation actions 2014-09-11 20:51:43 +02:00
René Stadler
14f91ccecf Fix search result navigation action sensitivity when showing the find bar 2014-09-11 20:51:43 +02:00
René Stadler
f8da21fb46 Add search navigation menu items to view menu 2014-09-11 20:51:43 +02:00
René Stadler
ca40c5e58a Implement backward search result navigation 2014-09-11 20:51:43 +02:00
René Stadler
d6240e93a7 Remove dead/useless code 2014-09-11 20:51:43 +02:00
René Stadler
a176ca7797 Rename variable 2014-09-11 20:51:43 +02:00
René Stadler
cf5badd4f4 Implement lazy searching 2014-09-11 20:51:43 +02:00
René Stadler
c0bb774c43 Some search fixes 2014-09-11 20:51:43 +02:00
René Stadler
ec713b827c Add status label to find bar 2014-09-11 20:51:43 +02:00
René Stadler
99a755e56c Fix timeline warning/error indicator triangle vertical position 2014-09-11 20:51:43 +02:00
René Stadler
a6f268ab4b Add GUI utility function to add a popup menu to a widget 2014-09-11 20:51:42 +02:00
René Stadler
a073b11f63 Cleanup timeline warning/error triangle drawing, add TODOs 2014-09-11 20:51:42 +02:00
René Stadler
abc54e5360 Add tooltip to vertical timeline widget 2014-09-11 20:51:42 +02:00