GitHub/WoltLab/WCF.git
3 years agoMerge branch '5.3'
Tim Düsterhus [Tue, 16 Feb 2021 11:54:29 +0000 (12:54 +0100)]
Merge branch '5.3'

3 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Tue, 16 Feb 2021 11:40:15 +0000 (12:40 +0100)]
Merge branch '5.2' into 5.3

3 years agoMerge branch '3.1' into 5.2
Tim Düsterhus [Tue, 16 Feb 2021 11:40:03 +0000 (12:40 +0100)]
Merge branch '3.1' into 5.2

3 years agoMerge branch '3.0' into 3.1
Tim Düsterhus [Tue, 16 Feb 2021 11:38:24 +0000 (12:38 +0100)]
Merge branch '3.0' into 3.1

3 years agoMerge pull request #3997 from WoltLab/major-upgrade-no-upload
Tim Düsterhus [Tue, 16 Feb 2021 11:37:59 +0000 (12:37 +0100)]
Merge pull request #3997 from WoltLab/major-upgrade-no-upload

Reject major com.woltlab.wcf upgrades via package upload

3 years agoReject major com.woltlab.wcf upgrades via package upload
Tim Düsterhus [Tue, 16 Feb 2021 11:11:21 +0000 (12:11 +0100)]
Reject major com.woltlab.wcf upgrades via package upload

3 years agoMerge branch 'master' of https://github.com/WoltLab/WCF
Marcel Werk [Tue, 16 Feb 2021 10:51:40 +0000 (11:51 +0100)]
Merge branch 'master' of https://github.com/WoltLab/WCF

3 years agoAdded missing literal tag
Marcel Werk [Tue, 16 Feb 2021 10:51:37 +0000 (11:51 +0100)]
Added missing literal tag

3 years agoFix typo in comment in PackageInstallationConfirmPage
Tim Düsterhus [Tue, 16 Feb 2021 10:20:17 +0000 (11:20 +0100)]
Fix typo in comment in PackageInstallationConfirmPage

3 years agoMerge branch '5.3'
Tim Düsterhus [Tue, 16 Feb 2021 08:29:57 +0000 (09:29 +0100)]
Merge branch '5.3'

3 years agoStream the response in ImageProxyAction
Tim Düsterhus [Tue, 16 Feb 2021 08:23:58 +0000 (09:23 +0100)]
Stream the response in ImageProxyAction

see 5fc80baf9a348a63baaaa6fa150b1732adfc9f3c

3 years agoMerge branch 'master' of github.com:WoltLab/WCF
Tim Düsterhus [Tue, 16 Feb 2021 08:20:54 +0000 (09:20 +0100)]
Merge branch 'master' of github.com:WoltLab/WCF

3 years agoMerge branch '5.3'
Tim Düsterhus [Tue, 16 Feb 2021 08:20:38 +0000 (09:20 +0100)]
Merge branch '5.3'

3 years agoMerge branch '5.2' into 5.3
Tim Düsterhus [Tue, 16 Feb 2021 08:18:58 +0000 (09:18 +0100)]
Merge branch '5.2' into 5.3

3 years agoFixes twitch clips which contain a dash char
Sir-Will [Mon, 15 Feb 2021 18:48:20 +0000 (19:48 +0100)]
Fixes twitch clips which contain a dash char

Twitch clips can contain a dash (´-`).
Example: https://clips.twitch.tv/NeighborlyManlyBaconMikeHogu-_9zfXbRK47vik1WO

Resolves #3996

3 years agoThe mail notification type was unselectable
Alexander Ebert [Mon, 15 Feb 2021 19:05:54 +0000 (20:05 +0100)]
The mail notification type was unselectable

3 years agoMerge pull request #3994 from WoltLab/simplify-notification-phrases
Alexander Ebert [Sun, 14 Feb 2021 16:11:32 +0000 (17:11 +0100)]
Merge pull request #3994 from WoltLab/simplify-notification-phrases

Simplify phrases for notifications

3 years agoUpdated privacy policy regarding profile information of third-party logins
Marcel Werk [Sun, 14 Feb 2021 12:58:08 +0000 (13:58 +0100)]
Updated privacy policy regarding profile information of third-party logins

Closes #3925

3 years agoMerge branch '5.2' into 5.3
joshuaruesweg [Sun, 14 Feb 2021 12:37:54 +0000 (13:37 +0100)]
Merge branch '5.2' into 5.3

3 years agoFix deleting an empty list of objects
joshuaruesweg [Sun, 14 Feb 2021 12:35:03 +0000 (13:35 +0100)]
Fix deleting an empty list of objects

It can happen that content that was previously counted no longer exists and therefore fewer runs are required than initially assumed. This can happen if, for example, a user's posts and threads are deleted and the user has only written posts in his or her own threads (the posts are then deleted along with the threads). This may have led to errors before because an empty list of objects was passed.

3 years agoAdjusted/unified html attributes for avatars
Marcel Werk [Sun, 14 Feb 2021 12:29:58 +0000 (13:29 +0100)]
Adjusted/unified html attributes for avatars

3 years agoUse guest support of UserFunctionTemplatePlugin
Marcel Werk [Sun, 14 Feb 2021 11:44:39 +0000 (12:44 +0100)]
Use guest support of UserFunctionTemplatePlugin

See #3989

3 years agoSimplify phrases for notifications
Marcel Werk [Sat, 13 Feb 2021 20:36:58 +0000 (21:36 +0100)]
Simplify phrases for notifications

See #3958

3 years agoMerge branch '5.3'
Tim Düsterhus [Fri, 12 Feb 2021 15:39:16 +0000 (16:39 +0100)]
Merge branch '5.3'

3 years agoMerge pull request #3992 from WoltLab/export-mail-address-permission
Tim Düsterhus [Fri, 12 Feb 2021 14:55:58 +0000 (15:55 +0100)]
Merge pull request #3992 from WoltLab/export-mail-address-permission

Bind exportMailAddress bulk process to `canEditMailAddress` instead of `canMailUser`

3 years agoBind exportMailAddress bulk process to `canEditMailAddress` instead of `canMailUser`
Tim Düsterhus [Fri, 12 Feb 2021 14:46:44 +0000 (15:46 +0100)]
Bind exportMailAddress bulk process to `canEditMailAddress` instead of `canMailUser`

Unfortunately the `permissions` form a logical disjunction, not a conjunction,
thus we can't check both permissions. The `canEditMailAddress` is more fitting,
because even without `canMailUser` the admin could simply look up all users
manually if they are allowed to edit (and thus see) mail addresses. It's just a
larger effort.

Resolves #3963

3 years agoMake SystemException implement IExtraInformationException
Tim Düsterhus [Fri, 12 Feb 2021 13:59:02 +0000 (14:59 +0100)]
Make SystemException implement IExtraInformationException

This allows logging the `$description`.

Resolves #3944

3 years agoMerge pull request #3990 from WoltLab/guest-user-function-template-plugin
Marcel Werk [Fri, 12 Feb 2021 12:51:09 +0000 (13:51 +0100)]
Merge pull request #3990 from WoltLab/guest-user-function-template-plugin

Support guest users in UserFunctionTemplatePlugin

3 years agoMerge pull request #3987 from WoltLab/visit-tracker-after-registration
Tim Düsterhus [Fri, 12 Feb 2021 12:47:29 +0000 (13:47 +0100)]
Merge pull request #3987 from WoltLab/visit-tracker-after-registration

Mark contents created before user registration as read

3 years agoMerge pull request #3986 from WoltLab/wcfsetup-all-languages
Tim Düsterhus [Fri, 12 Feb 2021 12:46:49 +0000 (13:46 +0100)]
Merge pull request #3986 from WoltLab/wcfsetup-all-languages

Remove language selection from WCFSetup

3 years agoSupport guest users in UserFunctionTemplatePlugin
Marcel Werk [Fri, 12 Feb 2021 12:35:03 +0000 (13:35 +0100)]
Support guest users in UserFunctionTemplatePlugin

Closes #3989

3 years agoMark contents created before user registration as read
Tim Düsterhus [Fri, 12 Feb 2021 10:50:14 +0000 (11:50 +0100)]
Mark contents created before user registration as read

Resolves #3971

3 years agoRemove language selection from WCFSetup
Tim Düsterhus [Fri, 12 Feb 2021 09:57:39 +0000 (10:57 +0100)]
Remove language selection from WCFSetup

see #3969

3 years agoMerge pull request #3962 from WoltLab/devtools-efficient-scan
Tim Düsterhus [Fri, 12 Feb 2021 09:48:37 +0000 (10:48 +0100)]
Merge pull request #3962 from WoltLab/devtools-efficient-scan

Make DevtoolsPackageArchive::openArchive() more efficient

3 years agoAdd return types to anonymous functions
Tim Düsterhus [Fri, 12 Feb 2021 09:38:34 +0000 (10:38 +0100)]
Add return types to anonymous functions

3 years agoMerge branch '5.3'
Tim Düsterhus [Thu, 11 Feb 2021 16:00:05 +0000 (17:00 +0100)]
Merge branch '5.3'

3 years agoDeprecate wcf\system\exception\HTTP*Exception
Tim Düsterhus [Thu, 11 Feb 2021 15:57:19 +0000 (16:57 +0100)]
Deprecate wcf\system\exception\HTTP*Exception

see 5ff8745012d43b1bcdc5df3c74a19532379d182f
see 33893f8e7201269f326117c3b1eed1af31106c06

3 years agoDeprecate \wcf\util\exception\HTTPException
Tim Düsterhus [Thu, 11 Feb 2021 15:55:15 +0000 (16:55 +0100)]
Deprecate \wcf\util\exception\HTTPException

see 5ff8745012d43b1bcdc5df3c74a19532379d182f

3 years agoDeprecated classes and methods related to the master password
Tim Düsterhus [Thu, 11 Feb 2021 15:47:32 +0000 (16:47 +0100)]
Deprecated classes and methods related to the master password

see #3698

3 years agoRemove unused imports
Tim Düsterhus [Thu, 11 Feb 2021 15:43:54 +0000 (16:43 +0100)]
Remove unused imports

3 years agoUse HttpFactory::makeClientWithTimeout()
Tim Düsterhus [Thu, 11 Feb 2021 14:43:56 +0000 (15:43 +0100)]
Use HttpFactory::makeClientWithTimeout()

3 years agoAdd HttpFactory::makeClientWithTimeout()
Tim Düsterhus [Thu, 11 Feb 2021 14:40:43 +0000 (15:40 +0100)]
Add HttpFactory::makeClientWithTimeout()

3 years agoUse proper return types in HttpFactory
Tim Düsterhus [Thu, 11 Feb 2021 14:37:18 +0000 (15:37 +0100)]
Use proper return types in HttpFactory

3 years agoUse Guzzle's RequestOptions constants
Tim Düsterhus [Thu, 11 Feb 2021 14:30:04 +0000 (15:30 +0100)]
Use Guzzle's RequestOptions constants

These allow one to easily view the option's description within the IDE.

3 years agoReplace GuzzleException by ClientExceptionInterface
Tim Düsterhus [Thu, 11 Feb 2021 11:46:54 +0000 (12:46 +0100)]
Replace GuzzleException by ClientExceptionInterface

ClientExceptionInterface is the standardized Exception and thus preferable.
GuzzleException extends that interface.

3 years agoMake DevtoolsPackageArchive::openArchive() more efficient
Tim Düsterhus [Thu, 11 Feb 2021 11:10:49 +0000 (12:10 +0100)]
Make DevtoolsPackageArchive::openArchive() more efficient

Resolves #3830

3 years agoMerge branch '5.3'
Tim Düsterhus [Thu, 11 Feb 2021 08:58:46 +0000 (09:58 +0100)]
Merge branch '5.3'

3 years agoMerge branch '5.2' into 5.3
Marcel Werk [Thu, 11 Feb 2021 08:52:51 +0000 (09:52 +0100)]
Merge branch '5.2' into 5.3

3 years agoAdditional template event in articleAdd template
Marcel Werk [Thu, 11 Feb 2021 08:52:33 +0000 (09:52 +0100)]
Additional template event in articleAdd template

3 years agoAdd `RewriteEngine On` to generated Apache mod_rewrite rules
Tim Düsterhus [Wed, 10 Feb 2021 15:28:47 +0000 (16:28 +0100)]
Add `RewriteEngine On` to generated Apache mod_rewrite rules

Resolves #3930

3 years agoUse unicode escape for bullets in BackupMultifactorMethod
Tim Düsterhus [Wed, 10 Feb 2021 10:12:52 +0000 (11:12 +0100)]
Use unicode escape for bullets in BackupMultifactorMethod

3 years agoDelete unused require.build-acp.js
Tim Düsterhus [Tue, 9 Feb 2021 11:31:21 +0000 (12:31 +0100)]
Delete unused require.build-acp.js

3 years agoSet optimize to 'none' for r.js
Tim Düsterhus [Tue, 9 Feb 2021 11:27:44 +0000 (12:27 +0100)]
Set optimize to 'none' for r.js

This was forgotten to commit while adjusting extra/*.

see e9fa719f372fb3aeb2fa1c1579699164f2ca7fe6
see #3952

3 years agoExplicitly load tslib
Tim Düsterhus [Tue, 9 Feb 2021 11:21:53 +0000 (12:21 +0100)]
Explicitly load tslib

This should resolve #3951, because this performs a blocking load.

3 years agoMerge pull request #3952 from WoltLab/jsmin-ts
Tim Düsterhus [Tue, 9 Feb 2021 08:38:11 +0000 (09:38 +0100)]
Merge pull request #3952 from WoltLab/jsmin-ts

Make extra/* compatible with TypeScript / ES 6

3 years agoLog user authentication failure type (#3950)
Matthias Schmidt [Mon, 8 Feb 2021 16:35:26 +0000 (17:35 +0100)]
Log user authentication failure type (#3950)

See #3395

3 years agoMake extra/* compatible with TypeScript / ES 6
Tim Düsterhus [Mon, 8 Feb 2021 14:44:26 +0000 (15:44 +0100)]
Make extra/* compatible with TypeScript / ES 6

3 years agoMerge pull request #3935 from WoltLab/use-getSubselectForObjectsByTags
Tim Düsterhus [Mon, 8 Feb 2021 08:34:05 +0000 (09:34 +0100)]
Merge pull request #3935 from WoltLab/use-getSubselectForObjectsByTags

Make use of TagEngine::getSubselectForObjectsByTags() in TaggedArticleList

3 years agoFix editing system pages
joshuaruesweg [Sun, 7 Feb 2021 18:36:15 +0000 (19:36 +0100)]
Fix editing system pages

3 years agoFix codestyle
joshuaruesweg [Sat, 6 Feb 2021 11:58:03 +0000 (12:58 +0100)]
Fix codestyle

3 years agoUse `User::getUserOptionID` instead of internal cache
joshuaruesweg [Sat, 6 Feb 2021 11:29:07 +0000 (12:29 +0100)]
Use `User::getUserOptionID` instead of internal cache
Fixes #3936

3 years agoMerge pull request #3947 from WoltLab/ts-template-circular
Tim Düsterhus [Fri, 5 Feb 2021 15:32:12 +0000 (16:32 +0100)]
Merge pull request #3947 from WoltLab/ts-template-circular

Remove the circular dependency between Core/Language and Core/Template

3 years agoConsistently use "Attention" in English texts
Matthias Schmidt [Fri, 5 Feb 2021 15:20:35 +0000 (16:20 +0100)]
Consistently use "Attention" in English texts

See #3801

3 years agoMark Core/Template#compiled as readonly
Tim Düsterhus [Fri, 5 Feb 2021 15:06:56 +0000 (16:06 +0100)]
Mark Core/Template#compiled as readonly

3 years agoUse Object.entries() in Core/Language#addObject()
Tim Düsterhus [Fri, 5 Feb 2021 15:05:26 +0000 (16:05 +0100)]
Use Object.entries() in Core/Language#addObject()

3 years agoUpdate MysqlSearchEngine::getFulltextMinimumWordLength() for InnoDB
Tim Düsterhus [Fri, 5 Feb 2021 14:55:06 +0000 (15:55 +0100)]
Update MysqlSearchEngine::getFulltextMinimumWordLength() for InnoDB

At the same time copy over the deprecation comment from AbstractSearchEngine.

see 7d059540531e82c12b0aec2ad50e38a6788657cc
Resolves #3948

3 years agoConstistently print "Achtung" in bold in German language item
Matthias Schmidt [Fri, 5 Feb 2021 14:09:31 +0000 (15:09 +0100)]
Constistently print "Achtung" in bold in German language item

See #3801

3 years agoConsistently use "ungültig" in German language item
Matthias Schmidt [Fri, 5 Feb 2021 13:59:39 +0000 (14:59 +0100)]
Consistently use "ungültig" in German language item

See #3801

3 years agoAdd `WCFMessageQuoteManager` interface to replace temporary `any` type (#3949)
Matthias Schmidt [Fri, 5 Feb 2021 12:59:50 +0000 (13:59 +0100)]
Add `WCFMessageQuoteManager` interface to replace temporary `any` type (#3949)

3 years agoRemove the circular dependency between Core/Language and Core/Template
Tim Düsterhus [Fri, 5 Feb 2021 11:19:57 +0000 (12:19 +0100)]
Remove the circular dependency between Core/Language and Core/Template

The old work-around for this issue was no longer working well since the
migration to TypeScript. This commit untangles both modules, by each splitting
them into a low level and a high level interface.

The largest change is that language items are compiled when add()ing them to
the language store instead of when get()ting the contents.

This might slightly reduce the initialization performance on pages with a large
number of unused language items and it also might increase memory usage, due to
needing to store functions instead of strings.

It however improves the readability of the code and of course it also fixes
this breakage introduced by TypeScript. If it turns out that the change
actually *is* an issue then the logic can be optimized, e.g. by skipping the
template compiler if no `{` can be found within the phrase that is being
add()ed to the language store.

3 years agoMerge branch '5.3'
Matthias Schmidt [Fri, 5 Feb 2021 10:34:20 +0000 (11:34 +0100)]
Merge branch '5.3'

3 years agoMerge branch '5.2' into 5.3
Matthias Schmidt [Fri, 5 Feb 2021 10:33:18 +0000 (11:33 +0100)]
Merge branch '5.2' into 5.3

3 years agoFix mixed boolean operators in condition in `TI18nFormField::validate()`
Matthias Schmidt [Fri, 5 Feb 2021 10:33:03 +0000 (11:33 +0100)]
Fix mixed boolean operators in condition in `TI18nFormField::validate()`

… and improve the preceding comment.

See #3926

3 years agoImplement Language#addObject() in terms of Language#add()
Tim Düsterhus [Fri, 5 Feb 2021 10:22:14 +0000 (11:22 +0100)]
Implement Language#addObject() in terms of Language#add()

3 years agoUse monospace font for language item value fields in devtools
Matthias Schmidt [Fri, 5 Feb 2021 09:24:50 +0000 (10:24 +0100)]
Use monospace font for language item value fields in devtools

Close #3933

3 years agoUpdate `.git-blame-ignore-revs`
Matthias Schmidt [Fri, 5 Feb 2021 09:09:43 +0000 (10:09 +0100)]
Update `.git-blame-ignore-revs`

3 years agoMerge pull request #3937 from WoltLab/query_formatting
Matthias Schmidt [Fri, 5 Feb 2021 09:08:47 +0000 (10:08 +0100)]
Merge pull request #3937 from WoltLab/query_formatting

Improve formatting of SQL queries in PHP code

3 years agoSplit additional joins into multiple lines
Matthias Schmidt [Thu, 4 Feb 2021 17:08:56 +0000 (18:08 +0100)]
Split additional joins into multiple lines

3 years agoSplit subquery into multiple lines
Matthias Schmidt [Thu, 4 Feb 2021 16:41:15 +0000 (17:41 +0100)]
Split subquery into multiple lines

3 years agoRemove unnecessary parentheses around join conditions
Matthias Schmidt [Thu, 4 Feb 2021 16:15:11 +0000 (17:15 +0100)]
Remove unnecessary parentheses around join conditions

3 years agoMake use of TagEngine::getSubselectForObjectsByTags() in TaggedArticleList
Tim Düsterhus [Thu, 4 Feb 2021 15:35:21 +0000 (16:35 +0100)]
Make use of TagEngine::getSubselectForObjectsByTags() in TaggedArticleList

Commit c9613f130106f74853fbe9a50f06c00208106b8c is fun.

It renamed the getSqlForObjectsByTags() method that was previously used in
TaggedArticleList to the current name getSubselectForObjectsByTags() and fixed
a bug in the method that prevented it from working correctly.

At the same time the commit edited TaggedArticleList to no longer use this
method and instead copied over the logic.

I'm not sure what exactly happened during the development of that commit, but
we simply should use this (fixed) method.

3 years agoAdd missing parentheses
joshuaruesweg [Thu, 4 Feb 2021 15:31:25 +0000 (16:31 +0100)]
Add missing parentheses

3 years agoMerge pull request #3934 from WoltLab/box_pages_restricting_viewing
Joshua Rüsweg [Thu, 4 Feb 2021 15:23:50 +0000 (16:23 +0100)]
Merge pull request #3934 from WoltLab/box_pages_restricting_viewing

Inverted Permissions for Boxes and Pages

3 years agoAdd inverted permissions feature for pages
joshuaruesweg [Thu, 4 Feb 2021 12:34:58 +0000 (13:34 +0100)]
Add inverted permissions feature for pages

3 years agoAdd inverted permissions feature for boxes
joshuaruesweg [Thu, 4 Feb 2021 12:13:06 +0000 (13:13 +0100)]
Add inverted permissions feature for boxes

3 years agoAdd support for inverted permissions with Simple ACL
joshuaruesweg [Thu, 4 Feb 2021 12:08:55 +0000 (13:08 +0100)]
Add support for inverted permissions with Simple ACL

3 years agoMerge pull request #3904 from WoltLab/tag-to-object-languageID
Tim Düsterhus [Thu, 4 Feb 2021 11:48:06 +0000 (12:48 +0100)]
Merge pull request #3904 from WoltLab/tag-to-object-languageID

Clean up wcf1_tag_to_object

3 years agoMerge pull request #3928 from WoltLab/deprecated-updateStyleFile
Tim Düsterhus [Thu, 4 Feb 2021 10:32:46 +0000 (11:32 +0100)]
Merge pull request #3928 from WoltLab/deprecated-updateStyleFile

Deprecate StyleUtil::updateStyleFile()

3 years agoExplicitely configure `printWidth: 120` for Prettier
Tim Düsterhus [Wed, 3 Feb 2021 16:40:37 +0000 (17:40 +0100)]
Explicitely configure `printWidth: 120` for Prettier

3 years agoMerge branch '5.3'
Matthias Schmidt [Wed, 3 Feb 2021 15:13:04 +0000 (16:13 +0100)]
Merge branch '5.3'

3 years agoFix name of English language item
Matthias Schmidt [Wed, 3 Feb 2021 15:12:48 +0000 (16:12 +0100)]
Fix name of English language item

See 324aa486d32e0d1e7021385657fd1388d00403ca

3 years agoMerge pull request #3929 from WoltLab/style-compiler
Tim Düsterhus [Wed, 3 Feb 2021 15:08:44 +0000 (16:08 +0100)]
Merge pull request #3929 from WoltLab/style-compiler

Clean up StyleCompiler

3 years agoRemove redundant wcfFontFamily generation for ACP style
Tim Düsterhus [Wed, 3 Feb 2021 14:46:01 +0000 (15:46 +0100)]
Remove redundant wcfFontFamily generation for ACP style

3 years agoFix the use of Google fonts in StyleCompiler
Tim Düsterhus [Wed, 3 Feb 2021 14:43:35 +0000 (15:43 +0100)]
Fix the use of Google fonts in StyleCompiler

3 years agoUse a `/*!` comment for the CSS header
Tim Düsterhus [Wed, 3 Feb 2021 13:42:32 +0000 (14:42 +0100)]
Use a `/*!` comment for the CSS header

This change stops the `Compressed` formatter from removing the comment,
allowing us to remove the `insertHeader()` logic which looked somewhat fragile.

3 years agoPass SCSS instead of files + invididualScss to StyleCompiler::compileStylesheet()
Tim Düsterhus [Wed, 3 Feb 2021 13:40:35 +0000 (14:40 +0100)]
Pass SCSS instead of files + invididualScss to StyleCompiler::compileStylesheet()

3 years agoMake StyleCompiler::compileStylesheet() only compile
Tim Düsterhus [Wed, 3 Feb 2021 13:28:39 +0000 (14:28 +0100)]
Make StyleCompiler::compileStylesheet() only compile

3 years agoAdd StyleCompiler::writeCss()
Tim Düsterhus [Wed, 3 Feb 2021 13:24:20 +0000 (14:24 +0100)]
Add StyleCompiler::writeCss()

3 years agoAdd StyleCompiler::convertToRtl()
Tim Düsterhus [Wed, 3 Feb 2021 13:17:50 +0000 (14:17 +0100)]
Add StyleCompiler::convertToRtl()

3 years agoAdd StyleCompiler::injectHeader()
Tim Düsterhus [Wed, 3 Feb 2021 13:10:43 +0000 (14:10 +0100)]
Add StyleCompiler::injectHeader()