Toolbar enhancements (#1194)

This commit is contained in:
Francesco Spissu 2022-07-18 18:43:41 +02:00 committed by GitHub
parent d4833affc6
commit 5ff9ce0028
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 139 additions and 103 deletions

File diff suppressed because one or more lines are too long

View File

@ -46,6 +46,7 @@ import { ArduinoMenus } from './menu/arduino-menus';
import { MonitorViewContribution } from './serial/monitor/monitor-view-contribution';
import { ArduinoToolbar } from './toolbar/arduino-toolbar';
import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
import { SerialPlotterContribution } from './serial/plotter/plotter-frontend-contribution';
@injectable()
export class ArduinoFrontendContribution
@ -130,6 +131,14 @@ export class ArduinoFrontendContribution
ArduinoToolbar.is(widget) && widget.side === 'left',
priority: 7,
});
registry.registerItem({
id: 'toggle-serial-plotter',
command: SerialPlotterContribution.Commands.OPEN_TOOLBAR.id,
tooltip: nls.localize(
'arduino/serial/openSerialPlotter',
'Serial Plotter'
),
});
registry.registerItem({
id: 'toggle-serial-monitor',
command: MonitorViewContribution.TOGGLE_SERIAL_MONITOR_TOOLBAR,
@ -222,6 +231,26 @@ export class ArduinoFrontendContribution
description:
'Background color of the toolbar items when hovering over them. Such as Upload, Verify, etc.',
},
{
id: 'arduino.toolbar.button.secondary.label',
defaults: {
dark: 'secondaryButton.foreground',
light: 'button.foreground',
hc: 'activityBar.inactiveForeground',
},
description:
'Foreground color of the toolbar items. Such as Serial Monitor and Serial Plotter',
},
{
id: 'arduino.toolbar.button.secondary.hoverBackground',
defaults: {
dark: 'secondaryButton.hoverBackground',
light: 'button.hoverBackground',
hc: 'textLink.foreground',
},
description:
'Background color of the toolbar items when hovering over them, such as "Serial Monitor" and "Serial Plotter"',
},
{
id: 'arduino.toolbar.toggleBackground',
defaults: {

View File

@ -1,4 +1,8 @@
import { inject, injectable, postConstruct } from '@theia/core/shared/inversify';
import {
inject,
injectable,
postConstruct,
} from '@theia/core/shared/inversify';
import {
BoardsPackage,
BoardsService,

View File

@ -10,7 +10,6 @@ import {
Command,
CommandRegistry,
SketchContribution,
TabBarToolbarRegistry,
} from './contribution';
import { MaybePromise, MenuModelRegistry, nls } from '@theia/core/lib/common';
import { CurrentSketch } from '../../common/protocol/sketches-service-client-impl';
@ -112,10 +111,6 @@ export class Debug extends SketchContribution {
});
}
override registerToolbarItems(registry: TabBarToolbarRegistry): void {
registry.registerItem(this.debugToolbarItem);
}
override registerMenus(registry: MenuModelRegistry): void {
registry.registerMenuAction(ArduinoMenus.SKETCH__MAIN_GROUP, {
commandId: Debug.Commands.OPTIMIZE_FOR_DEBUG.id,

View File

@ -9,7 +9,6 @@ import {
CommandRegistry,
MenuModelRegistry,
KeybindingRegistry,
TabBarToolbarRegistry,
} from './contribution';
@injectable()
@ -40,15 +39,6 @@ export class NewSketch extends SketchContribution {
});
}
override registerToolbarItems(registry: TabBarToolbarRegistry): void {
registry.registerItem({
id: NewSketch.Commands.NEW_SKETCH__TOOLBAR.id,
command: NewSketch.Commands.NEW_SKETCH__TOOLBAR.id,
tooltip: nls.localize('arduino/sketch/new', 'New'),
priority: 3,
});
}
async newSketch(): Promise<void> {
try {
const sketch = await this.sketchService.createNewSketch();

View File

@ -16,7 +16,6 @@ import {
CommandRegistry,
MenuModelRegistry,
KeybindingRegistry,
TabBarToolbarRegistry,
} from './contribution';
import { ExamplesService } from '../../common/protocol/examples-service';
import { BuiltInExamples } from './examples';
@ -131,15 +130,6 @@ export class OpenSketch extends SketchContribution {
});
}
override registerToolbarItems(registry: TabBarToolbarRegistry): void {
registry.registerItem({
id: OpenSketch.Commands.OPEN_SKETCH__TOOLBAR.id,
command: OpenSketch.Commands.OPEN_SKETCH__TOOLBAR.id,
tooltip: nls.localize('vscode/dialogMainService/open', 'Open'),
priority: 4,
});
}
async openSketch(
toOpen: MaybePromise<Sketch | undefined> = this.selectSketch()
): Promise<void> {

View File

@ -9,7 +9,6 @@ import {
CommandRegistry,
MenuModelRegistry,
KeybindingRegistry,
TabBarToolbarRegistry,
} from './contribution';
import { nls } from '@theia/core/lib/common';
import { CurrentSketch } from '../../common/protocol/sketches-service-client-impl';
@ -43,15 +42,6 @@ export class SaveSketch extends SketchContribution {
});
}
override registerToolbarItems(registry: TabBarToolbarRegistry): void {
registry.registerItem({
id: SaveSketch.Commands.SAVE_SKETCH__TOOLBAR.id,
command: SaveSketch.Commands.SAVE_SKETCH__TOOLBAR.id,
tooltip: nls.localize('vscode/fileCommands/save', 'Save'),
priority: 5,
});
}
async saveSketch(): Promise<void> {
const sketch = await this.sketchServiceClient.currentSketch();
if (!CurrentSketch.isValid(sketch)) {

View File

@ -276,7 +276,7 @@ export namespace SketchControl {
export namespace Commands {
export const OPEN_SKETCH_CONTROL__TOOLBAR: Command = {
id: 'arduino-open-sketch-control--toolbar',
iconClass: 'fa fa-caret-down',
iconClass: 'fa fa-arduino-sketch-tabs-menu',
};
}
}

View File

@ -46,6 +46,8 @@
"arduino.output.foreground": "#ffffff",
"arduino.output.background": "#000000",
"arduino.toolbar.button.hoverBackground": "#dae3e3",
"arduino.toolbar.button.secondary.label": "#dae3e3",
"arduino.toolbar.button.secondary.hoverBackground": "#dae3e366",
"arduino.toolbar.button.background": "#0ca1a6",
"arduino.toolbar.dropdown.border": "#7fcbcd",
"arduino.toolbar.dropdown.borderActive": "#0ca1a6",

View File

@ -46,6 +46,8 @@
"arduino.output.foreground": "#ffffff",
"arduino.output.background": "#000000",
"arduino.toolbar.button.hoverBackground": "#f7f9f9",
"arduino.toolbar.button.secondary.label": "#dae3e3",
"arduino.toolbar.button.secondary.hoverBackground": "#dae3e366",
"arduino.toolbar.button.background": "#7fcbcd",
"arduino.toolbar.dropdown.border": "#dae3e3",
"arduino.toolbar.dropdown.borderActive": "#7fcbcd",

View File

@ -0,0 +1,4 @@
<svg width="25" height="20" viewBox="0 0 25 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20.125 14C20.125 14.2321 20.0328 14.4546 19.8687 14.6187C19.7046 14.7828 19.4821 14.875 19.25 14.875H10.5C10.2679 14.875 10.0454 14.7828 9.88128 14.6187C9.71719 14.4546 9.625 14.2321 9.625 14C9.625 13.7679 9.71719 13.5454 9.88128 13.3813C10.0454 13.2172 10.2679 13.125 10.5 13.125H19.25C19.4821 13.125 19.7046 13.2172 19.8687 13.3813C20.0328 13.5454 20.125 13.7679 20.125 14Z" fill="black"/>
<path d="M24.2462 6.37875L22.75 4.89125V0.875C22.75 0.642936 22.6578 0.420376 22.4937 0.256282C22.3296 0.0921874 22.1071 0 21.875 0H3.5C3.26794 0 3.04538 0.0921874 2.88128 0.256282C2.71719 0.420376 2.625 0.642936 2.625 0.875V3.5H0.875C0.642936 3.5 0.420376 3.59219 0.256282 3.75628C0.0921872 3.92038 0 4.14294 0 4.375V8.75C0 8.98206 0.0921872 9.20462 0.256282 9.36872C0.420376 9.53281 0.642936 9.625 0.875 9.625H2.625V18.375C2.625 18.6071 2.71719 18.8296 2.88128 18.9937C3.04538 19.1578 3.26794 19.25 3.5 19.25H21.875C21.9902 19.2507 22.1043 19.2286 22.2109 19.1851C22.3175 19.1415 22.4145 19.0773 22.4962 18.9962L24.2462 17.2462C24.3273 17.1645 24.3915 17.0675 24.4351 16.9609C24.4786 16.8543 24.5007 16.7402 24.5 16.625V7C24.5007 6.88484 24.4786 6.77069 24.4351 6.66408C24.3915 6.55747 24.3273 6.46051 24.2462 6.37875ZM1.75 7.875V5.25H6.125V7.875H1.75ZM22.75 16.2663L21.5163 17.5H4.375V9.625H7C7.23206 9.625 7.45462 9.53281 7.61872 9.36872C7.78281 9.20462 7.875 8.98206 7.875 8.75V4.375C7.875 4.14294 7.78281 3.92038 7.61872 3.75628C7.45462 3.59219 7.23206 3.5 7 3.5H4.375V1.75H21V5.25C20.9993 5.36516 21.0214 5.47931 21.0649 5.58592C21.1085 5.69253 21.1727 5.78949 21.2538 5.87125L22.75 7.35875V16.2663Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1,3 @@
<svg width="24" height="16" viewBox="0 0 24 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.1858 13.92C8.73525 13.92 7.38744 13.4748 6.27173 12.7138L4.24581 14.7397C3.89434 15.0912 3.3245 15.0912 2.97303 14.7397C2.62156 14.3882 2.62156 13.8184 2.97303 13.4669L4.92544 11.5145C3.86685 10.2933 3.2258 8.70059 3.2258 6.95998C3.2258 3.11999 6.3458 0 10.1858 0C14.0258 0 17.1458 3.11999 17.1458 6.95998C17.1458 10.8 14.0258 13.92 10.1858 13.92ZM10.1858 2.4C7.6658 2.4 5.6258 4.43999 5.6258 6.95998C5.6258 9.47998 7.6658 11.52 10.1858 11.52C12.6938 11.52 14.7458 9.47998 14.7458 6.95998C14.7458 4.45199 12.7058 2.4 10.1858 2.4ZM17.9619 7.47017C17.9619 8.02365 18.4106 8.47233 18.9641 8.47233C19.5176 8.47233 19.9662 8.02365 19.9662 7.47017C19.9662 6.91669 19.5176 6.468 18.9641 6.468C18.4106 6.468 17.9619 6.91669 17.9619 7.47017ZM1.001 8.47246C0.448162 8.47246 0 8.0243 0 7.47147C0 6.91863 0.448162 6.47047 1.001 6.47047C1.55383 6.47047 2.002 6.91863 2.002 7.47147C2.002 8.0243 1.55383 8.47246 1.001 8.47246ZM22.7923 8.47233C22.2389 8.47233 21.7902 8.02365 21.7902 7.47017C21.7902 6.91669 22.2389 6.468 22.7923 6.468C23.3458 6.468 23.7945 6.91669 23.7945 7.47017C23.7945 8.02365 23.3458 8.47233 22.7923 8.47233ZM10.1978 8.23198C9.49529 8.23198 8.9258 7.66249 8.9258 6.95999C8.9258 6.25748 9.49529 5.68799 10.1978 5.68799C10.9003 5.68799 11.4698 6.25748 11.4698 6.95999C11.4698 7.66249 10.9003 8.23198 10.1978 8.23198Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1,3 @@
<svg width="16" height="19" viewBox="0 0 16 19" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6 18.0019C5.62402 18.0019 5.27637 17.79 5.10547 17.4492L2.38184 12.0019H1C0.44727 12.0019 0 11.5546 0 11.0019C0 10.4492 0.44727 10.0019 1 10.0019H3C3.37891 10.0019 3.72461 10.2158 3.89453 10.5546L5.68555 14.1367L9.03028 0.759723C9.13868 0.322223 9.52637 0.0126525 9.97657 0.00191246C10.4209 -0.0273875 10.8281 0.283163 10.958 0.714803L13.7442 10.0019H15C15.5527 10.0019 16 10.4492 16 11.0019C16 11.5546 15.5527 12.0019 15 12.0019H13C12.5586 12.0019 12.169 11.7119 12.042 11.289L10.0879 4.77437L6.96974 17.2441C6.86818 17.6504 6.5254 17.9502 6.10939 17.9961C6.07228 18 6.03615 18.0019 6.00001 18.0019H6Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 732 B

View File

@ -0,0 +1,5 @@
<svg width="13" height="3" viewBox="0 0 13 3" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.1875 2.25C6.80882 2.25 7.3125 1.74632 7.3125 1.125C7.3125 0.50368 6.80882 0 6.1875 0C5.56618 0 5.0625 0.50368 5.0625 1.125C5.0625 1.74632 5.56618 2.25 6.1875 2.25Z" fill="black"/>
<path d="M11.25 2.25C11.8713 2.25 12.375 1.74632 12.375 1.125C12.375 0.50368 11.8713 0 11.25 0C10.6287 0 10.125 0.50368 10.125 1.125C10.125 1.74632 10.6287 2.25 11.25 2.25Z" fill="black"/>
<path d="M1.125 2.25C1.74632 2.25 2.25 1.74632 2.25 1.125C2.25 0.50368 1.74632 0 1.125 0C0.50368 0 0 0.50368 0 1.125C0 1.74632 0.50368 2.25 1.125 2.25Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 650 B

View File

@ -0,0 +1,3 @@
<svg width="17" height="15" viewBox="0 0 17 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M15.71 7.71253L9.70996 13.7125C9.51001 13.9025 9.26001 14.0026 9 14.0026C8.73999 14.0026 8.48999 13.9025 8.29004 13.7125C7.90003 13.3226 7.90003 12.6825 8.29004 12.2926L12.5901 8.00257H1C0.44995 8.00257 0 7.55261 0 7.00256C0 6.45251 0.44995 6.00256 1 6.00256H12.5901L8.29004 1.71253C7.90003 1.32264 7.90003 0.682495 8.29004 0.292605C8.67993 -0.097535 9.32007 -0.097535 9.70996 0.292605L15.71 6.2926C16.1 6.68249 16.1 7.32264 15.71 7.71253V7.71253Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 576 B

View File

@ -0,0 +1,3 @@
<svg width="16" height="11" viewBox="0 0 16 11" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6 11C5.74414 11 5.48827 10.9023 5.29296 10.707L0.292965 5.70702C-0.097655 5.3164 -0.097655 4.68358 0.292965 4.29296C0.683585 3.90234 1.31641 3.90234 1.70703 4.29296L6 8.58593L14.293 0.292965C14.6836 -0.097655 15.3164 -0.097655 15.707 0.292965C16.0976 0.683585 16.0976 1.31641 15.707 1.70703L6.70703 10.707C6.51172 10.9023 6.25586 11 6 11Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 468 B

View File

@ -13,6 +13,7 @@ import { ipcRenderer } from '@theia/electron/shared/electron';
import { MonitorManagerProxyClient } from '../../../common/protocol';
import { BoardsServiceProvider } from '../../boards/boards-service-provider';
import { MonitorModel } from '../../monitor-model';
import { ArduinoToolbar } from '../../toolbar/arduino-toolbar';
const queryString = require('query-string');
@ -30,6 +31,9 @@ export namespace SerialPlotterContribution {
export const RESET: Command = {
id: 'serial-plotter-reset',
};
export const OPEN_TOOLBAR: Command = {
id: 'serial-plotter-open-toolbar',
};
}
}
@ -71,6 +75,14 @@ export class PlotterFrontendContribution extends Contribution {
registry.registerCommand(SerialPlotterContribution.Commands.RESET, {
execute: () => this.reset(),
});
registry.registerCommand(
{ id: SerialPlotterContribution.Commands.OPEN_TOOLBAR.id },
{
isVisible: (widget) =>
ArduinoToolbar.is(widget) && widget.side === 'right',
execute: this.startPlotter.bind(this),
}
);
}
override registerMenus(menus: MenuModelRegistry): void {

View File

@ -150,11 +150,11 @@ div#select-board-dialog .selectBoardContainer .body .list .item.selected i {
color: var(--theia-arduino-toolbar-dropdown-label);
display: flex;
gap: 10px;
height: 24px;
margin: 0 6px;
height: 28px;
margin: 0 4px;
overflow: hidden;
padding: 0 10px;
width: 230px;
width: 210px;
}
.arduino-boards-toolbar-item--protocol,

View File

@ -1,9 +1,9 @@
@font-face {
font-family: 'FontAwesome';
src:
url('fonts/FontAwesome.ttf?ykyvxr') format('truetype'),
url('fonts/FontAwesome.woff?ykyvxr') format('woff'),
url('fonts/FontAwesome.svg?ykyvxr#FontAwesome') format('svg');
url('fonts/FontAwesome.ttf?nk42gd') format('truetype'),
url('fonts/FontAwesome.woff?nk42gd') format('woff'),
url('fonts/FontAwesome.svg?nk42gd#FontAwesome') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
@ -24,6 +24,21 @@
-moz-osx-font-smoothing: grayscale;
}
.fa-arduino-verify:before {
content: "\e90b";
}
.fa-arduino-upload:before {
content: "\e90c";
}
.fa-arduino-monitor:before {
content: "\e90d";
}
.fa-arduino-sketch-tabs-menu:before {
content: "\e90e";
}
.fa-arduino-plotter:before {
content: "\e90f";
}
.fa-fa-check:before {
content: "\e90a";
}

View File

@ -8,16 +8,21 @@
<missing-glyph horiz-adv-x="1024" />
<glyph unicode="&#x20;" horiz-adv-x="512" d="" />
<glyph unicode="&#xe900;" glyph-name="reload" d="M512.083-9.079c118.817 0 232.769 47.2 316.781 131.213 84.019 84.019 131.219 197.969 131.219 316.785 0 8.487-3.373 16.627-9.376 22.628-5.997 6.001-14.138 9.373-22.624 9.373s-16.627-3.372-22.63-9.373c-5.997-6.001-9.37-14.141-9.37-22.627-0.019-87.81-30.131-172.959-85.318-241.26s-132.115-115.622-217.962-134.086c-85.848-18.458-175.428-6.931-253.811 32.646-78.383 39.584-140.833 104.832-176.941 184.87-36.108 80.045-43.693 170.045-21.49 255.001s72.852 159.737 143.505 211.878c70.653 52.141 157.042 78.492 244.768 74.662s171.487-37.612 237.33-95.712h-158.081c-8.487 0-16.626-3.372-22.627-9.373s-9.373-14.141-9.373-22.627c0-8.487 3.372-16.627 9.373-22.628s14.14-9.372 22.627-9.372h224.001c8.486 0 16.627 3.371 22.624 9.372 6.003 6.001 9.376 14.141 9.376 22.628v224c0 8.487-3.373 16.626-9.376 22.627-5.997 6.001-14.138 9.373-22.624 9.373s-16.627-3.371-22.63-9.373c-5.997-6.001-9.37-14.14-9.37-22.627v-136.96c-55.162 46.332-120.678 78.68-191.002 94.301s-143.375 14.052-212.963-4.571c-69.588-18.623-133.659-53.753-186.78-102.41s-93.725-109.405-118.369-177.096c-24.644-67.69-32.602-140.324-23.199-211.745 9.404-71.419 35.891-139.521 77.216-198.523 41.325-59.008 96.27-107.174 160.174-140.422s134.885-50.598 206.922-50.573v0z" />
<glyph unicode="&#xe901;" glyph-name="arduino-search" d="M984.883 21.297l-272.696 272.696c63.208 77.401 94.257 176.128 86.728 275.773-7.533 99.645-53.065 192.585-127.19 259.604s-171.168 102.992-271.064 100.479c-99.897-2.512-195.009-43.317-265.67-113.978s-111.466-165.773-113.978-265.67c-2.512-99.898 33.46-196.942 100.479-271.062 67.019-74.124 159.959-119.661 259.604-127.19 99.643-7.533 198.375 23.516 275.771 86.724l272.696-272.696c3.624-3.651 7.929-6.549 12.68-8.526 4.746-1.977 9.835-2.996 14.982-2.996 5.142 0 10.231 1.020 14.982 2.996 4.746 1.977 9.056 4.875 12.675 8.526 3.651 3.624 6.549 7.934 8.526 12.68 1.981 4.746 2.996 9.839 2.996 14.982s-1.015 10.236-2.996 14.982c-1.977 4.746-4.875 9.056-8.526 12.675zM411.833 227.379c-61.639 0-121.894 18.276-173.145 52.522s-91.197 82.917-114.785 139.865c-23.588 56.948-29.76 119.61-17.735 180.065s41.707 115.986 85.293 159.571c43.585 43.585 99.117 73.268 159.571 85.293s123.12 5.854 180.063-17.735c56.948-23.588 105.623-63.533 139.865-114.784 34.246-51.251 52.527-111.506 52.527-173.145 0-82.655-32.835-161.926-91.283-220.374-58.448-58.444-137.715-91.278-220.371-91.278z" />
<glyph unicode="&#xe902;" glyph-name="arduino-boards" horiz-adv-x="1178" d="M1107.2 931.657h-896c-11.881 0-23.277-4.72-31.678-13.122s-13.122-19.797-13.122-31.678v-268.8h-89.6c-11.881 0-23.277-4.72-31.678-13.122s-13.122-19.797-13.122-31.678v-268.8c0-11.884 4.72-23.276 13.122-31.677s19.797-13.123 31.678-13.123h89.6v-268.8c0-11.884 4.72-23.276 13.122-31.677s19.797-13.123 31.678-13.123h896c11.884 0 23.276 4.721 31.677 13.123s13.123 19.794 13.123 31.677v896c0 11.881-4.721 23.277-13.123 31.678s-19.794 13.122-31.677 13.122zM121.6 349.257v179.2h134.4v-179.2h-134.4zM1062.4 35.657h-89.6v44.8c0 11.884-4.721 23.276-13.123 31.677s-19.794 13.123-31.677 13.123c-11.884 0-23.276-4.721-31.677-13.123s-13.123-19.794-13.123-31.677v-44.8h-89.6v44.8c0 11.884-4.721 23.276-13.123 31.677s-19.794 13.123-31.677 13.123c-11.884 0-23.276-4.721-31.677-13.123s-13.123-19.794-13.123-31.677v-44.8h-89.6v44.8c0 11.884-4.721 23.276-13.123 31.677s-19.794 13.123-31.677 13.123c-11.884 0-23.276-4.721-31.677-13.123s-13.123-19.794-13.123-31.677v-44.8h-89.6v44.8c0 11.884-4.72 23.276-13.122 31.677s-19.797 13.123-31.678 13.123c-11.881 0-23.277-4.721-31.678-13.123s-13.122-19.794-13.122-31.677v-44.8h-89.6v224h44.8c11.881 0 23.277 4.721 31.678 13.123s13.122 19.794 13.122 31.677v268.8c0 11.881-4.72 23.277-13.122 31.678s-19.797 13.122-31.678 13.122h-44.8v224h89.6v-44.8c0-11.881 4.72-23.277 13.122-31.678s19.797-13.122 31.678-13.122c11.881 0 23.277 4.72 31.678 13.122s13.122 19.797 13.122 31.678v44.8h89.6v-44.8c0-11.881 4.721-23.277 13.123-31.678s19.794-13.122 31.677-13.122c11.884 0 23.276 4.72 31.677 13.122s13.123 19.797 13.123 31.678v44.8h89.6v-44.8c0-11.881 4.721-23.277 13.123-31.678s19.794-13.122 31.677-13.122c11.884 0 23.276 4.72 31.677 13.122s13.123 19.797 13.123 31.678v44.8h89.6v-44.8c0-11.881 4.721-23.277 13.123-31.678s19.794-13.122 31.677-13.122c11.884 0 23.276 4.72 31.677 13.122s13.123 19.797 13.123 31.678v44.8h89.6v-806.4zM928 618.057h-268.8c-11.884 0-23.276-4.72-31.677-13.122s-13.123-19.797-13.123-31.678v-268.8c0-11.884 4.721-23.276 13.123-31.677s19.794-13.123 31.677-13.123h268.8c11.884 0 23.276 4.721 31.677 13.123s13.123 19.794 13.123 31.677v268.8c0 11.881-4.721 23.277-13.123 31.678s-19.794 13.122-31.677 13.122zM883.2 349.257h-179.2v179.2h179.2v-179.2z" />
<glyph unicode="&#xe903;" glyph-name="arduino-library" d="M1006.669 49.097l-164.271 625.707c-2.778 9.338-9.097 17.219-17.604 21.963-8.512 4.743-18.539 5.972-27.942 3.424l-135.518-33.973v220.64c0 9.901-3.934 19.397-10.935 26.399s-16.495 10.935-26.398 10.935h-149.333c-9.903 0-19.396-3.933-26.398-10.935s-10.935-16.497-10.935-26.399v-112h-149.333v74.667c0 9.901-3.933 19.397-10.935 26.399s-16.497 10.935-26.399 10.935h-186.667c-9.901 0-19.397-3.933-26.399-10.935s-10.935-16.497-10.935-26.399v-858.667c0-9.903 3.933-19.396 10.935-26.398s16.497-10.935 26.399-10.935h560c9.903 0 19.396 3.934 26.398 10.935s10.935 16.495 10.935 26.398v435.682l114.987-437.922c2.116-8.213 6.967-15.462 13.751-20.553 6.788-5.090 15.104-7.714 23.582-7.445 3.226-0.363 6.481-0.363 9.707 0l157.918 41.438c9.566 2.483 17.758 8.661 22.775 17.173 2.475 4.527 3.985 9.519 4.437 14.66 0.448 5.141-0.171 10.317-1.822 15.206zM213.333 28.19h-112v784h112v-784zM437.333 28.19h-149.333v672h149.333v-672zM586.667 28.19h-74.667v821.333h74.667v-821.333zM839.040 43.87l-145.225 553.28 85.867 22.773 145.225-554.4-85.867-21.653z" />
<glyph unicode="&#xe904;" glyph-name="arduino-folder" horiz-adv-x="1252" d="M1173.333 737.523h-527.15l-184.175 184.675c-4.651 4.614-10.167 8.263-16.232 10.741s-12.559 3.733-19.11 3.695h-348.444c-13.202 0-25.863-5.244-35.198-14.58s-14.58-21.996-14.58-35.198v-895.999c0-13.204 5.244-25.862 14.58-35.197s21.997-14.581 35.198-14.581h1095.111c13.204 0 25.862 5.245 35.197 14.581s14.581 21.993 14.581 35.197v696.888c0 13.202-5.245 25.863-14.581 35.198s-21.993 14.58-35.197 14.58zM128 837.079h278.258l99.556-99.556h-377.813v99.556zM1123.556 40.635h-995.556v597.333h995.556v-597.333z" />
<glyph unicode="&#xe905;" glyph-name="arduino-debugger" horiz-adv-x="1071" d="M634.224 287.761c-8.983-0.009-17.72 2.956-24.841 8.425-7.126 5.474-12.241 13.149-14.55 21.83s-1.685 17.883 1.778 26.168c3.463 8.29 9.57 15.202 17.366 19.661l304.621 173.966-488.052 278.888v-296.387c0-10.801-4.291-21.16-11.929-28.799s-17.997-11.929-28.799-11.929c-10.801 0-21.16 4.291-28.799 11.929s-11.929 17.997-11.929 28.799v366.545c-0.004 7.135 1.867 14.146 5.426 20.33s8.681 11.324 14.852 14.905c6.171 3.581 13.175 5.477 20.31 5.499s14.15-1.832 20.343-5.376l610.91-349.045c6.232-3.561 11.413-8.707 15.020-14.917 3.603-6.209 5.502-13.261 5.502-20.441s-1.899-14.232-5.502-20.441c-3.607-6.21-8.788-11.356-15.020-14.917l-366.545-209.326c-6.135-3.523-13.089-5.376-20.163-5.367zM512 153.766c10.803 0 21.16 4.291 28.798 11.93s11.93 17.994 11.93 28.798c0 10.803-4.291 21.16-11.93 28.798s-17.994 11.93-28.798 11.93h-43.176c-1.987 17.389-5.532 34.56-10.587 51.316l41.949 41.951c3.798 3.793 6.81 8.304 8.867 13.265 2.053 4.962 3.109 10.277 3.109 15.649s-1.057 10.687-3.109 15.649c-2.057 4.962-5.069 9.467-8.867 13.265s-8.304 6.81-13.265 8.867c-4.962 2.053-10.277 3.114-15.649 3.114s-10.688-1.061-15.65-3.114c-4.961-2.057-9.47-5.069-13.267-8.867l-21.585-21.583c-14.553 22.109-34.216 40.387-57.327 53.285-23.11 12.902-48.988 20.052-75.444 20.838-26.456-0.787-52.334-7.936-75.444-20.838s-42.774-31.181-57.327-53.29l-21.585 21.588c-7.669 7.671-18.070 11.976-28.915 11.976s-21.247-4.305-28.916-11.976c-7.669-7.666-11.978-18.069-11.978-28.914s4.308-21.248 11.977-28.914l41.949-41.951c-5.055-16.756-8.599-33.927-10.589-51.316h-43.171c-10.801 0-21.161-4.291-28.799-11.93s-11.929-17.994-11.929-28.798c0-10.803 4.291-21.16 11.929-28.798s17.997-11.93 28.799-11.93h43.173c1.991-17.389 5.534-34.56 10.589-51.316l-1.222-1.224-40.727-40.727c-7.631-7.685-11.913-18.078-11.913-28.914 0-10.831 4.282-21.225 11.913-28.914 7.72-7.568 18.102-11.813 28.915-11.813s21.194 4.245 28.915 11.813l21.585 21.588c14.553-22.109 34.216-40.387 57.327-53.29s48.989-20.052 75.445-20.838c26.456 0.787 52.334 7.936 75.444 20.838s42.774 31.181 57.327 53.29l21.585-21.588c7.72-7.573 18.102-11.813 28.916-11.813 10.813 0 21.192 4.24 28.914 11.813 7.629 7.689 11.911 18.083 11.911 28.914 0 10.836-4.282 21.229-11.911 28.914l-41.95 41.951c5.055 16.756 8.6 33.927 10.588 51.316h43.176zM288 357.402c37.058 0 69.644-32.991 87.564-81.455h-175.127c17.92 48.463 50.506 81.455 87.564 81.455zM288 31.584c-55.389 0-101.818 74.533-101.818 162.909h203.636c0-88.376-46.429-162.909-101.818-162.909z" />
<glyph unicode="&#xe901;" glyph-name="arduino-search" d="M963.994 21.297l-272.696 272.696c63.208 77.401 94.257 176.128 86.724 275.772-7.529 99.645-53.065 192.585-127.19 259.604-74.12 67.019-171.164 102.992-271.061 100.479s-195.009-43.317-265.67-113.978c-70.66-70.66-111.466-165.773-113.978-265.67s33.46-196.941 100.479-271.065c67.019-74.12 159.96-119.657 259.604-127.185 99.645-7.533 198.372 23.516 275.773 86.724l272.696-272.696c3.62-3.651 7.929-6.549 12.675-8.526s9.839-2.996 14.982-2.996c5.142 0 10.236 1.020 14.982 2.996 4.75 1.977 9.056 4.875 12.68 8.526 3.651 3.624 6.549 7.929 8.526 12.68 1.977 4.746 2.996 9.839 2.996 14.982s-1.020 10.231-2.996 14.982c-1.977 4.746-4.875 9.056-8.526 12.675v0zM390.942 227.379c-61.639 0-121.894 18.276-173.145 52.522-51.251 34.242-91.196 82.917-114.785 139.865s-29.76 119.609-17.735 180.064c12.025 60.454 41.707 115.986 85.293 159.571s99.117 73.268 159.571 85.293c60.454 12.025 123.116 5.854 180.064-17.735s105.619-63.533 139.865-114.784c34.246-51.251 52.522-111.506 52.522-173.145 0-82.658-32.835-161.924-91.278-220.372-58.448-58.444-137.719-91.278-220.373-91.278v0z" />
<glyph unicode="&#xe902;" glyph-name="arduino-boards" horiz-adv-x="1178" d="M1030.4 214.857c0-11.884-4.721-23.276-13.123-31.677s-19.794-13.123-31.677-13.123h-448c-11.884 0-23.276 4.721-31.678 13.123-8.401 8.402-13.122 19.794-13.122 31.677s4.72 23.276 13.122 31.677c8.403 8.402 19.795 13.123 31.678 13.123h448c11.884 0 23.276-4.721 31.677-13.123s13.123-19.794 13.123-31.677zM1241.405 605.065l-76.605 76.16v205.632c0 11.881-4.721 23.277-13.123 31.678s-19.794 13.122-31.677 13.122h-940.8c-11.881 0-23.277-4.72-31.678-13.122s-13.122-19.797-13.122-31.678v-134.4h-89.6c-11.882 0-23.277-4.72-31.678-13.122s-13.122-19.797-13.122-31.678v-224c0-11.881 4.72-23.277 13.122-31.678s19.797-13.122 31.678-13.122h89.6v-448c0-11.884 4.72-23.276 13.122-31.677s19.797-13.123 31.678-13.123h940.8c5.898-0.036 11.74 1.096 17.198 3.323 5.458 2.232 10.424 5.519 14.607 9.672l89.6 89.6c4.152 4.183 7.439 9.149 9.672 14.607 2.227 5.458 3.359 11.3 3.323 17.198v492.8c0.036 5.896-1.096 11.741-3.323 17.199-2.232 5.458-5.519 10.423-9.672 14.609zM89.6 528.457v134.4h224v-134.4h-224zM1164.8 98.822l-63.165-63.165h-877.635v403.2h134.4c11.881 0 23.277 4.72 31.678 13.122s13.122 19.797 13.122 31.678v224c0 11.881-4.72 23.277-13.122 31.678s-19.797 13.122-31.678 13.122h-134.4v89.6h851.2v-179.2c-0.036-5.896 1.096-11.741 3.323-17.199 2.232-5.458 5.519-10.423 9.672-14.609l76.605-76.16v-456.067z" />
<glyph unicode="&#xe903;" glyph-name="arduino-library" d="M980.002 49.097l-164.267 625.707c-2.782 9.338-9.101 17.219-17.609 21.963-8.512 4.743-18.539 5.972-27.942 3.424l-135.518-33.973v220.64c0 9.901-3.934 19.397-10.935 26.399s-16.495 10.935-26.398 10.935h-149.333c-9.903 0-19.396-3.933-26.399-10.935-7.001-7.002-10.935-16.497-10.935-26.399v-112h-149.333v74.667c0 9.901-3.933 19.397-10.935 26.399s-16.497 10.935-26.399 10.935h-186.667c-9.901 0-19.397-3.933-26.399-10.935s-10.935-16.497-10.935-26.399v-858.667c0-9.903 3.933-19.396 10.935-26.398s16.497-10.935 26.399-10.935h560c9.903 0 19.396 3.934 26.398 10.935s10.935 16.495 10.935 26.398v435.682l114.987-437.922c2.116-8.213 6.967-15.462 13.751-20.553 6.788-5.090 15.104-7.714 23.582-7.445 3.226-0.363 6.481-0.363 9.707 0l157.918 41.438c9.566 2.483 17.758 8.661 22.775 17.173 2.475 4.527 3.985 9.519 4.437 14.66 0.448 5.141-0.171 10.317-1.822 15.206v0zM186.667 28.19h-112v784h112v-784zM410.667 28.19h-149.333v672h149.333v-672zM560 28.19h-74.667v821.333h74.667v-821.333zM812.373 43.87l-145.225 553.28 85.867 22.773 145.225-554.4-85.867-21.653z" />
<glyph unicode="&#xe904;" glyph-name="arduino-folder" horiz-adv-x="1252" d="M1144.889 737.523h-527.15l-184.175 184.675c-4.651 4.614-10.167 8.263-16.232 10.741s-12.559 3.733-19.11 3.695h-348.444c-13.202 0-25.863-5.244-35.198-14.58s-14.58-21.996-14.58-35.198v-895.999c0-13.204 5.244-25.862 14.58-35.197s21.996-14.581 35.198-14.581h1095.111c13.204 0 25.862 5.245 35.197 14.581s14.581 21.993 14.581 35.197v696.888c0 13.202-5.245 25.863-14.581 35.198s-21.993 14.58-35.197 14.58zM99.556 837.079h278.258l99.556-99.556h-377.813v99.556zM1095.111 40.635h-995.556v597.333h995.556v-597.333z" />
<glyph unicode="&#xe905;" glyph-name="arduino-debugger" horiz-adv-x="1071" d="M610.951 287.756c-8.983-0.005-17.72 2.956-24.841 8.429-7.126 5.474-12.241 13.144-14.55 21.825s-1.685 17.883 1.778 26.173c3.463 8.29 9.57 15.202 17.366 19.661l304.621 173.965-488.052 278.887v-296.386c0-10.801-4.291-21.16-11.929-28.799-7.638-7.636-17.997-11.927-28.799-11.927s-21.16 4.291-28.799 11.927c-7.638 7.638-11.929 17.997-11.929 28.799v366.545c-0.004 7.135 1.867 14.146 5.426 20.33s8.681 11.324 14.852 14.905c6.171 3.581 13.175 5.477 20.31 5.499s14.15-1.832 20.343-5.376l610.91-349.045c6.232-3.561 11.413-8.707 15.020-14.917 3.603-6.21 5.502-13.261 5.502-20.441s-1.899-14.232-5.502-20.441c-3.607-6.21-8.788-11.356-15.020-14.917l-366.545-209.324c-6.135-3.528-13.089-5.381-20.163-5.371zM488.727 153.766c10.803 0 21.16 4.291 28.798 11.93s11.93 17.994 11.93 28.798c0 10.803-4.291 21.16-11.93 28.798s-17.994 11.93-28.798 11.93h-43.173c-1.991 17.389-5.534 34.56-10.589 51.316l41.949 41.951c3.798 3.793 6.81 8.304 8.867 13.265 2.053 4.962 3.109 10.277 3.109 15.649s-1.057 10.687-3.109 15.649c-2.057 4.962-5.069 9.467-8.867 13.265s-8.304 6.81-13.265 8.867c-4.961 2.053-10.279 3.114-15.649 3.114s-10.688-1.061-15.649-3.114c-4.961-2.057-9.47-5.069-13.267-8.867l-21.585-21.583c-14.553 22.109-34.216 40.387-57.327 53.285-23.11 12.902-48.988 20.052-75.444 20.838-26.456-0.787-52.334-7.936-75.444-20.838s-42.774-31.181-57.327-53.29l-21.585 21.588c-7.669 7.671-18.070 11.976-28.915 11.976s-21.247-4.305-28.916-11.976c-7.669-7.666-11.978-18.069-11.978-28.914s4.308-21.248 11.977-28.914l41.949-41.951c-5.055-16.756-8.599-33.927-10.589-51.316h-43.171c-10.802 0-21.161-4.291-28.799-11.93s-11.929-17.994-11.929-28.798c0-10.803 4.291-21.16 11.929-28.798s17.997-11.93 28.799-11.93h43.173c1.991-17.389 5.534-34.56 10.589-51.316l-1.222-1.224-40.727-40.727c-7.631-7.685-11.913-18.078-11.913-28.914 0-10.831 4.282-21.225 11.913-28.914 7.72-7.568 18.102-11.813 28.915-11.813s21.194 4.245 28.915 11.813l21.585 21.588c14.553-22.109 34.216-40.387 57.327-53.29s48.989-20.052 75.445-20.838c26.456 0.787 52.334 7.936 75.444 20.838s42.774 31.181 57.327 53.29l21.585-21.588c7.72-7.573 18.102-11.813 28.915-11.813s21.194 4.24 28.916 11.813c7.629 7.689 11.911 18.083 11.911 28.914 0 10.836-4.282 21.229-11.911 28.914l-41.95 41.951c5.055 16.756 8.599 33.927 10.589 51.316h43.174zM264.727 357.402c37.058 0 69.644-32.991 87.564-81.455h-175.127c17.92 48.463 50.506 81.455 87.564 81.455zM264.727 31.584c-55.389 0-101.818 74.533-101.818 162.909h203.636c0-88.376-46.429-162.909-101.818-162.909z" />
<glyph unicode="&#xe906;" glyph-name="arduino-technology-3dimensionscube" d="M864 822.857h-576c-8.484-0.062-16.618-3.385-22.72-9.28l-128-128c-5.969-6.052-9.305-14.219-9.28-22.72v-576c0.024-8.48 3.404-16.602 9.4-22.598s14.121-9.376 22.6-9.402h576c8.486 0.038 16.634 3.36 22.72 9.28l128 128c5.894 6.099 9.216 14.234 9.28 22.72v576c-0.026 8.479-3.405 16.605-9.402 22.6s-14.118 9.375-22.598 9.4zM704 118.857h-512v512h512v-512zM722.56 694.857h-485.12l63.68 64h485.44l-64-64zM832 227.977l-64-63.68v485.12l64 64v-485.44z" />
<glyph unicode="&#xe907;" glyph-name="arduino-technology-usb" d="M848 726.857v-96c0-8.487-3.373-16.627-9.37-22.627-6.003-6.001-14.144-9.373-22.63-9.373h-16v-96c-0.019-5.909-1.67-11.699-4.781-16.725-3.104-5.027-7.539-9.096-12.819-11.755l-238.4-119.36v-242.88c16.845-7.354 30.644-20.282 39.079-36.608 8.435-16.333 10.989-35.066 7.233-53.056s-13.59-34.144-27.852-45.734c-14.262-11.597-32.081-17.92-50.46-17.92s-36.198 6.323-50.46 17.92c-14.262 11.59-24.097 27.744-27.852 45.734s-1.201 36.723 7.233 53.056c8.435 16.326 22.234 29.254 39.079 36.608v82.88l-238.4 119.36c-5.277 2.659-9.715 6.728-12.822 11.755s-4.76 10.816-4.778 16.725v102.72c-16.845 7.352-30.644 20.279-39.079 36.609s-10.988 35.066-7.233 53.057c3.755 17.992 13.59 34.141 27.852 45.734s32.081 17.921 50.46 17.921c18.38 0 36.198-6.328 50.46-17.921s24.097-27.743 27.852-45.734c3.756-17.992 1.201-36.727-7.233-53.057s-22.234-29.257-39.079-36.609v-82.88l192-96v524.16h-32c-6.372-0.032-12.609 1.839-17.91 5.374s-9.428 8.572-11.85 14.466c-2.41 5.858-3.028 12.3-1.775 18.509s4.321 11.907 8.815 16.371l64 64c2.975 2.999 6.514 5.38 10.413 7.005s8.083 2.461 12.307 2.461c4.225 0 8.407-0.836 12.307-2.461s7.439-4.005 10.413-7.005l64-64c4.44-4.5 7.448-10.214 8.644-16.422s0.526-12.63-1.924-18.458c-2.401-5.844-6.477-10.846-11.716-14.377s-11.406-5.432-17.724-5.463h-32v-364.16l192 96v76.16h-16c-8.486 0-16.627 3.372-22.63 9.373-5.997 6.001-9.37 14.14-9.37 22.627v96c0 8.487 3.373 16.627 9.37 22.627 6.003 6.001 14.144 9.373 22.63 9.373h96c8.486 0 16.627-3.372 22.63-9.373 5.997-6.001 9.37-14.14 9.37-22.627z" />
<glyph unicode="&#xe908;" glyph-name="arduino-technology-connection" d="M512 118.857c35.346 0 64 28.653 64 64s-28.654 64-64 64c-35.346 0-64-28.653-64-64s28.654-64 64-64zM647.699 286.537c-8.442 0.122-16.493 3.571-22.401 9.6-14.863 14.9-32.519 26.721-51.957 34.787s-40.277 12.218-61.323 12.218c-21.046 0-41.884-4.152-61.323-12.218s-37.094-19.887-51.957-34.787c-5.996-5.958-14.106-9.306-22.56-9.306s-16.564 3.347-22.56 9.306c-5.96 5.997-9.306 14.106-9.306 22.559s3.345 16.564 9.306 22.56c20.801 20.803 45.495 37.304 72.673 48.563s56.308 17.053 85.727 17.053c29.418 0 58.548-5.795 85.726-17.053s51.875-27.761 72.675-48.563c4.512-4.476 7.59-10.194 8.838-16.426 1.254-6.232 0.614-12.695-1.818-18.562-2.438-5.875-6.573-10.886-11.866-14.4-5.299-3.514-11.52-5.37-17.875-5.331zM919.373 558.218c-4.269-0.195-8.538 0.47-12.55 1.954s-7.686 3.757-10.81 6.686c-101.965 101.613-240.045 158.669-383.997 158.669-143.951 0-282.035-57.056-384-158.669-6.026-5.983-14.181-9.328-22.673-9.298s-16.623 3.432-22.607 9.458c-5.983 6.026-9.327 14.181-9.298 22.673s3.432 16.623 9.458 22.607c114.009 113.924 268.588 177.918 429.76 177.918 161.175 0 315.754-63.994 429.757-177.918 3.002-2.975 5.382-6.514 7.008-10.413s2.458-8.083 2.458-12.307c0-4.225-0.832-8.407-2.458-12.307s-4.006-7.439-7.008-10.413c-3.078-2.89-6.701-5.14-10.656-6.623-3.949-1.483-8.16-2.168-12.384-2.017zM783.706 422.541c-4.211-0.024-8.384 0.783-12.288 2.375-3.898 1.592-7.443 3.939-10.432 6.905-32.691 32.703-71.501 58.646-114.221 76.346-42.715 17.7-88.501 26.81-134.74 26.81s-92.025-9.11-134.742-26.81c-42.717-17.7-81.529-43.643-114.218-76.346-6.122-5.242-13.996-7.982-22.049-7.671s-15.693 3.65-21.393 9.349c-5.699 5.699-9.037 13.338-9.348 21.392s2.428 15.928 7.67 22.050c78.009 77.968 183.788 121.767 294.080 121.767s216.072-43.799 294.081-121.767c5.958-5.996 9.306-14.106 9.306-22.56s-3.347-16.564-9.306-22.56c-5.958-5.912-14.003-9.245-22.4-9.28z" />
<glyph unicode="&#xe909;" glyph-name="arduino-technology-bluetooth" d="M512.006-41.137c-4.198-0.109-8.362 0.768-12.16 2.56-5.844 2.4-10.846 6.477-14.377 11.712-3.53 5.242-5.431 11.405-5.463 17.728v370.877l-169.28-169.597c-2.984-2.989-6.525-5.35-10.424-6.97-3.898-1.613-8.077-2.445-12.296-2.445s-8.397 0.832-12.296 2.445c-3.898 1.619-7.441 3.981-10.424 6.97-2.984 2.982-5.35 6.522-6.965 10.419s-2.445 8.077-2.445 12.301c0 4.218 0.831 8.397 2.445 12.294s3.981 7.437 6.965 10.426l201.6 201.277-201.6 201.28c-6.026 6.026-9.411 14.198-9.411 22.72s3.385 16.694 9.411 22.72c6.026 6.026 14.198 9.411 22.72 9.411s16.694-3.386 22.72-9.411l169.28-169.6v370.88c0.032 6.318 1.933 12.485 5.463 17.724s8.533 9.316 14.377 11.716c5.828 2.451 12.25 3.12 18.458 1.924s11.922-4.204 16.422-8.644l224.001-224c3.002-2.975 5.382-6.514 7.002-10.413 1.626-3.9 2.464-8.082 2.464-12.307s-0.838-8.407-2.464-12.307c-1.619-3.9-4-7.439-7.002-10.413l-201.601-201.28 201.601-201.277c3.002-2.976 5.382-6.515 7.002-10.419 1.626-3.898 2.464-8.077 2.464-12.301 0-4.23-0.838-8.41-2.464-12.307-1.619-3.904-4-7.443-7.002-10.413l-224.001-224c-2.99-2.97-6.536-5.318-10.435-6.906-3.899-1.594-8.074-2.4-12.285-2.374zM544.006 361.74v-293.757l146.881 146.88-146.881 146.877zM544.006 809.74v-293.76l146.881 146.88-146.881 146.88z" />
<glyph unicode="&#xe90a;" glyph-name="fa-check" d="M416.006 150.857c-4.211-0.026-8.386 0.787-12.285 2.374-3.899 1.594-7.445 3.942-10.435 6.906l-224 224.002c-6.026 6.026-9.411 14.198-9.411 22.72s3.385 16.694 9.411 22.72c6.026 6.026 14.198 9.411 22.72 9.411s16.694-3.386 22.72-9.411l201.28-201.602 425.281 425.602c6.022 6.026 14.195 9.411 22.72 9.411 8.518 0 16.691-3.386 22.72-9.411 6.022-6.026 9.408-14.198 9.408-22.72s-3.386-16.694-9.408-22.72l-448.001-448.002c-2.99-2.963-6.536-5.312-10.435-6.906-3.899-1.587-8.074-2.4-12.285-2.374z" />
<glyph unicode="&#xe90b;" glyph-name="arduino-verify" horiz-adv-x="1489" d="M558.545-73.143c-23.818 0-47.637 9.095-65.819 27.276l-465.454 465.453c-36.363 36.363-36.363 95.273 0 131.636s95.273 36.363 131.637 0l399.636-399.636 772.003 772c36.361 36.363 95.269 36.363 131.631 0s36.361-95.273 0-131.637l-837.815-837.815c-18.182-18.181-42-27.276-65.818-27.276z" />
<glyph unicode="&#xe90c;" glyph-name="arduino-upload" horiz-adv-x="1161" d="M1072.469 424.348l-409.603-409.598c-13.65-12.971-30.717-19.804-48.467-19.804s-34.817 6.833-48.467 19.804c-26.625 26.617-26.625 70.315 0 96.932l293.551 292.866h-791.217c-37.55 0-68.267 30.717-68.267 68.267s30.717 68.267 68.267 68.267h791.217l-293.551 292.866c-26.625 26.616-26.625 70.317 0 96.934 26.616 26.634 70.317 26.634 96.933 0l409.603-409.6c26.624-26.616 26.624-70.317 0-96.934v0z" />
<glyph unicode="&#xe90d;" glyph-name="arduino-monitor" horiz-adv-x="1536" d="M651.891 59.977c-92.835 0-179.095 28.493-250.5 77.197l-129.659-129.658c-22.494-22.496-58.964-22.496-81.458 0s-22.494 58.963 0 81.459l124.954 124.954c-67.75 78.157-108.777 180.090-108.777 291.489 0 245.759 199.68 445.439 445.44 445.439s445.44-199.679 445.44-445.439c0-245.761-199.68-445.441-445.44-445.441zM651.891 797.257c-161.28 0-291.84-130.559-291.84-291.839s130.56-291.841 291.84-291.841c160.512 0 291.84 130.561 291.84 291.841 0 160.511-130.56 291.839-291.84 291.839zM1149.562 472.766c0-35.423 28.717-64.138 64.141-64.138s64.134 28.716 64.134 64.138c0 35.423-28.71 64.139-64.134 64.139s-64.141-28.716-64.141-64.139zM64.064 408.62c-35.382 0-64.064 28.682-64.064 64.063s28.682 64.064 64.064 64.064c35.381 0 64.064-28.682 64.064-64.064s-28.683-64.063-64.064-64.063zM1458.707 408.628c-35.418 0-64.134 28.716-64.134 64.138s28.717 64.139 64.134 64.139c35.424 0 64.141-28.716 64.141-64.139s-28.717-64.138-64.141-64.138zM652.659 424.010c-44.961 0-81.408 36.447-81.408 81.407s36.447 81.408 81.408 81.408c44.96 0 81.408-36.447 81.408-81.408s-36.448-81.407-81.408-81.407z" />
<glyph unicode="&#xe90e;" glyph-name="arduino-sketch-tabs-menu" d="M511.998 347.425c50.495 0 91.432 40.936 91.432 91.432s-40.936 91.432-91.432 91.432c-50.495 0-91.432-40.936-91.432-91.432s40.936-91.432 91.432-91.432zM923.433 347.425c50.494 0 91.432 40.936 91.432 91.432s-40.937 91.432-91.432 91.432c-50.494 0-91.432-40.936-91.432-91.432s40.937-91.432 91.432-91.432zM100.565 347.425c50.495 0 91.432 40.936 91.432 91.432s-40.936 91.432-91.432 91.432c-50.495 0-91.432-40.936-91.432-91.432s40.936-91.432 91.432-91.432z" />
<glyph unicode="&#xe90f;" glyph-name="arduino-plotter" horiz-adv-x="862" d="M323.368-19.351c-20.263 0-39 11.42-48.21 29.788l-146.789 293.581h-74.474c-29.789 0-53.895 24.107-53.895 53.895s24.105 53.895 53.895 53.895h107.789c20.421 0 39.053-11.528 48.21-29.788l96.527-193.056 180.263 720.949c5.842 23.579 26.737 40.263 51 40.842 23.947 1.579 45.893-15.158 52.894-38.421l150.162-500.526h67.681c29.788 0 53.895-24.107 53.895-53.895s-24.107-53.895-53.895-53.895h-107.789c-23.789 0-44.787 15.629-51.631 38.422l-105.316 351.104-168.052-672.053c-5.474-21.897-23.948-38.055-46.368-40.529-2-0.21-3.947-0.313-5.895-0.313h-0.001z" />
<glyph unicode="&#xf001;" glyph-name="music" horiz-adv-x="878" d="M877.714 822.857v-640c0-80.571-120.571-109.714-182.857-109.714s-182.857 29.143-182.857 109.714 120.571 109.714 182.857 109.714c37.714 0 75.429-6.857 109.714-22.286v306.857l-438.857-135.429v-405.143c0-80.571-120.571-109.714-182.857-109.714s-182.857 29.143-182.857 109.714 120.571 109.714 182.857 109.714c37.714 0 75.429-6.857 109.714-22.286v552.571c0 24 16 45.143 38.857 52.571l475.429 146.286c5.143 1.714 10.286 2.286 16 2.286 30.286 0 54.857-24.571 54.857-54.857z" />
<glyph unicode="&#xf002;" glyph-name="search" horiz-adv-x="951" d="M658.286 475.428c0 141.143-114.857 256-256 256s-256-114.857-256-256 114.857-256 256-256 256 114.857 256 256zM950.857 0c0-40-33.143-73.143-73.143-73.143-19.429 0-38.286 8-51.429 21.714l-196 195.429c-66.857-46.286-146.857-70.857-228-70.857-222.286 0-402.286 180-402.286 402.286s180 402.286 402.286 402.286 402.286-180 402.286-402.286c0-81.143-24.571-161.143-70.857-228l196-196c13.143-13.143 21.143-32 21.143-51.429z" />
<glyph unicode="&#xf003;" glyph-name="envelope-o" d="M950.857 91.428v438.857c-12-13.714-25.143-26.286-39.429-37.714-81.714-62.857-164-126.857-243.429-193.143-42.857-36-96-80-155.429-80h-1.143c-59.429 0-112.571 44-155.429 80-79.429 66.286-161.714 130.286-243.429 193.143-14.286 11.429-27.429 24-39.429 37.714v-438.857c0-9.714 8.571-18.286 18.286-18.286h841.143c9.714 0 18.286 8.571 18.286 18.286zM950.857 692c0 14.286 3.429 39.429-18.286 39.429h-841.143c-9.714 0-18.286-8.571-18.286-18.286 0-65.143 32.571-121.714 84-162.286 76.571-60 153.143-120.571 229.143-181.143 30.286-24.571 85.143-77.143 125.143-77.143h1.143c40 0 94.857 52.571 125.143 77.143 76 60.571 152.571 121.143 229.143 181.143 37.143 29.143 84 92.571 84 141.143zM1024 713.143v-621.714c0-50.286-41.143-91.429-91.429-91.429h-841.143c-50.286 0-91.429 41.143-91.429 91.429v621.714c0 50.286 41.143 91.429 91.429 91.429h841.143c50.286 0 91.429-41.143 91.429-91.429z" />

Before

Width:  |  Height:  |  Size: 153 KiB

After

Width:  |  Height:  |  Size: 155 KiB

View File

@ -3,7 +3,7 @@
}
.p-TabBar-toolbar .item.arduino-tool-item {
margin-left: 3px;
margin-left: 0;
}
.p-TabBar-toolbar .item.arduino-tool-item .toggle-serial-monitor,
@ -18,8 +18,12 @@
display: flex;
justify-content: center;
align-items: center;
height: 24px;
width: 24px;
height: 28px;
width: 28px;
}
.p-TabBar-toolbar .item.arduino-tool-item .arduino-upload-sketch--toolbar,
.p-TabBar-toolbar .item.arduino-tool-item .arduino-verify-sketch--toolbar {
background: var(--theia-arduino-toolbar-button-background);
}
@ -27,9 +31,15 @@
background: var(--theia-arduino-toolbar-button-hoverBackground);
}
.p-TabBar-toolbar .item.arduino-tool-item.enabled:hover > div.toggle-serial-monitor,
.p-TabBar-toolbar .item.arduino-tool-item.enabled:hover > div.toggle-serial-plotter {
background-color: var(--theia-arduino-toolbar-button-secondary-hoverBackground);
border-radius: 14px;
}
.arduino-verify-sketch--toolbar,
.arduino-upload-sketch--toolbar {
border-radius: 12px;
border-radius: 14px;
}
.item.arduino-tool-item.toggled {
@ -38,48 +48,34 @@
border: none;
}
.item.arduino-tool-item.toggled .arduino-verify-sketch--toolbar {
.item.arduino-tool-item.toggled .arduino-verify-sketch--toolbar,
.item.arduino-tool-item.toggled .arduino-upload-sketch--toolbar {
background-color: var(--theia-arduino-toolbar-toggleBackground) !important;
}
.arduino-tool-icon {
height: 24px;
width: 24px;
background-color: var(--theia-titleBar-activeBackground);
-webkit-mask: url(../icons/mask-buttons.svg);
mask: url(../icons/mask-buttons.svg);
-webkit-mask-size: 800%;
mask-size: 800%;
}
.arduino-save-sketch--toolbar-icon {
-webkit-mask-position: 59px -4px;
mask-position: 59px -4px;
height: 28px;
width: 28px;
}
.arduino-verify-sketch--toolbar-icon {
-webkit-mask-position: 188px -4px;
mask-position: 188px -4px;
-webkit-mask: url(../icons/verify.svg) center no-repeat;
background-color: var(--theia-titleBar-activeBackground);
}
.arduino-upload-sketch--toolbar-icon {
-webkit-mask-position: 156px -4px;
mask-position: 156px -4px;
}
.arduino-new-sketch--toolbar-icon {
-webkit-mask-position: 124px -4px;
mask-position: 124px -4px;
}
.arduino-open-sketch--toolbar-icon {
-webkit-mask-position: 92px -4px;
mask-position: 92px -4px;
-webkit-mask: url(../icons/upload.svg) center no-repeat;
background-color: var(--theia-titleBar-activeBackground);
}
.toggle-serial-monitor-icon {
-webkit-mask-position: 28px -4px;
mask-position: 28px -4px;
-webkit-mask: url(../icons/monitor.svg) center no-repeat;
background-color: var(--theia-arduino-toolbar-button-secondary-label);
}
.toggle-serial-plotter-icon {
-webkit-mask: url(../icons/plotter.svg) center no-repeat;
background-color: var(--theia-arduino-toolbar-button-secondary-label);
}
.arduino-start-debug-icon {
@ -106,20 +102,19 @@
}
.p-TabBar-toolbar.theia-arduino-toolbar {
align-items: center;
gap: 8px;
margin: 0 12px;
padding: 0;
z-index: 0;
}
#theia-top-panel .p-TabBar-toolbar {
padding-left: 4px !important; /* moves the `verify`, upload and other toolbar items to the left */
}
.p-Widget .p-MenuBar {
padding-left: 1px !important; /* moves the menubar: `File`, `Edit`, etc to the left */
:root {
--theia-private-menubar-height: 40px; /* set the topbar height */
}
#theia-top-panel .p-TabBar-toolbar.theia-arduino-toolbar.right {
justify-content: flex-start;
min-width: 100px;
}
#theia-top-panel .p-TabBar-toolbar.theia-arduino-toolbar.left {
@ -128,7 +123,6 @@
}
.arduino-toolbar-tooltip {
margin-left: 10px;
display: flex;
align-items: center;
color: var(--theia-titleBar-activeForeground);
@ -177,19 +171,6 @@
margin-left: 10px;
}
#arduino-open-sketch-control--toolbar--container {
background-color: var(--theia-arduino-toolbar-button-background);
border-radius: 1px;
}
#arduino-open-sketch-control--toolbar {
height: unset;
width: unset;
line-height: unset;
color: var(--theia-titleBar-activeBackground);
padding: 5px 8px; /* based on pure heuristics */
}
/* Output */
.theia-output .editor-container {
background-color: var(--theia-arduino-output-background);