chrome-devtools-frontend 1.0.948295 → 1.0.949424
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/gni/all_devtools_files.gni +5 -0
- package/config/gni/devtools_grd_files.gni +5 -6
- package/front_end/core/i18n/locales/en-US.json +36 -30
- package/front_end/core/i18n/locales/en-XL.json +36 -30
- package/front_end/core/root/Runtime.ts +1 -0
- package/front_end/core/sdk/AccessibilityModel.ts +7 -7
- package/front_end/core/sdk/RemoteObject.ts +15 -1
- package/front_end/entrypoints/devtools_app/devtools_app.ts +0 -1
- package/front_end/entrypoints/visibility.gni +3 -1
- package/front_end/entrypoints/worker_app/worker_app.ts +0 -1
- package/front_end/generated/InspectorBackendCommands.js +8 -1
- package/front_end/generated/protocol-mapping.d.ts +4 -0
- package/front_end/generated/protocol-proxy-api.d.ts +6 -0
- package/front_end/generated/protocol.d.ts +9 -0
- package/front_end/models/issues_manager/AttributionReportingIssue.ts +42 -2
- package/front_end/models/issues_manager/descriptions/arInvalidAttributionSourceExpiry.md +4 -0
- package/front_end/models/issues_manager/descriptions/arInvalidAttributionSourcePriority.md +4 -0
- package/front_end/models/issues_manager/descriptions/arInvalidEventSourceTriggerData.md +9 -0
- package/front_end/models/issues_manager/descriptions/arInvalidTriggerDedupKey.md +5 -0
- package/front_end/models/issues_manager/descriptions/arInvalidTriggerPriority.md +5 -0
- package/front_end/panels/accessibility/AXBreadcrumbsPane.ts +45 -3
- package/front_end/panels/accessibility/AccessibilitySidebarView.ts +2 -4
- package/front_end/panels/accessibility/axBreadcrumbs.css +4 -0
- package/front_end/panels/console/ConsolePrompt.ts +0 -4
- package/front_end/panels/elements/AccessibilityTreeUtils.ts +1 -7
- package/front_end/panels/elements/AccessibilityTreeView.ts +4 -6
- package/front_end/panels/elements/PropertiesWidget.ts +109 -4
- package/front_end/panels/elements/propertiesWidget.css +34 -0
- package/front_end/panels/emulation/DeviceModeToolbar.ts +5 -1
- package/front_end/panels/issues/AttributionReportingIssueDetailsView.ts +44 -0
- package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +1 -0
- package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
- package/front_end/third_party/codemirror.next/codemirror.next.d.ts +8 -6
- package/front_end/third_party/codemirror.next/package.json +3 -3
- package/package.json +1 -1
- package/scripts/eslint_rules/lib/ban_a_tags_in_lit_html.js +2 -11
- package/scripts/eslint_rules/lib/ban_literal_devtools_component_tag_names.js +2 -11
- package/scripts/eslint_rules/lib/ban_self_closing_custom_element_tagnames.js +2 -11
- package/scripts/eslint_rules/lib/ban_style_tags_in_lit_html.js +2 -11
- package/scripts/eslint_rules/lib/lit_html_data_as_type.js +2 -11
- package/scripts/eslint_rules/lib/lit_html_no_attribute_quotes.js +1 -13
- package/scripts/eslint_rules/lib/lit_no_style_interpolation.js +2 -11
- package/scripts/eslint_rules/lib/static_tag_must_be_static_property.js +2 -11
- package/scripts/eslint_rules/lib/utils.js +29 -0
- package/scripts/eslint_rules/tests/.eslintrc.js +4 -0
- package/scripts/eslint_rules/tests/utils_test.js +40 -0
- package/front_end/panels/help/HelpImpl.ts +0 -141
- package/front_end/panels/help/ReleaseNoteText.ts +0 -1496
- package/front_end/panels/help/ReleaseNoteView.ts +0 -107
- package/front_end/panels/help/help-meta.ts +0 -145
- package/front_end/panels/help/help.ts +0 -13
- package/front_end/panels/help/releaseNote.css +0 -115
- package/scripts/build/rjsmin.py +0 -484
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
// Copyright 2017 The Chromium Authors. All rights reserved.
|
|
2
|
-
// Use of this source code is governed by a BSD-style license that can be
|
|
3
|
-
// found in the LICENSE file.
|
|
4
|
-
|
|
5
|
-
import * as Host from '../../core/host/host.js';
|
|
6
|
-
import * as i18n from '../../core/i18n/i18n.js';
|
|
7
|
-
import * as UI from '../../ui/legacy/legacy.js';
|
|
8
|
-
|
|
9
|
-
import {latestReleaseNote, releaseNoteViewId} from './HelpImpl.js';
|
|
10
|
-
import releaseNoteStyles from './releaseNote.css.js';
|
|
11
|
-
|
|
12
|
-
import type {ReleaseNote} from './HelpImpl.js';
|
|
13
|
-
|
|
14
|
-
const UIStrings = {
|
|
15
|
-
/**
|
|
16
|
-
*@description Text that is usually a hyperlink to more documentation
|
|
17
|
-
*/
|
|
18
|
-
learnMore: 'Learn more',
|
|
19
|
-
/**
|
|
20
|
-
*@description Text to close something
|
|
21
|
-
*/
|
|
22
|
-
close: 'Close',
|
|
23
|
-
};
|
|
24
|
-
const str_ = i18n.i18n.registerUIStrings('panels/help/ReleaseNoteView.ts', UIStrings);
|
|
25
|
-
const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
26
|
-
let releaseNoteViewInstance: ReleaseNoteView;
|
|
27
|
-
|
|
28
|
-
export class ReleaseNoteView extends UI.Widget.VBox {
|
|
29
|
-
private readonly releaseNoteElement: Element;
|
|
30
|
-
constructor() {
|
|
31
|
-
super(true);
|
|
32
|
-
|
|
33
|
-
this.releaseNoteElement = this.createReleaseNoteElement(latestReleaseNote());
|
|
34
|
-
const topSection = this.contentElement.createChild('div', 'release-note-top-section');
|
|
35
|
-
topSection.textContent = latestReleaseNote().header;
|
|
36
|
-
this.contentElement.appendChild(this.releaseNoteElement);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
static instance(opts: {forceNew: boolean|null} = {forceNew: null}): ReleaseNoteView {
|
|
40
|
-
const {forceNew} = opts;
|
|
41
|
-
if (!releaseNoteViewInstance || forceNew) {
|
|
42
|
-
releaseNoteViewInstance = new ReleaseNoteView();
|
|
43
|
-
}
|
|
44
|
-
return releaseNoteViewInstance;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
elementsToRestoreScrollPositionsFor(): Element[] {
|
|
48
|
-
return [this.releaseNoteElement];
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
private createReleaseNoteElement(releaseNote: ReleaseNote): Element {
|
|
52
|
-
const hbox = document.createElement('div');
|
|
53
|
-
hbox.classList.add('hbox');
|
|
54
|
-
const container = hbox.createChild('div', 'release-note-container');
|
|
55
|
-
const contentContainer = container.createChild('ul');
|
|
56
|
-
UI.ARIAUtils.setAccessibleName(contentContainer, latestReleaseNote().header);
|
|
57
|
-
|
|
58
|
-
let linkNumber = 1;
|
|
59
|
-
for (const highlight of releaseNote.highlights) {
|
|
60
|
-
const listItem = contentContainer.createChild('li');
|
|
61
|
-
const linkWrapper = UI.XLink.XLink.create(highlight.link, '', 'release-note-link');
|
|
62
|
-
linkWrapper.textContent = '';
|
|
63
|
-
UI.ARIAUtils.markAsLink(linkWrapper);
|
|
64
|
-
UI.ARIAUtils.setAccessibleName(
|
|
65
|
-
linkWrapper, `${highlight.title}: ${highlight.subtitle} ${linkNumber} of ${releaseNote.highlights.length}`);
|
|
66
|
-
|
|
67
|
-
const title = linkWrapper.createChild('div', 'release-note-title');
|
|
68
|
-
title.textContent = highlight.title;
|
|
69
|
-
|
|
70
|
-
const subtitle = linkWrapper.createChild('div', 'release-note-subtitle');
|
|
71
|
-
subtitle.textContent = highlight.subtitle;
|
|
72
|
-
|
|
73
|
-
listItem.appendChild(linkWrapper);
|
|
74
|
-
linkNumber++;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
const actionContainer = container.createChild('div', 'release-note-action-container');
|
|
78
|
-
const learnMore = UI.UIUtils.createTextButton(i18nString(UIStrings.learnMore), event => {
|
|
79
|
-
event.consume(true);
|
|
80
|
-
Host.InspectorFrontendHost.InspectorFrontendHostInstance.openInNewTab(releaseNote.link);
|
|
81
|
-
});
|
|
82
|
-
UI.ARIAUtils.markAsLink(learnMore);
|
|
83
|
-
actionContainer.appendChild(learnMore);
|
|
84
|
-
|
|
85
|
-
actionContainer.appendChild(UI.UIUtils.createTextButton(i18nString(UIStrings.close), event => {
|
|
86
|
-
event.consume(true);
|
|
87
|
-
UI.InspectorView.InspectorView.instance().closeDrawerTab(releaseNoteViewId, true);
|
|
88
|
-
}, 'close-release-note'));
|
|
89
|
-
|
|
90
|
-
const imageLink = UI.XLink.XLink.create(releaseNote.link, ' ') as HTMLElement;
|
|
91
|
-
imageLink.classList.add('release-note-image');
|
|
92
|
-
const tooltipText = latestReleaseNote().header;
|
|
93
|
-
UI.Tooltip.Tooltip.install(imageLink, tooltipText);
|
|
94
|
-
|
|
95
|
-
hbox.appendChild(imageLink);
|
|
96
|
-
const image = imageLink.createChild('img') as HTMLImageElement;
|
|
97
|
-
image.src = new URL('../../Images/whatsnew.avif', import.meta.url).toString();
|
|
98
|
-
UI.Tooltip.Tooltip.install(image, tooltipText);
|
|
99
|
-
image.alt = tooltipText;
|
|
100
|
-
|
|
101
|
-
return hbox;
|
|
102
|
-
}
|
|
103
|
-
wasShown(): void {
|
|
104
|
-
super.wasShown();
|
|
105
|
-
this.registerCSSFiles([releaseNoteStyles]);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
// Copyright 2020 The Chromium Authors. All rights reserved.
|
|
2
|
-
// Use of this source code is governed by a BSD-style license that can be
|
|
3
|
-
// found in the LICENSE file.
|
|
4
|
-
|
|
5
|
-
import * as Common from '../../core/common/common.js';
|
|
6
|
-
import * as i18n from '../../core/i18n/i18n.js';
|
|
7
|
-
import * as UI from '../../ui/legacy/legacy.js';
|
|
8
|
-
|
|
9
|
-
import type * as Help from './help.js';
|
|
10
|
-
|
|
11
|
-
const UIStrings = {
|
|
12
|
-
/**
|
|
13
|
-
*@description Title of the 'What's New' tool in the bottom drawer
|
|
14
|
-
*/
|
|
15
|
-
whatsNew: 'What\'s New',
|
|
16
|
-
/**
|
|
17
|
-
*@description Command for showing the 'What's New' tool in the bottom drawer
|
|
18
|
-
*/
|
|
19
|
-
showWhatsNew: 'Show What\'s New',
|
|
20
|
-
/**
|
|
21
|
-
*@description Title of an action in the help tool to release notes
|
|
22
|
-
*/
|
|
23
|
-
releaseNotes: 'Release notes',
|
|
24
|
-
/**
|
|
25
|
-
*@description Title of an action in the help tool to file an issue
|
|
26
|
-
*/
|
|
27
|
-
reportADevtoolsIssue: 'Report a DevTools issue',
|
|
28
|
-
/**
|
|
29
|
-
*@description Title of an action in the help tool to file a translation issue
|
|
30
|
-
*/
|
|
31
|
-
reportTranslationIssue: 'Report a translation issue',
|
|
32
|
-
/**
|
|
33
|
-
*@description A search term referring to a software defect (i.e. bug) that can be entered in the command menu
|
|
34
|
-
*/
|
|
35
|
-
bug: 'bug',
|
|
36
|
-
/**
|
|
37
|
-
*@description Title of a setting under the Appearance category that can be invoked through the Command Menu
|
|
38
|
-
*/
|
|
39
|
-
showWhatsNewAfterEachUpdate: 'Show What\'s New after each update',
|
|
40
|
-
/**
|
|
41
|
-
*@description Title of a setting under the Appearance category that can be invoked through the Command Menu
|
|
42
|
-
*/
|
|
43
|
-
doNotShowWhatsNewAfterEachUpdate: 'Do not show What\'s New after each update',
|
|
44
|
-
};
|
|
45
|
-
const str_ = i18n.i18n.registerUIStrings('panels/help/help-meta.ts', UIStrings);
|
|
46
|
-
const i18nLazyString = i18n.i18n.getLazilyComputedLocalizedString.bind(undefined, str_);
|
|
47
|
-
|
|
48
|
-
let loadedHelpModule: (typeof Help|undefined);
|
|
49
|
-
|
|
50
|
-
async function loadHelpModule(): Promise<typeof Help> {
|
|
51
|
-
if (!loadedHelpModule) {
|
|
52
|
-
loadedHelpModule = await import('./help.js');
|
|
53
|
-
}
|
|
54
|
-
return loadedHelpModule;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
UI.ViewManager.registerViewExtension({
|
|
58
|
-
location: UI.ViewManager.ViewLocationValues.DRAWER_VIEW,
|
|
59
|
-
id: 'release-note',
|
|
60
|
-
title: i18nLazyString(UIStrings.whatsNew),
|
|
61
|
-
commandPrompt: i18nLazyString(UIStrings.showWhatsNew),
|
|
62
|
-
persistence: UI.ViewManager.ViewPersistence.CLOSEABLE,
|
|
63
|
-
order: 1,
|
|
64
|
-
async loadView() {
|
|
65
|
-
const Help = await loadHelpModule();
|
|
66
|
-
return Help.ReleaseNoteView.ReleaseNoteView.instance();
|
|
67
|
-
},
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
UI.ActionRegistration.registerActionExtension({
|
|
71
|
-
category: UI.ActionRegistration.ActionCategory.HELP,
|
|
72
|
-
actionId: 'help.release-notes',
|
|
73
|
-
title: i18nLazyString(UIStrings.releaseNotes),
|
|
74
|
-
async loadActionDelegate() {
|
|
75
|
-
const Help = await loadHelpModule();
|
|
76
|
-
return Help.Help.ReleaseNotesActionDelegate.instance();
|
|
77
|
-
},
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
UI.ActionRegistration.registerActionExtension({
|
|
81
|
-
category: UI.ActionRegistration.ActionCategory.HELP,
|
|
82
|
-
actionId: 'help.report-issue',
|
|
83
|
-
title: i18nLazyString(UIStrings.reportADevtoolsIssue),
|
|
84
|
-
async loadActionDelegate() {
|
|
85
|
-
const Help = await loadHelpModule();
|
|
86
|
-
return Help.Help.ReportIssueActionDelegate.instance();
|
|
87
|
-
},
|
|
88
|
-
tags: [i18nLazyString(UIStrings.bug)],
|
|
89
|
-
});
|
|
90
|
-
|
|
91
|
-
UI.ActionRegistration.registerActionExtension({
|
|
92
|
-
category: UI.ActionRegistration.ActionCategory.HELP,
|
|
93
|
-
actionId: 'help.report-translation-issue',
|
|
94
|
-
title: i18nLazyString(UIStrings.reportTranslationIssue),
|
|
95
|
-
async loadActionDelegate() {
|
|
96
|
-
const Help = await loadHelpModule();
|
|
97
|
-
return Help.Help.ReportTranslationIssueActionDelegate.instance();
|
|
98
|
-
},
|
|
99
|
-
tags: [i18nLazyString(UIStrings.bug)],
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
Common.Settings.registerSettingExtension({
|
|
103
|
-
category: Common.Settings.SettingCategory.APPEARANCE,
|
|
104
|
-
storageType: Common.Settings.SettingStorageType.Synced,
|
|
105
|
-
title: i18nLazyString(UIStrings.showWhatsNewAfterEachUpdate),
|
|
106
|
-
settingName: 'help.show-release-note',
|
|
107
|
-
settingType: Common.Settings.SettingType.BOOLEAN,
|
|
108
|
-
defaultValue: true,
|
|
109
|
-
options: [
|
|
110
|
-
{
|
|
111
|
-
value: true,
|
|
112
|
-
title: i18nLazyString(UIStrings.showWhatsNewAfterEachUpdate),
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
value: false,
|
|
116
|
-
title: i18nLazyString(UIStrings.doNotShowWhatsNewAfterEachUpdate),
|
|
117
|
-
},
|
|
118
|
-
],
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
UI.ContextMenu.registerItem({
|
|
122
|
-
location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
|
|
123
|
-
actionId: 'help.release-notes',
|
|
124
|
-
order: 10,
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
UI.ContextMenu.registerItem({
|
|
128
|
-
location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
|
|
129
|
-
actionId: 'help.report-issue',
|
|
130
|
-
order: 11,
|
|
131
|
-
});
|
|
132
|
-
|
|
133
|
-
UI.ContextMenu.registerItem({
|
|
134
|
-
location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
|
|
135
|
-
actionId: 'help.report-translation-issue',
|
|
136
|
-
order: 12,
|
|
137
|
-
});
|
|
138
|
-
|
|
139
|
-
Common.Runnable.registerLateInitializationRunnable({
|
|
140
|
-
id: 'whats-new',
|
|
141
|
-
async loadRunnable() {
|
|
142
|
-
const Help = await loadHelpModule();
|
|
143
|
-
return Help.Help.HelpLateInitialization.instance();
|
|
144
|
-
},
|
|
145
|
-
});
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
// Copyright 2019 The Chromium Authors. All rights reserved.
|
|
2
|
-
// Use of this source code is governed by a BSD-style license that can be
|
|
3
|
-
// found in the LICENSE file.
|
|
4
|
-
|
|
5
|
-
import * as Help from './HelpImpl.js';
|
|
6
|
-
import * as ReleaseNoteText from './ReleaseNoteText.js';
|
|
7
|
-
import * as ReleaseNoteView from './ReleaseNoteView.js';
|
|
8
|
-
|
|
9
|
-
export {
|
|
10
|
-
Help,
|
|
11
|
-
ReleaseNoteText,
|
|
12
|
-
ReleaseNoteView,
|
|
13
|
-
};
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2017 The Chromium Authors. All rights reserved.
|
|
3
|
-
* Use of this source code is governed by a BSD-style license that can be
|
|
4
|
-
* found in the LICENSE file.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
.hbox {
|
|
8
|
-
overflow-y: auto;
|
|
9
|
-
overflow-x: hidden;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.release-note-top-section {
|
|
13
|
-
height: 27px;
|
|
14
|
-
line-height: 27px;
|
|
15
|
-
padding: 0 15px;
|
|
16
|
-
flex: none;
|
|
17
|
-
color: var(--color-text-primary);
|
|
18
|
-
background-color: var(--color-background-elevation-1);
|
|
19
|
-
border-bottom: var(--legacy-divider-border);
|
|
20
|
-
overflow: hidden;
|
|
21
|
-
white-space: nowrap;
|
|
22
|
-
text-overflow: ellipsis;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.release-note-container {
|
|
26
|
-
display: flex;
|
|
27
|
-
flex-direction: column;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.release-note-container ul {
|
|
31
|
-
display: flex;
|
|
32
|
-
padding: 10px 16px;
|
|
33
|
-
flex-direction: column;
|
|
34
|
-
flex: none;
|
|
35
|
-
margin: 4px 12px 0 2px;
|
|
36
|
-
max-width: 600px;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.release-note-container li {
|
|
40
|
-
display: flex;
|
|
41
|
-
flex-direction: column;
|
|
42
|
-
flex: none;
|
|
43
|
-
line-height: 24px;
|
|
44
|
-
font-size: 14px;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.release-note-container .release-note-link {
|
|
48
|
-
border: 1px solid var(--color-details-hairline-light);
|
|
49
|
-
padding-left: 8px;
|
|
50
|
-
padding-right: 8px;
|
|
51
|
-
margin-bottom: 4px;
|
|
52
|
-
text-decoration: none;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
.release-note-container .release-note-link:hover {
|
|
56
|
-
border-color: var(--color-details-hairline);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.release-note-title,
|
|
60
|
-
.release-note-subtitle {
|
|
61
|
-
color: inherit;
|
|
62
|
-
text-decoration: none;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.release-note-subtitle {
|
|
66
|
-
font-size: 13px;
|
|
67
|
-
line-height: 13px;
|
|
68
|
-
padding-bottom: 8px;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.release-note-container li:not(:hover) .release-note-subtitle {
|
|
72
|
-
color: var(--color-text-secondary);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
.release-note-action-container > button {
|
|
76
|
-
margin: 10px 0 20px 20px;
|
|
77
|
-
color: var(--color-text-secondary);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.release-note-action-container {
|
|
81
|
-
flex: none;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
.release-note-image {
|
|
85
|
-
flex-shrink: 2;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
img {
|
|
89
|
-
margin: 20px;
|
|
90
|
-
width: 260px;
|
|
91
|
-
height: 200px;
|
|
92
|
-
flex: none;
|
|
93
|
-
box-shadow: var(--drop-shadow-depth-1);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
img:hover {
|
|
97
|
-
box-shadow: var(--drop-shadow-depth-4);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
@media (forced-colors: active) {
|
|
101
|
-
.release-note-container .release-note-link {
|
|
102
|
-
border-color: ButtonText;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
.release-note-container .release-note-link:hover {
|
|
106
|
-
forced-color-adjust: none;
|
|
107
|
-
border-color: Highlight;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
.release-note-container li .release-note-title,
|
|
111
|
-
.release-note-container li:not(:hover) .release-note-subtitle {
|
|
112
|
-
forced-color-adjust: none;
|
|
113
|
-
color: linktext;
|
|
114
|
-
}
|
|
115
|
-
}
|