summaryrefslogtreecommitdiffstats
path: root/src/dbus_handlers.c
blob: 25609f58447f203a7576f722a3d89370309f1e5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
 * function and data types for signal handlers
 *
 * Copyright (c) 2015 Ultimaker B.V.
 * Author: Olliver Schinagl <o.schinagl@ultimaker.com>
 *
 * SPDX-License-Identifier:	AGPL-3.0+
 */

#include <Elementary.h>

#include "dbus_handlers.h"
#include "eulogium_item_list.h"

void on_method_generic_ret(void *data, const Eldbus_Message *msg, Eldbus_Pending *pending EINA_UNUSED)
{

	struct list_item *item = data;
	const char *errname, *errmsg;
	Eina_Bool state;

	if (eldbus_message_error_get(msg, &errname, &errmsg)) {
		EINA_LOG_ERR("%s %s", errname, errmsg);
		return;
	}
}

void on_method_is_network_powered_ret(void *data, const Eldbus_Message *msg, Eldbus_Pending *pending EINA_UNUSED)
{
	struct list_item *item = data;
	const char *errname, *errmsg;
	Eina_Bool state;

	if (eldbus_message_error_get(msg, &errname, &errmsg)) {
		EINA_LOG_ERR("%s %s", errname, errmsg);
		return;
	}
	if (!eldbus_message_arguments_get(msg, "b", &state)) {
		EINA_LOG_ERR("Failed to get networking state.");
		return;
	}
	if (!item->_widget)
		return;

	EINA_LOG_INFO("%s is now %d\n", eldbus_message_member_get(msg), state);
	elm_check_state_set(item->_widget, state);
}

void on_signal_network_power_changed_ret(void *data, const Eldbus_Message *msg)
{
	on_method_is_network_powered_ret(data, msg, NULL);
}