Fix one-sided menu row borders
This commit is contained in:
@@ -38,6 +38,10 @@ const pathData = geometry.ringPath(100, 50, 10, { top: 4, right: 2, bottom: 8, l
|
||||
assert(pathData.includes('M 10 0'), 'border geometry emits outer rounded path')
|
||||
assert(pathData.includes('M 10 4'), 'border geometry emits inset inner rounded path')
|
||||
|
||||
const oneSidedPath = geometry.ringPath(100, 50, 10, { top: 0, right: 0, bottom: 0, left: 4 })
|
||||
assert(oneSidedPath.includes('M 10 0.001'), 'border geometry keeps zero-width top inside outer path')
|
||||
assert(oneSidedPath.includes('99.999 10.001'), 'border geometry keeps zero-width right inside outer path')
|
||||
|
||||
const endpoints = geometry.gradientEndpoints(100, 50, 0)
|
||||
assertEqual(Math.round(endpoints.x1), 0, 'border geometry 0deg starts at left edge')
|
||||
assertEqual(Math.round(endpoints.x2), 100, 'border geometry 0deg ends at right edge')
|
||||
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
source "$(dirname "$0")/base-test.sh"
|
||||
|
||||
run_node_test <<'JS'
|
||||
const fs = require('fs')
|
||||
|
||||
const menuQml = fs.readFileSync(path.join(root, 'shell/plugins/menu/Menu.qml'), 'utf8')
|
||||
const launcherQml = fs.readFileSync(path.join(root, 'shell/plugins/launcher/Launcher.qml'), 'utf8')
|
||||
|
||||
assert(
|
||||
/rowReservedBorderLeft:\s*Border\.left\(selectedBorderSpec\)/.test(menuQml)
|
||||
&& /rowReservedBorderRight:\s*Border\.right\(selectedBorderSpec\)/.test(menuQml),
|
||||
'Menu rows reserve selected border insets'
|
||||
)
|
||||
|
||||
assert(
|
||||
!/anchors\.(left|right)Margin:[^\n]*\brow\.border(Left|Right)\b/.test(menuQml),
|
||||
'Menu row content does not depend on current selected border state'
|
||||
)
|
||||
|
||||
assert(
|
||||
/rowReservedBorderLeft:\s*Border\.left\(selectedBorderSpec\)/.test(launcherQml)
|
||||
&& /rowReservedBorderRight:\s*Border\.right\(selectedBorderSpec\)/.test(launcherQml),
|
||||
'Launcher rows reserve selected border insets'
|
||||
)
|
||||
|
||||
assert(
|
||||
!/anchors\.(left|right)Margin:[^\n]*\brow\.border(Left|Right)\b/.test(launcherQml),
|
||||
'Launcher row content does not depend on current selected border state'
|
||||
)
|
||||
JS
|
||||
Reference in New Issue
Block a user