Commit e757fd9
Roo
feat: integrate native browser undo stack for enhance prompt feature
- Replace custom undo state management with native browser methods
- Use document.execCommand("insertText") for text replacement to preserve undo history
- Add setRangeText fallback for browsers without execCommand support
- Remove originalPromptBeforeEnhancement state and custom Cmd+Z handling
- Add comprehensive tests for native browser method usage
- Fix React development mode in test environment for act() support
This provides users with the expected VSCode textarea undo experience
when using the enhance prompt feature, as requested in PR feedback.1 parent dd761e2 commit e757fd9
File tree
3 files changed
+113
-35
lines changed- webview-ui
- src/components/chat
- __tests__
3 files changed
+113
-35
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
118 | | - | |
119 | | - | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
120 | 140 | | |
121 | 141 | | |
122 | 142 | | |
| |||
157 | 177 | | |
158 | 178 | | |
159 | 179 | | |
160 | | - | |
161 | 180 | | |
162 | 181 | | |
163 | 182 | | |
| |||
187 | 206 | | |
188 | 207 | | |
189 | 208 | | |
190 | | - | |
191 | | - | |
192 | 209 | | |
193 | 210 | | |
194 | 211 | | |
| |||
379 | 396 | | |
380 | 397 | | |
381 | 398 | | |
382 | | - | |
383 | | - | |
384 | | - | |
385 | | - | |
386 | | - | |
387 | | - | |
388 | | - | |
389 | | - | |
390 | | - | |
391 | | - | |
392 | | - | |
393 | | - | |
394 | | - | |
395 | 399 | | |
396 | 400 | | |
397 | 401 | | |
| |||
468 | 472 | | |
469 | 473 | | |
470 | 474 | | |
471 | | - | |
472 | 475 | | |
473 | 476 | | |
474 | 477 | | |
| |||
487 | 490 | | |
488 | 491 | | |
489 | 492 | | |
490 | | - | |
491 | | - | |
492 | | - | |
493 | | - | |
494 | | - | |
495 | 493 | | |
496 | 494 | | |
497 | 495 | | |
| |||
549 | 547 | | |
550 | 548 | | |
551 | 549 | | |
552 | | - | |
553 | | - | |
554 | | - | |
555 | | - | |
556 | | - | |
557 | | - | |
558 | | - | |
559 | | - | |
| 550 | + | |
560 | 551 | | |
561 | 552 | | |
562 | 553 | | |
| |||
Lines changed: 84 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
187 | | - | |
| 187 | + | |
188 | 188 | | |
189 | 189 | | |
190 | | - | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
191 | 251 | | |
192 | 252 | | |
193 | 253 | | |
| |||
199 | 259 | | |
200 | 260 | | |
201 | 261 | | |
202 | | - | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
203 | 284 | | |
204 | 285 | | |
205 | 286 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
4 | 10 | | |
5 | 11 | | |
6 | 12 | | |
| |||
0 commit comments