After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 697207 - Watch GApplication busy state
Watch GApplication busy state
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
: 652066 (view as bug list)
Depends on: 672018
Blocks:
 
 
Reported: 2013-04-03 18:22 UTC by Cosimo Cecchi
Modified: 2014-02-24 13:49 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
shell-app: don't recreate a session proxy every time (3.53 KB, patch)
2013-04-03 18:22 UTC, Cosimo Cecchi
committed Details | Review
shell-app: track the busy state of GApplications (4.85 KB, patch)
2013-04-03 18:22 UTC, Cosimo Cecchi
committed Details | Review
panel: show spinner animation for busy applications (1.49 KB, patch)
2013-04-03 18:22 UTC, Cosimo Cecchi
committed Details | Review

Description Cosimo Cecchi 2013-04-03 18:22:11 UTC
This depends on the GLib patches at bug 672018.
Comment 1 Cosimo Cecchi 2013-04-03 18:22:13 UTC
Created attachment 240530 [details] [review]
shell-app: don't recreate a session proxy every time

Cache the connection inside the ShellAppRunningState structure instead.
Comment 2 Cosimo Cecchi 2013-04-03 18:22:16 UTC
Created attachment 240531 [details] [review]
shell-app: track the busy state of GApplications

Watch for property changes on the org.gtk.Application interface, and
transition the state to BUSY when the corresponding property is flipped
on.
Comment 3 Cosimo Cecchi 2013-04-03 18:22:19 UTC
Created attachment 240532 [details] [review]
panel: show spinner animation for busy applications
Comment 4 Cosimo Cecchi 2013-04-04 17:19:11 UTC
The GLib part has landed now, so this can be considered ready for review.
Comment 5 Florian Müllner 2013-04-04 17:22:22 UTC
(In reply to comment #4)
> The GLib part has landed now, so this can be considered ready for review.

Sure, but note that gnome-shell does not branch until 3.8.1.
Comment 6 Cosimo Cecchi 2013-04-04 17:24:48 UTC
(In reply to comment #5)

> Sure, but note that gnome-shell does not branch until 3.8.1.

Yeah sure :)
Comment 7 Florian Müllner 2013-04-04 17:26:43 UTC
Review of attachment 240532 [details] [review]:

Do we have designs for this? (The suggested behavior for "busy" applications makes sense to me, some other examples mentioned on the GLib bug not so much to be honest). The code looks good to me (e.g. you can consider it "accepted-commit-after-freeze"), I'd like a short rationale in the commit message body ...
Comment 8 Jasper St. Pierre (not reading bugmail) 2013-04-04 17:27:07 UTC
Review of attachment 240531 [details] [review]:

::: src/shell-app.c
@@ +1030,3 @@
+    return;
+
+  running_state->busy_state_id =

If we expect other properties, this should probably be "property_changed_id"
Comment 9 Cosimo Cecchi 2013-04-04 18:11:08 UTC
(In reply to comment #7)

> Do we have designs for this? (The suggested behavior for "busy" applications
> makes sense to me, some other examples mentioned on the GLib bug not so much to
> be honest).

The busy state only maps to the top panel spinner – I don't think we need any other design input for that.

The story with the other behaviors mentioned in the GLib bug is yet to figure out...especially for counters/badges we need to make sure whatever we do is going to be nicely integrated with our notifications story.

In any case, this gnome-shell bug here is only about tracking the busy state, which I think can be merged independently.
Comment 10 Cosimo Cecchi 2013-04-19 17:56:42 UTC
Pushed to master now (after changing the name of the private id variable as suggested by Jasper), since Shell branched for 3.8.

Attachment 240530 [details] pushed as b8830f4 - shell-app: don't recreate a session proxy every time
Attachment 240531 [details] pushed as 45026df - shell-app: track the busy state of GApplications
Attachment 240532 [details] pushed as 5ecf40e - panel: show spinner animation for busy applications
Comment 11 Florian Müllner 2014-02-24 13:49:21 UTC
*** Bug 652066 has been marked as a duplicate of this bug. ***