/******************************************************************************* * Copyright (c) 2010, 2014 Andrea Guarinoni and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Andrea Guarinoni - initial API and implementation *******************************************************************************/ /******************************************************************************* * The following bugs are referred to in this style sheet * 1.) Bug 419482 - Cascading policy in CSS * 2.) Bug 419377 - Setting a property to 'inherit' is not supported * 3.) Bug 430051 - Regression for CTabRendering when drawing bottom tabs * 4.) Bug 401015 - Add support for styling hyperlinks in Links *******************************************************************************/ /* ############################## Global Styles ############################## */ Composite, ScrolledComposite, ExpandableComposite, TabFolder, CLabel, Label, ToolItem, Sash, Group, Hyperlink, RefactoringLocationControl, Link, FilteredTree, ProxyEntriesComposite, NonProxyHostsComposite, DelayedFilterCheckboxTree, Splitter, ScrolledPageContent, ViewForm, LaunchConfigurationFilteredTree, ContainerSelectionGroup, BrowseCatalogItem, EncodingSettings, ProgressMonitorPart, DocCommentOwnerComposite, NewServerComposite, NewManualServerComposite, ServerTypeComposite, FigureCanvas, DependenciesComposite, ListEditorComposite, WrappedPageBook, CompareStructureViewerSwitchingPane, CompareContentViewerSwitchingPane, QualifiedNameComponent, RefactoringStatusViewer, ImageHyperlink, Button /* SWT-BUG: checkbox inner label font color is not accessible */, ViewForm > ToolBar, /* SWT-BUG: ToolBar do not inherit rules from ViewForm */ /*Shell [style~='SWT.DROP_DOWN'] > GradientCanvas,*/ /* ignored */ /* SWT-BUG dirty workaround [Eclipse Bug 419482]: a generic rule (eg: Composite > *) needed to catch an element without a CSS id, a CSS class and a seekable Widget name, cannot be overridden by a subsequent more specific rule used to correct the style for seekable elements (<1>): */ TabFolder > Composite > *, /* Composite > CommitSearchPage$... */ TabFolder > Composite > * > * /* [style~='SWT.NO_BACKGROUND'] <- generate E4 non-sense bugs in apparently not related other rules */, /* Composite > ContentMergeViewer$... > TextMergeViewer$... */ DocCommentOwnerComposite > Group > *, /* Group > DocCommentOwnerComposite$... */ TabFolder > Composite > ScrolledComposite > *, /* ScrolledComposite > ControlListViewer$... */ Shell > Composite > Composite > *, /* Composite > StatusDialog$MessageLine (SWT-BUG: ignored) */ Composite > Composite > Composite > ToolBar, /* Window->Preference (top toolbar) */ Composite > Composite > Composite > Group > *, /* Group > CreateRefactoringScriptWizardPage$... */ Shell > Composite > Composite > Composite > *, /* Composite > FilteredPreferenceDialog$... */ ScrolledComposite > Composite > Composite > Composite > *, /* Composite > NewKeysPreferencePage$... */ Shell > Composite > Composite > Composite > Composite > Composite > *, /* Composite > ShowRefactoringHistoryWizardPage$... */ Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > *, /* Composite > RefactoringWizardDialog$... */ Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > * > * /* Composite > RefactoringWizardDialog$... */ { background-color:#515658; color:#eeeeee; } Combo, List, /* It might be useless but currently it's needed due to a strange priority policy used by the E4 platform to apply CSS rules to SWT widgets (see <1>): */ Composite > List, TabFolder > Composite > List, TabFolder > Composite > * > List, DocCommentOwnerComposite > Group > List, TabFolder > Composite > ScrolledComposite > List, Shell > Composite > Composite > List, Composite > Composite > Composite > Group > List, Shell > Composite > Composite > Composite > List, ScrolledComposite > Composite > Composite > Composite > List, Shell > Composite > Composite > Composite > Composite > Composite > List, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > List, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > * > List { background-color: #41464A; color: #dddddd; } /* Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.MENU'][style~='SWT.DATE'][style~='SWT.RESIZE'][style~='SWT.TITLE'][style~='SWT.APPLICATION_MODAL'][style~='SWT.FULL_SELECTION'][style~='SWT.SMOOTH'] > Composite[style~='SWT.LEFT_TO_RIGHT'], */ Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.MENU'][style~='SWT.DATE'][style~='SWT.RESIZE'][style~='SWT.TITLE'][style~='SWT.APPLICATION_MODAL'][style~='SWT.FULL_SELECTION'][style~='SWT.SMOOTH'] > Composite[style~='SWT.LEFT_TO_RIGHT'] > Text[style~='SWT.READ_ONLY'], Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.MENU'][style~='SWT.DATE'][style~='SWT.RESIZE'][style~='SWT.TITLE'][style~='SWT.APPLICATION_MODAL'][style~='SWT.FULL_SELECTION'][style~='SWT.SMOOTH'] > Composite[style~='SWT.LEFT_TO_RIGHT'] > ToolBar { /* Dialog windows title */ /*background-color: #4D5765;*/ /* There is no way to change the background-color of the title of a Dialog without introducing artifacts in some other Dialog windows */ color: #9ac9d8; } Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.MENU'][style~='SWT.DATE'][style~='SWT.RESIZE'][style~='SWT.TITLE'][style~='SWT.APPLICATION_MODAL'][style~='SWT.FULL_SELECTION'][style~='SWT.SMOOTH'] > Composite[style~='SWT.LEFT_TO_RIGHT'] > Label[style~='SWT.NO_FOCUS'] { /* Dialog windows title */ /*background-color: #4D5765;*/ color: #EEEEEE; } Text { background-color: #515658; color: #cccccc; } Text[style~='SWT.DROP_DOWN'], TextSearchControl /* SWT-BUG: background color is hard-coded */, TextSearchControl > Label { /* search boxes and input fields */ background-color: #41464A; color: #dddddd; } Text[style~='SWT.SEARCH'], Text[style~='SWT.SEARCH'] + Label /* SWT-BUG: adjacent sibling selector is ignored (CSS2.1) */ { /* search boxes */ background-color: #949DA5; color: #ffffff; } Text[style~='SWT.POP_UP'] { background-color: #34383B; color: #dddddd; } Text[style~='SWT.READ_ONLY'] { background-color: #515658; color: #bbbbbb; } /* Text[style~='SWT.POP_UP'][style~='SWT.ERROR_MENU_NOT_POP_UP'][style~='SWT.ICON_WARNING'] { /* Dirty way to catch error popup labels (currently it's impossible since there's no difference at all from some other Text elements) */ /* background-color: #742025; color: #FF9997; } */ DatePicker, DatePicker > Text, DatePicker > ImageHyperlink, ScheduleDatePicker, ScheduleDatePicker > Text, ScheduleDatePicker > ImageHyperlink { background-color: #41464A; color: #dddddd; } MessageLine, /* the following are required due to Bug 419482 (see <1>): */ Shell > Composite > Composite > MessageLine, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > Composite > MessageLine { background-color:#515658; /* SWT-BUG: background color is hard-coded */ color: #E39898; } Spinner, CCombo { background-color: #383C3E; color: #dddddd; } Composite > StyledText, Shell [style~='SWT.DROP_DOWN'] > StyledText, /* for eg. folded code popup (but it's ignored) */ /* the following are required due to Bug 419482 (see <1>): */ ScrolledComposite > Composite > Composite > Composite > StyledText { background-color: #252525; color: #dddddd; } ScrolledFormText, FormText { background-color: #687174; color: #eeeeee; } ToolItem:selected { background-color: #313538; color: #dddddd; } Table, /* the following are required due to Bug 419482 (see <1>): */ Composite > Table, TabFolder > Composite > Table, TabFolder > Composite > * > Table, DocCommentOwnerComposite > Group > Table, TabFolder > Composite > ScrolledComposite > Table, Shell > Composite > Composite > Table, Composite > Composite > Composite > Group > Table, Shell > Composite > Composite > Composite > Table, ScrolledComposite > Composite > Composite > Composite > Table, Shell > Composite > Composite > Composite > Composite > Composite > Table, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > Table, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > * > Table { background-color: #35393C; color: #dddddd; } Tree, RegistryFilteredTree, /* the following are required due to Bug 419482 (see <1>): */ Composite > Tree, TabFolder > Composite > Tree, TabFolder > Composite > * > Tree, DocCommentOwnerComposite > Group > Tree, TabFolder > Composite > ScrolledComposite > Tree, Shell > Composite > Composite > Tree, Composite > Composite > Composite > Group > Tree, Shell > Composite > Composite > Composite > Tree, ScrolledComposite > Composite > Composite > Composite > Tree, Shell > Composite > Composite > Composite > Composite > Composite > Tree, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > Tree, Shell[style~='SWT.RADIO'][style~='SWT.CASCADE'][style~='SWT.SHADOW_ETCHED_IN'][style~='SWT.SHADOW_ETCHED_OUT'][style~='SWT.RESIZE'][style~='SWT.MENU'][style~='SWT.FULL_SELECTION'][style~='SWT.DATE'] > Composite > * > Tree { background-color: #2F2F2F; color: #CCC; } /* prevent CSS Spy red borders to be grayed with a generic Shell selector */ Shell[style~='SWT.SHADOW_ETCHED_OUT'], Shell[style~='SWT.SHADOW_ETCHED_IN'], Shell[style~='SWT.CHECK'], Shell[style~='SWT.TITLE'], Shell[style~='SWT.OK'], Shell[style~='SWT.CANCEL'], Shell[style~='SWT.ABORT'], Shell[style~='SWT.DROP_DOWN'], Shell[style~='SWT.ARROW'], Shell[style~='SWT.RADIO'], Shell[style~='SWT.SINGLE'], Shell[style~='SWT.SHADOW_IN'], Shell[style~='SWT.TOOL'], Shell[style~='SWT.RESIZE'], Shell[style~='SWT.SHELL_TRIM'], Shell[style~='SWT.FILL'], Shell[style~='SWT.ALPHA'], Shell[style~='SWT.BORDER'], Shell[style~='SWT.DIALOG_TRIM'], Shell[style~='SWT.IGNORE'], Shell[style~='SWT.FULL_SELECTION'], Shell[style~='SWT.SMOOTH'], Shell[style~='SWT.VIRTUAL'], Shell[style~='SWT.APPLICATION_MODAL'], Shell[style~='SWT.MEDIUM'], Shell[style~='SWT.LONG'] { background-color: #515658; color: #cccccc; } Shell > Composite > Table[style~='SWT.DROP_DOWN'] { background-color: #35393C; color: #dddddd; } Shell[style~='SWT.DROP_DOWN'][style~='SWT.SHADOW_IN'][style~='SWT.SHADOW_ETCHED_IN'] > Composite, Shell[style~='SWT.DROP_DOWN'][style~='SWT.SHADOW_IN'][style~='SWT.SHADOW_ETCHED_IN'] > Composite Composite, Shell[style~='SWT.DROP_DOWN'][style~='SWT.SHADOW_IN'][style~='SWT.SHADOW_ETCHED_IN'] > Composite ScrolledComposite, Shell[style~='SWT.DROP_DOWN'][style~='SWT.SHADOW_IN'][style~='SWT.SHADOW_ETCHED_IN'] > Composite Canvas, Shell[style~='SWT.DROP_DOWN'][style~='SWT.SHADOW_IN'][style~='SWT.SHADOW_ETCHED_IN'] > Composite StyledText, Shell[style~='SWT.DROP_DOWN'][style~='SWT.SHADOW_IN'][style~='SWT.SHADOW_ETCHED_IN'] > Composite Label { /* Error information popup */ background-color: #2F2F2F; color: #CCC; } TextSearchControl { background-color: #41464A; color: #dddddd; } ViewerPane, DrillDownComposite, ViewerPane > ToolBar, DrillDownComposite > ToolBar { background-color: #232323; color: #CCC; } ProgressInfoItem, CompareViewerPane, CompareViewerPane > * { background-color: #333; color: #eeeeee; } ProgressIndicator { background-color: #777; color: #eeeeee; } DiscoveryItem, DiscoveryItem Label, DiscoveryItem Composite { background-color: #383C3E; color: #dddddd; } DiscoveryItem StyledText { background-color: #383C3E; color: #aaaaaa; } DiscoveryItem Link { background-color: #383C3E; color: #8B9498; } CatalogSwitcher, CatalogSwitcher > ScrolledComposite > Composite > Composite /* ignored because hard-coded */, CategoryItem { background-color: #515658; color: #dddddd; } GradientCanvas, GradientCanvas > Label, GradientCanvas > ToolBar, GradientCanvas > ImageHyperlink { background-color: #3f4447; color: #9ac9d8; } GradientCanvas { /* SWT-BUG workaround: GradientCanvas background-color is ignored */ background: #3f4447; background-image: #3f4447; } CategoryItem > GradientCanvas, CategoryItem > GradientCanvas > Label { /* SWT-BUG workaround: a style for background is not applied on GradientCanvas (CSS engine repaint issue) */ background-color: #fafafa; color: #333; } CategoryItem > GradientCanvas { /* SWT-BUG workaround: a style for background is not applied on GradientCanvas (CSS engine repaint issue) */ background: #fafafa; background-image: #333; } WebSite { background-color: #41464A; color: #dddddd; } CTabFolder { /* Set the styles for the inner tabs: */ color: '#org-eclipse-ui-workbench-INACTIVE_TAB_TEXT_COLOR'; swt-tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering'); padding: 0px 2px 2px; swt-tab-outline: '#org-eclipse-ui-workbench-ACTIVE_TAB_OUTLINE_COLOR'; /* border color for selected tab */ swt-outer-keyline-color: '#org-eclipse-ui-workbench-ACTIVE_TAB_OUTER_KEYLINE_COLOR'; /* border color for whole tabs container */ swt-unselected-tabs-color: '#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_START' '#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_END' 100% 100%; /* title background for unselected tab */ swt-selected-tab-fill: '#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END'; /* title background for selected tab */ swt-shadow-visible: false; swt-corner-radius: 16px; } CTabFolder[style~='SWT.DOWN'][style~='SWT.BOTTOM'] { /* Set the styles for the bottom inner tabs (Bug 430051): */ swt-tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering'); } Form, FormHeading { background: #505f70; background-color: #505F70; background-image: #505f70; color: #9AC9D8; } Section { background-color: #4F5355; color: #AEBED0; } Form > LayoutComposite > LayoutComposite > * { background-color: #515658; color: #EEEEEE; } LayoutComposite, LayoutComposite > FormText, LayoutComposite > Label, LayoutComposite > Button { background-color: #4F5355; color: #F4F7F7; } LayoutComposite ScrolledPageBook, LayoutComposite Sash { background-color: #4F5355; color: #F4F7F7; } LayoutComposite > Text, LayoutComposite > Combo { background-color: #414445; color: #F4F7F7; } LayoutComposite > Table { background-color: #333; color: #FFF; } Twistie { color: #E8E4DF; } #SearchField { /* background-image: url('./searchbox.png'); */ /* SWT-BUG: textures are applied as a label over the native ones, */ /* in this way textures with alpha color are not usable; */ /* default margins and padding cannot be modified and textures are not */ /* scaled properly to fit the container size: this makes the result ugly, */ /* moreover a texture is drawn over the widget, so also the text is covered */ color: #f0f0f0; } /* Button { background-color: inherit; /* ignored */ /* background-image: url('./button_bg.png') */ /* } */ /* Button[style~='SWT.CHECK'] { */ /* currently, Button object isn't consistent (eg. also a checkbox/radio is seen as Button) */ /* so, css rules applied to Button have to be overridden for non-Button matches */ /* } Button:disabled { /* SWT-BUG: currently, a disabled button cannot be styled with any window manager (gtk, win32, cocoa) */ /* } Button:hover { /* SWT-BUG: currently, an hovered button cannot be styled with any window manager (gtk, win32, cocoa) */ /* } */ .MPartSashContainer { background-color: #515658; color: #EEEEEE; } PageSiteComposite, PageSiteComposite > CImageLabel { color: #EEEEEE; } PageSiteComposite > PropertyTable { background-color: #333; color: #EEEEEE; } PageSiteComposite > PropertyTable:disabled { /* SWT-BUG: event is triggered but styles for PropertyTable are hard-coded */ background-color: #444; color: #EEEEEE; } FlyoutControlComposite, FlyoutControlComposite ToolBar, FlyoutControlComposite CLabel { background-color: #3f4447; color: #EEEEEE; } /* See Bug 430848: We need to override the theme of the Eclipse splash screen, because * otherwise the splash screen would be partly switched to the dark theme during startup, * which does not look very nice. */ Label#org-eclipse-ui-splash-progressText { background-color: #f7f7f7; color: #9c9696; /* see property startupForegroundColor in the product */ } ProgressIndicator#org-eclipse-ui-splash-progressIndicator { background-color: #e1e1e1; }