Bug 18409 - Resizing a page or <textarea> with very long contents is extremely slow
Summary: Resizing a page or <textarea> with very long contents is extremely slow
Status: RESOLVED CONFIGURATION CHANGED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-10 11:17 PDT by Adam Roben (:aroben)
Modified: 2024-04-23 18:40 PDT (History)
3 users (show)

See Also:


Attachments
screen recording of resizing large <textarea> (14.88 MB, video/quicktime)
2024-04-23 12:04 PDT, Frances
no flags Details
testcase (1.05 MB, text/html)
2024-04-23 18:40 PDT, Karl Dubost
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Roben (:aroben) 2008-04-10 11:17:57 PDT
Resizing a <textarea> element that has very long contents is extremely slow. See testcase.
Comment 1 Adam Roben (:aroben) 2008-04-10 11:24:57 PDT
Created attachment 20457
Comment 2 Adam Roben (:aroben) 2008-04-10 11:32:14 PDT
Created attachment 20458
Comment 3 Adam Roben (:aroben) 2008-04-10 11:35:38 PDT
On Windows, the resizing performance of attachment 20457 is worse than attachment 20458, though not by that much.
Comment 4 Adam Roben (:aroben) 2008-04-10 11:37:54 PDT
(In reply to comment #3)
> On Windows, the resizing performance of attachment 20457 is worse than
> attachment 20458, though not by that much.

I have pretty much the same experience on Mac.

Comment 5 Adam Roben (:aroben) 2008-04-10 11:40:48 PDT
Created attachment 20460


This seems to affect HTML documents as well
Comment 6 Frances 2024-04-23 11:10:55 PDT
It is no longer slow to resize a <textarea> element that has very long contents in Safari 17.4.1.
Comment 7 Frances 2024-04-23 12:04:14 PDT
Created attachment 471075 [details]
screen recording of resizing large <textarea>
Comment 8 Frances 2024-04-23 12:05:32 PDT
Comment on attachment 471075 [details]
screen recording of resizing large <textarea>

This is the code behind the example:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<textarea maxlength="1000">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Tellus at urna condimentum mattis pellentesque id nibh tortor id. Et magnis dis parturient montes nascetur. Etiam erat velit scelerisque in dictum non. At in tellus integer feugiat scelerisque varius morbi enim nunc. Aliquam id diam maecenas ultricies mi eget mauris pharetra et. Non consectetur a erat nam at lectus urna. Ligula ullamcorper malesuada proin libero nunc consequat interdum. Pretium fusce id velit ut tortor. Eget arcu dictum varius duis at consectetur. Elementum pulvinar etiam non quam lacus. Fames ac turpis egestas sed tempus urna et. Nunc vel risus commodo viverra maecenas accumsan lacus. Aliquet nec ullamcorper sit amet risus nullam eget felis. Sed egestas egestas fringilla phasellus faucibus. Enim nunc faucibus a pellentesque sit. Orci eu lobortis elementum nibh tellus molestie nunc. Ipsum consequat nisl vel pretium lectus quam id leo in. Egestas egestas fringilla phasellus faucibus scelerisque eleifend.

    Lacinia quis vel eros donec. Vitae nunc sed velit dignissim. Aliquam id diam maecenas ultricies mi eget. Volutpat diam ut venenatis tellus in metus vulputate eu scelerisque. Id donec ultrices tincidunt arcu non sodales neque sodales ut. Sit amet consectetur adipiscing elit ut. Gravida arcu ac tortor dignissim. Eleifend donec pretium vulputate sapien nec sagittis aliquam malesuada. Id porta nibh venenatis cras sed felis. Ullamcorper morbi tincidunt ornare massa eget egestas purus. Molestie ac feugiat sed lectus. Ultricies mi eget mauris pharetra et. Lectus sit amet est placerat in egestas erat imperdiet. Interdum velit euismod in pellentesque. Egestas egestas fringilla phasellus faucibus scelerisque. Aliquam nulla facilisi cras fermentum odio eu. Eu non diam phasellus vestibulum lorem sed. Sed egestas egestas fringilla phasellus. Et sollicitudin ac orci phasellus egestas tellus rutrum tellus. Viverra adipiscing at in tellus integer feugiat.

    Cursus metus aliquam eleifend mi in nulla. Proin fermentum leo vel orci porta non pulvinar neque laoreet. Tellus elementum sagittis vitae et leo duis ut. Quam elementum pulvinar etiam non quam. Eget lorem dolor sed viverra ipsum nunc. Cursus metus aliquam eleifend mi in nulla posuere sollicitudin aliquam. Urna neque viverra justo nec ultrices dui sapien eget. Massa eget egestas purus viverra accumsan. Amet massa vitae tortor condimentum lacinia. Amet luctus venenatis lectus magna fringilla. Nam aliquam sem et tortor consequat id porta nibh. Eget nulla facilisi etiam dignissim diam quis enim lobortis. Amet aliquam id diam maecenas. Aenean pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Est pellentesque elit ullamcorper dignissim cras. Sagittis aliquam malesuada bibendum arcu. Massa tincidunt nunc pulvinar sapien. Neque aliquam vestibulum morbi blandit.

    Blandit volutpat maecenas volutpat blandit aliquam etiam. Nunc vel risus commodo viverra maecenas accumsan lacus vel. Faucibus in ornare quam viverra orci sagittis eu. In est ante in nibh mauris cursus mattis molestie. At elementum eu facilisis sed odio morbi quis commodo. Volutpat diam ut venenatis tellus in metus. Hendrerit gravida rutrum quisque non tellus orci ac auctor augue. Neque egestas congue quisque egestas diam. Et malesuada fames ac turpis egestas sed. Aliquam id diam maecenas ultricies mi eget. Condimentum id venenatis a condimentum vitae sapien pellentesque. Et egestas quis ipsum suspendisse. Tincidunt praesent semper feugiat nibh sed pulvinar proin. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Semper feugiat nibh sed pulvinar proin. Aliquam sem et tortor consequat id porta nibh venenatis cras.

    Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Nisl nunc mi ipsum faucibus vitae aliquet. Quis commodo odio aenean sed adipiscing diam. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit. Orci dapibus ultrices in iaculis nunc sed. Urna cursus eget nunc scelerisque. Leo vel fringilla est ullamcorper eget nulla. At urna condimentum mattis pellentesque id nibh. Et sollicitudin ac orci phasellus egestas tellus. Duis ultricies lacus sed turpis tincidunt id aliquet risus. Neque convallis a cras semper. Ullamcorper malesuada proin libero nunc consequat. Tristique sollicitudin nibh sit amet.

    Habitasse platea dictumst quisque sagittis purus sit amet volutpat. Donec massa sapien faucibus et. Neque convallis a cras semper auctor. Lobortis elementum nibh tellus molestie nunc non blandit massa. Vel pretium lectus quam id leo in vitae turpis. Consectetur libero id faucibus nisl tincidunt eget nullam. Tincidunt dui ut ornare lectus sit amet. Tincidunt eget nullam non nisi. Turpis egestas sed tempus urna et pharetra. Ac turpis egestas maecenas pharetra convallis. Id interdum velit laoreet id donec ultrices tincidunt arcu non.

    Cursus in hac habitasse platea dictumst quisque sagittis purus. Sed tempus urna et pharetra pharetra massa. Pellentesque pulvinar pellentesque habitant morbi tristique. Sollicitudin nibh sit amet commodo. Justo laoreet sit amet cursus sit. Nisl tincidunt eget nullam non nisi est sit amet. Nisl purus in mollis nunc sed id. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tincidunt tortor aliquam nulla facilisi cras. Bibendum arcu vitae elementum curabitur vitae. Volutpat odio facilisis mauris sit amet massa vitae tortor. Quis commodo odio aenean sed adipiscing diam. Quis auctor elit sed vulputate.

    Egestas quis ipsum suspendisse ultrices gravida dictum fusce ut. Mattis nunc sed blandit libero volutpat sed cras ornare. Phasellus egestas tellus rutrum tellus pellentesque. Nulla pellentesque dignissim enim sit amet. Sit amet tellus cras adipiscing enim eu turpis egestas pretium. Est ullamcorper eget nulla facilisi etiam dignissim diam quis. Praesent tristique magna sit amet purus. Nunc congue nisi vitae suscipit tellus mauris a diam. Amet mauris commodo quis imperdiet massa tincidunt. At quis risus sed vulputate odio ut enim blandit. Diam vel quam elementum pulvinar etiam. Dui nunc mattis enim ut tellus elementum sagittis. Vehicula ipsum a arcu cursus vitae congue. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Ac auctor augue mauris augue neque.

    Elementum tempus egestas sed sed risus pretium quam. Bibendum at varius vel pharetra. Viverra nibh cras pulvinar mattis nunc sed blandit libero volutpat. Quam quisque id diam vel. Egestas dui id ornare arcu odio ut sem nulla pharetra. Faucibus purus in massa tempor nec feugiat nisl. Vestibulum rhoncus est pellentesque elit ullamcorper. Iaculis eu non diam phasellus. A cras semper auctor neque vitae tempus quam pellentesque nec. Velit egestas dui id ornare.

    Commodo odio aenean sed adipiscing diam donec. Magna sit amet purus gravida. Volutpat odio facilisis mauris sit amet massa vitae tortor. Dapibus ultrices in iaculis nunc. Elementum pulvinar etiam non quam lacus suspendisse. Ac ut consequat semper viverra nam libero justo. Aenean vel elit scelerisque mauris. Eget magna fermentum iaculis eu. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Eu tincidunt tortor aliquam nulla facilisi cras. Feugiat in fermentum posuere urna nec tincidunt praesent. Vulputate odio ut enim blandit volutpat maecenas. Lacus sed turpis tincidunt id aliquet risus feugiat in ante. Quam adipiscing vitae proin sagittis. Posuere ac ut consequat semper viverra nam libero justo. Nisl nunc mi ipsum faucibus vitae aliquet. Nunc scelerisque viverra mauris in aliquam sem fringilla. Aliquet nec ullamcorper sit amet risus. Laoreet sit amet cursus sit amet dictum.
</textarea>

</body>
</html>
Comment 9 Karl Dubost 2024-04-23 18:40:24 PDT
Created attachment 471095 [details]
testcase

Here a 1Mb testcase for textara
containing 
Title: Swann’s Way
  Remembrance of Things Past, Volume One
Author: Marcel Proust


And the resizing works without issue.