update transparent background when the widget is moving
This commit is contained in:
parent
8d87b0f063
commit
71f7a9f8ac
@ -1413,6 +1413,9 @@ namespace detail
|
||||
else
|
||||
native_interface::move_window(wd->other.attribute.frame->container, wd->pos_root.x, wd->pos_root.y);
|
||||
|
||||
if (wd->displayed() && wd->effect.bground)
|
||||
window_layer::make_bground(wd);
|
||||
|
||||
for (auto child : wd->children)
|
||||
_m_move_core(child, delta);
|
||||
}
|
||||
|
||||
@ -544,10 +544,19 @@ namespace API
|
||||
internal_scope_guard lock;
|
||||
if(restrict::window_manager.move(iwd, x, y, false))
|
||||
{
|
||||
if (category::flags::root != iwd->other.category)
|
||||
iwd = iwd->seek_non_lite_widget_ancestor();
|
||||
restrict::core_window_t* update_wd = nullptr;
|
||||
if (iwd->displayed() && iwd->effect.bground)
|
||||
{
|
||||
update_wd = iwd;
|
||||
restrict::window_manager.update(iwd, true, false);
|
||||
}
|
||||
|
||||
restrict::window_manager.update(iwd, false, false);
|
||||
restrict::core_window_t* anc = iwd;
|
||||
if (category::flags::root != iwd->other.category)
|
||||
anc = iwd->seek_non_lite_widget_ancestor();
|
||||
|
||||
if (anc != update_wd)
|
||||
restrict::window_manager.update(anc, false, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user