diff --git a/panel-plugin/weather.c b/panel-plugin/weather.c index ce772c2..7867685 100644 --- a/panel-plugin/weather.c +++ b/panel-plugin/weather.c @@ -1484,7 +1484,8 @@ upower_changed_cb(UpClient *client, on_battery, lid_closed); data->upower_on_battery = up_client_get_on_battery(client); - data->upower_lid_closed = up_client_get_lid_is_closed(client); + data->upower_lid_closed = up_client_get_lid_is_closed(client) && + !up_client_get_is_docked(client); weather_debug("upower new status: on_battery=%d, lid_closed=%d", data->upower_on_battery, data->upower_lid_closed); @@ -1736,7 +1737,8 @@ xfceweather_create_control(XfcePanelPlugin *plugin) data->upower = up_client_new(); if (data->upower) { data->upower_on_battery = up_client_get_on_battery(data->upower); - data->upower_lid_closed = up_client_get_lid_is_closed(data->upower); + data->upower_lid_closed = up_client_get_lid_is_closed(data->upower) && + !up_client_get_is_docked(data->upower); } #endif data->units = g_slice_new0(units_config);