diff --git a/development_extensions/oni-dev-extension/extension.js b/development_extensions/oni-dev-extension/extension.js
index bd4165fdab..db0cbb6978 100644
--- a/development_extensions/oni-dev-extension/extension.js
+++ b/development_extensions/oni-dev-extension/extension.js
@@ -15,7 +15,7 @@ function activate(context) {
let item = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Left, 1000);
item.color = new vscode.ThemeColor("foreground");
item.command = "developer.oni.statusBarClicked";
- item.text = "Developer";
+ item.text = "$(wrench) Developer";
item.show();
let cleanup = (disposable) => context.subscriptions.push(disposable);
diff --git a/src/Components/Codicon.re b/src/Components/Codicon.re
index dd68521bad..a867480f73 100644
--- a/src/Components/Codicon.re
+++ b/src/Components/Codicon.re
@@ -4,7 +4,13 @@
* Helper constants for VSCode's Codicons
*/
-let fontFamily = "codicon.ttf";
+open Revery.UI;
+module ZedBundled = Oni_Core.ZedBundled;
+
+module Constants = {
+ let fontFamily = "codicon.ttf";
+ let none = 0x0;
+};
let add = 0xea60;
let plus = 0xea60;
@@ -819,5 +825,21 @@ let stringToGlyph = name =>
| "github-inverted" => githubInverted
| "server-process" => serverProcess
| "server-environment" => serverEnvironment
- | _ => 0x0
+ | _ => Constants.none
};
+
+module Styles = {
+ open Style;
+
+ let text = (~fontSize, ~color) => [
+ Style.fontFamily(Constants.fontFamily),
+ Style.fontSize(fontSize),
+ Style.color(color),
+ textWrap(Revery.TextWrapping.NoWrap),
+ ];
+};
+
+let codeToIcon = icon => ZedBundled.singleton(Uchar.of_int(icon));
+
+let make = (~icon, ~fontSize=15., ~color, ()) =>
+ ;
diff --git a/src/UI/Label.re b/src/Components/Label.re
similarity index 78%
rename from src/UI/Label.re
rename to src/Components/Label.re
index 4fd55308f3..24a417883d 100644
--- a/src/UI/Label.re
+++ b/src/Components/Label.re
@@ -7,7 +7,6 @@
open Revery;
open Revery.UI;
open Oni_Core;
-open Oni_Components;
module Styles = {
open Style;
@@ -23,13 +22,18 @@ let textToElement = (~color, ~font, ~text) => {
;
};
-let iconNameToCharacter =
- fun
- | "alert" => Some(FontAwesome.exclamationTriangle)
- | _ => None;
+let iconNameToCharacter = name => {
+ let iconCode = name |> Codicon.stringToGlyph;
+
+ if (iconCode == Codicon.Constants.none) {
+ None;
+ } else {
+ Some(iconCode);
+ };
+};
let iconToElement = (~color, icon) => {
- ;
+ ;
};
let make = (~font, ~color, ~label: Exthost.Label.t, ()) => {
diff --git a/src/Components/dune b/src/Components/dune
index 1c34a6fde9..da84155cf4 100644
--- a/src/Components/dune
+++ b/src/Components/dune
@@ -10,6 +10,7 @@
lwt.unix
Oni2.core
Oni2.input
+ Oni2.exthost
Oni2.service.font
Oni2.feature.theme
Rench
diff --git a/src/UI/StatusBar.re b/src/UI/StatusBar.re
index 07cde6dafc..32f3bd8d4c 100644
--- a/src/UI/StatusBar.re
+++ b/src/UI/StatusBar.re
@@ -20,6 +20,7 @@ module ContextMenu = Oni_Components.ContextMenu;
module CustomHooks = Oni_Components.CustomHooks;
module FontAwesome = Oni_Components.FontAwesome;
module FontIcon = Oni_Components.FontIcon;
+module Label = Oni_Components.Label;
module Diagnostics = Feature_LanguageSupport.Diagnostics;
module Diagnostic = Feature_LanguageSupport.Diagnostic;
module Editor = Feature_Editor.Editor;
diff --git a/src/UI/Titlebar.re b/src/UI/Titlebar.re
index 9002884200..b25d2324cb 100644
--- a/src/UI/Titlebar.re
+++ b/src/UI/Titlebar.re
@@ -147,9 +147,8 @@ module Windows = {
onMouseUp
onMouseEnter={_ => setHovered(_ => true)}
onMouseLeave={_ => setHovered(_ => false)}>
-
@@ -183,15 +182,13 @@ module Windows = {
onMouseEnter={_ => setHovered(_ => true)}
onMouseLeave={_ => setHovered(_ => false)}>
{windowDisplayMode == Model.State.Maximized
- ?
- : }
@@ -217,9 +214,8 @@ module Windows = {
onMouseUp
onMouseEnter={_ => setHovered(_ => true)}
onMouseLeave={_ => setHovered(_ => false)}>
-