dfa893f06a
libsysprof: ensure descendants view is categorized
2023-07-20 15:31:50 -07:00
516917d74b
tests: add category to test-callgraph
2023-07-20 15:05:29 -07:00
4d411d8586
libsysprof: update categories.txt
2023-07-20 15:00:21 -07:00
5d28ed9a74
libsysprof: add io and ipc categories
2023-07-20 15:00:05 -07:00
79a7fb5b22
libsysprof: update categories.txt
2023-07-20 14:37:33 -07:00
3763a4a4e9
libsysprof: update category groupings
2023-07-20 14:37:14 -07:00
c8e09327fc
libsysprof: add simple text format for category rules
2023-07-20 14:30:34 -07:00
cab3f086f7
build: ensure enums header is build
2023-07-20 13:19:21 -07:00
1e84fe39a1
libsysprof: more categorization
2023-07-20 13:15:28 -07:00
4d2cdb2abe
libsysprof: implement category inheretance
...
and remove template type, just keep that with layout.
2023-07-20 13:07:51 -07:00
ecdcfb83d0
sysprof: add toggles to categorize frames
2023-07-20 12:30:11 -07:00
ae7201c9ff
libsysprof: use callgraph node to categorize for icons
2023-07-20 12:20:25 -07:00
92d2cedb8d
libsysprof: add API to categorize callgraph
...
This just gets the plumbing in place with some basic categorization for
callgraph information. The real work of categorizing by nick/symbol still
needs to be done (some can be copied from SysprofCategoryIcon).
This also adds a property and getter for SysprofCallgraphFrame which will
expose the node's category to the UI code.
2023-07-20 11:32:44 -07:00
5afb315be5
libsysprof: fix flags get type generation
2023-07-20 11:24:04 -07:00
c3918bc261
sysprof: more GTK categorization
2023-07-19 22:48:37 -07:00
ec4f2f2870
sysprof: add input category
2023-07-19 22:48:31 -07:00
adc34117f9
sysprof: give windowing category a color
2023-07-19 22:41:08 -07:00
34deb22eda
sysprof: start on symbol categorization
...
This will end up getting moved a bit to CallgraphNode so that we can
look at the parents, but for now just do this so I can test things out
a bit and see how we like it.
Eventually, the goal would be to categorize the callgraph and show that
information in the sidebar for quick overviews of where time is spent.
It's a bit laborious to keep up and add symbols for this sort of stuff,
but I think the "at a glance" value is pretty huge.
2023-07-19 22:38:23 -07:00
dece7e041a
sysprof: use tooltip-text helper
2023-07-19 22:36:58 -07:00
7f7afe9559
libsysprof: add a tooltip-text helper
2023-07-19 22:35:25 -07:00
de15129786
libsysprof: add more elf groupings
2023-07-19 22:35:12 -07:00
135e1019b2
sysprof: add ctrl+f9 for right sidebar
2023-07-19 20:44:21 -07:00
3845e0c00e
sysprof: reduce expiry check to once every 10 iterations
2023-07-19 20:36:35 -07:00
c55d1887ba
libsysprof: include lsusb information
2023-07-19 19:07:12 -07:00
d04e5c5678
libsysprof: silence stderr
2023-07-19 19:07:05 -07:00
5a68b167c3
sysprof: sort path column by default
2023-07-19 18:35:40 -07:00
118484607d
libsysprof: compress various process information
2023-07-19 18:33:00 -07:00
4d37230917
libsysprof: don't try to compress 0 length file content
2023-07-19 18:32:45 -07:00
3b2e9edeb9
libsysprof: record some system info from linux instrument
...
We might want a secondary instrument for this eventually, but for now we'll
just attach it in the Linux instrument.
This takes the output of eglinfo and glxinfo and adds it as a file in the
capture syscap. Compressed of course to keep the size smaller.
2023-07-19 18:30:24 -07:00
90ed413c5a
libsysprof: add API to add compressed file from data
2023-07-19 18:29:38 -07:00
233685d5ad
sysprof: allow setting the file to open in greeter
...
Still need controls to actually do the opening/etc, but this is a start.
2023-07-19 17:59:44 -07:00
dbb7833cbf
libsysprof: join libsysprof-analyze and libsysprof-profile
...
This brings together the two libraries back into one now that the whole
design is pretty well sorted out. They depend on roughly the same libraries
anyway and it's way easier of the single library can both read and write
the capture files (along with bringing in libsysprof-capture symbols in
a single place).
2023-07-19 17:40:41 -07:00
a990fc6b3c
sysprof: fix indent for non-expandable expanders
...
Instead of doing the indent depth trick that GtkTreeExpander does, this
changes the icon so that we keep the same indent size.
2023-07-19 17:17:42 -07:00
52513c3827
sysprof: mess with fonts less on callgraph view
2023-07-19 17:00:46 -07:00
e45bd8910b
sysprof: move view menu into callgraph menu model
...
This avoids having the extra menu in the header bar and instead puts it
where it has the most value, the callgraph.
2023-07-19 16:54:10 -07:00
b2e3611c52
sysprof: switch over to SysprofTreeExpander
...
Still a bit more to do, but good enough to switch for now.
2023-07-19 16:48:33 -07:00
4be91a73d8
sysprof: add action to make root
2023-07-19 16:48:00 -07:00
e15bc0c3b9
sysprof: add menu-model support
...
Show the menu model when right click is pressed.
2023-07-19 16:31:52 -07:00
72f84c2c64
sysprof: add expand/collapse actions
...
This way we can work with columnview and listview.
2023-07-19 15:40:42 -07:00
3ccf219ec3
sysprof: make double click vs expand work more predictably
2023-07-19 15:24:33 -07:00
e3728cf526
sysprof: fix expand support within a columnview
2023-07-19 15:16:17 -07:00
83c63a09e9
libsysprof-analyze: add n-items property to callgraph frame
...
Also add a ==0 helper in is_leaf().
2023-07-19 15:15:56 -07:00
69bcc6f200
sysprof: remove use-markup property
...
This is left to the implementation now w/ a GtkLabel child.
2023-07-19 13:53:22 -07:00
0e1de410a8
sysprof: use child property instead of title for expander
2023-07-19 13:49:47 -07:00
b6445f84e0
sysprof: import SysprofTreeExpander
...
This came from IdeTreeExpander in Builder and we can tweak it for our needs
here.
2023-07-19 13:32:21 -07:00
8078ecc60a
build: fix some various build options
2023-07-19 12:13:27 -07:00
71f73309de
sysprof: avoid some overdraws in column layer
2023-07-19 10:43:17 -07:00
88ae57dc73
sysprof: remove availability macros
...
We don't need this for the application.
2023-07-18 20:00:20 -07:00
c4f1aff24e
sysprof: clear sidebar on dispose
2023-07-18 19:37:20 -07:00
af050bc184
sysprof: add F9 for sidebar toggles
2023-07-18 17:37:33 -07:00