Skip to content
Open
Changes from all commits
Commits
Show all changes
125 commits
Select commit Hold shift + click to select a range
4d52423
WIP
lydell Apr 8, 2024
01468bf
Preserve ._ when dekey
lydell Apr 9, 2024
b8b5b44
Begin adding and removing nodes
lydell Jun 21, 2024
68aec18
Proper redraw call
lydell Jun 24, 2024
d6b29d4
Begin lazy visit
lydell Jun 24, 2024
5e8e07c
Add TODO for facts
lydell Jun 24, 2024
1818df4
Make sure eventNode is up-to-date for lazy
lydell Jun 24, 2024
4c7e94a
Implement custom patch
lydell Jun 24, 2024
a28f6a4
Add TODO for keyed kids
lydell Jun 24, 2024
4e9a1e1
Re-introduce `x === y` optimization
lydell Jun 24, 2024
5146f1f
Add TODO for virtualize <script>
lydell Jun 24, 2024
29329f1
Implement facts
lydell Jun 24, 2024
7950777
Remove unused things
lydell Jun 24, 2024
f569b18
Add more virtualization todos
lydell Jun 24, 2024
09a2f4b
Add temporary implementation for keyed
lydell Jun 24, 2024
60d8fb7
Fix mistakes due to no static help
lydell Jun 29, 2024
7df28f8
Transfer the nodes array at every render
lydell Jun 29, 2024
fb1722d
Store dom nodes properly
lydell Jun 29, 2024
d21fcc6
Fix json unwrap for properties
lydell Jun 29, 2024
09c02f5
Fix reference to patch
lydell Jun 29, 2024
63a38ac
Shorten names in _ property
lydell Jun 29, 2024
c63d978
Fix __kids and y/child->x
lydell Jun 29, 2024
8068169
Diff kids in the correct order
lydell Jun 29, 2024
013afbf
Remove references to undefined eventNode
lydell Jun 29, 2024
23bdc0e
Fix removals of repeated node
lydell Jun 29, 2024
10dd939
We know that both x and y are equal in quick visit
lydell Jun 29, 2024
b4aaa18
Fix off-by-one when redrawing
lydell Jun 29, 2024
51e5bed
Fix removal of multiple nodes
lydell Jun 29, 2024
b84b93b
Fix redraw again
lydell Jun 29, 2024
76363b7
Fix virtualize
lydell Jun 29, 2024
b27d311
Inline var and use appendChild function
lydell Jun 29, 2024
e3f55d8
Fix applyEvents
lydell Jun 29, 2024
1513278
Remove console.log
lydell Jun 29, 2024
c83804e
First attempt at translation safe diff
lydell Jun 30, 2024
2c12d48
Fix crash when Google Translate has (re-)moved element
lydell Jun 30, 2024
967abec
Fix the root being a tagger or thunk
lydell Jun 30, 2024
12a327f
Virtualize into properties as needed
lydell Jun 30, 2024
26f70e7
Fork elm/browser instead of doing hacks
lydell Jul 4, 2024
0e2c8f0
Reset the other counter on the old one in case it is used again
lydell Jul 23, 2024
13f191f
New approach with just .i not .j and a render counter instead
lydell Jul 23, 2024
16ab828
Have two lists of DOM nodes, read from one, push to the other
lydell Jul 23, 2024
8495e23
Fix wrong condition for translation detection
lydell Jul 23, 2024
66e64e0
New virtualize approach for properties
lydell Jul 24, 2024
04918d8
Finish virtualizing attributes
lydell Aug 4, 2024
fcde089
Add idea for even faster style check
lydell Aug 4, 2024
c95e463
Remove old, then apply new (since attributes and properties are linked)
lydell Aug 4, 2024
fdc535e
WIP store Keyed in an object
lydell Aug 4, 2024
3dbeb59
WIP diff keyed kids
lydell Jan 18, 2025
a5fa02b
Remove old keyed code
lydell Jan 18, 2025
e29fe84
Full keyed implementation in place (but untested)
lydell Jan 18, 2025
c62da14
Use .charCodeAt for custom property check
lydell Jan 18, 2025
359a5bf
Add comments about keyed
lydell Jan 18, 2025
396a5d0
Remove trailing whitespace
lydell Jan 18, 2025
3b85ba4
Iterate over keyed kids correctly everywhere
lydell Jan 19, 2025
e43b577
Iterate over kids consistently
lydell Jan 19, 2025
438bab4
Fix swapping bug
lydell Jan 19, 2025
9f0a034
Fix ++ vs -- in second (backwards) loop
lydell Jan 19, 2025
4b878c8
Fix _VirtualDom_moveAfter_
lydell Jan 19, 2025
4320905
Don’t make no-op element moves
lydell Jan 19, 2025
0729ff1
Handle extensions (re-)moving keyed elements
lydell Jan 19, 2025
90b8526
Rename _VirtualDom_diffHelp to _VirtualDom_diff
lydell Jan 19, 2025
6e058f6
Avoid breaking change with elm/browser
lydell Jan 21, 2025
97deb0f
Backwards compatibility for debugger
lydell Jan 21, 2025
dd8bd41
Remove leftover for
lydell Jan 23, 2025
bb2c08b
Handle environments without DOM (just like _VirtualDom_doc)
lydell Jan 23, 2025
6da58c4
Restore .__kids on keyed nodes
lydell Jan 23, 2025
f06ade3
Remove accidental trailing comma
lydell Jan 24, 2025
012e4bb
Preserve property names
lydell Jan 24, 2025
b362f45
Fix lazy
lydell Jan 24, 2025
510c1a7
Fix edge case where lazy recomputes
lydell Jan 24, 2025
e7f8028
Support elm-explorations/test vdom node decoder
lydell Jan 24, 2025
6a59be1
Also preserve double underscore numbers for custom types
lydell Jan 25, 2025
88c8d58
Save one kids iteration for keyed
lydell Jan 25, 2025
9f43960
Add back missing __descendantsCount
lydell Jan 25, 2025
3421c6a
Link to elm-pages as well as elm-explorations/test
lydell Jan 25, 2025
4ba77bc
Re-introduce a0-a4 property bug for backwards compatibility
lydell Jan 25, 2025
23f6014
Be more consistent with single vs double quotes
lydell Jan 25, 2025
a473ee7
Add missing a__1_EVENT exclusion in props loops
lydell Jan 26, 2025
21fbfb1
Avoid unnecessary applying of styles at startup after virtualization
lydell Jan 26, 2025
0d24675
Loop over kids consistently in translated loop
lydell Jan 30, 2025
9ada6ab
Fix Google Translate bug
lydell Jan 30, 2025
a858f6f
Fix DOM node references being out-of-sync on redraw (element type cha…
lydell Feb 1, 2025
3407573
Insert missing nodes after redraw
lydell Feb 1, 2025
8526946
Handle leftover text after translated redraw
lydell Feb 1, 2025
d8a3f77
Replace .i with .__i
lydell Feb 1, 2025
7f1cd95
Add another Google Translate workaround
lydell Feb 1, 2025
7b52653
Speed up setting text node data
lydell Feb 1, 2025
9b72377
Rework translation
lydell Feb 1, 2025
e6d5767
Link to the Google Translate bug
lydell Feb 1, 2025
1d5417f
Support mounting text on a script node
lydell Feb 2, 2025
8b9aa5f
Keep it simple and always virtualize all elements
lydell Feb 2, 2025
266b766
Document why a top-level Html.text cannot be translated
lydell Feb 2, 2025
2112e6d
Update comment about node types
lydell Feb 2, 2025
7318f14
Document why we skip comment nodes in virtualization
lydell Feb 2, 2025
d1440a9
Remove extra space in indentation
lydell Feb 2, 2025
e09b49f
Document XSS in virtualize
lydell Feb 2, 2025
7bfa92f
Support virtualizing textarea properly
lydell Feb 6, 2025
70989cf
Support skipping virtualization
lydell Feb 9, 2025
8ddd7cc
Revert "Support skipping virtualization"
lydell Feb 9, 2025
694ef9b
Only virtualize “our” children
lydell Feb 9, 2025
f81f5a2
Make data-elm boolean to remove `=""` in elm-pages
lydell Feb 10, 2025
e71fa4f
Start the render count at 0
lydell Feb 15, 2025
b2dd080
Fix issue with disappearing elements due to re-used virtual nodes
lydell Feb 21, 2025
2c1f34f
Handle different app instances using the same view constant
lydell Mar 27, 2025
7d546cd
Improve comments
lydell Mar 29, 2025
9027967
Make code using a lot of `[_VirtualDom_instance]` easier to read
lydell Jun 1, 2025
86a70be
Avoid leaking old DOM nodes for constants that go unused
lydell Jun 1, 2025
516ff6b
Remove unused Json equality import
lydell Jun 6, 2025
15f37b9
Apply properties even if a virtual node is identical
lydell Jun 7, 2025
8c20e5b
Merge branch 'master' into safe
lydell Jun 24, 2025
4163ad8
Fix removal of props
lydell Jul 9, 2025
8fb2f74
Fix crash with custom element in the same bundle as the parent Elm app
lydell Jul 11, 2025
81c070c
Add backwards compatibility with elm-explorations/test
lydell Jul 12, 2025
5c95e37
Throw an error if a node has already been virtualized
lydell Jul 15, 2025
0f76e2b
Make _VirtualDom_renderCount per app instance
lydell Jul 15, 2025
11dc168
Use `===` for consistency
lydell Jul 22, 2025
af28a0f
Fix reference to wrong variable in code used after detecting page tra…
lydell Jul 22, 2025
afabe10
Fix bug with duplicate keys
lydell Jul 22, 2025
71f4bb8
Switch to a much simpler approach with “tree nodes”
lydell Jul 24, 2025
dc3a73a
Fix indentation
lydell Jul 25, 2025
400a0ed
Remove _VirtualDom_wrap - not much depended on it
lydell Jul 25, 2025
27158fa
Move if outside of for
lydell Jul 25, 2025
2366514
Improve comments
lydell Jul 25, 2025
0188b3f
Merge branch 'master' into safe
lydell Nov 13, 2025
e1fae6a
Pass along `isSync` when using `Html.map`
lydell Nov 13, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading