@@ -3972,10 +3972,12 @@ bool ImGui::Begin(const char* name, bool* p_opened, const ImVec2& size_on_first_
3972
3972
else
3973
3973
{
3974
3974
ImU32 resize_col = 0;
3975
+ const float resize_corner_size = ImMax(g.FontSize * 1.35f, window_rounding + 1.0f + g.FontSize * 0.2f);
3975
3976
if (!(flags & ImGuiWindowFlags_AlwaysAutoResize) && window->AutoFitFramesX <= 0 && window->AutoFitFramesY <= 0 && !(flags & ImGuiWindowFlags_NoResize))
3976
3977
{
3977
3978
// Manual resize
3978
- const ImRect resize_rect(window->Rect().GetBR()-ImVec2(14,14), window->Rect().GetBR());
3979
+ const ImVec2 br = window->Rect().GetBR();
3980
+ const ImRect resize_rect(br - ImVec2(resize_corner_size * 0.75f, resize_corner_size * 0.75f), br);
3979
3981
const ImGuiID resize_id = window->GetID("#RESIZE");
3980
3982
bool hovered, held;
3981
3983
ButtonBehavior(resize_rect, resize_id, &hovered, &held, true, ImGuiButtonFlags_FlattenChilds);
@@ -4049,12 +4051,9 @@ bool ImGui::Begin(const char* name, bool* p_opened, const ImVec2& size_on_first_
4049
4051
// (after the input handling so we don't have a frame of latency)
4050
4052
if (!(flags & ImGuiWindowFlags_NoResize))
4051
4053
{
4052
- const float base_size = g.FontSize * 1.35f;
4053
- const float min_size = window_rounding + 1.0f + g.FontSize * 0.2f;
4054
- const float corner_size = ImMax(base_size, min_size);
4055
4054
const ImVec2 br = window->Rect().GetBR();
4056
- window->DrawList->PathLineTo(br + ImVec2(-corner_size , 0.0f));
4057
- window->DrawList->PathLineTo(br + ImVec2(0.0f, -corner_size ));
4055
+ window->DrawList->PathLineTo(br + ImVec2(-resize_corner_size , 0.0f));
4056
+ window->DrawList->PathLineTo(br + ImVec2(0.0f, -resize_corner_size ));
4058
4057
window->DrawList->PathArcToFast(ImVec2(br.x - window_rounding, br.y - window_rounding), window_rounding, 0, 3);
4059
4058
window->DrawList->PathFill(resize_col);
4060
4059
}
0 commit comments