-
Notifications
You must be signed in to change notification settings - Fork 484
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add the ability to specify a second custom logo for PatternFly 6
- Loading branch information
Showing
1 changed file
with
159 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,159 @@ | ||
--- | ||
title: custom-logos | ||
authors: | ||
- "@cajieh" | ||
reviewers: | ||
- "@jhadvig " | ||
- "@spadgett" | ||
- "@everettraven" | ||
- "@JoelSpeed" | ||
approvers: | ||
- "@spadgett" | ||
api-approvers: | ||
- "@JoelSpeed" | ||
creation-date: 2025-02-11 | ||
last-updated: 2025-02-11 | ||
--- | ||
|
||
# Custom Logos | ||
|
||
## Summary | ||
|
||
The OpenShift Container Platform (OCP) web console is currently being upgraded to PatternFly 6. In PatternFly 6, the masthead color changes based on the mode (light or dark). Consequently, a single custom logo may not be suitable for both modes. | ||
|
||
Add the ability to specify custom logo features to support light and dark theme modes for the masthead and favicon. | ||
|
||
## Background info | ||
|
||
The OpenShift Container Platform (OCP) web console is currently being upgraded to PatternFly 6. In PatternFly 6, the masthead color changes based on the mode (light or dark). Consequently, a single custom logo may not be suitable for both modes. | ||
|
||
To address this, we need to allow users to add custom logos for both the masthead and favicon that are compatible with light and dark themes. This ensures that the logos are always visible and aesthetically pleasing, regardless of the theme mode. | ||
|
||
The custom logos feature will enable users to specify different logos for the masthead and favicon based on the theme mode. This will involve extending the API to support custom logos for both light and dark themes. | ||
|
||
## Motivation | ||
|
||
The OpenShift Container Platform (OCP) web console is currently being upgraded to PatternFly 6. In PatternFly 6, the masthead color changes based on the mode (light or dark). Consequently, a single custom logo may not be suitable for both modes. This is evident with the existing OKD and OpenShift logos, which assume a dark masthead background and include white text. | ||
|
||
### User Stories | ||
|
||
* As an OpenShift web console user, I want to be able to add custom logos for light and dark theme modes in the masthead and favicon. | ||
|
||
### Goals | ||
|
||
This feature should allow users to add custom logos for the masthead and favicon that are compatible with both light and dark theme modes in the OpenShift web console. | ||
|
||
### Non-Goals | ||
|
||
|
||
## Proposal | ||
|
||
### Workflow Description | ||
|
||
├── spec | ||
│ ├── customization | ||
│ ├── customLogos | ||
│ ├── type | ||
│ ├── themes | ||
│ ├── type | ||
│ ├── file | ||
│ ├── key | ||
│ ├── name | ||
└── ... | ||
|
||
### API Extensions | ||
|
||
### Risks and Mitigations | ||
|
||
#### The OpenShift Console is optional and could be disabled | ||
|
||
|
||
### Drawbacks | ||
|
||
|
||
## API Design Details | ||
|
||
The configuration for custom logos will include support for both masthead and favicon types, with separate files for light and dark themes: | ||
|
||
```yaml | ||
customLogos: | ||
- type: Masthead | ||
themes: | ||
- type: Light | ||
file: | ||
key: logo-light.png | ||
name: masthead-logo-light | ||
- type: Dark | ||
file: | ||
key: logo-dark.png | ||
name: masthead-logo-dark | ||
- type: Favicon | ||
themes: | ||
- type: Light | ||
file: | ||
key: favicon-light.ico | ||
name: favicon-logo-light | ||
- type: Dark | ||
file: | ||
key: favicon-dark.ico | ||
name: favicon-logo-dark | ||
``` | ||
### Attributes Description | ||
#### customLogos | ||
- `type`: Specifies the type of logo. Possible values are `Masthead` and `Favicon`. | ||
- `themes`: A list of themes for which the custom logo is defined. | ||
|
||
#### themes | ||
- `type`: Specifies the theme type. Possible values are `Light` and `Dark`. | ||
- `file`: Contains the file details for the custom logo. | ||
|
||
#### file | ||
- `key`: The key or path to the logo file. | ||
- `name`: The name identifier for the custom logo. | ||
|
||
### Test Plan | ||
|
||
### Graduation Criteria | ||
|
||
N/A | ||
|
||
|
||
#### Dev Preview -> Tech Preview | ||
|
||
N/A | ||
|
||
#### Tech Preview -> GA | ||
|
||
N/A | ||
|
||
#### Removing a deprecated feature | ||
|
||
N/A | ||
|
||
### Upgrade / Downgrade Strategy | ||
|
||
|
||
|
||
### Version Skew Strategy | ||
|
||
|
||
### Operational Aspects of API Extensions | ||
|
||
N/A | ||
|
||
#### Failure Modes | ||
|
||
N/A | ||
|
||
#### Support Procedures | ||
|
||
N/A | ||
|
||
## Implementation History | ||
|
||
|
||
|
||
## Alternatives | ||
|