Closed Bug 1513325 Opened 2 years ago Closed 1 year ago

Remove textbox binding

Categories

(Toolkit :: XUL Widgets, task)

task
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox71 --- fixed

People

(Reporter: ntim, Assigned: ntim)

References

(Blocks 4 open bugs)

Details

Attachments

(2 files, 1 obsolete file)

I believe the textboxes don't provide more features than html input, most of the code in the textbox binding serves to forward attributes/events to the inner html input.

The only thing I would be worried about would be the "Edit" context menu. It seems to be working automatically for HTML inputs when used in-content (even in XUL docs), I'm simply not sure whether it works in the top-level browser window, hence the suggestion to start only with the in-content ones.
For the top-level browser window, if the context menu turns out not to work, it should be possible to use a customized built-in HTML input like bug 1437641 is doing.
Depends on: 1437641
Depends on: 1513337
Depends on: 1513343
Depends on: 1439679
Depends on: 1521280
Summary: Consider converting in-content textboxes to input[type=text] → Consider converting textboxes to input[type=text]
Depends on: 1528614
Depends on: 1534404
Depends on: 1534455

Shorter plan to remove all the textbox bindings requiring less effort:

  • Fix bug 1521280
  • Wait for quantumbar and remove legacy-urlbar
  • Fix bug 1513337
  • Fix bug 1534404
  • Convert all <textbox> (except type="autocomplete") to <input>
  • Convert autocomplete to CE
Keywords: meta
Summary: Consider converting textboxes to input[type=text] → [meta] Remove textbox bindings
Type: enhancement → task
Depends on: 1547372
Depends on: 1551232
Blocks: 1566674
Keywords: meta
Priority: P5 → --
Summary: [meta] Remove textbox bindings → Remove textbox binding
No longer blocks: 1566674
Depends on: 1566674
Blocks: 1580627
No longer depends on: 1439679
Depends on: 1581956
Depends on: 1582590
Depends on: 1585884
Depends on: 1586018
Depends on: 1586019
No longer depends on: 1586018
No longer depends on: 1582590
No longer depends on: 1586019
No longer depends on: 1585884
Blocks: 1586591
Blocks: 1586628

Hi Emilio, panel/arrowpanel is getting removed in bug 1397876, which means textbox will be the last binding to be removed. 🎉

I was however wondering what to do with the ‘MayNeedToLoadXBLBinding’ function. Not sure how conservative we are at removing the XBL platform code (for the unlikely event that we want to restore an XBL binding), but the simplest option would be to replace the ‘if (!aElement.IsAnyOfXULElements(nsGkAtoms::textbox)) {‘ check with ‘if (true)’, but may as well remove all the related code in this case.

Would you be OK with removing MayNeedToLoadXBLBinding and the related code? If so, is this something you can provide a patch for?

Flags: needinfo?(emilio)

(In reply to Tim Nguyen :ntim from comment #6)

Hi Emilio, panel/arrowpanel is getting removed in bug 1397876, which means textbox will be the last binding to be removed. 🎉

I was however wondering what to do with the ‘MayNeedToLoadXBLBinding’ function. Not sure how conservative we are at removing the XBL platform code (for the unlikely event that we want to restore an XBL binding), but the simplest option would be to replace the ‘if (!aElement.IsAnyOfXULElements(nsGkAtoms::textbox)) {‘ check with ‘if (true)’, but may as well remove all the related code in this case.

Would you be OK with removing MayNeedToLoadXBLBinding and the related code? If so, is this something you can provide a patch for?

If Emilio is fine with it, I'd prefer to make that function just return false in this patch, with a comment pointing to Bug 1585823 for removal. I suspect there's a bit of cleanup to follow on with and would rather do it in a separate bug.

Attachment #9098398 - Attachment is obsolete: true

Yeah, let's do that, or just not touch that function at all and I'll get rid of it in that bug.

Flags: needinfo?(emilio)
Status: NEW → ASSIGNED
Pushed by ntim.bugs@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/59f0469f5a48
Remove textbox binding. r=emilio,dao
Blocks: 1585823
Pushed by ntim.bugs@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/733589091613
Remove some a11y tests that no longer apply in a post-XBL world. r=aryx
Flags: needinfo?(ntim.bugs)
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71
Duplicate of this bug: 1587704
Depends on: 1588066
Regressions: 1587677
Regressions: 1589188
Depends on: 1590387
Regressions: 1590612
Blocks: 1591034
You need to log in before you can comment on or make changes to this bug.