MCPcopy Create free account
hub / github.com/FedeDP/Clight / receive

Function receive

src/modules/screen.c:85–153  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

83}
84
85static void receive(const msg_t *msg, UNUSED const void *userdata) {
86 curr_msg = MSG_TYPE();
87 switch (MSG_TYPE()) {
88 case AMBIENT_BR_UPD:
89 pause_screen(state.ambient_br < conf.bl_conf.shutter_threshold, CLOGGED, false);
90 if (!paused_state) {
91 get_screen_brightness(true);
92 }
93 break;
94 case FD_UPD:
95 read_timer(screen_fd);
96 get_screen_brightness(true);
97 set_timeout(conf.screen_conf.timeout[state.ac_state], 0, screen_fd, 0);
98 break;
99 case UPOWER_UPD: {
100 upower_upd *up = (upower_upd *)MSG_DATA();
101 timeout_callback(conf.screen_conf.timeout[up->old], true);
102 break;
103 }
104 case DISPLAY_UPD:
105 pause_screen(state.display_state, DISPLAY, false);
106 break;
107 case SENS_UPD:
108 pause_screen(!state.sens_avail, SENSOR, true);
109 break;
110 case LID_UPD:
111 if (conf.bl_conf.pause_on_lid_closed) {
112 pause_screen(state.lid_state, LID, false);
113 }
114 break;
115 case SUSPEND_UPD:
116 pause_screen(state.suspended, SUSPEND, false);
117 break;
118 case SCR_TO_REQ: {
119 timeout_upd *up = (timeout_upd *)MSG_DATA();
120 if (VALIDATE_REQ(up)) {
121 const int old = conf.screen_conf.timeout[up->state];
122 conf.screen_conf.timeout[up->state] = up->new;
123 if (up->state == state.ac_state) {
124 timeout_callback(old, true);
125 }
126 }
127 break;
128 }
129 case NO_AUTOCALIB_UPD: {
130 calib_upd *up = (calib_upd *)MSG_DATA();
131 pause_screen(up->new, AUTOCALIB, true);
132 break;
133 }
134 case INHIBIT_UPD: {
135 pause_screen(state.inhibited && conf.inh_conf.inhibit_bl, INHIBIT, true);
136 break;
137 }
138 case CONTRIB_REQ: {
139 contrib_upd *up = (contrib_upd *)MSG_DATA();
140 if (VALIDATE_REQ(up)) {
141 conf.screen_conf.contrib = up->new;
142 pause_screen(conf.screen_conf.contrib == 0.0f, CONTRIB, true);

Callers

nothing calls this directly

Calls 5

pause_screenFunction · 0.85
get_screen_brightnessFunction · 0.85
read_timerFunction · 0.85
set_timeoutFunction · 0.85
timeout_callbackFunction · 0.70

Tested by

no test coverage detected