|
|
|
@ -10036,7 +10036,7 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag
|
|
|
|
|
PopItemWidth();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool picker_active = false;
|
|
|
|
|
ImGuiWindow* picker_active_window = NULL;
|
|
|
|
|
if (!(flags & ImGuiColorEditFlags_NoSmallPreview))
|
|
|
|
|
{
|
|
|
|
|
if (!(flags & ImGuiColorEditFlags_NoInputs))
|
|
|
|
@ -10058,7 +10058,7 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag
|
|
|
|
|
|
|
|
|
|
if (BeginPopup("picker"))
|
|
|
|
|
{
|
|
|
|
|
picker_active = true;
|
|
|
|
|
picker_active_window = g.CurrentWindow;
|
|
|
|
|
if (label != label_display_end)
|
|
|
|
|
{
|
|
|
|
|
TextUnformatted(label, label_display_end);
|
|
|
|
@ -10080,7 +10080,7 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Convert back
|
|
|
|
|
if (!picker_active)
|
|
|
|
|
if (picker_active_window == NULL)
|
|
|
|
|
{
|
|
|
|
|
if (!value_changed_as_float)
|
|
|
|
|
for (int n = 0; n < 4; n++)
|
|
|
|
@ -10100,6 +10100,10 @@ bool ImGui::ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flag
|
|
|
|
|
PopID();
|
|
|
|
|
EndGroup();
|
|
|
|
|
|
|
|
|
|
// When picker is being actively used, use its active id so IsItemActive() will function on ColorEdit4().
|
|
|
|
|
if (picker_active_window && g.ActiveId != 0 && g.ActiveIdWindow == picker_active_window)
|
|
|
|
|
window->DC.LastItemId = g.ActiveId;
|
|
|
|
|
|
|
|
|
|
return value_changed;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|