Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions packages/base/src/Boot.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import whenDOMReady from "./util/whenDOMReady.js";
import EventProvider from "./EventProvider.js";
import insertFontFace from "./FontFace.js";
import insertSystemCSSVars from "./SystemCSSVars.js";
import insertScrollbarStyles from "./ScrollbarStyles.js";
import { getTheme } from "./config/Theme.js";
import applyTheme from "./theming/applyTheme.js";
import { registerCurrentRuntime } from "./Runtimes.js";
Expand Down Expand Up @@ -67,6 +68,7 @@ const boot = async (): Promise<void> => {
openUI5Support && openUI5Support.attachListeners();
insertFontFace();
insertSystemCSSVars();
insertScrollbarStyles();
fixSafariActiveState();

resolve();
Expand Down
10 changes: 10 additions & 0 deletions packages/base/src/ScrollbarStyles.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { hasStyle, createStyle } from "./ManagedStyles.js";
import scrollbarStyles from "./generated/css/ScrollbarStyles.css.js";

const insertScrollbarStyles = () => {
if (!hasStyle("data-ui5-scrollbar-styles")) {
createStyle(scrollbarStyles, "data-ui5-scrollbar-styles");
}
};

export default insertScrollbarStyles;
3 changes: 3 additions & 0 deletions packages/base/src/css/ScrollbarStyles.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
html:not(:has(.ui5-content-native-scrollbars)) {
scrollbar-color: var(--sapScrollBar_FaceColor) var(--sapScrollBar_TrackColor);
}
13 changes: 0 additions & 13 deletions packages/base/src/util/SelectionAssistant.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
import getEffectiveScrollbarStyle from "../util/getEffectiveScrollbarStyle.js";

const copyAndApplyStyles = (element: HTMLElement, copiedElement: HTMLElement) => {
const computedStyles = getComputedStyle(element);

Expand Down Expand Up @@ -33,23 +31,12 @@ const setInputSpecificStyles = (element: HTMLElement) => {
element.style.overflowY = "hidden";
};

const applyScrollStylings = () => {
const sheet = new CSSStyleSheet();
const styles = getEffectiveScrollbarStyle();

sheet.replaceSync(styles);

document.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];
};

const createCopy = () => {
const copiedElement = document.createElement("div");

copiedElement.id = "ui5-selection-mirror";
copiedElement.contentEditable = "true";

applyScrollStylings();

document.body.appendChild(copiedElement);
};

Expand Down
38 changes: 0 additions & 38 deletions packages/base/src/util/getEffectiveScrollbarStyle.ts

This file was deleted.

3 changes: 1 addition & 2 deletions packages/fiori/src/DynamicSideContent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
Expand Down Expand Up @@ -119,7 +118,7 @@ type DynamicSideContentAccessibilityAttributes = {
@customElement({
tag: "ui5-dynamic-side-content",
renderer: jsxRenderer,
styles: [DynamicSideContentCss, getEffectiveScrollbarStyle()],
styles: [DynamicSideContentCss],
template: DynamicSideContentTemplate,
})
/**
Expand Down
2 changes: 0 additions & 2 deletions packages/fiori/src/NavigationLayout.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import {
isPhone,
isTablet,
Expand Down Expand Up @@ -50,7 +49,6 @@ import NavigationLayoutCss from "./generated/themes/NavigationLayout.css.js";
languageAware: true,
renderer: jsxRenderer,
styles: [
getEffectiveScrollbarStyle(),
NavigationLayoutCss,
],
template: NavigationLayoutTemplate,
Expand Down
2 changes: 0 additions & 2 deletions packages/fiori/src/Page.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
Expand Down Expand Up @@ -50,7 +49,6 @@ import PageCss from "./generated/themes/Page.css.js";
renderer: jsxRenderer,
styles: [
PageCss,
getEffectiveScrollbarStyle(),
],
template: PageTemplate,
})
Expand Down
3 changes: 1 addition & 2 deletions packages/fiori/src/SideNavigation.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import jsxRender from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
import type ResponsivePopover from "@ui5/webcomponents/dist/ResponsivePopover.js";
import type NavigationMenu from "./NavigationMenu.js";
Expand Down Expand Up @@ -109,7 +108,7 @@ type PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNaviga
fastNavigation: true,
renderer: jsxRender,
template: SideNavigationTemplate,
styles: [SideNavigationCss, SideNavigationPopoverCss, getEffectiveScrollbarStyle()],
styles: [SideNavigationCss, SideNavigationPopoverCss],
})
/**
* Fired when the selection has changed via user interaction
Expand Down
3 changes: 1 addition & 2 deletions packages/fiori/src/UserSettingsItem.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import {
} from "@ui5/webcomponents-base/dist/decorators.js";
import type { TabContainerTabSelectEventDetail } from "@ui5/webcomponents/dist/TabContainer.js";
import type Tab from "@ui5/webcomponents/dist/Tab.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import UserSettingsItemTemplate from "./UserSettingsItemTemplate.js";
import type UserSettingsView from "./UserSettingsView.js";
import UserSettingsItemCss from "./generated/themes/UserSettingsItem.css.js";
Expand Down Expand Up @@ -42,7 +41,7 @@ type UserSettingsItemBackClickEventDetail = {
tag: "ui5-user-settings-item",
renderer: jsxRenderer,
template: UserSettingsItemTemplate,
styles: [getEffectiveScrollbarStyle(), UserSettingsItemCss],
styles: [UserSettingsItemCss],
})

/**
Expand Down
2 changes: 0 additions & 2 deletions packages/fiori/src/Wizard.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
Expand Down Expand Up @@ -181,7 +180,6 @@ type StepInfo = {
styles: [
WizardCss,
WizardPopoverCss,
getEffectiveScrollbarStyle(),
],
template: WizardTemplate,
})
Expand Down
2 changes: 0 additions & 2 deletions packages/main/src/Dialog.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
import clamp from "@ui5/webcomponents-base/dist/util/clamp.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import {
isUp, isDown, isLeft, isRight,
isUpShift, isDownShift, isLeftShift, isRightShift,
Expand Down Expand Up @@ -109,7 +108,6 @@ const ICON_PER_STATE: Record<ValueStateWithIcon, string> = {
Popup.styles,
PopupsCommonCss,
dialogCSS,
getEffectiveScrollbarStyle(),
],
})
class Dialog extends Popup {
Expand Down
2 changes: 0 additions & 2 deletions packages/main/src/List.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ import {
getAllAccessibleNameRefTexts,
} from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
import getNormalizedTarget from "@ui5/webcomponents-base/dist/util/getNormalizedTarget.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
import debounce from "@ui5/webcomponents-base/dist/util/debounce.js";
import isElementInView from "@ui5/webcomponents-base/dist/util/isElementInView.js";
Expand Down Expand Up @@ -180,7 +179,6 @@ type ListAccessibilityAttributes = {
template: ListTemplate,
styles: [
listCss,
getEffectiveScrollbarStyle(),
],
})
/**
Expand Down
2 changes: 0 additions & 2 deletions packages/main/src/Popover.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
import { isIOS } from "@ui5/webcomponents-base/dist/Device.js";
import { getClosedPopupParent } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
import clamp from "@ui5/webcomponents-base/dist/util/clamp.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import DOMReferenceConverter from "@ui5/webcomponents-base/dist/converters/DOMReference.js";
import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
import Popup from "./Popup.js";
Expand Down Expand Up @@ -81,7 +80,6 @@ type CalculatedPlacement = {
Popup.styles,
PopupsCommonCss,
PopoverCss,
getEffectiveScrollbarStyle(),
],
template: PopoverTemplate,
})
Expand Down
3 changes: 0 additions & 3 deletions packages/main/src/TextArea.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
import { getEffectiveAriaLabelText, getAssociatedLabelForTexts } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
import { isEscape } from "@ui5/webcomponents-base/dist/Keys.js";
Expand Down Expand Up @@ -77,7 +76,6 @@ type TextAreaInputEventDetail = {
styles: [
textareaStyles,
valueStateMessageStyles,
getEffectiveScrollbarStyle(),
],
renderer: jsxRenderer,
template: TextAreaTemplate,
Expand Down Expand Up @@ -549,7 +547,6 @@ class TextArea extends UI5Element implements IFormInputElement {
return {
root: {
"ui5-textarea-root": true,
"ui5-content-custom-scrollbars": !!getEffectiveScrollbarStyle(),
},
valueStateMsg: {
"ui5-valuestatemessage-header": true,
Expand Down
2 changes: 0 additions & 2 deletions packages/main/src/Tokenizer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
Expand Down Expand Up @@ -147,7 +146,6 @@ enum ClipboardDataOperation {
ResponsivePopoverCommonCss,
SuggestionsCss,
TokenizerPopoverCss,
getEffectiveScrollbarStyle(),
],
})

Expand Down
9 changes: 0 additions & 9 deletions packages/main/src/themes/TextArea.css
Original file line number Diff line number Diff line change
Expand Up @@ -416,12 +416,3 @@
:host([readonly]) .ui5-textarea-exceeded-text, :host([disabled]) .ui5-textarea-exceeded-text {
display: none;
}

:host .ui5-content-custom-scrollbars ::-webkit-scrollbar {
border-top-right-radius: var(--sapField_BorderCornerRadius);
border-bottom-right-radius: var(--sapField_BorderCornerRadius);
}

:host([focused]) .ui5-content-custom-scrollbars ::-webkit-scrollbar {
background-image: none;
}
Loading