tree: set correct border value before creating floater

master
random human 6 years ago committed by Drew DeVault
parent 5becce8005
commit 0ba959f1ce

@ -755,14 +755,14 @@ void container_set_floating(struct sway_container *container, bool enable) {
struct sway_container *old_parent = container->parent;
container_detach(container);
workspace_add_floating(workspace, container);
container_floating_set_default_size(container);
container_floating_resize_and_center(container);
if (container->view) {
view_set_tiled(container->view, false);
if (container->view->using_csd) {
container->border = B_CSD;
}
}
container_floating_set_default_size(container);
container_floating_resize_and_center(container);
if (old_parent) {
container_reap_empty(old_parent);
}

@ -612,6 +612,10 @@ void view_map(struct sway_view *view, struct wlr_surface *wlr_surface,
&view->surface_new_subsurface);
view->surface_new_subsurface.notify = view_handle_surface_new_subsurface;
if (decoration) {
view_update_csd_from_client(view, decoration);
}
if (view->impl->wants_floating && view->impl->wants_floating(view)) {
view->container->border = config->floating_border;
view->container->border_thickness = config->floating_border_thickness;
@ -635,10 +639,6 @@ void view_map(struct sway_view *view, struct wlr_surface *wlr_surface,
view_update_title(view, false);
container_update_representation(view->container);
if (decoration) {
view_update_csd_from_client(view, decoration);
}
if (fullscreen) {
container_set_fullscreen(view->container, true);
arrange_workspace(view->container->workspace);

Loading…
Cancel
Save