diff options
author | Yevgeny Makarov <jenkm> | 2020-11-24 03:56:01 +0300 |
---|---|---|
committer | Harley Acheson <harley.acheson@gmail.com> | 2020-11-24 03:56:01 +0300 |
commit | b6a50b5dcb461fe06cc3efc76b34e483a2ca6c0e (patch) | |
tree | cbfe61ead66cc20c3ebaa26f32d27bfbe571d66f /source/blender/editors/interface/interface_region_popup.c | |
parent | 246c11634f75fa40c03bbec4439a1bdc3719f8cf (diff) |
UI: Block Safety Not Scaled Correctly
Layout block safety sizes were not scaled correctly with interface scale.
Differential Revision: https://developer.blender.org/D9569
Reviewed by Brecht Van Lommel
Diffstat (limited to 'source/blender/editors/interface/interface_region_popup.c')
-rw-r--r-- | source/blender/editors/interface/interface_region_popup.c | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/source/blender/editors/interface/interface_region_popup.c b/source/blender/editors/interface/interface_region_popup.c index f941474ba25..93e3dbb2cc8 100644 --- a/source/blender/editors/interface/interface_region_popup.c +++ b/source/blender/editors/interface/interface_region_popup.c @@ -308,43 +308,46 @@ static void ui_popup_block_position(wmWindow *window, /* when you are outside parent button, safety there should be smaller */ + const int s1 = 40 * U.dpi_fac; + const int s2 = 3 * U.dpi_fac; + /* parent button to left */ if (midx < block->rect.xmin) { - block->safety.xmin = block->rect.xmin - 3; + block->safety.xmin = block->rect.xmin - s2; } else { - block->safety.xmin = block->rect.xmin - 40; + block->safety.xmin = block->rect.xmin - s1; } /* parent button to right */ if (midx > block->rect.xmax) { - block->safety.xmax = block->rect.xmax + 3; + block->safety.xmax = block->rect.xmax + s2; } else { - block->safety.xmax = block->rect.xmax + 40; + block->safety.xmax = block->rect.xmax + s1; } /* parent button on bottom */ if (midy < block->rect.ymin) { - block->safety.ymin = block->rect.ymin - 3; + block->safety.ymin = block->rect.ymin - s2; } else { - block->safety.ymin = block->rect.ymin - 40; + block->safety.ymin = block->rect.ymin - s1; } /* parent button on top */ if (midy > block->rect.ymax) { - block->safety.ymax = block->rect.ymax + 3; + block->safety.ymax = block->rect.ymax + s2; } else { - block->safety.ymax = block->rect.ymax + 40; + block->safety.ymax = block->rect.ymax + s1; } /* exception for switched pulldowns... */ if (dir1 && (dir1 & block->direction) == 0) { if (dir2 == UI_DIR_RIGHT) { - block->safety.xmax = block->rect.xmax + 3; + block->safety.xmax = block->rect.xmax + s2; } if (dir2 == UI_DIR_LEFT) { - block->safety.xmin = block->rect.xmin - 3; + block->safety.xmin = block->rect.xmin - s2; } } block->direction = dir1; |