GNOME Bugzilla – Bug 782357
Implement step in/over for wip/debugger
Last modified: 2017-05-09 21:42:12 UTC
Created attachment 351398 [details] [review] Step in/over implementation Add step in and step over for wip branch wip/chergert/debugger Fix error by 1 in stopped line TODO: - avoid to load buffer if previous stopped line is on same buffer - scroll to stopped line - highlight stopped line DOUBTS: Randomly, source file is not loaded into the view (seems related with async but cannot find the problem)
Review of attachment 351398 [details] [review]: Some style nits, but once those are fixed can probably merge to the branch. ::: contrib/mi2/mi2-client.c @@ +970,3 @@ +void +mi2_client_step_async (Mi2Client *self, + * Fix alignment here @@ +1003,3 @@ +void +mi2_client_next_async (Mi2Client *self, + task = g_task_new (self, cancellable, callback, user_data); and here @@ +1090,3 @@ +mi2_client_step_finish (Mi2Client *self, + GAsyncResult *result, + * Completes an asynchronous request to mi2_client_step_async(). and here @@ +1110,3 @@ +gboolean +mi2_client_next_finish (Mi2Client *self, + g_return_val_if_fail (G_IS_TASK (result), FALSE); and here ::: contrib/mi2/mi2-client.h @@ -103,0 +104,6 @@ +void mi2_client_step_async (Mi2Client *self, + gboolean reverse, + GCancellable *cancellable, ... 3 more ... Add public API _finish() calls ::: libide/debugger/ide-debugger-view.h @@ +32,3 @@ GtkWidget *ide_debugger_view_new (void); GtkSourceBuffer *ide_debugger_view_get_buffer (IdeDebuggerView *self); +GtkSourceView *ide_debugger_view_get_view (IdeDebuggerView *self); Fix alignment of (
Created attachment 351477 [details] [review] Implement step in/over Alignment fixed
Fix to get view from debugger perspective worked! TODO: - Avoid to reload buffer if previous stopped line is on same buffer - Highlight stopped line - Scroll to stopped line
Review of attachment 351477 [details] [review]: ::: contrib/mi2/mi2-client.c @@ +971,3 @@ +mi2_client_step_async (Mi2Client *self, + gboolean reverse, + * Asynchronously executes the continue command. All of these still need fixing.
Created attachment 351483 [details] [review] debugger: implement step in/over This implements step in/over by adding step and next operations to the Mi2Client and plumbing them in to IdeDebugger and GbpGdbDebugger.
Attachment 351483 [details] pushed as 7427400 - debugger: implement step in/over
Created attachment 351485 [details] [review] debugger: implement step in/over This implements step in/over by adding step and next operations to the Mi2Client and plumbing them in to IdeDebugger and GbpGdbDebugger.