ce9cd3ed43
build: Include meson files in dist
2016-12-01 02:47:03 -05:00
52bc856be4
build: Add support for Meson
2016-12-01 02:34:11 -05:00
44ff1f0396
move icons to libsysprof resources
2016-11-23 19:15:38 -08:00
9d8085a73b
window: disable record button while generating profile
2016-11-16 20:14:44 -08:00
20f9f47966
selection: rename SpVisualizerSelection to SpSelection
...
We want this in sysprof.h (without UI components) so that we
can use it to filter things in profilers. Therefore, we don't
need to make it namespaced to "visualizers" since a time range
selection is a fairly straightforward, and non-UI confined
implementation.
2016-10-10 16:24:22 -07:00
62189670af
callgraph: update callgraph when selection changes
...
When the visualizer selection is changed, we can update the
callgraph to ensure all samples fall within the time range.
2016-10-08 20:09:49 -07:00
7c55f379bb
theme-manager: add SpThemeManager and use it for custom css
...
We want to set some custom backgrounds for the visualizers, and
those need to track with the current theme. SpThemeManager will
watch the systems theme changes (including dark theme) and
update the loaded CSS resources as necessary.
2016-10-08 16:28:18 -07:00
527f95fa77
help-overlay: add help overlay to SpWindow and app menu
...
This adds an app menu and window action to activate the keyboard
shortcuts overlay.
2016-10-08 15:09:38 -07:00
69f5da327d
app: add more complete keybindings
...
This matches more closely to Epiphany, which for better or worse
is the closest use-case we have currently for our zoom design.
2016-09-30 17:32:41 -07:00
151895749d
window: remove unused variable
2016-09-30 16:56:46 -07:00
879d00199a
window: add tooltips
2016-09-30 13:55:53 -07:00
bd008c0826
app: add accels for zoom actions
...
Adds ctrl++, ctrl+-, and ctrl+0 for typical zoom operations on
the visualizers.
2016-09-30 13:29:09 -07:00
2d8401a542
window: use SpMultiPaned
...
This allows us to have the SpVisualizerView grow and shrink
along with the visualizer content up until the user has manually
moved the paned handle. At which point it clamps to that
position as allowed by the size request phases.
2016-09-30 13:00:31 -07:00
342ee71119
window: add separators in gear menu
2016-09-28 21:02:01 -07:00
b9b96184cd
visualizers: wire zoom manager to visualizers
...
This gets the basic zoom control working. I anticipate we'll
need some additional changes once we land panning support.
2016-09-28 19:56:39 -07:00
aaf521ef1d
window: set minimum zoom level
2016-09-28 18:11:32 -07:00
9bd3891d43
window: use floor() instead of ceil()
...
Otherwise we get 111% instead of 110%.
2016-09-28 18:08:34 -07:00
60e917a5d1
window: update zoom reset label to display current zoom
2016-09-28 18:06:33 -07:00
baf26fa0b6
build: add $LIBM to the sysprof binary
2016-09-28 18:06:00 -07:00
50bfd8db72
zoom: add plumbing for zoom to SpWindow
...
This uses the new ZoomManager to wire up zoom controls for the
main window. We had to switch away from GMenu to give ourselves
the control we will need for the zoom label of 100% which still
needs to be wired up.
2016-09-28 17:51:48 -07:00
388557cdfe
window: expand for visualizers as necessary
...
We want the paned to expand for the visualizers so that the
UI looks natural as often as possible without scrolling.
2016-09-28 13:23:51 -07:00
afbb2cd936
window: use GtkFileChooserNative
...
This helps remove gtk_dialog_run() in favor of
gtk_native_dialog_run() which safely handles issues with
the primary main loop making progress.
2016-09-28 12:30:29 -07:00
f8a0f2701e
visualizer-view: add SpVisualizerView
...
This adds a new helper widget SpVisualizerView to simplify using
visualizers from applications using libsysprof-ui-2 such as
Builder.
We can manage the view range, zoom, etc from this widget going
forward.
2016-09-27 23:15:56 -07:00
5a5bf1900f
visualizer-ticks: adjust ticks opacity
...
We can lighten the ticks a bit here and still be theme agnostic.
2016-09-27 18:33:17 -07:00
7aee4c428b
css: tweak css for visualizers
...
Just some style fixes that make things look better when playing
around with the paned and showing overscroll.
2016-09-27 17:22:05 -07:00
aa21c2379f
visualizer-ticks: start on minimal ticks implementation
...
We need some sort of scale for content, so we will do this with
an overlay for now. However, we will also want something to be
able to do selections in the future.
This still needs some iteration for correctness, but this sort
of gets the ball rolling.
2016-09-27 15:42:26 -07:00
bdc62bac1e
visualizer-list: add SpVisualizerList
...
This simplifies the visualizer reader and time propagation. It
will also give us a single place to manage zoom levels when we
get to that.
2016-09-26 19:21:10 -07:00
7e38d929da
window: set y scale for graph
2016-09-26 17:38:29 -07:00
7d0cce7bdf
ui: remove legacy CSS selectors
...
Now that we bumped the gtk+ requirement, we can remove the old
CSS selectors that are obsolete.
2016-09-25 12:21:56 -07:00
3b9ea07d31
cpu: discover cpu counters from SpCaptureReader
...
This allows us to dynamically discover the cpu counters from the
capture by looking for the "CPU Total" category.
2016-09-25 12:19:53 -07:00
99ff8f2a5c
wip: visualizers
2016-09-23 19:18:36 -07:00
0e89182300
sp-window: Fix profiler menu button alignment
2016-07-13 09:41:08 +02:00
7bbe8cec72
credits: make strings arrays const
2016-06-21 12:49:26 -07:00
6e597e8898
window: ignore STATE_0
2016-06-21 12:44:36 -07:00
96c8032ab0
sp-window: Hide info bar when starting to record
2016-06-05 18:32:52 +02:00
113baca655
build: fix a few warnings from clang
2016-04-28 04:00:27 -07:00
ff395e94c6
window: protect against delayed ::stopped
...
Large captures could take a while to complete the stop request, so protect
against that so that the user can't accidentally start another capture.
2016-04-18 00:02:50 -07:00
117d4c480d
about: handle response from about dialog
...
On systems where this shows a close button, we need to handle the
response and destroy the dialog.
2016-04-16 17:22:52 -07:00
36008c4ab4
window: notify the user when no valid samples were collected
...
If we failed to collect any samples in the target profile, let the user
know why the callgraph is empty.
2016-04-15 18:11:31 -07:00
d4ab108786
window: title should be set on headerbar
...
When set on the window, we seem to lose the value when inserting the
headerbar, resulting in the title being "sysprof" (binary name) according
to the shell. Setting this on the headerbar seems to fix that.
2016-04-15 17:51:32 -07:00
ae5338aaf1
theme: add fallback styling for 3.18
...
New styling doesn't apply on 3.18 which is used on F23. Since packages are
being built for that, might as well fix the styling.
2016-04-15 17:17:44 -07:00
9ba08c8d93
window: reset profiler after capture
...
We don't really want to reuse SpProfiler instances after running, so when
we transition to browsing, reset the profiler instance.
2016-04-14 16:20:32 -07:00
82bdda6f6f
window: stop the profiler when closing the window
...
This is probably more useful when having multiple windows up, so try to
clean things up by stopping the profiler and delaying the close.
2016-04-14 05:49:01 -07:00
cfd49d2c05
window: call stop() if we are currently recording
2016-04-14 05:40:02 -07:00
88d3ae3b74
profiler: extract SpProfiler into an interface
...
It would be nice to be able to support a remote profiler session in the
future, so add SpLocalProfiler implementation of SpProfiler interface.
2016-04-14 02:37:28 -07:00
5d25b8a242
build: be a bit more flexible with configuration options
...
It would be nice if we can be a bit more flexible with where the
sysprof-cli tool can run. Lets try to break out the system checks a
bit more.
2016-04-14 00:59:28 -07:00
a8205c7c29
build: allow disabling the GTK interface with --disable-gtk
...
For some systems, such as embedded Linux including ARM, we might want to
just compile libsysprof/sysprof-cli without the GTK user interface. This
allows for that. You can copy the capture files to your visualization
host to render the results.
2016-04-13 21:32:01 -07:00
61fed5b8f2
build: split profiler and gtk widgets into separate libraries
...
This will make it easier to support installing just sysprof-cli and the
sysprofd helper daemon on systems where GTK is not feasible or necessary.
This does not, however, do that. It simply gets things broken up into
pieces.
2016-04-13 21:09:52 -07:00
f69e18f4c8
window: add screenshot action
...
Shows the screenshot (textual representation) of the descendants tree in
a new window/textview.
2016-04-13 19:40:54 -07:00
f73f5e98ec
save-as: add .syscap extension if necessary
...
We have *.syscap glob registered with the mime types, so ensure that the
file gets saved with that extension.
2016-04-13 09:23:21 -07:00