Rename link-hover-* rules to link-*-hover. (#3736)

Co-authored-by: Will McGugan <willmcgugan@gmail.com>
This commit is contained in:
Rodrigo Girão Serrão
2023-11-29 14:09:58 +00:00
committed by GitHub
parent 5603a4da2b
commit d993cce505
28 changed files with 160 additions and 154 deletions

View File

@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## Unreleased
### Changed
- Breaking changes https://github.com/Textualize/textual/issues/1530
- `link-hover-background` renamed to `link-background-hover`
- `link-hover-color` renamed to `link-color-hover`
- `link-hover-style` renamed to `link-style-hover`
### Added
- Added support for Ctrl+Fn and Ctrl+Shift+Fn keys in urxvt https://github.com/Textualize/textual/pull/3737

View File

@@ -3,7 +3,7 @@ from textual.widgets import Label
class LinkHoverBackgroundApp(App):
CSS_PATH = "link_hover_background.tcss"
CSS_PATH = "link_background_hover.tcss"
def compose(self):
yield Label(

View File

@@ -1,9 +1,9 @@
#lbl1, #lbl2 {
link-hover-background: red; /* (1)! */
link-background-hover: red; /* (1)! */
}
#lbl3 {
link-hover-background: hsl(60,100%,50%) 50%;
link-background-hover: hsl(60,100%,50%) 50%;
}
#lbl4 {

View File

@@ -3,7 +3,7 @@ from textual.widgets import Label
class LinkHoverColorApp(App):
CSS_PATH = "link_hover_color.tcss"
CSS_PATH = "link_color_hover.tcss"
def compose(self):
yield Label(

View File

@@ -0,0 +1,11 @@
#lbl1, #lbl2 {
link-color-hover: red; /* (1)! */
}
#lbl3 {
link-color-hover: hsl(60,100%,50%) 50%;
}
#lbl4 {
link-color-hover: black;
}

View File

@@ -1,11 +0,0 @@
#lbl1, #lbl2 {
link-hover-color: red; /* (1)! */
}
#lbl3 {
link-hover-color: hsl(60,100%,50%) 50%;
}
#lbl4 {
link-hover-color: black;
}

View File

@@ -1,11 +0,0 @@
#lbl1, #lbl2 {
link-hover-style: bold italic; /* (1)! */
}
#lbl3 {
link-hover-style: reverse strike;
}
#lbl4 {
link-hover-style: bold;
}

View File

@@ -3,7 +3,7 @@ from textual.widgets import Label
class LinkHoverStyleApp(App):
CSS_PATH = "link_hover_style.tcss"
CSS_PATH = "link_style_hover.tcss"
def compose(self):
yield Label(

View File

@@ -0,0 +1,11 @@
#lbl1, #lbl2 {
link-style-hover: bold italic; /* (1)! */
}
#lbl3 {
link-style-hover: reverse strike;
}
#lbl4 {
link-style-hover: bold;
}

View File

Before

Width:  |  Height:  |  Size: 135 KiB

After

Width:  |  Height:  |  Size: 135 KiB

View File

Before

Width:  |  Height:  |  Size: 167 KiB

After

Width:  |  Height:  |  Size: 167 KiB

View File

Before

Width:  |  Height:  |  Size: 233 KiB

After

Width:  |  Height:  |  Size: 233 KiB

View File

@@ -10,11 +10,11 @@ There are a number of styles which influence the appearance of these links withi
| Property | Description |
|-------------------------------------------------------|-------------------------------------------------------------------|
| [`link-background`](./link_background.md) | The background color of the link text. |
| [`link-background-hover`](./link_background_hover.md) | The background color of the link text when the cursor is over it. |
| [`link-color`](./link_color.md) | The color of the link text. |
| [`link-hover-background`](./link_hover_background.md) | The background color of the link text when the cursor is over it. |
| [`link-hover-color`](./link_hover_color.md) | The color of the link text when the cursor is over it. |
| [`link-hover-style`](./link_hover_style.md) | The style of the link text when the cursor is over it. |
| [`link-color-hover`](./link_color_hover.md) | The color of the link text when the cursor is over it. |
| [`link-style`](./link_style.md) | The style of the link text (e.g. underline). |
| [`link-style-hover`](./link_style_hover.md) | The style of the link text when the cursor is over it. |
## Syntax
@@ -25,11 +25,11 @@ There are a number of styles which influence the appearance of these links withi
<a href="./link_style">link-style</a>: <a href="../../css_types/text_style">&lt;text-style&gt;</a>;
<a href="./link_hover_background">link-hover-background</a>: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
<a href="./link_background_hover">link-background-hover</a>: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
<a href="./link_hover_color">link-hover-color</a>: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
<a href="./link_color_hover">link-color-hover</a>: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
<a href="./link_hover_style">link-hover-style</a>: <a href="../../css_types/text_style">&lt;text-style&gt;</a>;
<a href="./link_style_hover">link-style-hover</a>: <a href="../../css_types/text_style">&lt;text-style&gt;</a>;
--8<-- "docs/snippets/syntax_block_end.md"
Visit each style's reference page to learn more about how the values are used.

View File

@@ -63,4 +63,4 @@ widget.styles.link_background = Color(100, 30, 173)
## See also
- [`link-color`](./link_color.md) to set the color of link text.
- [`link-hover-background](./link_hover_background.md) to set the background color of link text when the mouse pointer is over it.
- [`link-background-hover](./link_background_hover.md) to set the background color of link text when the mouse pointer is over it.

View File

@@ -1,53 +1,53 @@
# Link-hover-background
# Link-background-hover
The `link-hover-background` style sets the background color of the link when the mouse cursor is over the link.
The `link-background-hover` style sets the background color of the link when the mouse cursor is over the link.
!!! note
`link-hover-background` only applies to Textual action links as described in the [actions guide](../../guide/actions.md#links) and not to regular hyperlinks.
`link-background-hover` only applies to Textual action links as described in the [actions guide](../../guide/actions.md#links) and not to regular hyperlinks.
## Syntax
--8<-- "docs/snippets/syntax_block_start.md"
link-hover-background: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
link-background-hover: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
--8<-- "docs/snippets/syntax_block_end.md"
`link-hover-background` accepts a [`<color>`](../../css_types/color.md) (with an optional opacity level defined by a [`<percentage>`](../../css_types/percentage.md)) that is used to define the background color of text enclosed in Textual action links when the mouse pointer is over it.
`link-background-hover` accepts a [`<color>`](../../css_types/color.md) (with an optional opacity level defined by a [`<percentage>`](../../css_types/percentage.md)) that is used to define the background color of text enclosed in Textual action links when the mouse pointer is over it.
### Defaults
If not provided, a Textual action link will have `link-hover-background` set to `$accent`.
If not provided, a Textual action link will have `link-background-hover` set to `$accent`.
## Example
The example below shows some links that have their background colour changed when the mouse moves over it and it shows that there is a default color for `link-hover-background`.
The example below shows some links that have their background colour changed when the mouse moves over it and it shows that there is a default color for `link-background-hover`.
It also shows that `link-hover-background` does not affect hyperlinks.
It also shows that `link-background-hover` does not affect hyperlinks.
=== "Output"
![](./demos/link_hover_background_demo.gif)
![](./demos/link_background_hover_demo.gif)
!!! note
The GIF has reduced quality to make it easier to load in the documentation.
Try running the example yourself with `textual run docs/examples/styles/link_hover_background.py`.
Try running the example yourself with `textual run docs/examples/styles/link_background_hover.py`.
=== "link_hover_background.py"
=== "link_background_hover.py"
```py hl_lines="10-11 14-15 18-19 22-23"
--8<-- "docs/examples/styles/link_hover_background.py"
--8<-- "docs/examples/styles/link_background_hover.py"
```
1. This label has a hyperlink so it won't be affected by the `link-hover-background` rule.
2. This label has an "action link" that can be styled with `link-hover-background`.
3. This label has an "action link" that can be styled with `link-hover-background`.
4. This label has an "action link" that can be styled with `link-hover-background`.
1. This label has a hyperlink so it won't be affected by the `link-background-hover` rule.
2. This label has an "action link" that can be styled with `link-background-hover`.
3. This label has an "action link" that can be styled with `link-background-hover`.
4. This label has an "action link" that can be styled with `link-background-hover`.
=== "link_hover_background.tcss"
=== "link_background_hover.tcss"
```sass hl_lines="2 6 10"
--8<-- "docs/examples/styles/link_hover_background.tcss"
--8<-- "docs/examples/styles/link_background_hover.tcss"
```
1. This will only affect one of the labels because action links are the only links that this rule affects.
@@ -56,22 +56,22 @@ It also shows that `link-hover-background` does not affect hyperlinks.
## CSS
```sass
link-hover-background: red 70%;
link-hover-background: $accent;
link-background-hover: red 70%;
link-background-hover: $accent;
```
## Python
```py
widget.styles.link_hover_background = "red 70%"
widget.styles.link_hover_background = "$accent"
widget.styles.link_background_hover = "red 70%"
widget.styles.link_background_hover = "$accent"
# You can also use a `Color` object directly:
widget.styles.link_hover_background = Color(100, 30, 173)
widget.styles.link_background_hover = Color(100, 30, 173)
```
## See also
- [`link-background`](./link_background.md) to set the background color of link text.
- [`link-hover-color](./link_hover_color.md) to set the color of link text when the mouse pointer is over it.
- [`link-hover-style](./link_hover_style.md) to set the style of link text when the mouse pointer is over it.
- [`link-color-hover](./link_color_hover.md) to set the color of link text when the mouse pointer is over it.
- [`link-style-hover](./link_style_hover.md) to set the style of link text when the mouse pointer is over it.

View File

@@ -63,4 +63,4 @@ widget.styles.link_color = Color(100, 30, 173)
## See also
- [`link-background`](./link_background.md) to set the background color of link text.
- [`link-hover-color](./link_hover_color.md) to set the color of link text when the mouse pointer is over it.
- [`link-color-hover](./link_color_hover.md) to set the color of link text when the mouse pointer is over it.

View File

@@ -1,57 +1,57 @@
# Link-hover-color
# Link-color-hover
The `link-hover-color` style sets the color of the link text when the mouse cursor is over the link.
The `link-color-hover` style sets the color of the link text when the mouse cursor is over the link.
!!! note
`link-hover-color` only applies to Textual action links as described in the [actions guide](../../guide/actions.md#links) and not to regular hyperlinks.
`link-color-hover` only applies to Textual action links as described in the [actions guide](../../guide/actions.md#links) and not to regular hyperlinks.
## Syntax
--8<-- "docs/snippets/syntax_block_start.md"
link-hover-color: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
link-color-hover: <a href="../../css_types/color">&lt;color&gt;</a> [<a href="../../css_types/percentage">&lt;percentage&gt;</a>];
--8<-- "docs/snippets/syntax_block_end.md"
`link-hover-color` accepts a [`<color>`](../../css_types/color.md) (with an optional opacity level defined by a [`<percentage>`](../../css_types/percentage.md)) that is used to define the color of text enclosed in Textual action links when the mouse pointer is over it.
`link-color-hover` accepts a [`<color>`](../../css_types/color.md) (with an optional opacity level defined by a [`<percentage>`](../../css_types/percentage.md)) that is used to define the color of text enclosed in Textual action links when the mouse pointer is over it.
### Defaults
If not provided, a Textual action link will have `link-hover-color` set to `white`.
If not provided, a Textual action link will have `link-color-hover` set to `white`.
## Example
The example below shows some links that have their colour changed when the mouse moves over it.
It also shows that `link-hover-color` does not affect hyperlinks.
It also shows that `link-color-hover` does not affect hyperlinks.
=== "Output"
![](./demos/link_hover_color_demo.gif)
![](./demos/link_color_hover_demo.gif)
!!! note
The background color also changes when the mouse moves over the links because that is the default behavior.
That can be customised by setting [`link-hover-background`](./link_hover_background.md) but we haven't done so in this example.
That can be customised by setting [`link-background-hover`](./link_background_hover.md) but we haven't done so in this example.
!!! note
The GIF has reduced quality to make it easier to load in the documentation.
Try running the example yourself with `textual run docs/examples/styles/link_hover_color.py`.
Try running the example yourself with `textual run docs/examples/styles/link_color_hover.py`.
=== "link_hover_color.py"
=== "link_color_hover.py"
```py hl_lines="10-11 14-15 18-19 22-23"
--8<-- "docs/examples/styles/link_hover_color.py"
--8<-- "docs/examples/styles/link_color_hover.py"
```
1. This label has a hyperlink so it won't be affected by the `link-hover-color` rule.
2. This label has an "action link" that can be styled with `link-hover-color`.
3. This label has an "action link" that can be styled with `link-hover-color`.
4. This label has an "action link" that can be styled with `link-hover-color`.
1. This label has a hyperlink so it won't be affected by the `link-color-hover` rule.
2. This label has an "action link" that can be styled with `link-color-hover`.
3. This label has an "action link" that can be styled with `link-color-hover`.
4. This label has an "action link" that can be styled with `link-color-hover`.
=== "link_hover_color.tcss"
=== "link_color_hover.tcss"
```sass hl_lines="2 6 10"
--8<-- "docs/examples/styles/link_hover_color.tcss"
--8<-- "docs/examples/styles/link_color_hover.tcss"
```
1. This will only affect one of the labels because action links are the only links that this rule affects.
@@ -59,22 +59,22 @@ It also shows that `link-hover-color` does not affect hyperlinks.
## CSS
```sass
link-hover-color: red 70%;
link-hover-color: black;
link-color-hover: red 70%;
link-color-hover: black;
```
## Python
```py
widget.styles.link_hover_color = "red 70%"
widget.styles.link_hover_color = "black"
widget.styles.link_color_hover = "red 70%"
widget.styles.link_color_hover = "black"
# You can also use a `Color` object directly:
widget.styles.link_hover_color = Color(100, 30, 173)
widget.styles.link_color_hover = Color(100, 30, 173)
```
## See also
- [`link-color`](./link_color.md) to set the color of link text.
- [`link-hover-background](./link_hover_background.md) to set the background color of link text when the mouse pointer is over it.
- [`link-hover-style](./link_hover_style.md) to set the style of link text when the mouse pointer is over it.
- [`link-background-hover](./link_background_hover.md) to set the background color of link text when the mouse pointer is over it.
- [`link-style-hover](./link_style_hover.md) to set the style of link text when the mouse pointer is over it.

View File

@@ -63,5 +63,5 @@ widget.styles.link_style = "bold italic reverse"
## See also
- [`link-hover-style](./link_hover_style.md) to set the style of link text when the mouse pointer is over it.
- [`link-style-hover](./link_style_hover.md) to set the style of link text when the mouse pointer is over it.
- [`text-style`](../text_style.md) to set the style of text in a widget.

View File

@@ -1,57 +1,57 @@
# Link-hover-style
# Link-style-hover
The `link-hover-style` style sets the text style for the link text when the mouse cursor is over the link.
The `link-style-hover` style sets the text style for the link text when the mouse cursor is over the link.
!!! note
`link-hover-style` only applies to Textual action links as described in the [actions guide](../../guide/actions.md#links) and not to regular hyperlinks.
`link-style-hover` only applies to Textual action links as described in the [actions guide](../../guide/actions.md#links) and not to regular hyperlinks.
## Syntax
--8<-- "docs/snippets/syntax_block_start.md"
link-hover-style: <a href="../../css_types/text_style">&lt;text-style&gt;</a>;
link-style-hover: <a href="../../css_types/text_style">&lt;text-style&gt;</a>;
--8<-- "docs/snippets/syntax_block_end.md"
`link-hover-style` applies its [`<text-style>`](../../css_types/text_style.md) to the text of Textual action links when the mouse pointer is over them.
`link-style-hover` applies its [`<text-style>`](../../css_types/text_style.md) to the text of Textual action links when the mouse pointer is over them.
### Defaults
If not provided, a Textual action link will have `link-hover-style` set to `bold`.
If not provided, a Textual action link will have `link-style-hover` set to `bold`.
## Example
The example below shows some links that have their colour changed when the mouse moves over it.
It also shows that `link-hover-style` does not affect hyperlinks.
It also shows that `link-style-hover` does not affect hyperlinks.
=== "Output"
![](./demos/link_hover_style_demo.gif)
![](./demos/link_style_hover_demo.gif)
!!! note
The background color also changes when the mouse moves over the links because that is the default behavior.
That can be customised by setting [`link-hover-background`](./link_hover_background.md) but we haven't done so in this example.
That can be customised by setting [`link-background-hover`](./link_background_hover.md) but we haven't done so in this example.
!!! note
The GIF has reduced quality to make it easier to load in the documentation.
Try running the example yourself with `textual run docs/examples/styles/link_hover_style.py`.
Try running the example yourself with `textual run docs/examples/styles/link_style_hover.py`.
=== "link_hover_style.py"
=== "link_style_hover.py"
```py hl_lines="10-11 14-15 18-19 22-23"
--8<-- "docs/examples/styles/link_hover_style.py"
--8<-- "docs/examples/styles/link_style_hover.py"
```
1. This label has a hyperlink so it won't be affected by the `link-hover-style` rule.
2. This label has an "action link" that can be styled with `link-hover-style`.
3. This label has an "action link" that can be styled with `link-hover-style`.
4. This label has an "action link" that can be styled with `link-hover-style`.
1. This label has a hyperlink so it won't be affected by the `link-style-hover` rule.
2. This label has an "action link" that can be styled with `link-style-hover`.
3. This label has an "action link" that can be styled with `link-style-hover`.
4. This label has an "action link" that can be styled with `link-style-hover`.
=== "link_hover_style.tcss"
=== "link_style_hover.tcss"
```sass hl_lines="2 6 10"
--8<-- "docs/examples/styles/link_hover_style.tcss"
--8<-- "docs/examples/styles/link_style_hover.tcss"
```
1. This will only affect one of the labels because action links are the only links that this rule affects.
@@ -60,20 +60,20 @@ It also shows that `link-hover-style` does not affect hyperlinks.
## CSS
```sass
link-hover-style: bold;
link-hover-style: bold italic reverse;
link-style-hover: bold;
link-style-hover: bold italic reverse;
```
## Python
```py
widget.styles.link_hover_style = "bold"
widget.styles.link_hover_style = "bold italic reverse"
widget.styles.link_style_hover = "bold"
widget.styles.link_style_hover = "bold italic reverse"
```
## See also
- [`link-hover-background](./link_hover_background.md) to set the background color of link text when the mouse pointer is over it.
- [`link-hover-color](./link_hover_color.md) to set the color of link text when the mouse pointer is over it.
- [`link-background-hover](./link_background_hover.md) to set the background color of link text when the mouse pointer is over it.
- [`link-color-hover](./link_color_hover.md) to set the color of link text when the mouse pointer is over it.
- [`link-style`](./link_style.md) to set the style of link text.
- [`text-style`](../text_style.md) to set the style of text in a widget.

View File

@@ -100,11 +100,11 @@ nav:
- Links:
- "styles/links/index.md"
- "styles/links/link_background.md"
- "styles/links/link_background_hover.md"
- "styles/links/link_color.md"
- "styles/links/link_hover_background.md"
- "styles/links/link_hover_color.md"
- "styles/links/link_hover_style.md"
- "styles/links/link_color_hover.md"
- "styles/links/link_style.md"
- "styles/links/link_style_hover.md"
- "styles/margin.md"
- "styles/max_height.md"
- "styles/max_width.md"

View File

@@ -150,10 +150,10 @@ class StylesCache:
and hover_style._meta
and "@click" in hover_style.meta
):
link_hover_style = widget.link_hover_style
if link_hover_style:
link_style_hover = widget.link_style_hover
if link_style_hover:
strips = [
strip.style_links(hover_style.link_id, link_hover_style)
strip.style_links(hover_style.link_id, link_style_hover)
for strip in strips
]

View File

@@ -690,8 +690,8 @@ class StylesBuilder:
process_link_color = process_color
process_link_background = process_color
process_link_hover_color = process_color
process_link_hover_background = process_color
process_link_color_hover = process_color
process_link_background_hover = process_color
process_border_title_color = process_color
process_border_title_background = process_color
@@ -712,7 +712,7 @@ class StylesBuilder:
self.styles._rules[name.replace("-", "_")] = style_definition # type: ignore
process_link_style = process_text_style
process_link_hover_style = process_text_style
process_link_style_hover = process_text_style
process_border_title_style = process_text_style
process_border_subtitle_style = process_text_style

View File

@@ -170,10 +170,10 @@ class RulesMap(TypedDict, total=False):
link_background: Color
link_style: Style
link_hover_color: Color
auto_link_hover_color: bool
link_hover_background: Color
link_hover_style: Style
link_color_hover: Color
auto_link_color_hover: bool
link_background_hover: Color
link_style_hover: Style
auto_border_title_color: bool
border_title_color: Color
@@ -227,8 +227,8 @@ class StylesBase(ABC):
"scrollbar_background_active",
"link_color",
"link_background",
"link_hover_color",
"link_hover_background",
"link_color_hover",
"link_background_hover",
}
node: DOMNode | None = None
@@ -339,10 +339,10 @@ class StylesBase(ABC):
link_background = ColorProperty("transparent")
link_style = StyleFlagsProperty()
link_hover_color = ColorProperty("transparent")
auto_link_hover_color = BooleanProperty(False)
link_hover_background = ColorProperty("transparent")
link_hover_style = StyleFlagsProperty()
link_color_hover = ColorProperty("transparent")
auto_link_color_hover = BooleanProperty(False)
link_background_hover = ColorProperty("transparent")
link_style_hover = StyleFlagsProperty()
auto_border_title_color = BooleanProperty(default=False)
border_title_color = ColorProperty(Color(255, 255, 255, 0))
@@ -1024,12 +1024,12 @@ class Styles(StylesBase):
if "link_style" in rules:
append_declaration("link-style", str(self.link_style))
if "link_hover_color" in rules:
append_declaration("link-hover-color", self.link_hover_color.css)
if "link_hover_background" in rules:
append_declaration("link-hover-background", self.link_hover_background.css)
if "link_hover_style" in rules:
append_declaration("link-hover-style", str(self.link_hover_style))
if "link_color_hover" in rules:
append_declaration("link-color-hover", self.link_color_hover.css)
if "link_background_hover" in rules:
append_declaration("link-background-hover", self.link_background_hover.css)
if "link_style_hover" in rules:
append_declaration("link-style-hover", str(self.link_style_hover))
if "border_title_color" in rules:
append_declaration("title-color", self.border_title_color.css)

View File

@@ -228,7 +228,6 @@ class Key(InputEvent):
Args:
key: The key that was pressed.
character: A printable character or ``None`` if it is not printable.
Attributes:
aliases: The aliases for the key, including the key itself.
"""

View File

@@ -221,9 +221,9 @@ class ScrollBar(Widget):
DEFAULT_CSS = """
ScrollBar {
link-hover-color: ;
link-hover-background:;
link-hover-style: ;
link-color-hover: ;
link-background-hover:;
link-style-hover: ;
link-color: transparent;
link-background: transparent;
}

View File

@@ -254,9 +254,9 @@ class Widget(DOMNode):
link-background: initial;
link-color: $text;
link-style: underline;
link-hover-background: $accent;
link-hover-color: $text;
link-hover-style: bold not underline;
link-background-hover: $accent;
link-color-hover: $text;
link-style-hover: bold not underline;
}
"""
COMPONENT_CLASSES: ClassVar[set[str]] = set()
@@ -1752,7 +1752,7 @@ class Widget(DOMNode):
return style
@property
def link_hover_style(self) -> Style:
def link_style_hover(self) -> Style:
"""Style of links underneath the mouse cursor.
Returns:
@@ -1760,13 +1760,13 @@ class Widget(DOMNode):
"""
styles = self.styles
_, background = self.background_colors
hover_background = background + styles.link_hover_background
hover_background = background + styles.link_background_hover
hover_color = hover_background + (
hover_background.get_contrast_text(styles.link_hover_color.a)
if styles.auto_link_hover_color
else styles.link_hover_color
hover_background.get_contrast_text(styles.link_color_hover.a)
if styles.auto_link_color_hover
else styles.link_color_hover
)
style = styles.link_hover_style + Style.from_color(
style = styles.link_style_hover + Style.from_color(
hover_color.rich_color,
hover_background.rich_color,
)

View File

@@ -48,9 +48,9 @@ class Toast(Static, inherit_css=False):
link-background: initial;
link-color: $text;
link-style: underline;
link-hover-background: $accent;
link-hover-color: $text;
link-hover-style: bold not underline;
link-background-hover: $accent;
link-color-hover: $text;
link-style-hover: bold not underline;
}
.toast--title {

View File

@@ -8771,7 +8771,7 @@
'''
# ---
# name: test_css_property[link_hover_background.py]
# name: test_css_property[link_background_hover.py]
'''
<svg class="rich-terminal" viewBox="0 0 994 635.5999999999999" xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
@@ -8927,7 +8927,7 @@
'''
# ---
# name: test_css_property[link_hover_color.py]
# name: test_css_property[link_color_hover.py]
'''
<svg class="rich-terminal" viewBox="0 0 994 635.5999999999999" xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
@@ -9083,7 +9083,7 @@
'''
# ---
# name: test_css_property[link_hover_style.py]
# name: test_css_property[link_style_hover.py]
'''
<svg class="rich-terminal" viewBox="0 0 994 635.5999999999999" xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->