Closed
Bug 75271
Opened 24 years ago
Closed 24 years ago
Edit|Undo does not highlight if table is the first thing added
Categories
(Core :: DOM: Editor, defect, P3)
Tracking
()
VERIFIED
FIXED
mozilla0.9.1
People
(Reporter: shrir, Assigned: sfraser_bugs)
Details
Attachments
(1 file)
(deleted),
patch
|
Details | Diff | Splinter Review |
seen on windows trunk 0409
steps:
Launch composer
click on the TABLE button in composition toolbar and add the 2x2 table
now select 'Edit' menu and observe that UNDO appears disabled
expected: UNDO should appear enabled
Comment 1•24 years ago
|
||
this is weird, the undo will be enabled if I minimize the window and then
redisplay the window, not really sure who this should go to
Comment 2•24 years ago
|
||
charley, handing this one over to you to see if you can see anything in the
xul/css that might be causing this
Assignee: beppe → cmanske
Priority: -- → P3
Target Milestone: --- → mozilla0.9.1
Reporter | ||
Comment 3•24 years ago
|
||
cc:kin
Comment 4•24 years ago
|
||
Sounds like another instance of command enable/disable state not updating
correctly.
Always cc Simon on bugs like this so he can see the various examples.
The bug here is that nsInterfaceState assumes that after a transaction is done
(executed) that there will be something on the undo stack. This is not the case
when batches are involved since executed transactions get added to the batch
instead of the undo stack until the batch is closed.
We'll need to add some mechanism to nsInterfaceState that tracks
DidEndBatch() notifications similar to what is done in DidDo(), but also tracks
nested batches ... in this scenario DidDo() would only set mFirstDoOfFirstUndo
to false if the batch nest count was zero.
Comment 6•24 years ago
|
||
Removing the BeginBatchChanges() and EndBatchChanges() in EdInsertTable.js
confirms what Kin described. So Kin or Joe would have to fix this?
Note that I don't see "Undo" enabled after minimizing or window resizing or
anything else that *doesn't* trigger another transaction, such as typing.
Assignee: cmanske → kin
nsInterfaceState.cpp is sfraser's baby. Simon, I can help you out with this if
you're overloaded for 0.9.1.
Assignee | ||
Comment 9•24 years ago
|
||
Fixing this could be quite a big performance win. Calling UpdateCommands() is
expensive, and we're doing it a lot for batched transactions.
Assignee | ||
Comment 10•24 years ago
|
||
Comment 11•24 years ago
|
||
Comment 12•24 years ago
|
||
r=akkana
Assignee | ||
Comment 13•24 years ago
|
||
Fix checked in.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•