Ryan Lortie
eefd08996f
introduce GRemoteActionGroup
...
This interfaceifies the extra functions that were on GDBusActionGroup
for dealing with platform data.
The two main benefits of doing this:
- no longer have to do a silly song and dance in GApplication to avoid
calling GDBusActionGroup API from non-dbus-aware code
- the interface can be reused by the action group exporter to avoid
ugly and unbindable hook callbacks
https://bugzilla.gnome.org/show_bug.cgi?id=665737
2011-12-17 12:54:02 -05:00
Ryan Lortie
ee9f104432
GApplication: send platform data for actions again
...
Use the _full variants of the GDBusActionGroup API to send platform data
for action invocations once again.
2011-12-16 22:24:03 -05:00
Ryan Lortie
a6366dc289
GDBusActionGroup: make API just like GDBusMenuModel
...
Have one simple _get() API that returns the group immediately, in an
empty state. The group is initialised on the first attempt to interact
with it.
Leave a secret 'back door' for GApplication to do a blocking
initialisation.
2011-12-08 18:07:47 -05:00
Ryan Lortie
0fdd9985bb
GDBusActionGroup: drop ability to 'inject'
...
Also drop the GDBusActionGroupFlags that were only meant to facilitate
injection-based usage.
2011-12-08 18:05:15 -05:00
Ryan Lortie
77f6e6a97f
GApplication dbus: publish the menus again
2011-12-08 18:05:14 -05:00
Ryan Lortie
f7886d6adb
Action group exporter: clean up the API
...
Make it look more like a typical GDBusConnection API with integer
registration ID and corresponding unexport call. Kill the 'query' call.
2011-12-08 18:05:14 -05:00
Ryan Lortie
5a32769300
GApplication: simplify dbus impl
...
The error handling on register() was just totally out of hand before.
Clean that mess up.
Take out the menu export for now as well. It will be added back again
later.
2011-12-08 18:05:14 -05:00
Ryan Lortie
03d894d81f
GApplication dbus: use XML for introspection
...
The hand-written structures are hard to read and cause quite a lot of
relocations at library load time. Avoid that.
2011-12-08 18:05:14 -05:00
Ryan Lortie
3821627366
GApplication: make distinction about menus
...
Rename g_application_set_menu to g_application_set_app_menu and make a
couple of fixups. Clarify the documentation about exactly what this
menu is meant to be.
Add g_application_set_menubar and document that as well.
2011-12-08 18:05:14 -05:00
Matthias Clasen
db34b1aebe
Rename exporter APIs
...
There are no public 'exporter' objects, so don't allude to them
in the function names. At the same time, we want to make it clear
that these functions are D-Bus specific.
The new APIs are
g_action_group_dbus_export_start
g_action_group_dbus_export_query
g_action_group_dbus_export_stop
g_menu_model_dbus_export_start
g_menu_model_dbus_export_query
g_menu_model_dbus_export_stop
2011-12-08 18:05:12 -05:00
Matthias Clasen
ae0bd032ca
Add g_application_set_menu
...
This adds ane asy way to export menu information alongside
the actions that are already exported by GApplication.
2011-12-08 18:05:12 -05:00
Matthias Clasen
df4cd241e5
GApplication: use GDBusActionGroup
...
instead of the internal version of the same
2011-12-08 18:05:12 -05:00
Ryan Lortie
bc5fe41dec
GApplication: port action client to new D-Bus API
...
for compatibility with GActionGroup exporter
2011-12-08 18:05:12 -05:00
Ryan Lortie
20d1de3a1b
GApplication: use GActionGroup exporter
...
instead of home-grown internal implementation of the same
2011-12-08 18:05:12 -05:00
Ryan Lortie
8d1cc7f463
Revert "Use an XML blob for gapplication interface info"
...
This reverts commit 8013401f6e
.
2011-12-08 18:05:12 -05:00
Ryan Lortie
45818762d3
Revert "Forgot one interface..."
...
This reverts commit 30580bdca7
.
2011-12-08 18:05:12 -05:00
Matthias Clasen
30580bdca7
Forgot one interface...
2011-11-28 19:57:44 -05:00
Matthias Clasen
8013401f6e
Use an XML blob for gapplication interface info
...
This is both more readable and more efficient. Double win !
2011-11-28 19:33:24 -05:00
Ryan Lortie
95c3796d6a
GApplication: unregister action interface export
...
We missed a few cases of unexporting the action group interface (in
error cases, and on GApplication teardown).
2011-11-26 20:07:24 -05:00
Ryan Lortie
345688c9e9
GApplication: don't fail if can't get session bus
...
If we can't get on the session bus, just behave like a normal non-unique
application.
This turns out to be remarkably easy to implement and lets us avoid
adding a 'dummy' backend.
Add a test for this case as well.
Idea from Zachary Dovel.
https://bugzilla.gnome.org/show_bug.cgi?id=651997
2011-11-22 17:35:56 -05:00
Matthias Clasen
d920cb6bdb
GApplication: unregister bus name
...
https://bugzilla.gnome.org/show_bug.cgi?id=647987
2011-11-19 16:24:08 -05:00
Ryan Lortie
09429e2c82
gio static fixups
2011-10-16 21:41:15 -04:00
Ryan Lortie
f44cd41293
GApplication: allow '-' in application ID
...
By converting it to _ before trying to shove it into an object path.
https://bugzilla.gnome.org/show_bug.cgi?id=652025
2011-06-08 22:21:15 -04:00
Ryan Lortie
9793919d7b
Whitespace fixes
2011-05-18 17:56:50 -04:00
Ryan Lortie
0e63b57eea
GApplication: fix remote action states
...
Fix up remote_action_info_new_from_iter() to do its job better and use
it from all places that it's appropriate.
Closes #650236 .
2011-05-18 17:53:07 -04:00
Ryan Lortie
53389d963d
GApplication: fix leaked object path
...
In the case that we fail to become the primary instance we should
unregister *both* object paths that we registered during our attempt.
2011-04-10 07:50:26 -04:00
Matthias Clasen
eec2cb1af8
Avoid a segfault in g_application_register()
...
Patch by Mikkel Kamstrup Erlandsen
https://bugzilla.gnome.org/show_bug.cgi?id=639177
2011-01-10 20:29:29 -05:00
Cosimo Cecchi
056a5d753d
gapplication: plug a memory leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=637237
2010-12-15 11:43:14 +01:00
Aleksander Morgado
98bfc8afda
Fixes GB#635187: Always unbox GVariant parameter received via dbus for an action
2010-11-29 08:06:31 -05:00
Ryan Lortie
641f622bfe
GApplication: emit a signal when starting up
...
Send a signal to the bus when registration is successful and we are the
primary instance.
2010-10-28 23:06:53 -04:00
Ryan Lortie
bf7ba2fbdc
GApplication: use infinite timeout for CommandLine
...
Use an infinite DBus timeout for sending a CommandLine request to the
primary instance.
This resolves a bit of bug #633339 .
2010-10-28 16:47:13 -04:00
Ryan Lortie
d8d2513710
Implement (untested) GApplication actions support
2010-10-25 14:32:07 -04:00
Matthias Clasen
7c735b05f7
Move a confusing comment to the right place
2010-10-23 12:01:51 +02:00
Ryan Lortie
e33deea16c
GApplication: reduce GVariant abuse
...
Don't use GVariant* as the representation for the argument array.
2010-10-19 19:38:00 +02:00
Ryan Lortie
0ce1462d1a
GApplication: merge DBus interface into C source
...
instead of having it in a separate file that causes problems to the
build system (I want to avoid using EXTRA_DIST here).
2010-10-19 13:44:30 +02:00
Ryan Lortie
3e6eee806c
GApplication: add remote commandline support
2010-10-19 01:16:46 +02:00
Ryan Lortie
a7923a4aa3
new GApplication implementation
2010-10-19 01:16:46 +02:00