From 666a0ae75461e6e02d180dbbe06b082bced34c90 Mon Sep 17 00:00:00 2001 From: Peter Tri Ho Date: Tue, 1 Sep 2020 11:59:23 +1000 Subject: [PATCH 1/3] Added ability to override css styling for hints --- package.json | 7 ++++++- src/lib/hints.js | 4 +++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 6df5707..69be190 100644 --- a/package.json +++ b/package.json @@ -79,6 +79,11 @@ "type": "string", "description": "Margin", "default": "0 1" + }, + "parameterHints.style": { + "type": "object", + "description": "Override styling for hints", + "default": {} } } } @@ -122,4 +127,4 @@ "dash-ast": "^2.0.1", "php-parser": "^3.0.1" } -} \ No newline at end of file +} diff --git a/src/lib/hints.js b/src/lib/hints.js index 26c8840..8bb259d 100644 --- a/src/lib/hints.js +++ b/src/lib/hints.js @@ -46,6 +46,7 @@ class Hints { return paddings.join('px ') + 'px'; } static paramHint(message, range) { + const style = workspace.getConfiguration('parameterHints.style'); return { range, renderOptions: { @@ -57,7 +58,8 @@ class Hints { margin: `${Hints.margin()}position: relative; padding: ${Hints.padding()}; display: inline-block;`, borderRadius: '5px', fontStyle: 'italic', - fontWeight: '400; font-size: 12px; line-height: 1;' + fontWeight: '400; font-size: 12px; line-height: 1;', + ...style } } }; From 0138b591f0a4e1d22cd64675c1c98e2e4c5202bf Mon Sep 17 00:00:00 2001 From: Peter Tri Ho Date: Tue, 1 Sep 2020 12:04:21 +1000 Subject: [PATCH 2/3] Renamed style to styles --- package.json | 4 ++-- src/lib/hints.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 69be190..34b48b2 100644 --- a/package.json +++ b/package.json @@ -80,9 +80,9 @@ "description": "Margin", "default": "0 1" }, - "parameterHints.style": { + "parameterHints.styles": { "type": "object", - "description": "Override styling for hints", + "description": "Override styles for hints", "default": {} } } diff --git a/src/lib/hints.js b/src/lib/hints.js index 8bb259d..ca9c6ee 100644 --- a/src/lib/hints.js +++ b/src/lib/hints.js @@ -46,7 +46,7 @@ class Hints { return paddings.join('px ') + 'px'; } static paramHint(message, range) { - const style = workspace.getConfiguration('parameterHints.style'); + const styles = workspace.getConfiguration('parameterHints.styles'); return { range, renderOptions: { @@ -59,7 +59,7 @@ class Hints { borderRadius: '5px', fontStyle: 'italic', fontWeight: '400; font-size: 12px; line-height: 1;', - ...style + ...styles } } }; From 7c98502b84fbc5850eaeb3db8b7cffbb5a7a66fb Mon Sep 17 00:00:00 2001 From: Peter Tri Ho Date: Tue, 1 Sep 2020 18:31:27 +1000 Subject: [PATCH 3/3] Added default and per theme overrides for styles --- README.md | 2 ++ package.json | 15 ++++++++++----- src/lib/hints.js | 8 ++++++-- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 1acd6b9..b401cc3 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,8 @@ Shows the parameter name of the called function |`parameterHints.languages`|Enable Parameter Hints only for the selected languages|`all`| |`parameterHints.padding`|Padding|`1 4`| |`parameterHints.margin`|Margin|`0 1`| +|`parameterHints.defaultStyles`|Override styles for hints (default)|`{}`| +|`parameterHints.themeStyles`|Override styles for hints (per theme)|`{}`|     diff --git a/package.json b/package.json index 34b48b2..0a2d94c 100644 --- a/package.json +++ b/package.json @@ -80,11 +80,16 @@ "description": "Margin", "default": "0 1" }, - "parameterHints.styles": { - "type": "object", - "description": "Override styles for hints", - "default": {} - } + "parameterHints.defaultStyles": { + "type": "object", + "description": "Override styles for hints (default)", + "default": {} + }, + "parameterHints.themeStyles": { + "type": "object", + "description": "Override styles for hints (per theme)", + "default": {} + } } } ], diff --git a/src/lib/hints.js b/src/lib/hints.js index ca9c6ee..fd351bf 100644 --- a/src/lib/hints.js +++ b/src/lib/hints.js @@ -46,7 +46,10 @@ class Hints { return paddings.join('px ') + 'px'; } static paramHint(message, range) { - const styles = workspace.getConfiguration('parameterHints.styles'); + const defaultStyles = workspace.getConfiguration('parameterHints.defaultStyles'); + const colorTheme = workspace.getConfiguration('workbench').get('colorTheme'); + const themeStyles = workspace.getConfiguration('parameterHints.themeStyles').get(colorTheme); + return { range, renderOptions: { @@ -59,7 +62,8 @@ class Hints { borderRadius: '5px', fontStyle: 'italic', fontWeight: '400; font-size: 12px; line-height: 1;', - ...styles + ...defaultStyles, + ...themeStyles } } };