Merge pull request #54521 from nextcloud/backport/54515/stable30
Some checks are pending
Integration sqlite / changes (push) Waiting to run
Integration sqlite / integration-sqlite (8.1, stable30, --tags ~@large files_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, capabilities_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, collaboration_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, comments_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, dav_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, federation_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, filesdrop_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, ldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, openldap_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, openldap_numerical_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, remoteapi_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, setup_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, sharees_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, sharing_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, theming_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite (8.1, stable30, videoverification_features) (push) Blocked by required conditions
Integration sqlite / integration-sqlite-summary (push) Blocked by required conditions

[stable30] fix(theming): correctly parse CSS colors for user primary color picker
This commit is contained in:
Stephan Orbaugh 2025-10-14 16:33:06 +02:00 committed by GitHub
commit 0413ec0941
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 15 additions and 5 deletions

View file

@ -76,13 +76,23 @@ export default defineComponent({
methods: {
t,
numberToHex(numeric: string) {
const parsed = Number.parseInt(numeric)
return parsed.toString(16).padStart(2, '0')
},
/**
* Global styles are reloaded so we might need to update the current value
*/
reload() {
const trigger = this.$refs.trigger as HTMLButtonElement
const newColor = window.getComputedStyle(trigger).backgroundColor
if (newColor.toLowerCase() !== this.primaryColor) {
let newColor = window.getComputedStyle(trigger).backgroundColor
// sometimes the browser returns the color in the "rgb(255, 132, 234)" format
const rgbMatch = newColor.replaceAll(/\s/g, '').match(/^rgba?\((\d+),(\d+),(\d+)/)
if (rgbMatch) {
newColor = `#${this.numberToHex(rgbMatch[1])}${this.numberToHex(rgbMatch[2])}${this.numberToHex(rgbMatch[3])}`
}
if (newColor.toLowerCase() !== this.primaryColor.toLowerCase()) {
this.primaryColor = newColor
}
},

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long