Closed Bug 31398 Opened 25 years ago Closed 24 years ago

[RFE] implement/extend tab to allow for wrapping text (<html>)

Categories

(Core :: XUL, enhancement, P3)

x86
Windows 95
enhancement

Tracking

()

RESOLVED FIXED

People

(Reporter: jmraker, Assigned: bugs)

Details

Attachments

(3 files)

On Win32 2000030516 daily build:

Actual Results:
When max-width: is used, min-width: is ignored on tabs with little reason to be 
the size of max-width.  Every tab renders the same size.

Expected Results:
XUL tabs should have a minimum and maximum size.  If a tab can be the width of 
min-width, it should just like it is if no width style is used.
Attached file Testcase of bug.
Summary: Enable min and max width. → Enable min and max width of tab widget.
assigning to evaughan for triage
Assignee: trudelle → evaughan
Using Win32 2000031412 Daily Build.

The tabs no longer render correctly because <tab> has no value="TEXT".  When the
tab text is moved there, it works(min & max width), but it cuts off extra text
by appending "...". (setting height:40px doesn't help)

Before, it was drawing the text in my testcase in multiple lines, which is good
considering the wierd name I have to give the 2nd tab, but the first row of tabs
were all the same width.

Is my testcase still valid XUL, ignoring the 2nd row of <tab>'s

jmraker@linuxstart.com - do you have a current status for this bug?

Gerv
Sorry for letting this linger so long unattended. (And ignore the
parts where I'm repeating things you've noted above).

As you've noted, the behaviour of the <tab> has changed since you 
filed the original bug report. It is now defined in XBL, like so:

  <binding id="tab">
    <content>
      <xul:image inherits="src" class="tab-left"/>
      <xul:text flex="1" inherits="value,crop,accesskey" crop="right" 
           class="tab-text"/>
    </content>
  </binding>

So, the value of the <tab> is what appears as its label in mozilla,
and is a non-wrapping (optionally cropping) <text> element. The
min-width: and max-width: are working correctly (as far as I can
see). I'll attach a modified version of your original test
case. (Notice that you can add images to the <tab>).

To get wrapping text into the tabs would require either an extension
of the <tab> binding, or changes directly to the <tab> binding. 
They would possibly take the syntax:

  <tab src="someurl.gif">
    <html>
      Just a bunch of text that is longer than usual.
    </html>
  </tab>

with a binding (for <tab>) like: 

  <binding id="tab">
    <content>
      <xul:image inherits="src" class="tab-left"/>
      <xul:text flex="1" inherits="value,crop,accesskey" crop="right" 
           class="tab-text"/>
      <children/>
    </content>
  </binding>

but adding the <html> has certain drawbacks in terms of the reflow 
overhead. [I may have gotten this all wrong, but I hope not :-]

At any rate, ben@netscape.com said that this might be something for 
future consideration, so I'm passing on bug to ben (m18 for now).
Assignee: evaughan → ben
Status: UNCONFIRMED → NEW
Ever confirmed: true
Target Milestone: --- → M18
Move to M21 target milestone.
Target Milestone: M18 → M21
updating summary to reflect the actual thing to be done.
Summary: Enable min and max width of tab widget. → [RFE] implement/extend tab to allow for wrapping text (<html>)
Correct me if I'm wrong but when I resize the window with the last test case,
the width of the tabs are staying the same width.  It's also not drawing a
scrollbar when the tab goes off the screen (maybe another bug report).  As far
as I can tell, it's not using min & max width correctly.  Seems like they are
interpreted as just the width.  Should the testcase's tab behave this way?
Attached file another case
(The scrollbar thing is another bug report). The added attachment may be 
clearer -- note that the left hand tabs have min-width, and the right hand
tabs have max-width with cropped text, and middle have preferred width.
Does that make sense? (I could still be completely missing something here).
ok, I was thinking that the tabs that were at their max length should have
adjusted(decreased) their width so they had a better chance of being on the
screen when the screen isn't wide enough.  It could wrap any text that was on
one line.  When I use min & max width with HTML text, the width adjusts with a
window resize.  I thought it would happen with this widget.
This has been fixed. <tab> can contain anything you like.
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Component: XP Toolkit/Widgets: XUL → XUL
QA Contact: jrgmorrison → xptoolkit.widgets
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: