The class `TextSourceLabel` is unused, as is the associated factory method 
`TextLabelFactory.createSimple(...)`.

The abstractions provided by the abstract classes `TextLabel` and 
`ExtendedTextLabel` only make sense when there are two types of text labels 
(`TextSourceLabel` and `ExtendedTextSourceLabel`). With the deletion of 
`TextSourceLabel`, both `TextLabel` and `ExtendedTextLabel` can also be removed.

The JavaDoc for the abstract methods in `TextLabel` and `ExtendedTextLabel`, 
which are implemented in `ExtendedTextSourceLabel`, was moved to 
`ExtendedTextSourceLabel` prior to the deletion of these two classes.

The few small convenience methods in `TextLabel` and `ExtendedTextLabel` were 
also moved to `ExtendedTextSourceLabel` prior to the deletion of these two 
classes.

I would have liked to give the combined `TextLabel` + `ExtendedTextLabel` + 
`ExtendedTextSourceLabel` class the name `TextLabel`, but I've used 
`ExtendedTextSourceLabel` instead because it makes the diff much smaller and 
maximizes code history traceability.

See initial mailing list discussion: 
https://mail.openjdk.org/pipermail/client-libs-dev/2025-September/032302.html

-------------

Commit messages:
 - Combine TextLabel + ExtendedTextLabel + ExtendedTextSourceLabel -> 
ExtendedTextSourceLabel
 - Delete unused class sun.font.TextSourceLabel

Changes: https://git.openjdk.org/jdk/pull/28090/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28090&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8371066
  Stats: 649 lines in 7 files changed: 137 ins; 480 del; 32 mod
  Patch: https://git.openjdk.org/jdk/pull/28090.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28090/head:pull/28090

PR: https://git.openjdk.org/jdk/pull/28090

Reply via email to