Parses a condition from a string.
Length conditions are specified as <type>: <value>[<unit>], where:
<type> can be min-width, max-width, min-height or max-height<value> is a fractional number<unit> can be px, pt or sp
If the unit is omitted, px is assumed.
See [adw.breakpoint_condition.BreakpointCondition.newLength].
Examples
*
min-width: 500px
min-height: 400ptmax-width: 100spmax-height: 500
Ratio conditions are specified as <type>: <width>[/<height>], where:
<type> can be min-aspect-ratio or max-aspect-ratio<width> and <height> are integer numbers
See [adw.breakpoint_condition.BreakpointCondition.newRatio].
The ratio is represented as <width> divided by <height>.
If <height> is omitted, it's assumed to be 1.
Examples:
min-aspect-ratio: 4/3max-aspect-ratio: 1
The logical operators and, or can be used to compose a complex condition as follows:
<condition> and <condition>: the condition is true when both
<condition>s are true, same as when using [adw.breakpoint_condition.BreakpointCondition.newAnd]
<condition> or <condition>: the condition is true when either of the
<condition>s is true, same as when using [adw.breakpoint_condition.BreakpointCondition.newOr]
Examples:
min-width: 400px and max-aspect-ratio: 4/3max-width: 360sp or max-width: 360px
Conditions can be further nested using parentheses, for example:
min-width: 400px and (max-aspect-ratio: 4/3 or max-height: 400px)
If parentheses are omitted, the first operator takes priority.
Parameters
str | the string specifying the condition |
Returns
the parsed condition