InputText: Fixed selection background starts rendering one frame after the cursor movement when first transitioning from no-selection to has-selection. (Bug in 1.69) (#2436) [@Nazg-Gul]
diff --git a/docs/CHANGELOG.txt b/docs/CHANGELOG.txt
index f87ae2f..f1c556a 100644
--- a/docs/CHANGELOG.txt
+++ b/docs/CHANGELOG.txt
@@ -36,6 +36,8 @@
 Breaking Changes:
 
 Other Changes:
+- InputText: Fixed selection background starts rendering one frame after the cursor movement
+  when first transitioning from no-selection to has-selection. (Bug in 1.69) (#2436) [@Nazg-Gul]
 - GetMouseDragDelta(): also returns the delta on the mouse button released frame. (#2419)
 - GetMouseDragDelta(): verify that mouse positions are valid otherwise returns zero.
 - Examples: OpenGL: Added a dummy GL call + comments in ImGui_ImplOpenGL3_Init() to detect uninitialized
diff --git a/imgui_widgets.cpp b/imgui_widgets.cpp
index 1f51e07..f151e11 100644
--- a/imgui_widgets.cpp
+++ b/imgui_widgets.cpp
@@ -3570,6 +3570,9 @@
                 MemFree(clipboard_filtered);
             }
         }
+
+        // Update render selection flag after events have been handled, so selection highlight can be displayed during the same frame.
+        render_selection |= state->HasSelection() && (RENDER_SELECTION_WHEN_INACTIVE || render_cursor);
     }
 
     // Process callbacks and apply result back to user's buffer.