=> 4ae755de3ff4a37763aacc22ea119edab2099e84
[1mdiff --git a/res/about/version.gmi b/res/about/version.gmi[m [1mindex 41b4fed7..905b0221 100644[m [1m--- a/res/about/version.gmi[m [1m+++ b/res/about/version.gmi[m [36m@@ -10,6 +10,7 @@[m * The "Miscellaneous Symbols and Arrows" Unicode block (U+2B00...U+2BFF) is accepted as custom link icons.[m * When mixing Emoji into preformatted text (glyphs are from different fonts), lay out the Emoji as double-wide characters to avoid overlapping.[m * Faster hover-scrolling of long popup menus.[m [32m+[m[32m* Fixed "Paste Preceding Line" not being undoable.[m * Fixed lookup of missing glyphs. Fontpack priorities are now applied as documented.[m * Fixed animation issue with sidebars in the right side of split view.[m * Fixed a refresh issue that caused the first line of the page to be redrawn continuously, spiking CPU usage.[m [1mdiff --git a/src/ui/inputwidget.c b/src/ui/inputwidget.c[m [1mindex aa55f3f0..6a8d428a 100644[m [1m--- a/src/ui/inputwidget.c[m [1m+++ b/src/ui/inputwidget.c[m [36m@@ -1115,7 +1115,14 @@[m [mstatic void updateBuffered_InputWidget_(iInputWidget *d) {[m }[m [m void setText_InputWidget(iInputWidget *d, const iString *text) {[m [32m+[m[32m setTextUndoable_InputWidget(d, text, iFalse);[m [32m+[m[32m}[m [32m+[m [32m+[m[32mvoid setTextUndoable_InputWidget(iInputWidget *d, const iString *text, iBool isUndoable) {[m if (!d) return;[m [32m+[m[32m if (isUndoable) {[m [32m+[m[32m pushUndo_InputWidget_(d);[m [32m+[m[32m }[m if (d->inFlags & isUrl_InputWidgetFlag) {[m if (prefs_App()->decodeUserVisibleURLs) {[m iString *enc = collect_String(copy_String(text));[m [36m@@ -1139,7 +1146,9 @@[m [mvoid setText_InputWidget(iInputWidget *d, const iString *text) {[m iString *nfcText = collect_String(copy_String(text));[m normalize_String(nfcText);[m #if !LAGRANGE_USE_SYSTEM_TEXT_INPUT[m [31m- clearUndo_InputWidget_(d);[m [32m+[m[32m if (!isUndoable) {[m [32m+[m[32m clearUndo_InputWidget_(d);[m [32m+[m[32m }[m splitToLines_(nfcText, &d->lines);[m iAssert(!isEmpty_Array(&d->lines));[m iForEach(Array, i, &d->lines) {[m [36m@@ -1175,6 +1184,12 @@[m [mvoid setTextCStr_InputWidget(iInputWidget *d, const char *cstr) {[m delete_String(str);[m }[m [m [32m+[m[32mvoid setTextUndoableCStr_InputWidget(iInputWidget *d, const char *cstr, iBool isUndoable) {[m [32m+[m[32m iString *str = newCStr_String(cstr);[m [32m+[m[32m setTextUndoable_InputWidget(d, str, isUndoable);[m [32m+[m[32m delete_String(str);[m [32m+[m[32m}[m [32m+[m void selectAll_InputWidget(iInputWidget *d) {[m #if LAGRANGE_USE_SYSTEM_TEXT_INPUT[m if (d->sysCtrl) {[m [1mdiff --git a/src/ui/inputwidget.h b/src/ui/inputwidget.h[m [1mindex 5a61ec22..000fa4b7 100644[m [1m--- a/src/ui/inputwidget.h[m [1m+++ b/src/ui/inputwidget.h[m [36m@@ -46,6 +46,8 @@[m [mvoid setMode_InputWidget (iInputWidget *, enum iInputMode mode);[m void setMaxLen_InputWidget (iInputWidget *, size_t maxLen);[m void setText_InputWidget (iInputWidget *, const iString *text);[m void setTextCStr_InputWidget (iInputWidget *, const char *cstr);[m [32m+[m[32mvoid setTextUndoable_InputWidget (iInputWidget *, const iString *text, iBool isUndoable);[m [32m+[m[32mvoid setTextUndoableCStr_InputWidget (iInputWidget *, const char *cstr, iBool isUndoable);[m void setFont_InputWidget (iInputWidget *, int fontId);[m void setContentPadding_InputWidget (iInputWidget *, int left, int right); /* only affects the text entry */[m void setLineLimits_InputWidget (iInputWidget *, int minLines, int maxLines);[m [1mdiff --git a/src/ui/util.c b/src/ui/util.c[m [1mindex 31907721..5dd8a0bd 100644[m [1m--- a/src/ui/util.c[m [1m+++ b/src/ui/util.c[m [36m@@ -1778,7 +1778,7 @@[m [miBool valueInputHandler_(iWidget *dlg, const char *cmd) {[m }[m else if (equal_Command(cmd, "valueinput.set")) {[m iInputWidget *input = findChild_Widget(dlg, "input");[m [31m- setTextCStr_InputWidget(input, suffixPtr_Command(cmd, "text"));[m [32m+[m[32m setTextUndoableCStr_InputWidget(input, suffixPtr_Command(cmd, "text"), iTrue);[m validate_InputWidget(input);[m return iTrue;[m }[m
text/gemini; charset=utf-8
This content has been proxied by September (ba2dc).