diff --git a/react-common/styles/controls/EditorToggle.less b/react-common/styles/controls/EditorToggle.less
index ad724bcbf649..e1b973acd14d 100644
--- a/react-common/styles/controls/EditorToggle.less
+++ b/react-common/styles/controls/EditorToggle.less
@@ -37,7 +37,7 @@
& > .common-button {
background: none;
- color: var(--pxt-neutral-background1);
+ color: var(--pxt-neutral-foreground1);
transition: color .25s;
margin: 0;
width: 100%;
diff --git a/react-common/styles/extensions/ExtensionCard.less b/react-common/styles/extensions/ExtensionCard.less
index 26071e77451d..2eca0873055d 100644
--- a/react-common/styles/extensions/ExtensionCard.less
+++ b/react-common/styles/extensions/ExtensionCard.less
@@ -51,7 +51,7 @@
border-top: solid 1px var(--pxt-neutral-stencil1);
flex-shrink: 0;
font-size: 16px;
- color: var(--pxt-secondary-background);
+ color: var(--pxt-neutral-foreground1);
overflow: hidden;
border-bottom-left-radius: 0.5rem;
diff --git a/react-common/styles/theming/base-theme.less b/react-common/styles/theming/base-theme.less
index 0bfdd5209e63..39ecf5de3ab4 100644
--- a/react-common/styles/theming/base-theme.less
+++ b/react-common/styles/theming/base-theme.less
@@ -65,6 +65,7 @@
--pxt-neutral-alpha10: rgba(0, 0, 0, 0.1);
--pxt-neutral-alpha20: rgba(0, 0, 0, 0.2);
--pxt-neutral-alpha50: rgba(0, 0, 0, 0.5);
+ --pxt-neutral-alpha80: rgba(0, 0, 0, 0.8);
--pxt-link: #3977B4;
--pxt-link-hover: #204467;
diff --git a/theme/blockly-core.less b/theme/blockly-core.less
index 049d22792938..db46594bf278 100644
--- a/theme/blockly-core.less
+++ b/theme/blockly-core.less
@@ -306,8 +306,10 @@ text.blocklyCheckbox {
*******************************/
.blocklyWidgetDiv .blocklyContextMenu {
- border: 1px solid rgba(34,36,38,.15);
- box-shadow: 0 1px 2px 0 rgba(34,36,38,.15) !important;
+ background: var(--pxt-neutral-background1);
+ color: var(--pxt-neutral-foreground1);
+ border: 1px solid var(--pxt-neutral-stencil1);
+ box-shadow: 0 1px 2px 0 var(--pxt-neutral-alpha20) !important;
padding: 0 !important;
}
@@ -315,12 +317,15 @@ text.blocklyCheckbox {
margin: 0 !important;
padding: .92857143em 1.14285714em !important;
font: normal 13px @pageFont !important;
+ background: var(--pxt-neutral-background1);
+ color: var(--pxt-neutral-foreground1);
}
.blocklyWidgetDiv .blocklyContextMenu .goog-menuitem-highlight, .blocklyWidgetDiv .blocklyContextMenu .goog-menuitem-hover {
border: none !important;
padding: .92857143em 1.14285714em !important;
- background: rgba(0,0,0,.05) !important;
+ background: var(--pxt-neutral-background1-hover) !important;
+ color: var(--pxt-neutral-foreground1-hover);
}
/*******************************
diff --git a/theme/color-themes/high-contrast.json b/theme/color-themes/high-contrast.json
index beeaf3924832..febcfcd07ac6 100644
--- a/theme/color-themes/high-contrast.json
+++ b/theme/color-themes/high-contrast.json
@@ -73,6 +73,7 @@
"pxt-neutral-alpha10": "rgba(255, 255, 255, 0.1)",
"pxt-neutral-alpha20": "rgba(255, 255, 255, 0.2)",
"pxt-neutral-alpha50": "rgba(255, 255, 255, 0.5)",
+ "pxt-neutral-alpha80": "rgba(255, 255, 255, 0.8)",
"pxt-link": "#807FFF",
"pxt-link-hover": "#1b19ff",
diff --git a/theme/common.less b/theme/common.less
index d507ca99fb10..4a8804994aa7 100644
--- a/theme/common.less
+++ b/theme/common.less
@@ -634,6 +634,21 @@ div.simframe > iframe {
position: relative;
}
+.hw-button.ui.dropdown .menu {
+ background: var(--pxt-neutral-background1);
+ color: var(--pxt-neutral-foreground1);
+ border: 1px solid var(--pxt-neutral-stencil1);
+
+ & > .item {
+ color: var(--pxt-neutral-foreground1);
+
+ &:hover, &:focus {
+ background: var(--pxt-neutral-background1-hover);
+ color: var(--pxt-neutral-foreground1-hover);
+ }
+ }
+}
+
.ui.button:hover,
.ui.button:focus {
filter: grayscale(.15) brightness(.85) contrast(1.3);
diff --git a/theme/semantic-ui-overrides.less b/theme/semantic-ui-overrides.less
index 901f9e8b3288..2ef22ec6d28b 100644
--- a/theme/semantic-ui-overrides.less
+++ b/theme/semantic-ui-overrides.less
@@ -82,7 +82,7 @@ body.pxt-theme-root {
}
.description {
- color: var(--pxt-neutral-alpha50);
+ color: var(--pxt-neutral-alpha80);
}
}
@@ -115,6 +115,7 @@ body.pxt-theme-root {
.ui.table {
color: var(--pxt-neutral-foreground1);
background: var(--pxt-neutral-background1);
+ border: 1px solid var(--pxt-neutral-alpha20);
th, tr, i {
color: var(--pxt-neutral-foreground1);
@@ -129,6 +130,20 @@ body.pxt-theme-root {
}
}
}
+
+ tr, th {
+ border-bottom: 1px solid var(--pxt-neutral-alpha10);
+ }
+
+ tr td {
+ border-top: 1px solid var(--pxt-neutral-alpha10);
+ }
+
+ td:nth-child(2),
+ tfoot:not(.full-width) th:nth-child(2),
+ thead:not(.full-width) th:nth-child(2) {
+ border-left: 1px solid var(--pxt-neutral-alpha10);
+ }
}
.ui.header {
@@ -147,7 +162,8 @@ body.pxt-theme-root {
.dropdown.item .menu, .ui.dropdown .menu {
background: var(--pxt-neutral-background1);
color: var(--pxt-neutral-foreground1);
- box-shadow: 0 1px 3px 0 var(--pxt-neutral-alpha10);
+ box-shadow: 0 1px 3px 0 var(--pxt-neutral-alpha20);
+ border: 1px solid var(--pxt-neutral-stencil1);
.item {
color: var(--pxt-neutral-foreground1) !important; // override !important in semantic ui
@@ -173,7 +189,9 @@ body.pxt-theme-root {
color: var(--pxt-neutral-foreground2);
}
- .ui.input {
+ .ui.input,
+ .ui.form input[type=url],
+ .ui.form textarea {
background: none;
color: var(--pxt-neutral-foreground2);
diff --git a/webapp/src/components/assetEditor/assetGallery.tsx b/webapp/src/components/assetEditor/assetGallery.tsx
index dc354fa5ced5..6e7f9763fbfb 100644
--- a/webapp/src/components/assetEditor/assetGallery.tsx
+++ b/webapp/src/components/assetEditor/assetGallery.tsx
@@ -121,7 +121,7 @@ class AssetGalleryImpl extends React.Component