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
=== modified file 'src/cairo-dock.c'
--- src/cairo-dock.c 2012-04-07 00:48:14 +0000
+++ src/cairo-dock.c 2012-04-09 15:11:20 +0000
@@ -315,7 +315,7 @@
315 315
316 //\___________________ get app's options.316 //\___________________ get app's options.
317 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;317 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;
318 gchar *cEnvironment = NULL, *cUserDefinedDataDir = NULL, *cVerbosity = 0, *cUserDefinedModuleDir = NULL, *cExcludeModule = NULL, *cThemeServerAdress = NULL;318 gchar *cEnvironment = NULL, *cUserDefinedDataDir = NULL, *cVerbosity = 0, *cUserDefinedModuleDir = NULL, *cExcludeModule = NULL, *cThemeServerAdress = NULL, *cRemoteControl = NULL;
319 int iDelay = 0;319 int iDelay = 0;
320 GOptionEntry pOptionsTable[] =320 GOptionEntry pOptionsTable[] =
321 {321 {
@@ -365,6 +365,9 @@
365 {"locked", 'k', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE,365 {"locked", 'k', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE,
366 &g_bLocked,366 &g_bLocked,
367 _("Lock the dock so that any modification is impossible for users."), NULL},367 _("Lock the dock so that any modification is impossible for users."), NULL},
368 {"remote-control", 'R', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_STRING,
369 &cRemoteControl,
370 _("Send DBus commands to your running cairo-dock program. (ex: -R Quit)"), NULL},
368 // below options are probably useless for most of people.371 // below options are probably useless for most of people.
369 {"keep-above", 'a', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE,372 {"keep-above", 'a', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE,
370 &bKeepAbove,373 &bKeepAbove,
@@ -404,6 +407,30 @@
404 return 0;407 return 0;
405 }408 }
406 409
410 if (cRemoteControl != NULL)
411 {
412 const gchar *cDBusCommand = "dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.";
413 gchar *cCommand = g_strdup_printf ("%s%s", cDBusCommand, cRemoteControl);
414 gchar *cResult = cairo_dock_launch_command_sync (cCommand);
415 if (cResult != NULL)
416 {
417 g_print ("%s : %s\n", cCommand, cResult);
418 g_free (cResult);
419 }
420 else
421 g_print ("%s\n", cCommand);
422 g_free (cCommand);
423 g_free (cRemoteControl);
424 return 0;
425 }
426
427 if (bCappuccino)
428 {
429 const gchar *cCappuccino = _("Cairo-Dock makes anything, including coffee !");
430 g_print ("%s\n", cCappuccino);
431 return 0;
432 }
433
407 if (g_bLocked)434 if (g_bLocked)
408 cd_warning ("Cairo-Dock will be locked.\n");435 cd_warning ("Cairo-Dock will be locked.\n");
409 436
@@ -432,13 +459,6 @@
432 g_free (cEnvironment);459 g_free (cEnvironment);
433 }460 }
434 461
435 if (bCappuccino)
436 {
437 const gchar *cCappuccino = _("Cairo-Dock makes anything, including coffee !");
438 g_print ("%s\n", cCappuccino);
439 return 0;
440 }
441
442 //\___________________ get global config.462 //\___________________ get global config.
443 gboolean bFirstLaunch = FALSE;463 gboolean bFirstLaunch = FALSE;
444 gchar *cRootDataDirPath;464 gchar *cRootDataDirPath;

Subscribers

People subscribed via source and target branches