mirror of
https://github.com/nextcloud/server.git
synced 2026-06-10 17:23:59 -04:00
Fix logo invert
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
This commit is contained in:
parent
62919ac81e
commit
e6b7fa6cae
13 changed files with 38 additions and 26 deletions
|
|
@ -84,7 +84,7 @@ trait CommonThemeTrait {
|
|||
protected function generateGlobalBackgroundVariables(): array {
|
||||
$user = $this->userSession->getUser();
|
||||
$backgroundDeleted = $this->config->getAppValue(Application::APP_ID, 'backgroundMime', '') === 'backgroundColor';
|
||||
$hasCustomLogoHeader = $this->imageManager->hasImage('logo') || $this->imageManager->hasImage('logoheader');
|
||||
$hasCustomLogoHeader = $this->util->isLogoThemed();
|
||||
|
||||
$variables = [];
|
||||
|
||||
|
|
|
|||
|
|
@ -41,18 +41,13 @@ class Util {
|
|||
private IConfig $config;
|
||||
private IAppManager $appManager;
|
||||
private IAppData $appData;
|
||||
private ImageManager $imageManager;
|
||||
|
||||
/**
|
||||
* Util constructor.
|
||||
*
|
||||
* @param IConfig $config
|
||||
* @param IAppManager $appManager
|
||||
* @param IAppData $appData
|
||||
*/
|
||||
public function __construct(IConfig $config, IAppManager $appManager, IAppData $appData) {
|
||||
public function __construct(IConfig $config, IAppManager $appManager, IAppData $appData, ImageManager $imageManager) {
|
||||
$this->config = $config;
|
||||
$this->appManager = $appManager;
|
||||
$this->appData = $appData;
|
||||
$this->imageManager = $imageManager;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -266,4 +261,9 @@ class Util {
|
|||
$backgroundLogo = $this->config->getAppValue('theming', 'backgroundMime', '');
|
||||
return $backgroundLogo !== '' && $backgroundLogo !== 'backgroundColor';
|
||||
}
|
||||
|
||||
public function isLogoThemed() {
|
||||
return $this->imageManager->hasImage('logo')
|
||||
|| $this->imageManager->hasImage('logoheader');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
namespace OCA\Theming\Tests;
|
||||
|
||||
use OCA\Theming\Capabilities;
|
||||
use OCA\Theming\ImageManager;
|
||||
use OCA\Theming\ThemingDefaults;
|
||||
use OCA\Theming\Util;
|
||||
use OCP\App\IAppManager;
|
||||
|
|
@ -173,7 +174,7 @@ class CapabilitiesTest extends TestCase {
|
|||
->method('getTextColorPrimary')
|
||||
->willReturn($textColor);
|
||||
|
||||
$util = new Util($this->config, $this->createMock(IAppManager::class), $this->createMock(IAppData::class));
|
||||
$util = new Util($this->config, $this->createMock(IAppManager::class), $this->createMock(IAppData::class), $this->createMock(ImageManager::class));
|
||||
$this->util->expects($this->exactly(3))
|
||||
->method('elementColor')
|
||||
->with($color)
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ class IconBuilderTest extends TestCase {
|
|||
$this->themingDefaults = $this->createMock(ThemingDefaults::class);
|
||||
$this->appManager = $this->createMock(IAppManager::class);
|
||||
$this->imageManager = $this->createMock(ImageManager::class);
|
||||
$this->util = new Util($this->config, $this->appManager, $this->appData);
|
||||
$this->util = new Util($this->config, $this->appManager, $this->appData, $this->imageManager);
|
||||
$this->iconBuilder = new IconBuilder($this->themingDefaults, $this->util, $this->imageManager);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,8 @@ class DefaultThemeTest extends TestCase {
|
|||
$util = new Util(
|
||||
$this->config,
|
||||
$this->appManager,
|
||||
$this->createMock(IAppData::class)
|
||||
$this->createMock(IAppData::class),
|
||||
$this->imageManager
|
||||
);
|
||||
|
||||
$this->themingDefaults
|
||||
|
|
|
|||
|
|
@ -68,8 +68,9 @@ class DyslexiaFontTest extends TestCase {
|
|||
|
||||
$util = new Util(
|
||||
$this->config,
|
||||
$this->createMock(AppManager::class),
|
||||
$this->createMock(IAppData::class)
|
||||
$this->appManager,
|
||||
$this->createMock(IAppData::class),
|
||||
$this->imageManager
|
||||
);
|
||||
|
||||
$userSession = $this->createMock(IUserSession::class);
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
*/
|
||||
namespace OCA\Theming\Tests;
|
||||
|
||||
use OCA\Theming\ImageManager;
|
||||
use OCA\Theming\Util;
|
||||
use OCP\App\IAppManager;
|
||||
use OCP\Files\IAppData;
|
||||
|
|
@ -46,13 +47,16 @@ class UtilTest extends TestCase {
|
|||
protected $appData;
|
||||
/** @var IAppManager */
|
||||
protected $appManager;
|
||||
/** @var ImageManager */
|
||||
protected $imageManager;
|
||||
|
||||
protected function setUp(): void {
|
||||
parent::setUp();
|
||||
$this->config = $this->createMock(IConfig::class);
|
||||
$this->appData = $this->createMock(IAppData::class);
|
||||
$this->appManager = $this->createMock(IAppManager::class);
|
||||
$this->util = new Util($this->config, $this->appManager, $this->appData);
|
||||
$this->imageManager = $this->createMock(ImageManager::class);
|
||||
$this->util = new Util($this->config, $this->appManager, $this->appData, $this->imageManager);
|
||||
}
|
||||
|
||||
public function dataInvertTextColor() {
|
||||
|
|
|
|||
|
|
@ -182,6 +182,7 @@
|
|||
left: 12px;
|
||||
top: 1px;
|
||||
bottom: 1px;
|
||||
filter: var(--image-logoheader-custom, var(--background-image-invert-if-bright));
|
||||
}
|
||||
#header .header-appname-container {
|
||||
display: none;
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
{"version":3,"sourceRoot":"","sources":["variables.scss","header.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBA;AACA;AAAA;EAEC;EACA;EACA;;AACA;AAAA;AAAA;AAAA;EACC;EACA;EACA;;;AAIF;AACA;AAAA;AAAA;EAGC;EACA;EACA;EACA;EACA;EACA,QDoEe;ECnEf;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;;;AASF;AACC;AAmIA;;AAhIA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EAfD;EACA;EAgBC;EACA,KDyBc;ECxBd;EACA;AAMA;AAmBA;;AAvBA;EACC;;AAID;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGD;EAEC;EAzCF;EACA;;AA6CC;EACC;EACA;EACA;EACA;;AAEC;EACC;EACA;EACA;EACA,QAlDuB;EAmDvB;EACA;EACA;EACA;EACA;EACA;;AACA;EAEC;;AAED;EAEC;;AAED;EACC;EACA;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;EACA;;AAED;AAAA;EAEC;EACA;EACA;EACA;EACA;;AAML;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGD;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;;AAGD;EACC;EACA;EACA;;AAGD;EACC;EACA;;AAKA;AAAA;EAEC;EACA;;AACA;AAAA;EACC;EACA;EACA;EACA,ODvGY;ECwGZ;EACA;EACA;EACA;EACA;;AAEA;AAAA;EACC;;AAGD;AAAA;EACC;;;AAOL;AAEA;EACC;;;AAGD;AACA;AACA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;AAEA;;AACA;EACC;AAAY;EACZ;AAqBA;AA2BA;;AA9CA;EAGC;;AAEA;AAAA;AAAA;AAAA;EAEC;EACA;EACA;;AAED;EACC;;AAED;EACC;;AAKF;EACC;EACA;EACA;AAMA;;AAJA;EACC;EACA;;AAGD;EACC;;AAIF;EACC;EACA;EACA;AAEA;;AACA;EACC;;AAKF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;EACC;;;AAIF;AACA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC,KDpPc;;;ACyPhB;AAGC;AAAA;EACC;EACA;;AAED;AAAA;AAAA;AAAA;EAEC;EACA;EACA","file":"header.css"}
|
||||
{"version":3,"sourceRoot":"","sources":["variables.scss","header.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBA;AACA;AAAA;EAEC;EACA;EACA;;AACA;AAAA;AAAA;AAAA;EACC;EACA;EACA;;;AAIF;AACA;AAAA;AAAA;EAGC;EACA;EACA;EACA;EACA;EACA,QDoEe;ECnEf;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;;;AASF;AACC;AAqIA;;AAlIA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EAfD;EACA;EAgBC;EACA,KDyBc;ECxBd;EACA;AAMA;AAmBA;;AAvBA;EACC;;AAID;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGD;EAEC;EAzCF;EACA;;AA6CC;EACC;EACA;EACA;EACA;;AAEC;EACC;EACA;EACA;EACA,QAlDuB;EAmDvB;EACA;EACA;EACA;EACA;EACA;;AACA;EAEC;;AAED;EAEC;;AAED;EACC;EACA;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;EACA;;AAED;AAAA;EAEC;EACA;EACA;EACA;EACA;;AAML;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AAGD;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;;AAGD;EACC;EACA;EACA;;AAGD;EACC;EACA;;AAKA;AAAA;EAEC;EACA;;AACA;AAAA;EACC;EACA;EACA;EACA,ODzGY;EC0GZ;EACA;EACA;EACA;EACA;;AAEA;AAAA;EACC;;AAGD;AAAA;EACC;;;AAOL;AAEA;EACC;;;AAGD;AACA;AACA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;AAEA;;AACA;EACC;AAAY;EACZ;AAqBA;AA2BA;;AA9CA;EAGC;;AAEA;AAAA;AAAA;AAAA;EAEC;EACA;EACA;;AAED;EACC;;AAED;EACC;;AAKF;EACC;EACA;EACA;AAMA;;AAJA;EACC;EACA;;AAGD;EACC;;AAIF;EACC;EACA;EACA;AAEA;;AACA;EACC;;AAKF;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIF;EACC;;;AAIF;AACA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC,KDtPc;;;AC2PhB;AAGC;AAAA;EACC;EACA;;AAED;AAAA;AAAA;AAAA;EAEC;EACA;EACA","file":"header.css"}
|
||||
|
|
@ -172,6 +172,8 @@
|
|||
left: 12px;
|
||||
top: 1px;
|
||||
bottom: 1px;
|
||||
// Invert if not customized and background is bright
|
||||
filter: var(--image-logoheader-custom, var(--background-image-invert-if-bright));
|
||||
}
|
||||
|
||||
.header-appname-container {
|
||||
|
|
|
|||
|
|
@ -2399,6 +2399,7 @@ label.infield {
|
|||
left: 12px;
|
||||
top: 1px;
|
||||
bottom: 1px;
|
||||
filter: var(--image-logoheader-custom, var(--background-image-invert-if-bright));
|
||||
}
|
||||
#header .header-appname-container {
|
||||
display: none;
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1209,21 +1209,22 @@ class Server extends ServerContainer implements IServerContainer {
|
|||
}
|
||||
|
||||
if ($classExists && $c->get(\OCP\IConfig::class)->getSystemValue('installed', false) && $c->get(IAppManager::class)->isInstalled('theming') && $c->getTrustedDomainHelper()->isTrustedDomain($c->getRequest()->getInsecureServerHost())) {
|
||||
$imageManager = new ImageManager(
|
||||
$c->get(\OCP\IConfig::class),
|
||||
$c->getAppDataDir('theming'),
|
||||
$c->get(IURLGenerator::class),
|
||||
$this->get(ICacheFactory::class),
|
||||
$this->get(ILogger::class),
|
||||
$this->get(ITempManager::class)
|
||||
);
|
||||
return new ThemingDefaults(
|
||||
$c->get(\OCP\IConfig::class),
|
||||
$c->getL10N('theming'),
|
||||
$c->get(IUserSession::class),
|
||||
$c->get(IURLGenerator::class),
|
||||
$c->get(ICacheFactory::class),
|
||||
new Util($c->get(\OCP\IConfig::class), $this->get(IAppManager::class), $c->getAppDataDir('theming')),
|
||||
new ImageManager(
|
||||
$c->get(\OCP\IConfig::class),
|
||||
$c->getAppDataDir('theming'),
|
||||
$c->get(IURLGenerator::class),
|
||||
$this->get(ICacheFactory::class),
|
||||
$this->get(ILogger::class),
|
||||
$this->get(ITempManager::class)
|
||||
),
|
||||
new Util($c->get(\OCP\IConfig::class), $this->get(IAppManager::class), $c->getAppDataDir('theming'), $imageManager),
|
||||
$imageManager,
|
||||
$c->get(IAppManager::class),
|
||||
$c->get(INavigationManager::class)
|
||||
);
|
||||
|
|
|
|||
Loading…
Reference in a new issue