From f6444b25709854491f82524555fa872d3ca3372a Mon Sep 17 00:00:00 2001 From: Akos Kitta Date: Wed, 13 Nov 2019 13:55:27 +0100 Subject: [PATCH] Update the `ListWidget` on list container render. To recalculate the desired size of the scroll-bar thumb. arduino/arduino-pro-ide#101 Signed-off-by: Akos Kitta --- .../components/component-list/filterable-list-container.tsx | 3 +++ .../src/browser/components/component-list/list-widget.tsx | 1 + 2 files changed, 4 insertions(+) diff --git a/arduino-ide-extension/src/browser/components/component-list/filterable-list-container.tsx b/arduino-ide-extension/src/browser/components/component-list/filterable-list-container.tsx index bb7ea3aa..1211720f 100644 --- a/arduino-ide-extension/src/browser/components/component-list/filterable-list-container.tsx +++ b/arduino-ide-extension/src/browser/components/component-list/filterable-list-container.tsx @@ -5,6 +5,7 @@ import { Searchable } from '../../../common/protocol/searchable'; import { Installable } from '../../../common/protocol/installable'; import { InstallationProgressDialog } from '../installation-progress-dialog'; import { SearchBar } from './search-bar'; +import { ListWidget } from './list-widget'; import { ComponentList } from './component-list'; import { ListItemRenderer } from './list-item-renderer'; @@ -25,6 +26,7 @@ export class FilterableListContainer extends React.Component {this.renderSearchFilter()} {this.renderSearchBar()} @@ -93,6 +95,7 @@ export class FilterableListContainer extends React.Component { + readonly container: ListWidget; readonly installable: Installable; readonly searchable: Searchable; readonly itemLabel: (item: T) => string; diff --git a/arduino-ide-extension/src/browser/components/component-list/list-widget.tsx b/arduino-ide-extension/src/browser/components/component-list/list-widget.tsx index 376c4de2..adeecb04 100644 --- a/arduino-ide-extension/src/browser/components/component-list/list-widget.tsx +++ b/arduino-ide-extension/src/browser/components/component-list/list-widget.tsx @@ -61,6 +61,7 @@ export abstract class ListWidget extends ReactWidget { render(): React.ReactNode { return + container={this} resolveContainer={this.deferredContainer.resolve} resolveFocus={this.onFocusResolved} searchable={this.options.searchable}