Git'Fellow
17bbc56dab
fix(theming): read cachebuster as int in manifest endpoint
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com >
2026-06-05 10:34:44 +02:00
Côme Chilliet
1ab09ec753
chore: Apply new coding standard to all files
...
The diff can be checked using: git diff --ignore-all-space --ignore-blank-lines
To see only the changes not related to blank lines.
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com >
2026-06-01 13:46:39 +02:00
Anna Larch
8a0080cbbb
fix(theming): fix broken custom images introduced in 32.0.9
...
PR #58224 introduced a raster→SVG conversion path in ImageManager::getImage()
that breaks display of custom theming images. The root cause is a three-part
bug chain:
1. getImage() attempted to convert raster images (PNG/JPEG) to SVG format,
which Imagick cannot do meaningfully and produces broken output.
2. getMimeType() returns 'application/octet-stream' for extensionless stored
files, so the Content-Type response header was wrong.
3. Stale .svg cache files persisted after image replacement, causing
subsequent requests to serve the wrong format.
Fix by:
- Restricting the Imagick conversion to SVG→PNG only (not raster→SVG)
- Reading the stored MIME type from IAppConfig for extensionless files in
ThemingController::getImage()
- Deleting .svg cache files in ImageManager::delete()
- Injecting IAppConfig into ImageManager and reading the cachebuster via
IAppConfig::getAppValueInt() so the URL returned after upload always
carries the freshly-incremented value (IConfig::getAppValue() can return
a stale cached value within the same request)
- Updating the FileInputField Vue component to use a reactive cacheKey ref
that increments on every upload, so the thumbnail refreshes even when the
MIME type of the new image is the same as the old one
AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com >
Signed-off-by: Anna Larch <anna@nextcloud.com >
2026-05-07 19:40:49 +02:00
Carl Schwan
6408ed0b51
feat(AppFramework): Add missing NoSameSiteCookieRequired attribute
...
Allow to replace the old annotation.
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com >
2026-01-28 21:48:16 +01:00
Carl Schwan
b040fb1c73
feat(AppFramework): Add missing NoTwoFactorRequired attribute
...
It's in our documentation but was never implemented.
Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com >
2026-01-28 21:48:16 +01:00
SebastianKrupinski
e2c4db1541
fix: generate favourite icon without imagick svg support
...
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com >
2026-01-26 13:57:22 -05:00
Joas Schilling
649e042568
fix(settings): Fix reset button for legal and privacy
...
Signed-off-by: Joas Schilling <coding@schilljs.com >
2026-01-07 09:45:48 +01:00
Joas Schilling
7c64394617
fix(settings): Allow clearing legal and privacy links
...
Signed-off-by: Joas Schilling <coding@schilljs.com >
2026-01-07 09:29:34 +01:00
Ferdinand Thiessen
754422aa00
refactor(theming): migrate to Typescript and Vue 3
...
- migrate all components to Typescript
- use script setup where feasible
- migrate to Vue 3
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
2025-12-23 17:00:40 +01:00
provokateurin
7b6303dcc9
fix(theming): Document correct response schema if app is not enabled
...
Signed-off-by: provokateurin <kate@provokateurin.de >
2025-08-20 12:45:47 +02:00
nfebe
625c1264fe
fix(theming): Correctly generate CSS for font themes
...
Fixes a regression from dropping the SCSS compiler that broke
font themes like OpenDyslexic. The old code relied on the SCSS
compiler to automatically correct the order of the CSS rules,
ensuring the @font-face declaration was always valid.
The server now correctly generates the `@font-face` rule at
the top level of the stylesheet, fixing the previously invalid nested CSS.
Introduced in : f1448fcf07
Signed-off-by: nfebe <fenn25.fn@gmail.com >
2025-07-11 12:27:41 +01:00
Ferdinand Thiessen
5981b7eb51
chore: apply new CSFixer rules
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
# Conflicts:
# apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
Ferdinand Thiessen
f1448fcf07
chore(theming): remove scssphp and just native nested CSS
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
2025-04-22 09:51:04 +02:00
Simon L.
6235ed6222
feat(PWA): add display_override to set the display-mode to minimal-ui on supported browsers
...
Signed-off-by: Simon L. <szaimen@e.mail.de >
2025-02-28 15:32:43 +01:00
Simon L.
0bd624d0fe
feat(theming): allow to disable standalone windows
...
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de >
Signed-off-by: Simon L. <szaimen@e.mail.de >
2025-02-06 10:35:09 +01:00
Ferdinand Thiessen
ff835faf7b
fix(theming): Harden admin web link settings
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
2025-01-27 14:20:14 +01:00
provokateurin
085d4c9364
refactor(OpenAPI): Adjust scopes to match previous behavior
...
Signed-off-by: provokateurin <kate@provokateurin.de >
2025-01-06 14:30:40 +01:00
provokateurin
77114fb327
fix(OpenAPI): Adjust array syntax to avoid ambiguities
...
Signed-off-by: provokateurin <kate@provokateurin.de >
2024-11-05 09:58:11 +01:00
Côme Chilliet
1580c8612b
chore(apps): Apply new rector configuration to autouse classes
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com >
2024-10-15 10:40:25 +02:00
Ferdinand Thiessen
c7d9068be9
chore: Use IAppConfig instead of IConfig->getAppValue
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
2024-09-10 17:51:26 +02:00
provokateurin
0a3093d05d
fix(theming): Use NavigationManager to handle default entries
...
Signed-off-by: provokateurin <kate@provokateurin.de >
2024-09-09 11:04:36 +02:00
Maxence Lange
dd0099c69f
fix(psalm): named attribute argument
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com >
2024-07-29 11:37:40 -01:00
provokateurin
79d9f2ebf6
refactor(theming): Replace security annotations with respective attributes
...
Signed-off-by: provokateurin <kate@provokateurin.de >
2024-07-27 22:40:06 +02:00
Andy Scherzinger
cc1686dba9
chore: Add SPDX header
...
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de >
2024-05-31 10:38:47 +02:00
Ferdinand Thiessen
705335e6a5
feat(theming): Allow to configure primary color separate from background in admin settings
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
2024-05-21 20:36:21 +02:00
Joas Schilling
2fccd090b3
fix(manifest): Check if app exists instead of accessing null as an array
...
Signed-off-by: Joas Schilling <coding@schilljs.com >
2024-01-17 09:25:44 +01:00
Joas Schilling
aa5f037af7
chore: apply changes from Nextcloud coding standards 1.1.1
...
Signed-off-by: Joas Schilling <coding@schilljs.com >
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com >
2023-11-23 10:36:13 +01:00
Ferdinand Thiessen
e9d4036389
feat(theming): Allow to configure default apps and app order in frontend settings
...
* Also add API for setting the value using ajax.
* Add cypress tests for app order and defaul apps
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de >
2023-10-20 00:24:17 +02:00
John Molakvoæ
a024ee1cfe
Fix background removal check
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2023-10-19 11:54:09 +02:00
jld3103
c2d45cb172
Add single status code descriptions for OpenAPI
...
Signed-off-by: jld3103 <jld3103yt@gmail.com >
2023-09-27 08:05:21 +02:00
jld3103
b58ef2c0b1
theming: Add OpenAPI spec
...
Signed-off-by: jld3103 <jld3103yt@gmail.com >
2023-07-10 17:25:58 +02:00
Faraz Samapoor
437631a334
Refactors "strpos" calls in /apps/theming to improve code readability.
...
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com >
2023-06-02 15:43:47 +03:30
Vincent Petry
6e75931412
Limit key names when uploading theme images
...
Signed-off-by: Vincent Petry <vincent@nextcloud.com >
2023-01-11 16:16:44 +01:00
John Molakvoæ
f26ee9c69d
Faster theming tests, better colours comparison and properly follow admin theming changes
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2022-11-30 18:39:57 +01:00
John Molakvoæ
ef760e0337
Add admin user customization kill switch
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2022-10-19 12:57:35 +02:00
John Molakvoæ
601664bc84
Allow to manually specify a theme to apply to a section of an app
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2022-08-16 14:43:35 +02:00
John Molakvoæ
d1dfdfe799
Lint and psalm fix
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2022-04-21 19:00:29 +02:00
John Molakvoæ
493b20605f
Font fixes and design update for theme picker
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2022-04-21 09:31:07 +02:00
John Molakvoæ
fa18a77fa2
Fix twofactor loading and public image
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com >
2022-04-21 09:31:06 +02:00
Joas Schilling
b3cf312edc
Start theming providers
...
Signed-off-by: Joas Schilling <coding@schilljs.com >
2022-04-21 09:29:33 +02:00
Joas Schilling
615a8e60ba
App summary is optional
...
Fixing:
Error: Undefined index: summary at /var/www/html/apps/theming/lib/Controller/ThemingController.php#392
Signed-off-by: Joas Schilling <coding@schilljs.com >
2021-11-19 14:02:03 +01:00
Carl Schwan
719dbafd13
Add support for Delegation Settings for more apps
...
* This adds support for the sharing, groupware, theming and user_ldap
app
* This adds some code who disapeared during a rebase in the initial
delegation PR (provisioning_api)
Signed-off-by: Carl Schwan <carl@carlschwan.eu >
2021-10-15 18:41:00 +02:00
Joas Schilling
37f40cdd46
Fix translated app details
...
Signed-off-by: Joas Schilling <coding@schilljs.com >
2021-09-30 09:08:17 +02:00
szaimen
0758e0258d
improve webmanifest
...
Signed-off-by: szaimen <szaimen@e.mail.de >
2021-08-24 11:42:04 +02:00
John Molakvoæ (skjnldsv)
215aef3cbd
Update php licenses
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com >
2021-06-04 22:02:41 +02:00
Christoph Wurst
d89a75be0b
Update all license headers for Nextcloud 21
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at >
2020-12-16 18:48:22 +01:00
nhirokinet
3a05334f18
manifest to report correct favicon size
...
In the environment where php-imagick with SVG support is correctly installed, this endpoint returns 512x512 image.
https://github.com/nextcloud/server/blob/d9015a8c94bfd71fe484618a06d276701d3bf9ff/apps/theming/lib/Controller/IconController.php#L146
The problem is in the environment without php-imagick or without SVG support, this will fall back to original, whose default is 128x128; but I thought this is a separate problem. (For this, default image may be enlarged. Should I create another issue if this is important one?)
Signed-off-by: nhirokinet <nhirokinet@nhiroki.net >
2020-10-16 15:36:56 +00:00
Christoph Wurst
d9015a8c94
Format code to a single space around binary operators
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at >
2020-10-05 20:25:24 +02:00
Julius Härtl
aa95b3d71b
Add occ command to set theming values
...
Signed-off-by: Julius Härtl <jus@bitgrid.net >
2020-09-24 08:22:07 +02:00
Roeland Jago Douma
3f1b6e2ce9
Move theming js to initial state
...
A bit more elegant. Plus it will allow us to also write a proper
@nextcloud/theming package. To make life easier down the line for all.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl >
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at >
2020-06-05 11:01:49 +02:00