Merge lp:~sqp/cairo-dock-core/main-add-remote-control-option into lp:~cairo-dock-team/cairo-dock-core/cairo-dock

Proposed by SQP
Status: Needs review
Proposed branch: lp:~sqp/cairo-dock-core/main-add-remote-control-option
Merge into: lp:~cairo-dock-team/cairo-dock-core/cairo-dock
Diff against target: 67 lines (+28/-8)
1 file modified
src/cairo-dock.c (+28/-8)
To merge this branch: bzr merge lp:~sqp/cairo-dock-core/main-add-remote-control-option
Reviewer Review Type Date Requested Status
Cairo-Dock Devs Pending
Review via email: mp+101247@code.launchpad.net

Commit message

Add command option -R = --remote-control : Send DBus commands to your running cairo-dock program

Description of the change

Add command option -R = --remote-control : Send DBus commands to your running cairo-dock program

more details on the forum page : http://glx-dock.org/bg_topic.php?t=5956#mess_72757

To post a comment you must log in.

Unmerged revisions

1052. By SQP

Add command option -R = --remote-control : Send DBus commands to your running cairo-dock program

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/cairo-dock.c'
2--- src/cairo-dock.c 2012-04-07 00:48:14 +0000
3+++ src/cairo-dock.c 2012-04-09 15:11:20 +0000
4@@ -315,7 +315,7 @@
5
6 //\___________________ get app's options.
7 gboolean bSafeMode = FALSE, bMaintenance = FALSE, bNoSticky = FALSE, bNormalHint = FALSE, bCappuccino = FALSE, bPrintVersion = FALSE, bTesting = FALSE, bForceIndirectRendering = FALSE, bForceOpenGL = FALSE, bToggleIndirectRendering = FALSE, bKeepAbove = FALSE, bForceColors = FALSE, bAskBackend = FALSE;
8- gchar *cEnvironment = NULL, *cUserDefinedDataDir = NULL, *cVerbosity = 0, *cUserDefinedModuleDir = NULL, *cExcludeModule = NULL, *cThemeServerAdress = NULL;
9+ gchar *cEnvironment = NULL, *cUserDefinedDataDir = NULL, *cVerbosity = 0, *cUserDefinedModuleDir = NULL, *cExcludeModule = NULL, *cThemeServerAdress = NULL, *cRemoteControl = NULL;
10 int iDelay = 0;
11 GOptionEntry pOptionsTable[] =
12 {
13@@ -365,6 +365,9 @@
14 {"locked", 'k', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE,
15 &g_bLocked,
16 _("Lock the dock so that any modification is impossible for users."), NULL},
17+ {"remote-control", 'R', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_STRING,
18+ &cRemoteControl,
19+ _("Send DBus commands to your running cairo-dock program. (ex: -R Quit)"), NULL},
20 // below options are probably useless for most of people.
21 {"keep-above", 'a', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE,
22 &bKeepAbove,
23@@ -404,6 +407,30 @@
24 return 0;
25 }
26
27+ if (cRemoteControl != NULL)
28+ {
29+ const gchar *cDBusCommand = "dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.";
30+ gchar *cCommand = g_strdup_printf ("%s%s", cDBusCommand, cRemoteControl);
31+ gchar *cResult = cairo_dock_launch_command_sync (cCommand);
32+ if (cResult != NULL)
33+ {
34+ g_print ("%s : %s\n", cCommand, cResult);
35+ g_free (cResult);
36+ }
37+ else
38+ g_print ("%s\n", cCommand);
39+ g_free (cCommand);
40+ g_free (cRemoteControl);
41+ return 0;
42+ }
43+
44+ if (bCappuccino)
45+ {
46+ const gchar *cCappuccino = _("Cairo-Dock makes anything, including coffee !");
47+ g_print ("%s\n", cCappuccino);
48+ return 0;
49+ }
50+
51 if (g_bLocked)
52 cd_warning ("Cairo-Dock will be locked.\n");
53
54@@ -432,13 +459,6 @@
55 g_free (cEnvironment);
56 }
57
58- if (bCappuccino)
59- {
60- const gchar *cCappuccino = _("Cairo-Dock makes anything, including coffee !");
61- g_print ("%s\n", cCappuccino);
62- return 0;
63- }
64-
65 //\___________________ get global config.
66 gboolean bFirstLaunch = FALSE;
67 gchar *cRootDataDirPath;

Subscribers

People subscribed via source and target branches