This rfe is about a way of selecting the parent element(s) of the current selection. For each range in the selection, this should select the common ancestor container of the range. I am proposing to add this behavior to the shift+Escape key combination. Such a feature will be very useful for CSS in Composer.
Created attachment 63485 [details] [diff] [review] patch v1.0 Easy patch for this rfe. This does exactly what I described above. It means that if you select two table cells belonging to different table rows, both rows will be selected by shift+escape. btw, escape alone cannot be used because it is needed for ime support. reviews please ?
Created attachment 64487 [details] [diff] [review] patch v1.1 Solves a bug in case of non-collapsed textual selection ; adds menu items.
Attachment #63485 - Attachment is obsolete: true
I am confused about a couple of things in this patch: I am not totally sure of your intent so I don't know if they are problems. In SelectParentOfSelection(), the isCollapsed case: you always look at the parent of the selection start node. But that node might itself be an element. For instance, if we have an <li> with just a br in it, and you click in it, you will get a collapsed selection whose parent is the li. Don't you want to select the li if someone does shift-escape? The code here will select the parent list instead. If you mean for the li to get selected here then I would check the selection startnode to see if it is an element, and only checking the parent if it isn't. Also, the non-collapsed case QI's nodes to an element, and then *if* it succeeds it then checks to see if it is a text node. Won't that always fail? I though the QI to nsIDOMElement would return null if you had a text node? hope this helps.
removing myself from the cc list
Priority: P3 → --
QA Contact: sujay → composer
Target Milestone: Future → ---
MASS-CHANGE: This bug report is registered in the SeaMonkey product, but has been without a comment since the inception of the SeaMonkey project. This means that it was logged against the old Mozilla suite and we cannot determine that it's still valid for the current SeaMonkey suite. Because of this, we are setting it to an UNCONFIRMED state. If you can confirm that this report still applies to current SeaMonkey 2.x nightly builds, please set it back to the NEW state along with a comment on how you reproduced it on what Build ID, or if it's an enhancement request, why it's still worth implementing and in what way. If you can confirm that the report doesn't apply to current SeaMonkey 2.x nightly builds, please set it to the appropriate RESOLVED state (WORKSFORME, INVALID, WONTFIX, or similar). If no action happens within the next few months, we move this bug report to an EXPIRED state. Query tag for this change: mass-UNCONFIRM-20090614
Status: NEW → UNCONFIRMED
MASS-CHANGE: This bug report is registered in the SeaMonkey product, but still has no comment since the inception of the SeaMonkey project 5 years ago. Because of this, we're resolving the bug as EXPIRED. If you still can reproduce the bug on SeaMonkey 2 or otherwise think it's still valid, please REOPEN it and if it is a platform or toolkit issue, move it to the according component. Query tag for this change: EXPIRED-20100420
Status: UNCONFIRMED → RESOLVED
Last Resolved: 9 years ago
Resolution: --- → EXPIRED
You need to log in before you can comment on or make changes to this bug.