From a5e3375aca6c712d7db8e259268f8aa994156868 Mon Sep 17 00:00:00 2001 From: Gitea Date: Sat, 9 Jun 2018 14:02:43 -0400 Subject: [PATCH] Add the ability to have built in themes in Gitea This makes it easier for user who want to theme but dont have the ability to know how to customize themplates all that is required is a change in a config option The reason why I chose the DEFAULT_THEME as variable, as perhaps in the future we will allow users to chose their theme whon logged in just like we do with languages Fix #56 --- Makefile | 6 +- custom/conf/app.ini.sample | 2 + .../doc/advanced/config-cheat-sheet.en-us.md | 1 + modules/setting/setting.go | 2 + modules/templates/helper.go | 3 + public/css/theme-dark.css | 1 + public/less/themes/_base.less | 3 + public/less/themes/dark.less | 752 ++++++++++++++++++ templates/base/head.tmpl | 3 + 9 files changed, 772 insertions(+), 1 deletion(-) create mode 100644 public/css/theme-dark.css create mode 100644 public/less/themes/_base.less create mode 100644 public/less/themes/dark.less diff --git a/Makefile b/Makefile index c052ebbb0..a4ca20e08 100644 --- a/Makefile +++ b/Makefile @@ -55,6 +55,9 @@ else endif endif +# $(call strip-suffix,filename) +strip-suffix = $(firstword $(subst ., ,$(1))) + .PHONY: all all: build @@ -301,7 +304,7 @@ public/js/index.js: $(JAVASCRIPTS) .PHONY: stylesheets-check stylesheets-check: generate-stylesheets - @diff=$$(git diff public/css/index.css); \ + @diff=$$(git diff public/css/*); \ if [ -n "$$diff" ]; then \ echo "Please run 'make generate-stylesheets' and commit the result:"; \ echo "$${diff}"; \ @@ -311,6 +314,7 @@ stylesheets-check: generate-stylesheets .PHONY: generate-stylesheets generate-stylesheets: node_modules/.bin/lessc --clean-css public/less/index.less public/css/index.css + $(foreach file, $(filter-out public/less/themes/_base.less, $(wildcard public/less/themes/*)),node_modules/.bin/lessc --clean-css public/less/themes/$(notdir $(file)) > public/css/theme-$(notdir $(call strip-suffix,$(file))).css;) .PHONY: swagger-ui swagger-ui: diff --git a/custom/conf/app.ini.sample b/custom/conf/app.ini.sample index ef88e5c32..308c592d1 100644 --- a/custom/conf/app.ini.sample +++ b/custom/conf/app.ini.sample @@ -75,6 +75,8 @@ THEME_COLOR_META_TAG = `#6cc644` MAX_DISPLAY_FILE_SIZE = 8388608 ; Whether the email of the user should be shown in the Explore Users page SHOW_USER_EMAIL = true +; Set the default theme for the Gitea install +DEFAULT_THEME = default [ui.admin] ; Number of users that are displayed on one page diff --git a/docs/content/doc/advanced/config-cheat-sheet.en-us.md b/docs/content/doc/advanced/config-cheat-sheet.en-us.md index 3f8ebea61..86a4c770f 100644 --- a/docs/content/doc/advanced/config-cheat-sheet.en-us.md +++ b/docs/content/doc/advanced/config-cheat-sheet.en-us.md @@ -68,6 +68,7 @@ Values containing `#` or `;` must be quoted using `` ` `` or `"""`. - `EXPLORE_PAGING_NUM`: **20**: Number of repositories that are shown in one explore page. - `ISSUE_PAGING_NUM`: **10**: Number of issues that are shown in one page (for all pages that list issues). - `FEED_MAX_COMMIT_NUM`: **5**: Number of maximum commits shown in one activity feed. +- `DEFAULT_THEME`: **default**: Set the default theme for the Gitea install. ### UI - Admin (`ui.admin`) diff --git a/modules/setting/setting.go b/modules/setting/setting.go index cf9f59853..510ead8c1 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -274,6 +274,7 @@ var ( ThemeColorMetaTag string MaxDisplayFileSize int64 ShowUserEmail bool + DefaultTheme string Admin struct { UserPagingNum int @@ -297,6 +298,7 @@ var ( ReactionMaxUserNum: 10, ThemeColorMetaTag: `#6cc644`, MaxDisplayFileSize: 8388608, + DefaultTheme: `default`, Admin: struct { UserPagingNum int RepoPagingNum int diff --git a/modules/templates/helper.go b/modules/templates/helper.go index bf5c0130b..42a0d6825 100644 --- a/modules/templates/helper.go +++ b/modules/templates/helper.go @@ -186,6 +186,9 @@ func NewFuncMap() []template.FuncMap { "ParseDeadline": func(deadline string) []string { return strings.Split(deadline, "|") }, + "DefaultTheme": func() string { + return setting.UI.DefaultTheme + }, }} } diff --git a/public/css/theme-dark.css b/public/css/theme-dark.css new file mode 100644 index 000000000..a901c0809 --- /dev/null +++ b/public/css/theme-dark.css @@ -0,0 +1 @@ +.hljs{display:block;overflow-x:auto;padding:.5em;background-color:#2b2b2b!important;color:#bababa}.repository.file.list .non-diff-file-content .code-view .lines-code ol,.repository.file.list .non-diff-file-content .code-view .lines-num{background-color:#2b2b2b!important}.hljs-emphasis,.hljs-strong{color:#a8a8a2}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:#6896ba}.hljs-code,.hljs-selector-class{color:#a6e22e}.hljs-emphasis{font-style:italic}.hljs-attribute,.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-variable{color:#cb7832}.hljs-params{color:#b9b9b9}.hljs-string{color:#6a8759}.hljs-addition,.hljs-built_in,.hljs-builtin-name,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-subst,.hljs-symbol,.hljs-template-tag,.hljs-template-variable,.hljs-type{color:#e0c46c}.hljs-comment,.hljs-deletion,.hljs-meta{color:#7f7f7f}.repository .ui.segment.sub-menu .list .item a{color:#dbdbdb}.ui.horizontal.segments>.segment{background-color:#383c4a}body{background:#383c4a;color:#9e9e9e}a{color:#87ab63}a:hover{color:#a0cc75}.ui.card>.extra a:not(.ui):hover,.ui.cards>.card>.extra a:not(.ui):hover{color:#a0cc75}.ui.breadcrumb a:hover{color:#a0cc75}.ui.breadcrumb a{color:#87ab63}.repository .metas .ui.list a .text{color:#87ab63}.repository .metas .ui.list a .text:hover{color:#a0cc75}.repository .label.list .item a{color:#87ab63}.repository .label.list .item a:hover{color:#a0cc75}.repository .milestone.list>.item>a{color:#87ab63}.repository .milestone.list>.item>a:hover{color:#a0cc75}.repository.release #release-list{border-top:1px solid #4c505c}.repository .milestone.list>.item .operate>a{color:#87ab63}.repository .milestone.list>.item .operate>a:hover{color:#a0cc75}.ui.green.progress .bar{background-color:#684}.ui.progress.success .bar{background-color:#7b9e57!important}.following.bar.light{background:#2e323e}.ui.secondary.menu .active.item{color:#dbdbdb}.ui.secondary.menu .item{color:#9e9e9e}.following.bar .top.menu a.item:hover{color:#fff}.repository.view.issue .comment-list .comment .content>.bottom.segment a{border:solid 1px #353945;background-color:#353945}.following.bar.light{border-bottom:1px solid #313131}.ui.attached.header{background:#404552;border:1px solid #404552;color:#dbdbdb}.ui.attached.table{border:1px solid #304251;background:#304251}.feeds .list ul li:not(:last-child){border-bottom:1px solid #333640}.feeds .list ul li.private{background:#353945;border:1px solid #333640}.ui.secondary.menu .dropdown.item:hover,.ui.secondary.menu .link.item:hover,.ui.secondary.menu a.item:hover{color:#fff}.ui.menu .ui.dropdown .menu>.item{background:#2c303a!important;color:#9e9e9e!important}.ui.secondary.menu .dropdown.item>.menu,.ui.text.menu .dropdown.item>.menu{border:1px solid #434444}footer{background:#2e323e;border-top:1px solid #313131}.ui.menu .dropdown.item .menu{background:#2c303a}.ui.menu .ui.dropdown .menu>.item:hover,.ui.menu .ui.dropdown .menu>.selected.item{color:#fff!important}.ui.dropdown .menu>.header{color:#dbdbdb}.ui.red.label,.ui.red.labels .label{background-color:#7d3434!important;border-color:#8a2121!important}.ui.menu{background:#404552;border:1px solid #353945}.ui.menu .active.item:hover,.ui.vertical.menu .active.item:hover{color:#dbdbdb;background:#4B5162}.ui.link.menu .item:hover,.ui.menu .dropdown.item:hover,.ui.menu .link.item:hover,.ui.menu a.item:hover{color:#dbdbdb;background:#454b5a}.ui.menu .active.item{background:#4B5162;color:#dbdbdb}.ui.input input{background:#404552;border:2px solid #353945;color:#dbdbdb}.ui.input input:focus,.ui.input.focus input{background:#404552;border:2px solid #353945;color:#dbdbdb}.ui.label{color:#dbdbdb;background-color:#404552}.issue.list>.item .title{color:#87ab63}.issue.list>.item .title:hover{color:#a0cc75}.issue.list>.item{border-bottom:1px dashed #475767}.ui.green.label,.ui.green.labels .label{background-color:#2d693b!important;border-color:#2d693b!important}.issue.list>.item .comment{color:#129c92}.ui.basic.button,.ui.basic.buttons .button{color:#797979!important}.ui.basic.red.active.button,.ui.basic.red.buttons .active.button{box-shadow:0 0 0 1px #c75252 inset!important;color:#c75252!important}.ui.basic.button:focus,.ui.basic.button:hover,.ui.basic.buttons .button:focus,.ui.basic.buttons .button:hover{background:0 0!important;color:#dbdbdb!important}.ui.menu .item{background:#404552;color:#9e9e9e}.ui.menu .item.disabled,.ui.menu .item.disabled:hover{color:#626773}.ui.pagination.menu .active.item{color:#dbdbdb;background-color:#609926}.repository .header-wrapper{background-color:#2a2e3a}.ui.tabular.menu .active.item{background:#383c4a;color:#dbdbdb;border-left:1px solid transparent;border-right:1px solid transparent;border-top:none}.ui.tabular.menu .item{color:#9e9e9e}.ui.tabular.menu .item:hover{color:#dbdbdb}.ui.breadcrumb .divider,.ui.header{color:#9e9e9e}.ui.blue.label,.ui.blue.labels .label{background-color:#26577b!important;border-color:#26577b!important}.ui.menu .item>.label{background:#565454}.ui.blue.button,.ui.blue.buttons .button{background-color:#609926}.ui.blue.button:hover,.ui.blue.buttons .button:hover{background-color:#73ad36}.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=time],.ui.form input[type=url]{background:#404552;border:2px solid #353945}.ui.form input:not([type]):focus,.ui.form input[type=date]:focus,.ui.form input[type=datetime-local]:focus,.ui.form input[type=email]:focus,.ui.form input[type=number]:focus,.ui.form input[type=password]:focus,.ui.form input[type=search]:focus,.ui.form input[type=tel]:focus,.ui.form input[type=text]:focus,.ui.form input[type=time]:focus,.ui.form input[type=url]:focus{background:#404552;border:2px solid #4b505f;color:#dbdbdb}.ui.action.input:not([class*="left action"]) input:focus{border-right-color:#4b505f!important}.ui.green.button,.ui.green.buttons .button{background-color:#609926}.ui.green.button:hover,.ui.green.buttons .button:hover{background-color:#73ad36}.ui.button{background:#383c4a;border:1px solid #4c505c;color:#dbdbdb}.ui.labeled.button:not([class*="left labeled"])>.label,.ui[class*="left labeled"].button>.button{background:#404552;border:1px solid #4c505c;color:#87ab63}.ui.button:hover{background-color:#404552;color:#dbdbdb}.ui.table thead th{background:#404552;color:#dbdbdb}.repository.file.list #repo-files-table tr:hover{background-color:#393d4a}.ui.table{color:#a5a5a5!important;border:1px solid #4c505c;background:#353945}.ui.table tbody tr{border-bottom:1px solid #333640;background:#2a2e3a}.ui .text.grey{color:#808084!important}.ui.attached.table.segment{background:#353945;color:#dbdbdb!important}.markdown:not(code) h2{border-bottom:1px solid #304251}.hljs,.hljs-keyword,.hljs-selector-tag,.hljs-subst{color:#9daccc}.markdown:not(code) .highlight pre,.markdown:not(code) pre{background-color:#2a2e3a;border:1px solid #404552}.ui.dropdown .menu{background:#2c303a}.ui.dropdown .menu>.message:not(.ui){color:#636363}.ui.input{color:#dbdbdb}.overflow.menu .items .item{color:#9d9d9d}.overflow.menu .items .item:hover{color:#dbdbdb}.ui.segment{background:#353945;color:#9e9e9e!important;border:1px solid #404552}.ui.active.button:active,.ui.button:active,.ui.button:focus{background-color:#2e3e4e;color:#dbdbdb}.ui.dropdown .menu .selected.item,.ui.dropdown.selected{color:#dbdbdb}.ui.dropdown .menu>.item:hover{color:#dbdbdb}.ui.dropdown .menu>.item{color:#9e9e9e}.ui.attached.segment{border:1px solid #404552}.repository.view.issue .comment-list .comment .content>.bottom.segment{background:#353945}.repository.view.issue .comment-list .comment .content .header{color:#dbdbdb;background-color:#404552;border-bottom:1px solid #353944}.ui .text.grey a{color:#b3b3b3!important}.ui.comments .comment .actions a{color:#dbdbdb}.repository.view.issue .comment-list .comment .content .header:after{border-right-color:#404552}.repository.new.issue .comment.form .content:after{border-right-color:#353945}.repository.view.issue .comment-list .comment .content .header:before{border-right-color:#404552}.repository.new.issue .comment.form .content:before{border-right-color:#353945}.repository.view.issue .comment-list:before{background-color:#313c47}.repository .comment.form .content .form:after{border-right-color:#313c47}.repository .comment.form .content .form:before{border-right-color:#313c47}.ui .text.grey a{color:#dbdbdb!important}.ui .text.grey a:hover{color:#dbdbdb!important}.ui.basic.green.active.button,.ui.basic.green.buttons .active.button{color:#13ae38!important}.ui.form textarea,.ui.form textarea:focus{background:#1a2632;border:1px solid #313c47;color:#dbdbdb}.ui.form textarea:focus{border:1px solid #456580}.ui .info.segment.top{background-color:#404552!important}.repository .diff-file-box .code-diff-unified tbody tr.del-code td{background-color:#3c2626!important;border-color:#634343!important}.repository .diff-file-box .code-diff-unified tbody tr.add-code td{background-color:#283e2d!important;border-color:#314a37!important}.repository .diff-file-box .code-diff tbody tr .added-code{background-color:#3a523a}.repository .diff-file-box .code-diff .lines-num{border-right:1px solid #2d2d2d}.repository .diff-file-box .file-body.file-code .lines-num{color:#9e9e9e;background:#2e323e}.repository .diff-file-box .code-diff tbody tr td.tag-code,.repository .diff-file-box .code-diff tbody tr.tag-code td{border-color:#2d2d2d!important}.repository .diff-file-box .file-body.file-code .lines-num-old{border-right:1px solid #2d2d2d}.hljs-section,.hljs-selector-id,.hljs-title{color:#986c88}.hljs-doctag,.hljs-string{color:#949494}.repository .diff-file-box .code-diff tbody tr .removed-code{background-color:#5f3737}.repository .diff-file-box .code-diff tbody tr td.tag-code,.repository .diff-file-box .code-diff tbody tr.tag-code td{background-color:#292727!important}.ui.vertical.menu .active.item{background:#4B5162}.ui.vertical.menu .item{background:#353945}.ui.vertical.menu .header.item{background:#404552}.ui.vertical.menu{background:#353945;border:1px solid #333640}.ui.repository.list .item:not(:first-child){border-top:1px solid #4c505c}.ui .text.blue{color:#609926!important}.ui.selection.active.dropdown,.ui.selection.active.dropdown .menu{border-color:#4e5361;box-shadow:0 2px 3px 0 rgba(34,36,38,.15)}.ui.selection.active.dropdown:hover,.ui.selection.active.dropdown:hover .menu{border-color:#4e5361;box-shadow:0 2px 3px 0 rgba(34,36,38,.15)}.ui.selection.dropdown{background:#404552;border:1px solid #404552;color:#9e9e9e}.ui.menu .ui.dropdown .menu>.active.item{color:#dbdbdb!important}.ui.tabular.menu{border-bottom:1px solid #313c47}.ui.card,.ui.cards>.card{background:#353945;box-shadow:0 1px 3px 0 #4c505c,0 0 0 1px #4c505c}.ui.card>.content>.header,.ui.cards>.card>.content>.header{color:#dbdbdb}.ui.card>.extra a:not(.ui),.ui.cards>.card>.extra a:not(.ui){color:#87ab63}.ui .text.black{color:#9e9e9e}.ui .text.black:hover{color:#dbdbdb}.ui.secondary.segment{background:#353945}.ui.secondary.pointing.menu .active.item{border-color:#609926;color:#dbdbdb;background:#404552}.ui.user.list .item:not(:first-child){border-top:1px solid #4c505c}.ui.secondary.pointing.menu .active.item:hover{border-color:#af8b4c;color:#dbdbdb;background:#4b5162}.ui.secondary.pointing.menu .dropdown.item:hover,.ui.secondary.pointing.menu .link.item:hover,.ui.secondary.pointing.menu a.item:hover{color:#dbdbdb}.ui.checkbox label,.ui.checkbox+label,.ui.form .field>label{color:#9e9e9e}.ui.form .inline.field>label,.ui.form .inline.field>p,.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p,.ui.form .inline.fields>label{color:#9e9e9e}.user.settings .email.list .item:not(:first-child){border-top:1px solid #3f4451}.explore .navbar{background-color:#2a2e3a!important}.ui.menu.new-menu{background-color:#2a2e3a!important}input{background:#2e323e}.ui.secondary.pointing.menu .active.item{border:none;background:#383c4a}.settings .key.list .item:not(:first-child){border-top:1px solid #404552}.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=time],.ui.form input[type=url]{color:#9e9e9e}.ui.attached.info.message,.ui.info.message{box-shadow:0 0 0 1px #4b5e71 inset,0 0 0 0 transparent}.ui.info.message{background-color:#2c3b4a;color:#9ebcc5}.ui .warning.header{background-color:#5d3a22!important;border-color:#794f31}.ui.red.message{background-color:rgba(80,23,17,.6);color:#f9cbcb;box-shadow:0 0 0 1px rgba(121,71,66,.5) inset,0 0 0 0 transparent}.ui.red.button,.ui.red.buttons .button{background-color:#7d3434}.ui.red.button:hover,.ui.red.buttons .button:hover{background-color:#984646}.ui.checkbox label:hover,.ui.checkbox+label:hover{color:#dbdbdb!important}.ui.checkbox input:checked~.box:after,.ui.checkbox input:checked~label:after{color:#7f98ad}.ui.checkbox input:checked~.box:before,.ui.checkbox input:checked~label:before{background:#304251}.ui.checkbox .box:hover::before,.ui.checkbox label:hover::before{background:#304251}.ui.checkbox .box:before,.ui.checkbox label:before{background:#304251;border:1px solid #304251}.ui.checkbox .box:active::before,.ui.checkbox label:active::before{background:#304251;border-color:rgba(34,36,38,.35)}.ui.checkbox input:checked~.box:before,.ui.checkbox input:checked~label:before{border-color:#304251;background:#304251}.ui.checkbox input:focus~.box:before,.ui.checkbox input:focus~label:before{border-color:#304251;background:#304251}.ui.checkbox input:checked:focus~.box:before,.ui.checkbox input:checked:focus~label:before,.ui.checkbox input:not([type=radio]):indeterminate:focus~.box:before,.ui.checkbox input:not([type=radio]):indeterminate:focus~label:before{border-color:#304251;background:#304251}.ui.checkbox input:checked~.box:after,.ui.checkbox input:checked~label:after{opacity:1;color:#7f98ad}.ui.checkbox input:checked:focus~.box:after,.ui.checkbox input:checked:focus~label:after,.ui.checkbox input:not([type=radio]):indeterminate:focus~.box:after,.ui.checkbox input:not([type=radio]):indeterminate:focus~label:after{color:#7f98ad}.ui.checkbox input:focus~.box:after,.ui.checkbox input:focus~label,.ui.checkbox input:focus~label:after{color:#9a9a9a}.ui.selection.dropdown:hover{border-color:rgba(34,36,38,.35);border:1px solid #456580}.ui.selection.dropdown .menu>.item{border-top:1px solid #313c47}.ui.selection.visible.dropdown>.text:not(.default){color:#9e9e9e}.ui.negative.message{background-color:rgba(80,23,17,.6);color:#f9cbcb;box-shadow:0 0 0 1px rgba(121,71,66,.5) inset,0 0 0 0 transparent}.hljs-attribute,.hljs-name,.hljs-tag{color:#ef5e77}.user.profile .ui.card .extra.content ul li:not(:last-child){border-bottom:1px solid #4c505c}.ui.form textarea,.ui.form textarea:focus{background:#404552;border:2px solid #353945}.hljs-literal,.hljs-number,.hljs-tag .hljs-attr,.hljs-template-variable,.hljs-variable{color:#bd84bf}.hljs-doctag,.hljs-string{color:#8ab398}.ui.form .dropzone{border:2px dashed #4c505c}.ui.basic.red.button,.ui.basic.red.buttons .button{box-shadow:0 0 0 1px #a04141 inset!important;color:#a04141!important}.ui.list .list>.item .header,.ui.list>.item .header{color:#dedede}.ui.list .list>.item .description,.ui.list>.item .description{color:#9e9e9e}.ui.user.list .item .description a{color:#668cb1}.repository.file.list #file-content .code-view .lines-num{background:#2e323e}.repository.file.list #repo-files-table tbody .octicon.octicon-file-directory,.repository.file.list #repo-files-table tbody .octicon.octicon-file-submodule{color:#7c9b5e}.ui.blue.button:focus,.ui.blue.buttons .button:focus{background-color:#609926}.ui.basic.blue.button:hover,.ui.basic.blue.buttons .button:hover{box-shadow:0 0 0 1px #609926 inset!important;color:#609926!important}.ui.basic.blue.button:focus,.ui.basic.blue.buttons .button:focus{box-shadow:0 0 0 1px #609926 inset!important;color:#609926!important}.repository.file.list #file-content .code-view .lines-code .hljs,.repository.file.list #file-content .code-view .lines-code ol,.repository.file.list #file-content .code-view .lines-code pre,.repository.file.list #file-content .code-view .lines-num .hljs,.repository.file.list #file-content .code-view .lines-num ol,.repository.file.list #file-content .code-view .lines-num pre{background-color:#2a2e3a}a.ui.label:hover,a.ui.labels .label:hover{background-color:#505667;color:#dbdbdb}.repository .label.list .item{border-bottom:1px dashed #4c505c}.repository.file.list #file-content .code-view .lines-num{background:#2e323e}.repository.file.list #repo-files-table tbody .octicon.octicon-file-directory,.repository.file.list #repo-files-table tbody .octicon.octicon-file-submodule{color:#7c9b5e}.ui.basic.blue.button,.ui.basic.blue.buttons .button{box-shadow:0 0 0 1px #a27558 inset!important;color:#a27558!important}.repository.file.list #file-content .code-view .lines-code .hljs,.repository.file.list #file-content .code-view .lines-code ol,.repository.file.list #file-content .code-view .lines-code pre,.repository.file.list #file-content .code-view .lines-num .hljs,.repository.file.list #file-content .code-view .lines-num ol,.repository.file.list #file-content .code-view .lines-num pre{background-color:#2a2e3a}a.ui.label:hover,a.ui.labels .label:hover{background-color:#505667;color:#dbdbdb}.repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(1),.repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(2),.repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(3),.repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(4){background-color:#2a2e3a}.repository .diff-file-box .code-diff-split tbody tr td.add-code,.repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(3),.repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(4){background-color:#283e2d!important;border-color:#314a37!important}.repository .diff-file-box .code-diff-split tbody tr td.del-code,.repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(1),.repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(2){background-color:#3c2626!important;border-color:#634343!important}.ui.blue.button:focus,.ui.blue.buttons .button:focus{background-color:#a27558}.ui.blue.button:active,.ui.blue.buttons .button:active{background-color:#a27558}#git-graph-container li a{color:#c79575}#git-graph-container li .author{color:#c79575}.ui.header .sub.header{color:#9e9e9e}.ui.dividing.header{border-bottom:1px solid #4c505c}.ui.modal>.header{background:#404552;color:#dbdbdb}.ui.modal>.actions{background:#404552;border-top:1px solid #404552}.ui.modal>.content{background:#383c4a}.ui.basic.blue.button,.ui.basic.blue.buttons .button{box-shadow:0 0 0 1px #609926 inset!important;color:#609926!important} \ No newline at end of file diff --git a/public/less/themes/_base.less b/public/less/themes/_base.less new file mode 100644 index 000000000..18d4f068c --- /dev/null +++ b/public/less/themes/_base.less @@ -0,0 +1,3 @@ +// TODO: Instead of having each theme file define each +// CSS/LESS item in this file and then overide +// in the theme files \ No newline at end of file diff --git a/public/less/themes/dark.less b/public/less/themes/dark.less new file mode 100644 index 000000000..65bd5359a --- /dev/null +++ b/public/less/themes/dark.less @@ -0,0 +1,752 @@ +@import "_base"; + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background-color: #2b2b2b !important; + color: #bababa; +} + .repository.file.list .non-diff-file-content .code-view .lines-num, .repository.file.list .non-diff-file-content .code-view .lines-code ol { + background-color: #2b2b2b !important; +} + .hljs-strong, .hljs-emphasis { + color: #a8a8a2; +} + .hljs-bullet, .hljs-quote, .hljs-link, .hljs-number, .hljs-regexp, .hljs-literal { + color: #6896ba; +} + .hljs-code, .hljs-selector-class { + color: #a6e22e; +} + .hljs-emphasis { + font-style: italic; +} + .hljs-keyword, .hljs-selector-tag, .hljs-section, .hljs-attribute, .hljs-name, .hljs-variable { + color: #cb7832; +} + .hljs-params { + color: #b9b9b9; +} + .hljs-string { + color: #6a8759; +} + .hljs-subst, .hljs-type, .hljs-built_in, .hljs-builtin-name, .hljs-symbol, .hljs-selector-id, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-template-tag, .hljs-template-variable, .hljs-addition { + color: #e0c46c; +} + .hljs-comment, .hljs-deletion, .hljs-meta { + color: #7f7f7f; +} + .repository .ui.segment.sub-menu .list .item a { + color:#dbdbdb; +} + .ui.horizontal.segments > .segment { + background-color: #383c4a; +} + body { + background: #383c4a; + color: #9e9e9e; +} + a { + color: #87ab63; +} + a:hover { + color: #a0cc75; +} + .ui.card>.extra a:not(.ui):hover, .ui.cards>.card>.extra a:not(.ui):hover { + color: #a0cc75; +} + .ui.breadcrumb a:hover { + color: #a0cc75; +} + .ui.breadcrumb a { + color: #87ab63; +} + .repository .metas .ui.list a .text { + color: #87ab63; +} + .repository .metas .ui.list a .text:hover { + color: #a0cc75; +} + .repository .label.list .item a { + color: #87ab63; +} + .repository .label.list .item a:hover { + color: #a0cc75; +} + .repository .milestone.list > .item > a { + color: #87ab63; +} + .repository .milestone.list > .item > a:hover { + color: #a0cc75; +} + .repository.release #release-list { + border-top: 1px solid #4c505c; +} + .repository .milestone.list > .item .operate > a { + color: #87ab63; +} + .repository .milestone.list > .item .operate > a:hover { + color: #a0cc75; +} + .ui.green.progress .bar { + background-color: #668844; +} + .ui.progress.success .bar { + background-color: #7b9e57!important; +} + .following.bar.light { + background: #2e323e; +} + .ui.secondary.menu .active.item { + color: #dbdbdb; +} + .ui.secondary.menu .item { + color: #9e9e9e; +} + .following.bar .top.menu a.item:hover { + color: #fff; +} + .repository.view.issue .comment-list .comment .content > .bottom.segment a { + border: solid 1px #353945; + background-color: #353945; +} + .following.bar.light { + border-bottom: 1px solid #313131; +} + .ui.attached.header { + background: #404552; + border: 1px solid #404552; + color: #dbdbdb; +} + .ui.attached.table { + border: 1px solid #304251; + background: #304251; +} + .feeds .list ul li:not(:last-child) { + border-bottom: 1px solid #333640; +} + .feeds .list ul li.private { + background: #353945; + border: 1px solid #333640; +} + .ui.secondary.menu .dropdown.item:hover, .ui.secondary.menu .link.item:hover, .ui.secondary.menu a.item:hover { + color: #fff; +} + .ui.menu .ui.dropdown .menu>.item { + background: #2c303a !important; + color: #9e9e9e !important; +} + .ui.secondary.menu .dropdown.item>.menu, .ui.text.menu .dropdown.item>.menu { + border: 1px solid #434444; +} + footer { + background: #2e323e; + border-top: 1px solid #313131; +} + .ui.menu .dropdown.item .menu { + background: #2c303a; +} + .ui.menu .ui.dropdown .menu>.item:hover, .ui.menu .ui.dropdown .menu>.selected.item { + color: #fff!important; +} + .ui.dropdown .menu>.header { + color: #dbdbdb; +} + .ui.red.label, .ui.red.labels .label { + background-color: #7d3434!important; + border-color: #8a2121!important; +} + .ui.menu { + background: #404552; + border: 1px solid #353945; +} + .ui.menu .active.item:hover, .ui.vertical.menu .active.item:hover { + color: #dbdbdb; + background: #4B5162; +} + .ui.link.menu .item:hover, .ui.menu .dropdown.item:hover, .ui.menu .link.item:hover, .ui.menu a.item:hover { + color: #dbdbdb; + background: #454b5a; +} + .ui.menu .active.item { + background: #4B5162; + color: #dbdbdb; +} + .ui.input input { + background: #404552; + border: 2px solid #353945; + color: #dbdbdb; +} + .ui.input input:focus, .ui.input.focus input { + background: #404552; + border: 2px solid #353945; + color: #dbdbdb; +} + .ui.label { + color: #dbdbdb; + background-color: #404552; +} + .issue.list > .item .title { + color: #87ab63; +} + .issue.list > .item .title:hover { + color: #a0cc75; +} + .issue.list > .item { + border-bottom: 1px dashed #475767; +} + .ui.green.label, .ui.green.labels .label { + background-color: #2d693b!important; + border-color: #2d693b!important; +} + .issue.list > .item .comment { + color: #129c92; +} + .ui.basic.button, .ui.basic.buttons .button { + color: #797979!important; +} + .ui.basic.red.active.button, .ui.basic.red.buttons .active.button { + box-shadow: 0 0 0 1px #c75252 inset!important; + color: #c75252!important; +} + .ui.basic.button:focus, .ui.basic.button:hover, .ui.basic.buttons .button:focus, .ui.basic.buttons .button:hover { + background: transparent!important; + color: #dbdbdb!important; +} + .ui.menu .item { + background: #404552; + color: #9e9e9e; +} + .ui.menu .item.disabled, .ui.menu .item.disabled:hover { + color: #626773; +} + .ui.pagination.menu .active.item { + color: #dbdbdb; + background-color: #609926; +} + .repository .header-wrapper { + background-color: #2a2e3a; +} + .ui.tabular.menu .active.item { + background: #383c4a; + color: #dbdbdb; + border-left: 1px solid transparent; + border-right: 1px solid transparent; + border-top: none; +} + .ui.tabular.menu .item { + color: #9e9e9e; +} + .ui.tabular.menu .item:hover { + color: #dbdbdb; +} + .ui.header, .ui.breadcrumb .divider { + color: #9e9e9e; +} + .ui.blue.label, .ui.blue.labels .label { + background-color: #26577b!important; + border-color: #26577b!important; +} + .ui.menu .item>.label { + background: #565454; +} + .ui.blue.button, .ui.blue.buttons .button { + background-color: #609926; +} + .ui.blue.button:hover, .ui.blue.buttons .button:hover { + background-color: #73ad36; +} + .ui.form input:not([type]), .ui.form input[type=text], .ui.form input[type=email], .ui.form input[type=search], .ui.form input[type=password], .ui.form input[type=date], .ui.form input[type=datetime-local], .ui.form input[type=tel], .ui.form input[type=time], .ui.form input[type=url], .ui.form input[type=number] { + background: #404552; + border: 2px solid #353945; +} + .ui.form input:not([type]):focus, .ui.form input[type=text]:focus, .ui.form input[type=email]:focus, .ui.form input[type=search]:focus, .ui.form input[type=password]:focus, .ui.form input[type=date]:focus, .ui.form input[type=datetime-local]:focus, .ui.form input[type=tel]:focus, .ui.form input[type=time]:focus, .ui.form input[type=url]:focus, .ui.form input[type=number]:focus { + background: #404552; + border: 2px solid #4b505f; + color: #dbdbdb; +} + .ui.action.input:not([class*="left action"]) input:focus { + border-right-color: #4b505f!important; +} + .ui.green.button, .ui.green.buttons .button { + background-color: #609926; +} + .ui.green.button:hover, .ui.green.buttons .button:hover { + background-color: #73ad36; +} + .ui.button { + background: #383c4a; + border: 1px solid #4c505c; + color: #dbdbdb; +} + .ui.labeled.button:not([class*="left labeled"])>.label, .ui[class*="left labeled"].button>.button { + background: #404552; + border: 1px solid #4c505c; + color: #87ab63; +} + .ui.button:hover { + background-color: #404552; + color: #dbdbdb; +} + .ui.table thead th { + background: #404552; + color: #dbdbdb; +} + .repository.file.list #repo-files-table tr:hover { + background-color: #393d4a; +} + .ui.table { + color: #a5a5a5!important; + border: 1px solid #4c505c; + background: #353945; +} + .ui.table tbody tr { + border-bottom: 1px solid #333640; + background: #2a2e3a; +} + .ui .text.grey { + color: #808084 !important; +} + .ui.attached.table.segment { + background: #353945; + color: #dbdbdb!important; +} + .markdown:not(code) h2 { + border-bottom: 1px solid #304251; +} + .hljs, .hljs-keyword, .hljs-selector-tag, .hljs-subst { + color: #9daccc; +} + .markdown:not(code) .highlight pre, .markdown:not(code) pre { + background-color: #2a2e3a; + border: 1px solid #404552; +} + .ui.dropdown .menu { + background: #2c303a; +} + .ui.dropdown .menu>.message:not(.ui) { + color: rgb(99, 99, 99); +} + .ui.input { + color: #dbdbdb; +} + .overflow.menu .items .item { + color: #9d9d9d; +} + .overflow.menu .items .item:hover { + color: #dbdbdb; +} + .ui.segment { + background: #353945; + color: #9e9e9e!important; + border: 1px solid #404552; +} + .ui.active.button:active, .ui.button:active, .ui.button:focus { + background-color: #2e3e4e; + color: #dbdbdb; +} + .ui.dropdown .menu .selected.item, .ui.dropdown.selected { + color: #dbdbdb; +} + .ui.dropdown .menu>.item:hover { + color: #dbdbdb; +} + .ui.dropdown .menu>.item { + color: #9e9e9e; +} + .ui.attached.segment { + border: 1px solid #404552; +} + .repository.view.issue .comment-list .comment .content > .bottom.segment { + background: #353945; +} + .repository.view.issue .comment-list .comment .content .header { + color: #dbdbdb; + background-color: #404552; + border-bottom: 1px solid #353944; +} + .ui .text.grey a { + color: #b3b3b3 !important; +} + .ui.comments .comment .actions a { + color: #dbdbdb; +} + .repository.view.issue .comment-list .comment .content .header:after { + border-right-color: #404552; +} + .repository.new.issue .comment.form .content:after { + border-right-color: #353945; +} + .repository.view.issue .comment-list .comment .content .header:before { + border-right-color: #404552; +} + .repository.new.issue .comment.form .content:before { + border-right-color: #353945; +} + .repository.view.issue .comment-list:before { + background-color: #313c47; +} + .repository .comment.form .content .form:after { + border-right-color: #313c47; +} + .repository .comment.form .content .form:before { + border-right-color: #313c47; +} + .ui .text.grey a { + color: #dbdbdb !important; +} + .ui .text.grey a:hover { + color: #dbdbdb !important; +} + .ui.basic.green.active.button, .ui.basic.green.buttons .active.button { + color: #13ae38!important; +} + .ui.form textarea, .ui.form textarea:focus { + background: #1a2632; + border: 1px solid #313c47; + color: #dbdbdb; +} + .ui.form textarea:focus { + border: 1px solid #456580; +} + .ui .info.segment.top { + background-color: #404552 !important; +} + .repository .diff-file-box .code-diff-unified tbody tr.del-code td { + background-color: #3c2626 !important; + border-color: #634343 !important; +} + .repository .diff-file-box .code-diff-unified tbody tr.add-code td { + background-color: rgb(40, 62, 45) !important; + border-color: #314a37 !important; +} + .repository .diff-file-box .code-diff tbody tr .added-code { + background-color: #3a523a; +} + .repository .diff-file-box .code-diff .lines-num { + border-right: 1px solid #2d2d2d; +} + .repository .diff-file-box .file-body.file-code .lines-num { + color: #9e9e9e; + background: #2e323e; +} + .repository .diff-file-box .code-diff tbody tr.tag-code td, .repository .diff-file-box .code-diff tbody tr td.tag-code { + border-color: #2d2d2d !important; +} + .repository .diff-file-box .file-body.file-code .lines-num-old { + border-right: 1px solid #2d2d2d; +} + .hljs-title, .hljs-section, .hljs-selector-id { + color: #986c88; +} + .hljs-string, .hljs-doctag { + color: #949494; +} + .repository .diff-file-box .code-diff tbody tr .removed-code { + background-color: #5f3737; +} + .repository .diff-file-box .code-diff tbody tr.tag-code td, .repository .diff-file-box .code-diff tbody tr td.tag-code { + background-color: #292727 !important; +} + .ui.vertical.menu .active.item { + background: #4B5162; +} + .ui.vertical.menu .item { + background: #353945; +} + .ui.vertical.menu .header.item { + background: #404552; +} + .ui.vertical.menu { + background: #353945; + border: 1px solid #333640; +} + .ui.repository.list .item:not(:first-child) { + border-top: 1px solid #4c505c; +} + .ui .text.blue { + color: #609926 !important; +} + .ui.selection.active.dropdown, .ui.selection.active.dropdown .menu { + border-color: #4e5361; + box-shadow: 0 2px 3px 0 rgba(34,36,38,.15); +} + .ui.selection.active.dropdown:hover, .ui.selection.active.dropdown:hover .menu { + border-color: #4e5361; + box-shadow: 0 2px 3px 0 rgba(34,36,38,.15); +} + .ui.selection.dropdown { + background: #404552; + border: 1px solid rgb(64, 69, 82); + color: #9e9e9e; +} + .ui.menu .ui.dropdown .menu>.active.item { + color: #dbdbdb !important; +} + .ui.tabular.menu { + border-bottom: 1px solid #313c47; +} + .ui.card, .ui.cards>.card { + background: #353945; + box-shadow: 0 1px 3px 0 #4c505c, 0 0 0 1px #4c505c; +} + .ui.card>.content>.header, .ui.cards>.card>.content>.header { + color: #dbdbdb; +} + .ui.card>.extra a:not(.ui), .ui.cards>.card>.extra a:not(.ui) { + color: #87ab63; +} + .ui .text.black { + color: #9e9e9e; +} + .ui .text.black:hover { + color: #dbdbdb; +} + .ui.secondary.segment { + background: #353945; +} + .ui.secondary.pointing.menu .active.item { + border-color: #609926; + color: #dbdbdb; + background: #404552; +} + .ui.user.list .item:not(:first-child) { + border-top: 1px solid #4c505c; +} + .ui.secondary.pointing.menu .active.item:hover { + border-color: #af8b4c; + color: #dbdbdb; + background: #4b5162; +} + .ui.secondary.pointing.menu .dropdown.item:hover, .ui.secondary.pointing.menu .link.item:hover, .ui.secondary.pointing.menu a.item:hover { + color: #dbdbdb; +} + .ui.checkbox label, .ui.checkbox+label, .ui.form .field>label { + color: #9e9e9e; +} + .ui.form .inline.field>label, .ui.form .inline.field>p, .ui.form .inline.fields .field>label, .ui.form .inline.fields .field>p, .ui.form .inline.fields>label { + color: #9e9e9e; +} + .user.settings .email.list .item:not(:first-child) { + border-top: 1px solid #3f4451; +} + .explore .navbar { + background-color: #2a2e3a!important; +} + .ui.menu.new-menu { + background-color: #2a2e3a!important; +} + input { + background: #2e323e; +} + .ui.secondary.pointing.menu .active.item { + border: none; + background: #383c4a; +} + .settings .key.list .item:not(:first-child) { + border-top: 1px solid #404552; +} + .ui.form input:not([type]), .ui.form input[type=text], .ui.form input[type=email], .ui.form input[type=search], .ui.form input[type=password], .ui.form input[type=date], .ui.form input[type=datetime-local], .ui.form input[type=tel], .ui.form input[type=time], .ui.form input[type=url], .ui.form input[type=number] { + color: #9e9e9e; +} + .ui.attached.info.message, .ui.info.message { + box-shadow: 0 0 0 1px #4b5e71 inset, 0 0 0 0 transparent; +} + .ui.info.message { + background-color: #2c3b4a; + color: #9ebcc5; +} + .ui .warning.header { + background-color: #5d3a22 !important; + border-color: #794f31; +} + .ui.red.message { + background-color: rgba(80, 23, 17, 0.6); + color: #f9cbcb; + box-shadow: 0 0 0 1px rgba(121, 71, 66, 0.5) inset, 0 0 0 0 transparent; +} + .ui.red.button, .ui.red.buttons .button { + background-color: #7d3434; +} + .ui.red.button:hover, .ui.red.buttons .button:hover { + background-color: #984646; +} + .ui.checkbox label:hover, .ui.checkbox+label:hover { + color: #dbdbdb !important; +} + .ui.checkbox input:checked~.box:after, .ui.checkbox input:checked~label:after { + color: rgb(127, 152, 173); +} + .ui.checkbox input:checked~.box:before, .ui.checkbox input:checked~label:before { + background: #304251; +} + .ui.checkbox .box:hover::before, .ui.checkbox label:hover::before { + background: #304251; +} + .ui.checkbox .box:before, .ui.checkbox label:before { + background: #304251; + border: 1px solid #304251; +} + .ui.checkbox .box:active::before, .ui.checkbox label:active::before { + background: #304251; + border-color: rgba(34,36,38,.35); +} + .ui.checkbox input:checked~.box:before, .ui.checkbox input:checked~label:before { + border-color: #304251; + background: #304251; +} + .ui.checkbox input:focus~.box:before, .ui.checkbox input:focus~label:before { + border-color: #304251; + background: #304251; +} + .ui.checkbox input:checked:focus~.box:before, .ui.checkbox input:checked:focus~label:before, .ui.checkbox input:not([type=radio]):indeterminate:focus~.box:before, .ui.checkbox input:not([type=radio]):indeterminate:focus~label:before { + border-color: #304251; + background: #304251; +} + .ui.checkbox input:checked~.box:after, .ui.checkbox input:checked~label:after { + opacity: 1; + color: rgb(127, 152, 173); +} + .ui.checkbox input:checked:focus~.box:after, .ui.checkbox input:checked:focus~label:after, .ui.checkbox input:not([type=radio]):indeterminate:focus~.box:after, .ui.checkbox input:not([type=radio]):indeterminate:focus~label:after { + color: rgb(127, 152, 173); +} + .ui.checkbox input:focus~.box:after, .ui.checkbox input:focus~label, .ui.checkbox input:focus~label:after { + color: #9a9a9a; +} + .ui.selection.dropdown:hover { + border-color: rgba(34,36,38,.35); + border: 1px solid #456580; +} + .ui.selection.dropdown .menu>.item { + border-top: 1px solid #313c47; +} + .ui.selection.visible.dropdown>.text:not(.default) { + color: #9e9e9e; +} + .ui.negative.message { + background-color: rgba(80, 23, 17, 0.6); + color: #f9cbcb; + box-shadow: 0 0 0 1px rgba(121, 71, 66, 0.5) inset, 0 0 0 0 transparent; +} + .hljs-tag, .hljs-name, .hljs-attribute { + color: #ef5e77; +} + .user.profile .ui.card .extra.content ul li:not(:last-child) { + border-bottom: 1px solid #4c505c; +} + .ui.form textarea, .ui.form textarea:focus { + background: #404552; + border: 2px solid #353945; +} + .hljs-number, .hljs-literal, .hljs-variable, .hljs-template-variable, .hljs-tag .hljs-attr { + color: #bd84bf; +} + .hljs-string, .hljs-doctag { + color: #8ab398; +} + .ui.form .dropzone { + border: 2px dashed #4c505c; +} + .ui.basic.red.button, .ui.basic.red.buttons .button { + box-shadow: 0 0 0 1px #a04141 inset!important; + color: #a04141!important; +} + .ui.list .list>.item .header, .ui.list>.item .header { + color: #dedede; +} + .ui.list .list>.item .description, .ui.list>.item .description { + color: #9e9e9e; +} + .ui.user.list .item .description a { + color: #668cb1; +} + .repository.file.list #file-content .code-view .lines-num { + background: #2e323e; +} + .repository.file.list #repo-files-table tbody .octicon.octicon-file-directory, .repository.file.list #repo-files-table tbody .octicon.octicon-file-submodule { + color: #7c9b5e; +} + .ui.blue.button:focus, .ui.blue.buttons .button:focus { + background-color: #609926; +} + .ui.basic.blue.button:hover, .ui.basic.blue.buttons .button:hover { + box-shadow: 0 0 0 1px #609926 inset!important; + color: #609926!important; +} + .ui.basic.blue.button:focus, .ui.basic.blue.buttons .button:focus { + box-shadow: 0 0 0 1px #609926 inset!important; + color: #609926!important; +} + .repository.file.list #file-content .code-view .lines-num pre, .repository.file.list #file-content .code-view .lines-code pre, .repository.file.list #file-content .code-view .lines-num ol, .repository.file.list #file-content .code-view .lines-code ol, .repository.file.list #file-content .code-view .lines-num .hljs, .repository.file.list #file-content .code-view .lines-code .hljs { + background-color: #2a2e3a; +} + a.ui.label:hover, a.ui.labels .label:hover { + background-color: #505667; + color: rgb(219, 219, 219); +} + .repository .label.list .item { + border-bottom: 1px dashed #4c505c; +} + .repository.file.list #file-content .code-view .lines-num { + background: #2e323e; +} + .repository.file.list #repo-files-table tbody .octicon.octicon-file-directory, .repository.file.list #repo-files-table tbody .octicon.octicon-file-submodule { + color: #7c9b5e; +} + .ui.basic.blue.button, .ui.basic.blue.buttons .button { + box-shadow: 0 0 0 1px #a27558 inset !important; + color: #a27558 !important; +} + .repository.file.list #file-content .code-view .lines-num pre, .repository.file.list #file-content .code-view .lines-code pre, .repository.file.list #file-content .code-view .lines-num ol, .repository.file.list #file-content .code-view .lines-code ol, .repository.file.list #file-content .code-view .lines-num .hljs, .repository.file.list #file-content .code-view .lines-code .hljs { + background-color: #2a2e3a; +} + a.ui.label:hover, a.ui.labels .label:hover { + background-color: #505667; + color: rgb(219, 219, 219); +} + .repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(1), .repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(2), .repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(3), .repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(4) { + background-color: #2a2e3a; +} + .repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(3), .repository .diff-file-box .code-diff-split tbody tr.add-code td:nth-child(4), .repository .diff-file-box .code-diff-split tbody tr td.add-code { + background-color: #283e2d !important; + border-color: #314a37 !important; +} + .repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(1), .repository .diff-file-box .code-diff-split tbody tr.del-code td:nth-child(2), .repository .diff-file-box .code-diff-split tbody tr td.del-code { + background-color: #3c2626 !important; + border-color: #634343 !important; +} + .ui.blue.button:focus, .ui.blue.buttons .button:focus { + background-color: #a27558; +} + .ui.blue.button:active, .ui.blue.buttons .button:active { + background-color: #a27558; +} + #git-graph-container li a { + color: #c79575; +} + #git-graph-container li .author { + color: #c79575; +} + .ui.header .sub.header { + color: #9e9e9e; +} + .ui.dividing.header { + border-bottom: 1px solid #4c505c; +} + .ui.modal>.header { + background: #404552; + color: #dbdbdb; +} + .ui.modal>.actions { + background: #404552; + border-top: 1px solid #404552; +} + .ui.modal>.content { + background: #383c4a; +} + .ui.basic.blue.button, .ui.basic.blue.buttons .button { + box-shadow: 0 0 0 1px #609926 inset!important; + color: #609926!important; +} + \ No newline at end of file diff --git a/templates/base/head.tmpl b/templates/base/head.tmpl index fb9611cb6..5a34d1e7e 100644 --- a/templates/base/head.tmpl +++ b/templates/base/head.tmpl @@ -127,6 +127,9 @@ {{end}} +{{if not (eq DefaultTheme "default")}} + +{{end}} {{template "custom/header" .}}