Skip to content

Commit 673500c

Browse files
authored
Dark Theme support (#9511)
1 parent 6c61d9c commit 673500c

File tree

2 files changed

+21
-19
lines changed

2 files changed

+21
-19
lines changed

ydb/public/lib/ydb_cli/common/plan2svg.cpp

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -988,7 +988,7 @@ void TPlan::PrintStageSummary(TStringBuilder& background, TStringBuilder&, ui32
988988
background
989989
<< "<rect x='" << x0 << "' y='" << y0 + (INTERNAL_HEIGHT - INTERNAL_TEXT_HEIGHT) / 2
990990
<< "' width='" << textSum.size() * INTERNAL_TEXT_HEIGHT * 7 / 10 << "' height='" << INTERNAL_TEXT_HEIGHT + 1
991-
<< "' stroke-width='0' opacity='0.5' fill='" << Config.Palette.StageDark << "'/>" << Endl
991+
<< "' stroke-width='0' opacity='0.5' fill='" << Config.Palette.StageMain << "'/>" << Endl
992992
<< "<text font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT << "px' fill='" << Config.Palette.TextSummary << "' x='" << x0
993993
<< "' y='" << y0 + INTERNAL_TEXT_HEIGHT + (INTERNAL_HEIGHT - INTERNAL_TEXT_HEIGHT) / 2 << "'>" << textSum << "</text>" << Endl;
994994
}
@@ -1005,29 +1005,29 @@ void TPlan::PrintSvg(ui64 maxTime, ui32& offsetY, TStringBuilder& background, TS
10051005
background
10061006
<< "<rect x='" << s->IndentX << "' y='" << s->OffsetY + offsetY
10071007
<< "' width='" << Config.HeaderWidth - s->IndentX - INTERNAL_WIDTH << "' height='" << s->Height
1008-
<< "' stroke-width='0' fill='" << Config.Palette.StageDark << "'/>" << Endl;
1008+
<< "' stroke-width='0' fill='" << Config.Palette.StageMain << "'/>" << Endl;
10091009
auto x = Config.HeaderWidth + GAP_X;
10101010
background
10111011
<< "<rect x='" << x << "' y='" << s->OffsetY + offsetY
10121012
<< "' width='" << Config.SummaryWidth << "' height='" << s->Height
1013-
<< "' stroke-width='0' fill='" << Config.Palette.StageDark << "'/>" << Endl;
1013+
<< "' stroke-width='0' fill='" << Config.Palette.StageMain << "'/>" << Endl;
10141014
x += Config.SummaryWidth + GAP_X;
10151015
background
10161016
<< "<rect x='" << x << "' y='" << s->OffsetY + offsetY
10171017
<< "' width='" << Config.Width - x << "' height='" << s->Height
1018-
<< "' stroke-width='0' fill='" << Config.Palette.StageDark << "'/>" << Endl;
1018+
<< "' stroke-width='0' fill='" << Config.Palette.StageMain << "'/>" << Endl;
10191019
if (s->Connections.size() > 1) {
10201020
ui32 y = s->OffsetY + s->Height;
10211021
background
10221022
<< "<rect x='" << s->IndentX << "' y='" << y + offsetY
10231023
<< "' width='" << INDENT_X << "' height='" << s->IndentY - y
1024-
<< "' stroke-width='0' fill='" << Config.Palette.StageDark << "'/>" << Endl;
1024+
<< "' stroke-width='0' fill='" << Config.Palette.StageMain << "'/>" << Endl;
10251025
}
10261026
background
10271027
<< "<circle cx='" << s->IndentX + INTERNAL_WIDTH / 2
10281028
<< "' cy='" << s->OffsetY + s->Height / 2 + offsetY
10291029
<< "' r='" << INTERNAL_WIDTH / 2 - 1
1030-
<< "' stroke='" << Config.Palette.StageDark << "' stroke-width='1' fill='" << Config.Palette.StageLight << "' />" << Endl
1030+
<< "' stroke='" << Config.Palette.StageMain << "' stroke-width='1' fill='" << Config.Palette.StageClone << "' />" << Endl
10311031
<< "<text text-anchor='middle' font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT
10321032
<< "px' fill='" << Config.Palette.StageText << "' x='" << s->IndentX + INTERNAL_WIDTH / 2
10331033
<< "' y='" << s->OffsetY + s->Height / 2 + offsetY + INTERNAL_TEXT_HEIGHT / 2
@@ -1205,22 +1205,22 @@ void TPlan::PrintSvg(ui64 maxTime, ui32& offsetY, TStringBuilder& background, TS
12051205
background
12061206
<< "<rect x='" << xx << "' y='" << y
12071207
<< "' width='" << Config.HeaderWidth - xx - INTERNAL_WIDTH<< "' height='" << INTERNAL_HEIGHT + INTERNAL_GAP_Y * 2
1208-
<< "' stroke-width='1' stroke='" << Config.Palette.StageDark << "' fill='" << Config.Palette.StageLight << "'/>" << Endl;
1208+
<< "' stroke-width='1' stroke='" << Config.Palette.StageMain << "' fill='" << Config.Palette.StageClone << "'/>" << Endl;
12091209
xx = Config.HeaderWidth + GAP_X;
12101210
background
12111211
<< "<rect x='" << xx << "' y='" << y
12121212
<< "' width='" << Config.SummaryWidth << "' height='" << INTERNAL_HEIGHT + INTERNAL_GAP_Y * 2
1213-
<< "' stroke-width='1' stroke='" << Config.Palette.StageDark << "' fill='" << Config.Palette.StageLight << "'/>" << Endl;
1213+
<< "' stroke-width='1' stroke='" << Config.Palette.StageMain << "' fill='" << Config.Palette.StageClone << "'/>" << Endl;
12141214
xx += Config.SummaryWidth + GAP_X;
12151215
background
12161216
<< "<rect x='" << xx << "' y='" << y
12171217
<< "' width='" << Config.Width - xx << "' height='" << INTERNAL_HEIGHT + INTERNAL_GAP_Y * 2
1218-
<< "' stroke-width='1' stroke='" << Config.Palette.StageDark << "' fill='" << Config.Palette.StageLight << "'/>" << Endl;
1218+
<< "' stroke-width='1' stroke='" << Config.Palette.StageMain << "' fill='" << Config.Palette.StageClone << "'/>" << Endl;
12191219
background
12201220
<< "<circle cx='" << c->CteIndentX + INTERNAL_WIDTH * 3 / 2
12211221
<< "' cy='" << c->CteOffsetY + offsetY + INTERNAL_HEIGHT / 2 + INTERNAL_GAP_Y
12221222
<< "' r='" << std::min(INTERNAL_HEIGHT, INTERNAL_WIDTH) / 2 - 1
1223-
<< "' stroke='" << Config.Palette.StageDark << "' stroke-width='1' fill='" << Config.Palette.StageLight << "' />" << Endl
1223+
<< "' stroke='" << Config.Palette.StageMain << "' stroke-width='1' fill='" << Config.Palette.StageClone << "' />" << Endl
12241224
<< "<text text-anchor='middle' font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT
12251225
<< "px' fill='" << Config.Palette.StageText << "' x='" << c->CteIndentX + INTERNAL_WIDTH * 3 / 2
12261226
<< "' y='" << c->CteOffsetY + offsetY + INTERNAL_HEIGHT / 2 + INTERNAL_GAP_Y + INTERNAL_TEXT_HEIGHT / 2
@@ -1411,8 +1411,8 @@ void TPlan::PrintSvg(ui64 maxTime, ui32& offsetY, TStringBuilder& background, TS
14111411
}
14121412

14131413
TColorPalette::TColorPalette() {
1414-
StageDark = "var(--stage-dark, #F2F2F2)";
1415-
StageLight = "var(--stage-dark, #D9D9D9";
1414+
StageMain = "var(--stage-main, #F2F2F2)";
1415+
StageClone = "var(--stage-clone, #D9D9D9";
14161416
StageText = "var(--stage-text, #262626)";
14171417
StageTextHighlight = "var(--stage-texthl, #EA0703)";
14181418
StageGrid = "var(--stage-grid, #B2B2B2";
@@ -1434,6 +1434,7 @@ TColorPalette::TColorPalette() {
14341434
ConnectionText= "var(--conn-text, #393939)";
14351435
MinMaxLine = "var(--minmax-line, #FFDB4D)";
14361436
TextLight = "var(--text-light, #FFFFFF)";
1437+
TextInverted = "var(--text-inv, #FFFFFF)";
14371438
TextSummary = "var(--text-summary, #262626)";
14381439
SpillingBytesDark = "var(--spill-dark, #406B61)";
14391440
SpillingBytesMedium = "var(--spill-medium, #599587)";
@@ -1513,8 +1514,8 @@ TString TPlanVisualizer::PrintSvg() {
15131514
for (auto& p : Plans) {
15141515
offsetY += GAP_Y;
15151516
canvas
1516-
<< "<text font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT
1517-
<< "px' x='" << 0 << "' y='" << offsetY + INTERNAL_TEXT_HEIGHT << "'>"
1517+
<< "<text font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT << "px' fill='" << Config.Palette.StageText
1518+
<< "' x='" << 0 << "' y='" << offsetY + INTERNAL_TEXT_HEIGHT << "'>"
15181519
<< p.NodeType << "</text>" << Endl;
15191520

15201521
canvas
@@ -1574,7 +1575,7 @@ TString TPlanVisualizer::PrintSvg() {
15741575
<< " <rect x='" << x - summary3 << "' y='" << offsetY
15751576
<< "' width='" << summary3 << "' height='" << TIME_HEIGHT
15761577
<< "' stroke-width='0' fill='" << Config.Palette.StageGrid << "'/>" << Endl
1577-
<< " <text text-anchor='end' font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT << "px' fill='" << Config.Palette.TextLight << "' x='" << x - 2
1578+
<< " <text text-anchor='end' font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT << "px' fill='" << Config.Palette.TextInverted << "' x='" << x - 2
15781579
<< "' y='" << offsetY + INTERNAL_TEXT_HEIGHT << "'>" << FormatTimeMs(p.MaxTime + p.TimeOffset) << "</text>" << Endl
15791580
<< "</g>" << Endl;
15801581

@@ -1631,8 +1632,8 @@ TString TPlanVisualizer::PrintSvg() {
16311632
auto timeLabel = Sprintf("%lu:%.2lu", t / 60, t % 60);
16321633
for (auto& p : Plans) {
16331634
svg
1634-
<< "<text font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT
1635-
<< "px' x='" << x + x1 + 2 << "' y='" << p.OffsetY - INTERNAL_HEIGHT - (TIME_HEIGHT - INTERNAL_TEXT_HEIGHT) / 2 << "'>"
1635+
<< "<text font-family='Verdana' font-size='" << INTERNAL_TEXT_HEIGHT << "px' fill='" << Config.Palette.StageText
1636+
<< "' x='" << x + x1 + 2 << "' y='" << p.OffsetY - INTERNAL_HEIGHT - (TIME_HEIGHT - INTERNAL_TEXT_HEIGHT) << "'>"
16361637
<< timeLabel << "</text>" << Endl;
16371638
}
16381639
}

ydb/public/lib/ydb_cli/common/plan2svg.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,8 +143,8 @@ class TStage {
143143

144144
struct TColorPalette {
145145
TColorPalette();
146-
TString StageDark;
147-
TString StageLight;
146+
TString StageMain;
147+
TString StageClone;
148148
TString StageText;
149149
TString StageTextHighlight;
150150
TString StageGrid;
@@ -166,6 +166,7 @@ struct TColorPalette {
166166
TString ConnectionText;
167167
TString MinMaxLine;
168168
TString TextLight;
169+
TString TextInverted;
169170
TString TextSummary;
170171
TString SpillingBytesDark;
171172
TString SpillingBytesMedium;

0 commit comments

Comments
 (0)