[Bf-blender-cvs] [ad58999b0d4] blender-v2.91-release: Fix pin icon in Properties not right-aligned after zooming

Julian Eisel noreply at git.blender.org
Wed Nov 18 19:54:44 CET 2020


Commit: ad58999b0d46731d8587d4eaf35f37f484cfe023
Author: Julian Eisel
Date:   Wed Nov 18 19:49:20 2020 +0100
Branches: blender-v2.91-release
https://developer.blender.org/rBad58999b0d46731d8587d4eaf35f37f484cfe023

Fix pin icon in Properties not right-aligned after zooming

The logic for separator-spacers (used here for right-alignment) didn't take
region scaling into account. Usually that's not an issue because they are
otherwise only used in headers which can't zoom.

===================================================================

M	source/blender/editors/interface/interface.c

===================================================================

diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c
index dc20e6f1813..d75909bef87 100644
--- a/source/blender/editors/interface/interface.c
+++ b/source/blender/editors/interface/interface.c
@@ -64,6 +64,7 @@
 
 #include "UI_interface.h"
 #include "UI_interface_icons.h"
+#include "UI_view2d.h"
 
 #include "IMB_imbuf.h"
 
@@ -286,11 +287,12 @@ static void ui_update_flexible_spacing(const ARegion *region, uiBlock *block)
     }
   }
 
+  const float view_scale_x = UI_view2d_scale_get_x(&region->v2d);
   const float segment_width = region_width / (float)sepr_flex_len;
   float offset = 0, remaining_space = region_width - buttons_width;
   i = 0;
   LISTBASE_FOREACH (uiBut *, but, &block->buttons) {
-    BLI_rctf_translate(&but->rect, offset, 0);
+    BLI_rctf_translate(&but->rect, offset / view_scale_x, 0);
     if (but->type == UI_BTYPE_SEPR_SPACER) {
       /* How much the next block overlap with the current segment */
       int overlap = ((i == sepr_flex_len - 1) ? buttons_width - spacers_pos[i] :



More information about the Bf-blender-cvs mailing list