Skip to content

Commit b150778

Browse files
committed
Allow switching between INSERT and REPLACE modes, remove useless check
1 parent 6161712 commit b150778

File tree

3 files changed

+8
-16
lines changed

3 files changed

+8
-16
lines changed

nuklear.h

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27169,8 +27169,6 @@ nk_textedit_text(struct nk_text_edit *state, const char *text, int total_len)
2716927169
if (state->mode == NK_TEXT_EDIT_MODE_REPLACE) {
2717027170
nk_textedit_makeundo_replace(state, state->cursor, 1, 1);
2717127171
nk_str_delete_runes(&state->string, state->cursor, 1);
27172-
} else {
27173-
puts("still insert mode");
2717427172
}
2717527173
if (nk_str_insert_text_utf8(&state->string, state->cursor,
2717627174
text+text_len, 1))
@@ -27226,17 +27224,13 @@ nk_textedit_key(struct nk_text_edit *state, enum nk_keys key, int shift_mod,
2722627224
break;
2722727225

2722827226
case NK_KEY_TEXT_INSERT_MODE:
27229-
/* if (state->mode == NK_TEXT_EDIT_MODE_VIEW) */
27230-
state->mode = NK_TEXT_EDIT_MODE_INSERT;
27227+
state->mode = NK_TEXT_EDIT_MODE_INSERT;
2723127228
break;
2723227229
case NK_KEY_TEXT_REPLACE_MODE:
27233-
/* if (state->mode == NK_TEXT_EDIT_MODE_VIEW) */
27234-
state->mode = NK_TEXT_EDIT_MODE_REPLACE;
27230+
state->mode = NK_TEXT_EDIT_MODE_REPLACE;
2723527231
break;
2723627232
case NK_KEY_TEXT_RESET_MODE:
27237-
if (state->mode == NK_TEXT_EDIT_MODE_INSERT ||
27238-
state->mode == NK_TEXT_EDIT_MODE_REPLACE)
27239-
state->mode = NK_TEXT_EDIT_MODE_VIEW;
27233+
state->mode = NK_TEXT_EDIT_MODE_VIEW;
2724027234
break;
2724127235

2724227236
case NK_KEY_LEFT:
@@ -30718,6 +30712,7 @@ nk_tooltipfv(struct nk_context *ctx, const char *fmt, va_list args)
3071830712
/// - [y]: Minor version with non-breaking API and library changes
3071930713
/// - [z]: Patch version with no direct changes to the API
3072030714
///
30715+
/// - 2025/04/28 (4.12.8) - Allow switching between TEXT_INSERT and TEXT_REPLACE modes directly
3072130716
/// - 2025/04/06 (4.12.7) - Fix text input navigation and mouse scrolling
3072230717
/// - 2025/03/29 (4.12.6) - Fix unitialized data in nk_input_char
3072330718
/// - 2025/03/05 (4.12.5) - Fix scrolling knob also scrolling parent window, remove dead code

src/CHANGELOG

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
/// - [y]: Minor version with non-breaking API and library changes
88
/// - [z]: Patch version with no direct changes to the API
99
///
10+
/// - 2025/04/28 (4.12.8) - Allow switching between TEXT_INSERT and TEXT_REPLACE modes directly
1011
/// - 2025/04/06 (4.12.7) - Fix text input navigation and mouse scrolling
1112
/// - 2025/03/29 (4.12.6) - Fix unitialized data in nk_input_char
1213
/// - 2025/03/05 (4.12.5) - Fix scrolling knob also scrolling parent window, remove dead code

src/nuklear_text_editor.c

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -446,17 +446,13 @@ nk_textedit_key(struct nk_text_edit *state, enum nk_keys key, int shift_mod,
446446
break;
447447

448448
case NK_KEY_TEXT_INSERT_MODE:
449-
if (state->mode == NK_TEXT_EDIT_MODE_VIEW)
450-
state->mode = NK_TEXT_EDIT_MODE_INSERT;
449+
state->mode = NK_TEXT_EDIT_MODE_INSERT;
451450
break;
452451
case NK_KEY_TEXT_REPLACE_MODE:
453-
if (state->mode == NK_TEXT_EDIT_MODE_VIEW)
454-
state->mode = NK_TEXT_EDIT_MODE_REPLACE;
452+
state->mode = NK_TEXT_EDIT_MODE_REPLACE;
455453
break;
456454
case NK_KEY_TEXT_RESET_MODE:
457-
if (state->mode == NK_TEXT_EDIT_MODE_INSERT ||
458-
state->mode == NK_TEXT_EDIT_MODE_REPLACE)
459-
state->mode = NK_TEXT_EDIT_MODE_VIEW;
455+
state->mode = NK_TEXT_EDIT_MODE_VIEW;
460456
break;
461457

462458
case NK_KEY_LEFT:

0 commit comments

Comments
 (0)