Printers: Add commandline action "show-jobs"

Add action "show-jobs" to printers panel which
gets printer name as a parameter and shows user
jobs dialog.
Syntax for trigerring this action looks like:
"gnome-control-center printers show-jobs my-local-printer".

https://bugzilla.gnome.org/show_bug.cgi?id=758170
This commit is contained in:
Marek Kasik 2018-02-21 18:05:55 +01:00
parent 91328078fe
commit 873c2c6839
3 changed files with 17 additions and 1 deletions

View file

@ -166,6 +166,20 @@ execute_action (CcPrintersPanel *self,
g_variant_unref (variant);
}
/* show-jobs printer-name */
else if (g_strcmp0 (action_name, "show-jobs") == 0)
{
g_variant_get_child (action, 1, "v", &variant);
printer_name = g_variant_get_string (variant, NULL);
printer_entry = PP_PRINTER_ENTRY (g_hash_table_lookup (priv->printer_entries, printer_name));
if (printer_entry != NULL)
pp_printer_entry_show_jobs_dialog (printer_entry);
else
g_warning ("Could not find printer \"%s\"!", printer_name);
g_variant_unref (variant);
}
g_variant_unref (action_variant);
}

View file

@ -662,7 +662,7 @@ printer_jobs_dialog_free_cb (GtkDialog *dialog,
pp_jobs_dialog_free ((PpJobsDialog *) user_data);
}
static void
void
pp_printer_entry_show_jobs_dialog (PpPrinterEntry *self)
{
if (self->pp_jobs_dialog == NULL)

View file

@ -38,6 +38,8 @@ void pp_printer_entry_update_jobs_count (PpPrinterEntry *self);
GSList *pp_printer_entry_get_size_group_widgets (PpPrinterEntry *self);
void pp_printer_entry_show_jobs_dialog (PpPrinterEntry *self);
void pp_printer_entry_authenticate_jobs (PpPrinterEntry *self);
#endif /* PP_PRINTER_ENTRY_H */