diff --git a/src/renderer/components/+cluster/cluster-overview.tsx b/src/renderer/components/+cluster/cluster-overview.tsx index 6eac0e30c7..f1cb9ad461 100644 --- a/src/renderer/components/+cluster/cluster-overview.tsx +++ b/src/renderer/components/+cluster/cluster-overview.tsx @@ -102,7 +102,7 @@ class NonInjectedClusterOverview extends React.Component { const isMetricHidden = hostedCluster.isMetricHidden(ClusterMetricsResourceType.Cluster); return ( - +
{this.renderClusterOverview(isLoaded, isMetricHidden)}
diff --git a/src/renderer/components/+workloads-overview/overview.tsx b/src/renderer/components/+workloads-overview/overview.tsx index 83a2bf9e84..7c93bd429c 100644 --- a/src/renderer/components/+workloads-overview/overview.tsx +++ b/src/renderer/components/+workloads-overview/overview.tsx @@ -103,7 +103,7 @@ class NonInjectedWorkloadsOverview extends React.Component { render() { return ( - +
Overview
diff --git a/src/renderer/components/item-object-list/item-list-layout.scss b/src/renderer/components/item-object-list/item-list-layout.scss index 254be55936..84427369ad 100644 --- a/src/renderer/components/item-object-list/item-list-layout.scss +++ b/src/renderer/components/item-object-list/item-list-layout.scss @@ -31,7 +31,7 @@ > .items { position: relative; - min-height: 200px; + min-height: 130px; } } diff --git a/src/renderer/components/layout/main-layout.module.scss b/src/renderer/components/layout/main-layout.module.scss index fad743041c..e882310427 100644 --- a/src/renderer/components/layout/main-layout.module.scss +++ b/src/renderer/components/layout/main-layout.module.scss @@ -23,9 +23,7 @@ } .contents { - grid-area: contents; - overflow: auto; - height: calc(100vh - var(--status-bar-height) - var(--main-layout-header)); + overflow: hidden; } .footer { diff --git a/src/renderer/components/layout/siblings-in-tab-layout.tsx b/src/renderer/components/layout/siblings-in-tab-layout.tsx index 04f53c0f85..06e57227e9 100644 --- a/src/renderer/components/layout/siblings-in-tab-layout.tsx +++ b/src/renderer/components/layout/siblings-in-tab-layout.tsx @@ -12,6 +12,7 @@ import type { HierarchicalSidebarItem } from "./sidebar-items.injectable"; interface SiblingTabLayoutProps { children: React.ReactNode; + scrollable?: boolean; } interface Dependencies { @@ -19,13 +20,14 @@ interface Dependencies { } const NonInjectedSiblingsInTabLayout = observer( - ({ tabs, children }: Dependencies & SiblingTabLayoutProps) => { + ({ tabs, children, ...other }: Dependencies & SiblingTabLayoutProps) => { const dereferencedTabs = tabs.get(); if (dereferencedTabs.length) { return ( {children} diff --git a/src/renderer/components/layout/tab-layout-2.tsx b/src/renderer/components/layout/tab-layout-2.tsx index 935e4b9368..7d81c58d34 100644 --- a/src/renderer/components/layout/tab-layout-2.tsx +++ b/src/renderer/components/layout/tab-layout-2.tsx @@ -15,11 +15,13 @@ import type { HierarchicalSidebarItem } from "./sidebar-items.injectable"; export interface TabLayoutProps { tabs?: HierarchicalSidebarItem[]; children?: React.ReactNode; + scrollable?: boolean; } export const TabLayout = observer( ({ tabs = [], + scrollable, children, }: TabLayoutProps) => { const hasTabs = tabs.length > 0; @@ -50,7 +52,7 @@ export const TabLayout = observer( )} -
+
{children} diff --git a/src/renderer/components/layout/tab-layout.scss b/src/renderer/components/layout/tab-layout.scss index c447f77eea..7ab3395e15 100755 --- a/src/renderer/components/layout/tab-layout.scss +++ b/src/renderer/components/layout/tab-layout.scss @@ -11,16 +11,20 @@ > .Tabs { background: var(--layoutTabsBackground); - min-height: 32px; + min-height: 36px; } main { $spacing: $margin * 2; flex-grow: 1; - overflow-y: scroll; // always reserve space for scrollbar (17px) + overflow-y: hidden; overflow-x: auto; margin: $spacing; - margin-right: 0; + + &.scrollable { + overflow-y: scroll; + margin-right: 0; + } } } diff --git a/src/renderer/components/layout/tab-layout.tsx b/src/renderer/components/layout/tab-layout.tsx index 07684ef28d..e12cebd648 100644 --- a/src/renderer/components/layout/tab-layout.tsx +++ b/src/renderer/components/layout/tab-layout.tsx @@ -20,6 +20,7 @@ export interface TabLayoutProps { contentClass?: IClassName; tabs?: TabLayoutRoute[]; children?: ReactNode; + scrollable?: boolean; } export interface TabLayoutRoute { @@ -31,7 +32,7 @@ export interface TabLayoutRoute { default?: boolean; // initial tab to open with provided `url, by default tabs[0] is used } -export const TabLayout = observer(({ className, contentClass, tabs = [], children }: TabLayoutProps) => { +export const TabLayout = observer(({ className, contentClass, tabs = [], scrollable, children }: TabLayoutProps) => { const currentLocation = navigation.location.pathname; const hasTabs = tabs.length > 0; const startTabUrl = hasTabs ? (tabs.find(tab => tab.default) || tabs[0])?.url : null; @@ -50,7 +51,7 @@ export const TabLayout = observer(({ className, contentClass, tabs = [], childre ))} )} -
+
{hasTabs && ( diff --git a/src/renderer/components/table/table.scss b/src/renderer/components/table/table.scss index 982c896101..a76f9c116f 100644 --- a/src/renderer/components/table/table.scss +++ b/src/renderer/components/table/table.scss @@ -14,6 +14,10 @@ overflow: auto; } + &.scrollable.virtual { + overflow: unset; + } + &.selectable { .TableHead, .TableRow { padding: 0 $padding;