cleanup
This commit is contained in:
parent
3cfa01233c
commit
d6997659fa
@ -69,7 +69,7 @@ class tray_manager : public xpp::event::sink<evt::expose, evt::client_message, e
|
||||
|
||||
~tray_manager();
|
||||
|
||||
int get_width() const;
|
||||
unsigned get_width() const;
|
||||
|
||||
void setup(const config& conf, const string& module_section_name);
|
||||
void activate();
|
||||
|
@ -374,8 +374,6 @@ void renderer::flush() {
|
||||
|
||||
m_surface->flush();
|
||||
m_connection.clear_area(0, m_window, 0, 0, m_bar.size.w, m_bar.size.h);
|
||||
// TODO
|
||||
// m_connection.copy_area(m_pixmap, m_window, m_gcontext, 0, 0, 0, 0, m_bar.size.w, m_bar.size.h);
|
||||
m_connection.flush();
|
||||
|
||||
if (!m_snapshot_dst.empty()) {
|
||||
|
@ -130,6 +130,10 @@ unsigned int tray_client::height() const {
|
||||
}
|
||||
|
||||
void tray_client::clear_window() const {
|
||||
if (!mapped()) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Do not produce Expose events for the embedder because that triggers an infinite loop.
|
||||
m_connection.clear_area_checked(0, embedder(), 0, 0, width(), height());
|
||||
m_connection.clear_area_checked(1, client(), 0, 0, width(), height());
|
||||
@ -327,6 +331,7 @@ void tray_client::update_bg() const {
|
||||
m_log.trace("%s: Update background", name());
|
||||
|
||||
// Composite background slice with background color.
|
||||
// TODO this doesn't have to be done if the background color is not transparent.
|
||||
m_context->clear();
|
||||
*m_context << CAIRO_OPERATOR_SOURCE << *m_bg_slice->get_surface();
|
||||
m_context->paint();
|
||||
|
@ -77,6 +77,7 @@ void tray_manager::setup(const config& conf, const string& section_name) {
|
||||
}
|
||||
|
||||
// Apply user-defined scaling
|
||||
// TODO maybe remove
|
||||
auto scale = conf.get(section_name, "tray-scale", 1.0);
|
||||
client_height *= scale;
|
||||
|
||||
@ -84,6 +85,7 @@ void tray_manager::setup(const config& conf, const string& section_name) {
|
||||
|
||||
// Set user-defined foreground and background colors.
|
||||
// TODO maybe remove
|
||||
// TODO only run background manager, etc. when the background has transparency.
|
||||
m_opts.background = conf.get(section_name, "tray-background", m_bar_opts.background);
|
||||
m_opts.foreground = conf.get(section_name, "tray-foreground", m_bar_opts.foreground);
|
||||
|
||||
@ -99,7 +101,7 @@ void tray_manager::setup(const config& conf, const string& section_name) {
|
||||
activate();
|
||||
}
|
||||
|
||||
int tray_manager::get_width() const {
|
||||
unsigned tray_manager::get_width() const {
|
||||
return m_tray_width;
|
||||
}
|
||||
|
||||
@ -331,7 +333,7 @@ void tray_manager::query_atom() {
|
||||
* Set color atom used by clients when determing icon theme
|
||||
*/
|
||||
void tray_manager::set_tray_colors() {
|
||||
m_log.trace("tray: Set _NET_SYSTEM_TRAY_COLORS to %x", m_opts.foreground);
|
||||
m_log.trace("tray: Set _NET_SYSTEM_TRAY_COLORS to 0x%08x", m_opts.foreground);
|
||||
|
||||
auto r = m_opts.foreground.red_i();
|
||||
auto g = m_opts.foreground.green_i();
|
||||
@ -460,10 +462,10 @@ void tray_manager::process_docking_request(xcb_window_t win) {
|
||||
|
||||
client->add_to_save_set();
|
||||
|
||||
client->notify_xembed();
|
||||
|
||||
client->ensure_state();
|
||||
|
||||
client->notify_xembed();
|
||||
|
||||
m_clients.emplace_back(std::move(client));
|
||||
} catch (const std::exception& err) {
|
||||
m_log.err("tray: Failed to setup tray client removing... (%s)", err.what());
|
||||
|
Loading…
Reference in New Issue
Block a user