Compare commits
91 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b79991966a | ||
|
|
9147b61324 | ||
|
|
f5805c2ad3 | ||
|
|
30e88ca836 | ||
|
|
ddabd865d7 | ||
|
|
d8dee5ccb2 | ||
|
|
73d1210a00 | ||
|
|
e1563a6f9c | ||
|
|
73a1f06136 | ||
|
|
6f0d97fa6e | ||
|
|
230383dd2a | ||
|
|
bc6e2fefb1 | ||
|
|
3e80d292f4 | ||
|
|
6d1346064e | ||
|
|
0ae6e4bb59 | ||
|
|
da33ec44f3 | ||
|
|
3e84cfd613 | ||
|
|
2d77cba782 | ||
|
|
077b0e3ac1 | ||
|
|
e8687dfc7f | ||
|
|
aec8502225 | ||
|
|
75b8ab6143 | ||
|
|
b0842d06d1 | ||
|
|
7859024c18 | ||
|
|
b81b76a306 | ||
|
|
e0211daf24 | ||
|
|
8a1ca0915d | ||
|
|
d65d26f26f | ||
|
|
5c34a08c7f | ||
|
|
37d408cdb6 | ||
|
|
442596d0d0 | ||
|
|
564d0bf3ba | ||
|
|
3231825dc0 | ||
|
|
252d28c4cb | ||
|
|
a44432e1ab | ||
|
|
dbdcbce6a4 | ||
|
|
e4821cf03e | ||
|
|
9204d2263b | ||
|
|
b4eb58bc77 | ||
|
|
4a5ec23be5 | ||
|
|
db2ae70ba1 | ||
|
|
356e70ece0 | ||
|
|
493bed0468 | ||
|
|
7dbbaab953 | ||
|
|
8e5378b65b | ||
|
|
1abd5d2c59 | ||
|
|
c595f5b66f | ||
|
|
f572a55b7c | ||
|
|
b890e3f487 | ||
|
|
87ce84718d | ||
|
|
e1defa3677 | ||
|
|
2103d1e3b3 | ||
|
|
93f4c4e6fb | ||
|
|
ea57a72909 | ||
|
|
13db2d80bd | ||
|
|
ebcbd49e18 | ||
|
|
81e59e52ca | ||
|
|
1200c42714 | ||
|
|
d03e35edc6 | ||
|
|
fb4c70319a | ||
|
|
588b2fe358 | ||
|
|
2c93df1543 | ||
|
|
e6a238fbd9 | ||
|
|
19d2a2dfa3 | ||
|
|
97ecaf66c2 | ||
|
|
6b6c0cc565 | ||
|
|
02703bfefd | ||
|
|
194a114684 | ||
|
|
399b5abeb9 | ||
|
|
562da0a2ca | ||
|
|
aba098b4cd | ||
|
|
cc2e245b62 | ||
|
|
35c4fce150 | ||
|
|
51435b6d5e | ||
|
|
d19768cfcc | ||
|
|
6423b32ce3 | ||
|
|
2464deb302 | ||
|
|
9aefe05b3c | ||
|
|
61f9ee4af7 | ||
|
|
12bbf11fde | ||
|
|
5fe948f289 | ||
|
|
707c5409df | ||
|
|
994410fd89 | ||
|
|
cb78f07e84 | ||
|
|
3d8889b28c | ||
|
|
22fea49006 | ||
|
|
5265818398 | ||
|
|
edec47580e | ||
|
|
ea428cbc36 | ||
|
|
809bb8cc4a | ||
|
|
43da9dc45c |
23
.jshintrc
@@ -1,23 +0,0 @@
|
||||
{
|
||||
"camelcase" : true,
|
||||
"curly" : true,
|
||||
"eqeqeq" : true,
|
||||
"forin" : true,
|
||||
"indent" : 4,
|
||||
"latedef" : true,
|
||||
"newcap" : true,
|
||||
"nonew" : false,
|
||||
"quotmark" : "double",
|
||||
"undef" : true,
|
||||
"unused" : true,
|
||||
"strict" : true,
|
||||
"maxparams" : 3,
|
||||
"maxdepth" : 3,
|
||||
"maxstatements": 16,
|
||||
"maxlen" : 80,
|
||||
"shadow" : false,
|
||||
"browser" : true,
|
||||
"jquery" : true,
|
||||
"globals" : {
|
||||
}
|
||||
}
|
||||
15
.travis.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
dist: trusty
|
||||
language: node_js
|
||||
node_js:
|
||||
- 8
|
||||
cache:
|
||||
directories:
|
||||
- node_modules
|
||||
before_install:
|
||||
- rvm install 2.2
|
||||
- rvm use 2.2 --fuzzy
|
||||
install:
|
||||
- gem install scss_lint
|
||||
- npm install
|
||||
script:
|
||||
- npm run lint --silent
|
||||
@@ -4,6 +4,7 @@ module.exports = function (grunt) {
|
||||
|
||||
sass: {
|
||||
options: {
|
||||
implementation: require('node-sass'),
|
||||
sourceMap: false,
|
||||
outputStyle: 'compressed'
|
||||
},
|
||||
|
||||
41
README.md
@@ -2,13 +2,13 @@
|
||||
|
||||
A free Redmine theme for modern browsers.
|
||||
|
||||
 [](https://github.com/mrliptontea/PurpleMine2/releases) [](https://github.com/mrliptontea/PurpleMine2/issues) [](http://standardjs.com/)
|
||||
 [](https://travis-ci.org/mrliptontea/PurpleMine2) [](https://github.com/mrliptontea/PurpleMine2/issues) [](http://standardjs.com/)
|
||||
|
||||
---
|
||||
|
||||

|
||||

|
||||
|
||||
Compatible with Redmine 2.5+ and browsers: IE10+/Edge, latest Firefox and Google Chrome (others were not tested).
|
||||
Compatible with Redmine 2.6+ and browsers: IE10+/Edge, latest Firefox and Google Chrome (others were not tested).
|
||||
|
||||
It's written in [SCSS]. It uses [normalize.css] and benefits from some parts of [Bootstrap][bootstrap-sass] like mixins, structure, and stuff.
|
||||
|
||||
@@ -38,21 +38,17 @@ Also, [Redmine Time Tracker][redmine_time_tracker] and [Redmine People][redmine_
|
||||
|
||||
If you want to customize PurpleMine to your needs, first, make sure that you have installed [node.js](http://nodejs.org/) and `npm` is available in your terminal.
|
||||
|
||||
If haven't yet, you need to install grunt:
|
||||
|
||||
npm install grunt-cli -g
|
||||
|
||||
Then, from the directory that contains PurpleMine run:
|
||||
|
||||
npm install
|
||||
|
||||
Now all the dependencies should be ready to use. Run one more command:
|
||||
|
||||
grunt watch
|
||||
npm run watch
|
||||
|
||||
And now the grunt is watching for changes in files placed in `src/` folder. Just change what you need, and it'll run SASS preprocessor automatically.
|
||||
And now the grunt is watching for changes in files placed in `src/` folder. Just change what you need, and it'll run Sass preprocessor automatically.
|
||||
|
||||
Regrettably, optional file include is not possible in SASS, so I would recommend creating a new file, e.g. `src/sass/_custom-variables.scss` and importing it a the beginning of the `application.scss` file. That way all the variables with the `!default` flag could be overridden.
|
||||
Regrettably, optional file include is not possible in Sass, so I would recommend creating a new file, e.g. `src/sass/_custom-variables.scss` and importing it a the beginning of the `application.scss` file. That way all the variables with the `!default` flag could be overridden.
|
||||
|
||||
The path `src/sass/_custom-variables.scss` is added to `.gitignore` so it should make upgrading PurpleMine with keeping your changes rather painless, given that the only thing you changed in PurpleMine's source was adding this one line with `@import "custom-variables";`.
|
||||
|
||||
@@ -60,6 +56,31 @@ If you need to customize styles for [Redmine Backlogs][redmine_backlogs] remembe
|
||||
|
||||
## Changelog
|
||||
|
||||
v1.10.0 (2019-03-12):
|
||||
|
||||
* Fixed #86: added support for redmine_hearts plugin
|
||||
|
||||
v1.9.0 (2019-03-01):
|
||||
|
||||
* Fixed #42: override some styles from [RM+](http://rmplus.pro) plugins
|
||||
* Merged #43: fixes for Redmine 3.3.2.devel
|
||||
* Support for responsive menu and further changes for Redmine 3.3.2.devel (fixes #26)
|
||||
* Improved styles for custom flash messages in wiki content (e.g. for [WikiNG](http://www.redmine.org/plugins/wiking) plugin)
|
||||
* Introduce project tiles on projects list page (enabled by default, can be switched off by setting `$use-project-tiles` to `false`)
|
||||
* Fixed #44: adjust width of the label column on the login form
|
||||
* Merged #49: German translations
|
||||
* Fixed #50: printed content on second page onwards was missing in Firefox
|
||||
* Fixed #51: a plugin dropdown in top menu could be too narrow
|
||||
* Fixed #52: delete watcher icon in the sidebar was missing
|
||||
* Fixed #54: long checkbox lists will be scrollable
|
||||
* Fixed #62: anchors won't scroll the page
|
||||
* Fixed #69: fixed "remember me" checkbox layout on login page
|
||||
* Fixed #78: files not visible on list in wiki when there is a lot of them
|
||||
* Updated dependencies
|
||||
* Fixed #81: top watchers checkboxes were not visible on Firefox
|
||||
* Removed `checkbox` and `radio` mixins in favour of `check`
|
||||
* Fixed #83: editor tabs layout in Redmine 4.0
|
||||
|
||||
v1.8.0 (2016-11-20):
|
||||
|
||||
* Fixed #19: missing text wrapping for long text custom fields
|
||||
|
||||
3314
package-lock.json
generated
Normal file
24
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "PurpleMine2",
|
||||
"description": "A free Redmine 2.5+ theme written in SCSS",
|
||||
"description": "A free Redmine 2.6+ theme written in SCSS",
|
||||
"keywords": [
|
||||
"redmine",
|
||||
"theme",
|
||||
@@ -18,21 +18,27 @@
|
||||
},
|
||||
"homepage": "https://github.com/mrliptontea/PurpleMine2",
|
||||
"scripts": {
|
||||
"build": "grunt",
|
||||
"watch": "grunt watch",
|
||||
"lint": "standard && scss-lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"autoprefixer": "^6.5.3",
|
||||
"grunt": "^1.0.1",
|
||||
"grunt-contrib-uglify": "^2.0.0",
|
||||
"grunt-contrib-watch": "^1.0.0",
|
||||
"grunt-postcss": "^0.8.0",
|
||||
"grunt-sass": "^1.0.0"
|
||||
"autoprefixer": "^9.4.8",
|
||||
"grunt": "^1.0.3",
|
||||
"grunt-contrib-uglify": "^4.0.0",
|
||||
"grunt-contrib-watch": "^1.1.0",
|
||||
"grunt-postcss": "^0.9.0",
|
||||
"grunt-sass": "^3.0.2",
|
||||
"node-sass": "^4.11.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"standard": "^8.5.0"
|
||||
"standard": "^12.0.1"
|
||||
},
|
||||
"standard": {
|
||||
"globals": [ "$", "localStorage" ],
|
||||
"globals": [
|
||||
"$",
|
||||
"localStorage"
|
||||
],
|
||||
"ignore": [
|
||||
"/javascripts"
|
||||
]
|
||||
|
||||
@@ -1 +1 @@
|
||||
.ui-multiselect{padding:2px 0 2px 4px;text-align:left}.ui-multiselect span.ui-icon{float:right}.ui-multiselect-single .ui-multiselect-checkboxes input{position:absolute !important;top:auto !important;left:-9999px}.ui-multiselect-single .ui-multiselect-checkboxes label{padding:5px !important}.ui-multiselect-header{margin-bottom:3px;padding:3px}.ui-multiselect-header ul{font-size:.92em}.ui-multiselect-header ul li{padding:0 10px 0 0;float:left}.ui-multiselect-header a{text-decoration:none}.ui-multiselect-header a:hover{text-decoration:underline}.ui-multiselect-header span.ui-icon{float:left}.ui-multiselect-header li.ui-multiselect-close{padding-right:0;float:right;text-align:right}.ui-multiselect-menu{box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);display:none;position:absolute;padding:3px;text-align:left;z-index:10000}.ui-multiselect-checkboxes{position:relative;padding-right:2px;overflow-y:scroll}.ui-multiselect-checkboxes input[type="checkbox"]{top:0;margin:3px 0 0 -20px;float:left}.ui-multiselect-checkboxes input[type="checkbox"]:focus{outline:none}.ui-multiselect-checkboxes label{display:block;padding:3px 1px;padding-left:26px;border:1px solid transparent;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ui-multiselect-checkboxes label input{position:relative;top:1px}.ui-multiselect-checkboxes li{clear:both;font-size:.92em}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label{margin-bottom:2px;border-bottom:1px solid #ccc;font-weight:bold;text-align:center}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a{display:block;margin:1px 0;padding:3px;text-decoration:none}* html .ui-multiselect-checkboxes label{border:0 none}
|
||||
.ui-multiselect{padding:2px 0 2px 4px;text-align:left}.ui-multiselect span.ui-icon{float:right}.ui-multiselect-single .ui-multiselect-checkboxes input{position:absolute !important;top:auto !important;left:-9999px}.ui-multiselect-single .ui-multiselect-checkboxes label{padding:5px !important}.ui-multiselect-header{margin-bottom:3px;padding:3px}.ui-multiselect-header ul{font-size:.92em}.ui-multiselect-header ul li{padding:0 10px 0 0;float:left}.ui-multiselect-header a{text-decoration:none}.ui-multiselect-header a:hover{text-decoration:underline}.ui-multiselect-header span.ui-icon{float:left}.ui-multiselect-header li.ui-multiselect-close{padding-right:0;float:right;text-align:right}.ui-multiselect-menu{-webkit-box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);display:none;position:absolute;z-index:10000;padding:3px;text-align:left}.ui-multiselect-checkboxes{position:relative;padding-right:2px;overflow-y:scroll}.ui-multiselect-checkboxes input[type="checkbox"]{top:0;margin:3px 0 0 -20px;float:left}.ui-multiselect-checkboxes input[type="checkbox"]:focus{outline:none}.ui-multiselect-checkboxes label{display:block;padding:3px 1px;padding-left:26px;border:1px solid transparent;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ui-multiselect-checkboxes label input{position:relative;top:1px}.ui-multiselect-checkboxes li{clear:both;font-size:.92em}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label{margin-bottom:2px;border-bottom:1px solid #ccc;font-weight:bold;text-align:center}.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a{display:block;margin:1px 0;padding:3px;text-decoration:none}* html .ui-multiselect-checkboxes label{border:0 none}
|
||||
|
||||
@@ -1 +1 @@
|
||||
.qtip{position:absolute;top:-31000px;left:-31000px;width:auto;max-width:500px;outline:none}.ui-tooltip-content{box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);position:relative;padding:10px;border:1px solid #ccc;background-color:#fff;color:#555;font-size:.92em;text-align:left;word-wrap:break-word;overflow:hidden}.ui-tooltip-tip{border-color:#ccc;background-color:#fff}.ui-tooltip-tip{position:absolute;margin:0 auto;border:0 none;background:transparent;overflow:hidden;z-index:10}
|
||||
.qtip{position:absolute;top:-31000px;left:-31000px;width:auto;max-width:500px;outline:none}.ui-tooltip-content{-webkit-box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);box-shadow:0 3px 6px rgba(0,0,0,0.16),0 3px 6px rgba(0,0,0,0.23);position:relative;padding:10px;overflow:hidden;border:1px solid #ccc;background-color:#fff;color:#555;font-size:.92em;text-align:left;word-wrap:break-word}.ui-tooltip-tip{border-color:#ccc;background-color:#fff}.ui-tooltip-tip{position:absolute;z-index:10;margin:0 auto;overflow:hidden;border:0 none;background:transparent}
|
||||
|
||||
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 178 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 200 KiB |
|
Before Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 48 KiB |
BIN
screenshots/issues.png
Normal file
|
After Width: | Height: | Size: 170 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 150 KiB |
|
Before Width: | Height: | Size: 34 KiB |
@@ -1,4 +1,4 @@
|
||||
var PurpleMine = PurpleMine || {}
|
||||
var PurpleMine = PurpleMine || {} // eslint-disable-line no-use-before-define
|
||||
|
||||
PurpleMine.HistoryTabs = (function () {
|
||||
'use strict'
|
||||
@@ -10,10 +10,30 @@ PurpleMine.HistoryTabs = (function () {
|
||||
notes: 'Notes',
|
||||
details: 'Changes'
|
||||
},
|
||||
ro: {
|
||||
all: 'Toate',
|
||||
notes: 'Note',
|
||||
details: 'Schimbări'
|
||||
},
|
||||
fr: {
|
||||
all: 'Tout',
|
||||
notes: 'Remarques',
|
||||
details: 'Changements'
|
||||
},
|
||||
pl: {
|
||||
all: 'Wszystko',
|
||||
notes: 'Notatki',
|
||||
details: 'Zmiany'
|
||||
},
|
||||
de: {
|
||||
all: 'Alles',
|
||||
notes: 'Kommentare',
|
||||
details: 'Änderungen'
|
||||
},
|
||||
ja: {
|
||||
all: 'すべて',
|
||||
notes: '注記',
|
||||
details: '変更'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,8 +93,8 @@ PurpleMine.HistoryTabs = (function () {
|
||||
$this.addClass('selected')
|
||||
|
||||
instance.$history
|
||||
.removeClass('hide-details')
|
||||
.removeClass('hide-notes')
|
||||
.removeClass('hide-details')
|
||||
.removeClass('hide-notes')
|
||||
|
||||
if (tab === 'notes') {
|
||||
instance.$history.addClass('hide-details')
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var PurpleMine = PurpleMine || {}
|
||||
var PurpleMine = PurpleMine || {} // eslint-disable-line no-use-before-define
|
||||
|
||||
PurpleMine.MenuCollapse = (function () {
|
||||
'use strict'
|
||||
@@ -8,8 +8,20 @@ PurpleMine.MenuCollapse = (function () {
|
||||
en: {
|
||||
topMenuToggler: 'Expand/collapse top menu'
|
||||
},
|
||||
ro: {
|
||||
topMenuToggler: 'Deschide/închide meniul de sus'
|
||||
},
|
||||
fr: {
|
||||
topMenuToggler: 'Développer/réduire le menu principal'
|
||||
},
|
||||
pl: {
|
||||
topMenuToggler: 'Zwiń/rozwiń górne menu'
|
||||
},
|
||||
de: {
|
||||
topMenuToggler: 'Ein-/Ausklappen Hauptmenu'
|
||||
},
|
||||
ja: {
|
||||
topMenuToggler: 'トップメニューの展開/折りたたみ'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
var PurpleMine = PurpleMine || {}
|
||||
var PurpleMine = PurpleMine || {} // eslint-disable-line no-use-before-define
|
||||
/* global Raphael: false, revisionGraph: true */
|
||||
/* jshint camelcase: false */
|
||||
/* jshint maxstatements: false */
|
||||
/* jshint maxlen: 160 */
|
||||
|
||||
PurpleMine.RevisionGraph = function (holder, commitsHash, graphSpace) {
|
||||
'use strict'
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var PurpleMine = PurpleMine || {}
|
||||
var PurpleMine = PurpleMine || {} // eslint-disable-line no-use-before-define
|
||||
|
||||
PurpleMine.SidebarToggler = (function () {
|
||||
'use strict'
|
||||
@@ -8,8 +8,17 @@ PurpleMine.SidebarToggler = (function () {
|
||||
en: {
|
||||
toggler: 'Toggle sidebar'
|
||||
},
|
||||
ro: {
|
||||
toggler: 'Deschide/închide bara laterală'
|
||||
},
|
||||
fr: {
|
||||
toggler: 'Basculer la barre latérale'
|
||||
},
|
||||
pl: {
|
||||
toggler: 'Pokaż/ukryj panel boczny'
|
||||
},
|
||||
ja: {
|
||||
toggler: 'サイドバーの切り替え'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +44,9 @@ PurpleMine.SidebarToggler = (function () {
|
||||
|
||||
// Fix issue with context menu position
|
||||
if (this.$main.css('position') === 'relative') {
|
||||
$('#context-menu').appendTo('#wrapper3')
|
||||
$(window).load(function () {
|
||||
$('#context-menu').appendTo('#wrapper3')
|
||||
})
|
||||
}
|
||||
|
||||
handleSidebar()
|
||||
|
||||
@@ -17,6 +17,7 @@ $use-gravatars: true !default;
|
||||
$use-font-awesome: true !default;
|
||||
$use-logo: false !default;
|
||||
$use-retina-logo: false !default;
|
||||
$use-project-tiles: true !default;
|
||||
$issue-subject-large: true !default;
|
||||
$enable-sidebar-toggler: true !default;
|
||||
$wiki-page-more-vertical-space: true !default;
|
||||
@@ -105,6 +106,7 @@ $headings-anchor-color-active: $gray-light !default;
|
||||
$wiki-text: #333 !default;
|
||||
$wiki-font-size: 16px !default;
|
||||
$wiki-line-height: 1.6 !default;
|
||||
$wiki-preview-bg: #fcfcfc !default;
|
||||
|
||||
$toc-active-link: darken($link-color, 10%) !default;
|
||||
$toc-active-link-hover: darken($toc-active-link, 10%) !default;
|
||||
@@ -143,6 +145,7 @@ $component-active-border: $brand-primary !default;
|
||||
$font-size-list: .92em !default;
|
||||
|
||||
$collapsible-animation-time: .3s !default;
|
||||
$collapsible-max-height: 10000px !default;
|
||||
|
||||
|
||||
//== Tables
|
||||
@@ -202,32 +205,32 @@ $tracker-default-text: $brand-text !default;
|
||||
|
||||
$tracker-default-colors-map: (
|
||||
1: (
|
||||
background: $brand-danger,
|
||||
color: $brand-text
|
||||
background: $brand-danger,
|
||||
color: $brand-text
|
||||
),
|
||||
2: (
|
||||
background: $brand-info,
|
||||
color: $brand-text
|
||||
background: $brand-info,
|
||||
color: $brand-text
|
||||
),
|
||||
3: (
|
||||
background: $brand-success,
|
||||
color: $brand-text
|
||||
background: $brand-success,
|
||||
color: $brand-text
|
||||
),
|
||||
4: (
|
||||
background: $brand-primary,
|
||||
color: $brand-text
|
||||
background: $brand-primary,
|
||||
color: $brand-text
|
||||
),
|
||||
5: (
|
||||
background: $brand-warning,
|
||||
color: $brand-text
|
||||
background: $brand-warning,
|
||||
color: $brand-text
|
||||
),
|
||||
6: (
|
||||
background: mix($brand-success, $brand-info, 50%),
|
||||
color: $brand-text
|
||||
background: mix($brand-success, $brand-info, 50%),
|
||||
color: $brand-text
|
||||
),
|
||||
7: (
|
||||
background: mix($brand-primary, $brand-warning, 50%),
|
||||
color: $brand-text
|
||||
background: mix($brand-primary, $brand-warning, 50%),
|
||||
color: $brand-text
|
||||
)
|
||||
) !default;
|
||||
$tracker-custom-colors-map: () !default;
|
||||
@@ -271,6 +274,7 @@ $changeset-deleted-color: $brand-danger !default;
|
||||
$btn-font-weight: normal !default;
|
||||
$btn-padding-vertical: 3px !default;
|
||||
$btn-padding-horizontal: 12px !default;
|
||||
$btn-padding-horizontal-small: 8px !default;
|
||||
|
||||
$btn-link-color: $link-color !default;
|
||||
$btn-link-bg: $body-bg !default;
|
||||
@@ -310,7 +314,9 @@ $input-border: #ccc !default;
|
||||
$input-border-radius: $border-radius-small !default;
|
||||
$input-border-radius-large: $border-radius-large !default;
|
||||
|
||||
$input-border-focus: #51a7e8 !default;
|
||||
$input-border-focus: $brand-primary !default;
|
||||
$input-border-focus-alpha: .6 !default;
|
||||
$input-shadow-focus-alpha: .2 !default;
|
||||
$input-color-placeholder: #999 !default;
|
||||
|
||||
$input-padding-vertical: $btn-padding-vertical !default;
|
||||
@@ -325,6 +331,12 @@ $label-space: 10px !default;
|
||||
$legend-color: $gray-dark !default;
|
||||
$legend-border-color: #e5e5e5 !default;
|
||||
|
||||
$check-input-gutter: 20px !default;
|
||||
$check-input-margin-vertical: 3px !default;
|
||||
$check-input-margin-horizontal: 8px !default;
|
||||
|
||||
$check-list-max-height: 20 * $line-height-computed;
|
||||
$check-list-offset-top: $input-padding-vertical + 1px;
|
||||
|
||||
//== Top
|
||||
//
|
||||
@@ -343,6 +355,24 @@ $header-padding-horizontal: $padding-side !default;
|
||||
$header-title-size: $font-size-h3 !default;
|
||||
$header-title-line-height: $line-height-computed * 1.5 !default;
|
||||
|
||||
$responsive-header-height: 54px !default;
|
||||
|
||||
$flyout-menu-bg: darken($header-bg, 15%) !default;
|
||||
$flyout-menu-text: #fff !default;
|
||||
$flyout-menu-link: #fff !default;
|
||||
$flyout-menu-link-active-bg: $header-bg !default;
|
||||
$flyout-menu-link-active: #fff !default;
|
||||
$flyout-menu-header-bg: darken($header-bg, 25%) !default;
|
||||
$flyout-menu-header-border: darken($header-bg, 25%) !default;
|
||||
$flyout-menu-header-text: #fff !default;
|
||||
|
||||
$quick-search-width: 200px !default;
|
||||
$quick-search-border: darken($header-bg, 15%) !default;
|
||||
$quick-search-border-focus: lighten($header-bg, 25%) !default;
|
||||
$quick-search-box-width: 300px !default;
|
||||
$quick-search-dropdown-bg: $body-bg !default;
|
||||
$quick-search-dropdown-border: $gray-lighter !default;
|
||||
|
||||
$logo-image-width: 60px !default;
|
||||
$logo-image-height: 40px !default;
|
||||
$logo-position-horizontal: $header-padding-vertical !default;
|
||||
@@ -369,7 +399,7 @@ $pagination-padding-vertical: $btn-padding-vertical !default;
|
||||
$pagination-padding-horizontal: 10px !default;
|
||||
|
||||
$pagination-color: $link-color !default;
|
||||
$pagination-bg: #f9f9f9 !default;
|
||||
$pagination-bg: #fafafa !default;
|
||||
$pagination-border: #ddd !default;
|
||||
|
||||
$pagination-hover-color: $link-hover-color !default;
|
||||
@@ -452,7 +482,7 @@ $panel-bg: #f9f9f9 !default;
|
||||
$panel-border: #ccc !default;
|
||||
$panel-border-radius: $border-radius-base !default;
|
||||
$panel-shadow: 0 1px 2px rgba(#000, .1),
|
||||
0 3px 8px rgba(#000, .07) !default;
|
||||
0 3px 8px rgba(#000, .07) !default;
|
||||
|
||||
|
||||
//== Tooltips
|
||||
@@ -493,6 +523,7 @@ $bubble-padding-horizontal: 15px !default;
|
||||
//
|
||||
|
||||
$screen-xs: 480px !default;
|
||||
$screen-xs-min: $screen-xs !default;
|
||||
|
||||
$screen-sm: 768px !default;
|
||||
$screen-sm-min: $screen-sm !default;
|
||||
@@ -507,9 +538,25 @@ $screen-xs-max: ($screen-sm-min - 1) !default;
|
||||
$screen-sm-max: ($screen-md-min - 1) !default;
|
||||
$screen-md-max: ($screen-lg-min - 1) !default;
|
||||
|
||||
$redmine-responsive-max: 899px !default;
|
||||
$redmine-responsive-min: 900px !default;
|
||||
|
||||
$top-menu-collapse-breakpoint: $screen-lg-min !default;
|
||||
|
||||
|
||||
//== Login form
|
||||
//
|
||||
|
||||
$login-form-width: 24em !default;
|
||||
$login-form-label-width: 8em !default;
|
||||
$login-form-box-breakpoint: $screen-xs-min !default;
|
||||
$login-form-adjustments-map: (
|
||||
-2: da en en-GB ko pl tr uk,
|
||||
1: fr hr nl sr-YU sv,
|
||||
2: el eu lt pt sk sr th
|
||||
) !default;
|
||||
|
||||
|
||||
//== Content widths
|
||||
//
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
@import "components/login";
|
||||
@import "components/admin";
|
||||
@import "components/coderay";
|
||||
@import "components/rouge";
|
||||
@import "components/gantt";
|
||||
@import "components/calendar";
|
||||
@import "components/progress";
|
||||
@@ -28,10 +29,12 @@
|
||||
@import "components/elements";
|
||||
@import "components/jquery-ui";
|
||||
@import "components/icons";
|
||||
@import "components/dropdown";
|
||||
@import "components/top";
|
||||
@import "components/jstoolbar";
|
||||
@import "components/flash";
|
||||
@import "components/image-base64";
|
||||
@import "components/responsive";
|
||||
@import "components/print";
|
||||
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
li {
|
||||
list-style-type: none;
|
||||
|
||||
> a {
|
||||
> a:not(.icon-only) {
|
||||
padding-left: $sidebar-padding-horizontal + 5px + 20px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: $sidebar-padding-horizontal center;
|
||||
@@ -85,23 +85,6 @@ table.fields_permissions {
|
||||
}
|
||||
|
||||
|
||||
//== Enumerations
|
||||
//
|
||||
|
||||
.controller-enumerations.action-index {
|
||||
#content {
|
||||
> h3,
|
||||
> .list {
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
|
||||
> p {
|
||||
margin-bottom: $line-height-computed * 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Settings labels
|
||||
//
|
||||
|
||||
|
||||
@@ -32,9 +32,9 @@ button {
|
||||
&.disabled,
|
||||
&[disabled],
|
||||
fieldset[disabled] & {
|
||||
pointer-events: none; // Future-proof disabling of clicks
|
||||
box-shadow: none;
|
||||
opacity: .65;
|
||||
box-shadow: none;
|
||||
pointer-events: none; // Future-proof disabling of clicks
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,17 +85,15 @@ form[action*="repository/diff"] {
|
||||
|
||||
//== Button links
|
||||
//
|
||||
|
||||
p.buttons,
|
||||
.other-formats > span,
|
||||
#wiki_add_attachment > p {
|
||||
> a {
|
||||
display: inline-block;
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
padding: $btn-padding-vertical $btn-padding-horizontal-small;
|
||||
border: 1px solid $pagination-border;
|
||||
border-radius: $input-border-radius;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: $pagination-bg;
|
||||
text-shadow: 1px 1px 0 #fff;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
@@ -110,15 +108,15 @@ p.buttons,
|
||||
box-shadow: inset 0 3px 4px -2px rgba(#000, .1);
|
||||
}
|
||||
|
||||
@if $use-font-awesome {
|
||||
&.icon {
|
||||
padding-left: 20px + $padding-small-vertical + $input-padding-vertical;
|
||||
}
|
||||
} @else {
|
||||
&.icon,
|
||||
&.icon {
|
||||
padding-left: 20px + $btn-padding-horizontal-small;
|
||||
background-position: $btn-padding-horizontal-small 50%;
|
||||
}
|
||||
|
||||
@if $use-font-awesome == false {
|
||||
&.atom {
|
||||
padding-left: 20px + $input-padding-vertical;
|
||||
background-position: $padding-small-vertical 50%;
|
||||
padding-left: 20px + $btn-padding-horizontal-small;
|
||||
background-position: $btn-padding-horizontal-small 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -154,12 +152,31 @@ p.buttons {
|
||||
.query-columns {
|
||||
select {
|
||||
width: auto !important; // scss-lint:disable ImportantRule
|
||||
min-width: 130px;
|
||||
}
|
||||
|
||||
@at-root span#{&} {
|
||||
> span {
|
||||
display: inline-block;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
}
|
||||
|
||||
.buttons {
|
||||
vertical-align: middle;
|
||||
|
||||
br {
|
||||
display: none;
|
||||
}
|
||||
|
||||
input[type="button"] {
|
||||
display: block;
|
||||
width: 32px;
|
||||
margin-bottom: 4px;
|
||||
padding-right: 1px;
|
||||
@@ -183,8 +200,8 @@ a[data-expands],
|
||||
border-radius: $border-radius-base;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 2px 2px;
|
||||
cursor: pointer;
|
||||
vertical-align: top;
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
@include button-variant($btn-default-color, $btn-default-bg, $btn-default-border); // scss-lint:disable DeclarationOrder
|
||||
}
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
|
||||
> a {
|
||||
> a:not(.icon-only) {
|
||||
display: block;
|
||||
padding: $sidebar-padding-vertical $sidebar-padding-horizontal;
|
||||
border: 1px solid transparent;
|
||||
|
||||
98
src/sass/components/_dropdown.scss
Normal file
@@ -0,0 +1,98 @@
|
||||
.drdn {
|
||||
position: relative;
|
||||
|
||||
&.expanded {
|
||||
> .drdn-content {
|
||||
display: block;
|
||||
}
|
||||
|
||||
> .drdn-trigger {
|
||||
@if $use-font-awesome {
|
||||
&::after {
|
||||
content: $fa-var-caret-up;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-up;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&-trigger {
|
||||
@extend %form-field;
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
box-sizing: border-box;
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
|
||||
@if $use-font-awesome {
|
||||
@extend %fa-icon-after;
|
||||
|
||||
&::after {
|
||||
content: $fa-var-caret-down;
|
||||
position: absolute;
|
||||
top: ($font-size-base / 2);
|
||||
right: $input-padding-horizontal;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-down;
|
||||
background-repeat: no-repeat;
|
||||
background-position: right ($input-padding-horizontal / 2) center;
|
||||
}
|
||||
}
|
||||
|
||||
&-content {
|
||||
@include nice-shadow(2);
|
||||
display: none;
|
||||
position: absolute;
|
||||
z-index: 1002;
|
||||
top: $input-height-base + $btn-padding-vertical;
|
||||
right: 0;
|
||||
overflow: hidden;
|
||||
border-radius: $border-radius-base;
|
||||
background: $main-menu-dropdown-bg;
|
||||
}
|
||||
|
||||
&-items {
|
||||
max-height: 400px;
|
||||
overflow: auto;
|
||||
color: $gray-light;
|
||||
|
||||
&:empty {
|
||||
border: 0;
|
||||
}
|
||||
|
||||
&.selection {
|
||||
> a,
|
||||
> span {
|
||||
&::before {
|
||||
content: " ";
|
||||
display: inline-block;
|
||||
width: 1em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
@if $use-font-awesome {
|
||||
@extend %fa-icon;
|
||||
}
|
||||
}
|
||||
|
||||
> .selected::before {
|
||||
@if $use-font-awesome {
|
||||
content: $fa-var-check;
|
||||
} @else {
|
||||
content: "\2713 ";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> a,
|
||||
> span {
|
||||
display: block;
|
||||
padding: $btn-padding-vertical $btn-padding-horizontal;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,6 +17,7 @@ a.collapsible,
|
||||
}
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
top: -1px;
|
||||
@@ -27,7 +28,6 @@ a.collapsible,
|
||||
border-top: 6px solid;
|
||||
border-right: 4px solid transparent;
|
||||
border-left: 4px solid transparent;
|
||||
content: "";
|
||||
vertical-align: middle;
|
||||
|
||||
@if $collapsible-animation-time > 0 {
|
||||
@@ -46,15 +46,15 @@ a.collapsible.collapsed,
|
||||
@if $collapsible-animation-time > 0 {
|
||||
fieldset.collapsible {
|
||||
min-height: $line-height-computed;
|
||||
max-height: 2500px; // should be enough with all the possible filters
|
||||
transition: max-height $collapsible-animation-time ease-out;
|
||||
max-height: $collapsible-max-height;
|
||||
overflow: hidden;
|
||||
transition: max-height $collapsible-animation-time ease-out;
|
||||
|
||||
> div {
|
||||
display: block !important; // scss-lint:disable ImportantRule
|
||||
visibility: visible;
|
||||
transition: visibility 0s 0s, opacity $collapsible-animation-time;
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
&.collapsed {
|
||||
@@ -62,9 +62,9 @@ a.collapsible.collapsed,
|
||||
transition: max-height $collapsible-animation-time;
|
||||
|
||||
> div {
|
||||
visibility: hidden;
|
||||
transition: visibility 0s $collapsible-animation-time, opacity $collapsible-animation-time;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -83,21 +83,22 @@ a.collapsible.collapsed,
|
||||
//
|
||||
|
||||
.contextual {
|
||||
padding-left: $padding-base-vertical;
|
||||
float: right;
|
||||
white-space: nowrap;
|
||||
cursor: default;
|
||||
|
||||
input,
|
||||
select {
|
||||
font-size: .9em;
|
||||
}
|
||||
}
|
||||
|
||||
.contextual,
|
||||
.buttons {
|
||||
> .icon:not(:first-child) {
|
||||
a {
|
||||
display: inline-block;
|
||||
margin-left: $padding-small-vertical;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
> :first-child {
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,8 +120,8 @@ a.collapsible.collapsed,
|
||||
//
|
||||
|
||||
.autoscroll {
|
||||
overflow-x: auto;
|
||||
margin-bottom: $line-height-computed;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
|
||||
@@ -163,8 +164,12 @@ a.collapsible.collapsed,
|
||||
|
||||
.splitcontentleft,
|
||||
.splitcontentright {
|
||||
width: 50%;
|
||||
box-sizing: border-box;
|
||||
width: 50%;
|
||||
|
||||
> .wiki {
|
||||
margin-bottom: $line-height-computed;
|
||||
}
|
||||
}
|
||||
|
||||
.splitcontentleft {
|
||||
@@ -186,7 +191,7 @@ a.collapsible.collapsed,
|
||||
overflow: auto;
|
||||
|
||||
label {
|
||||
@include checkbox;
|
||||
@include check;
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
@@ -213,7 +218,7 @@ a.collapsible.collapsed,
|
||||
padding-left: $sidebar-padding-horizontal;
|
||||
}
|
||||
|
||||
> a {
|
||||
> a:not(.icon-only) {
|
||||
display: inline;
|
||||
padding: 0;
|
||||
background: transparent;
|
||||
@@ -240,6 +245,23 @@ a.collapsible.collapsed,
|
||||
}
|
||||
|
||||
|
||||
//== Users selection list
|
||||
//
|
||||
|
||||
#principals {
|
||||
label {
|
||||
@include check;
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.roles-selection {
|
||||
label {
|
||||
@include check-inline;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Subtitle paragraph (can be seen on activity list)
|
||||
//
|
||||
|
||||
@@ -273,8 +295,8 @@ p.subtitle {
|
||||
}
|
||||
|
||||
&.ui-sortable-handle {
|
||||
outline: 1px solid $gray-lighter;
|
||||
overflow: hidden;
|
||||
outline: 1px solid $gray-lighter;
|
||||
|
||||
&:hover {
|
||||
outline: 1px solid $gray-light;
|
||||
@@ -282,9 +304,9 @@ p.subtitle {
|
||||
}
|
||||
|
||||
&.ui-sortable-placeholder {
|
||||
visibility: visible !important; // scss-lint:disable ImportantRule
|
||||
outline: 1px dashed $highlight-border;
|
||||
background: $highlight-bg;
|
||||
visibility: visible !important; // scss-lint:disable ImportantRule
|
||||
}
|
||||
|
||||
&.ui-sortable-helper {
|
||||
@@ -302,16 +324,58 @@ a.close-icon {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
margin-top: 5px;
|
||||
overflow: hidden;
|
||||
background-image: url("../../../images/close.png");
|
||||
background-repeat: no-repeat;
|
||||
cursor: pointer;
|
||||
overflow: hidden;
|
||||
|
||||
&:hover {
|
||||
background-image: url("../../../images/close_hl.png");
|
||||
}
|
||||
}
|
||||
|
||||
// For Redmine 3.4+
|
||||
#my-page {
|
||||
.block-receiver {
|
||||
box-sizing: border-box;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
&.dragging .block-receiver {
|
||||
box-sizing: border-box;
|
||||
min-height: 20px;
|
||||
margin: $padding-side / -2;
|
||||
margin-bottom: $line-height-computed;
|
||||
padding: $padding-side / 2;
|
||||
outline: 2px dashed $gray-light;
|
||||
}
|
||||
|
||||
.mypage-box {
|
||||
> .contextual {
|
||||
transition: opacity .2s;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
&:hover > .contextual {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
#list-left {
|
||||
width: 50%;
|
||||
padding-right: ($padding-side / 2);
|
||||
float: left;
|
||||
}
|
||||
|
||||
#list-right {
|
||||
width: 50%;
|
||||
padding-left: ($padding-side / 2);
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Resetting font for SCM (repository files)
|
||||
//
|
||||
@@ -405,6 +469,33 @@ ul.projects {
|
||||
}
|
||||
|
||||
#projects-index ul.projects {
|
||||
@if $use-project-tiles {
|
||||
&.root {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-right: -($padding-side / 2);
|
||||
margin-left: -($padding-side / 2);
|
||||
|
||||
> li {
|
||||
display: block;
|
||||
box-sizing: border-box;
|
||||
flex: 0 1 auto;
|
||||
width: 100%;
|
||||
margin-right: $padding-side / 2;
|
||||
margin-left: $padding-side / 2;
|
||||
padding: $panel-body-padding;
|
||||
border: 1px solid $panel-border;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: $panel-bg;
|
||||
color: $panel-color;
|
||||
|
||||
@media screen and (min-width: $screen-sm-min) { width: calc(50% - #{$padding-side}); }
|
||||
@media screen and (min-width: $screen-md-min) { width: calc(33.333% - #{$padding-side}); }
|
||||
@media screen and (min-width: $screen-lg-min) { width: calc(25% - #{$padding-side}); }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ul.projects {
|
||||
border-left: 2px solid $gray-lighter;
|
||||
}
|
||||
@@ -561,18 +652,18 @@ div#version-summary {
|
||||
#ajax-indicator {
|
||||
@include nice-shadow(3);
|
||||
position: fixed;
|
||||
z-index: 100;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 200px;
|
||||
margin: (($line-height-computed + $padding-large-vertical * 2 + 1px * 2) / -2) ((200px + $padding-large-horizontal * 2 + 1px * 2) / -2);
|
||||
padding: $padding-large-vertical $padding-large-horizontal;
|
||||
border: 1px solid $highlight-border;
|
||||
opacity: .9;
|
||||
background-color: $highlight-bg;
|
||||
color: $highlight-text;
|
||||
font-weight: $font-weight-bold;
|
||||
text-align: center;
|
||||
opacity: .9;
|
||||
z-index: 100;
|
||||
|
||||
span {
|
||||
padding-left: 26px;
|
||||
@@ -672,8 +763,8 @@ div.table-list.boards {
|
||||
|
||||
.contextual {
|
||||
position: relative;
|
||||
margin-right: $bubble-padding-vertical;
|
||||
z-index: 1;
|
||||
margin-right: $bubble-padding-vertical;
|
||||
|
||||
@if $use-font-awesome {
|
||||
margin-top: $padding-small-vertical;
|
||||
@@ -700,6 +791,7 @@ div.table-list.boards {
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 9px;
|
||||
@@ -709,7 +801,6 @@ div.table-list.boards {
|
||||
height: 0;
|
||||
border-style: solid solid outset;
|
||||
border-color: transparent;
|
||||
content: " ";
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
padding-left: $padding-large-horizontal + 8px + 16px;
|
||||
border: 1px solid;
|
||||
border-radius: $border-radius-large;
|
||||
background-repeat: no-repeat;
|
||||
background-position: $padding-large-horizontal 50%;
|
||||
|
||||
@if $use-font-awesome {
|
||||
@extend %fa-icon;
|
||||
@@ -22,9 +24,6 @@
|
||||
float: left;
|
||||
line-height: $line-height-computed;
|
||||
}
|
||||
} @else {
|
||||
background-repeat: no-repeat;
|
||||
background-position: $padding-large-horizontal 50%;
|
||||
}
|
||||
|
||||
>:last-child {
|
||||
|
||||
@@ -8,7 +8,7 @@ form {
|
||||
}
|
||||
|
||||
.contextual > & {
|
||||
display: inline;
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,10 +16,20 @@ button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
box-sizing: border-box;
|
||||
font-family: inherit;
|
||||
font-size: $font-size-base;
|
||||
line-height: $line-height-base;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
%form-field {
|
||||
height: $input-height-base;
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
border: 1px solid $input-border;
|
||||
border-radius: $input-border-radius;
|
||||
background-color: $input-bg;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
color: $input-color;
|
||||
}
|
||||
|
||||
select,
|
||||
@@ -38,30 +48,24 @@ input[type="search"],
|
||||
input[type="email"],
|
||||
input[type="text"],
|
||||
input[type="password"] {
|
||||
@extend %form-field;
|
||||
@include form-control-focus;
|
||||
@include placeholder;
|
||||
height: $input-height-base;
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
transition: border-color ease-in-out .1s, box-shadow ease-in-out .1s;
|
||||
border: 1px solid $input-border;
|
||||
border-radius: $input-border-radius;
|
||||
background-color: $input-bg;
|
||||
color: $input-color;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
|
||||
&[disabled],
|
||||
&[readonly],
|
||||
fieldset[disabled] & {
|
||||
border-color: $input-border;
|
||||
opacity: 1;
|
||||
background-color: $input-bg-disabled;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
textarea {
|
||||
resize: vertical;
|
||||
height: auto;
|
||||
resize: vertical;
|
||||
|
||||
&.text_cf {
|
||||
width: 100%;
|
||||
@@ -358,7 +362,7 @@ label[for=issue_description] + a {
|
||||
//
|
||||
|
||||
label[for=closed] {
|
||||
@include checkbox;
|
||||
@include check;
|
||||
display: block;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
}
|
||||
@@ -425,7 +429,9 @@ label[for=closed] {
|
||||
//== Attachments
|
||||
//
|
||||
|
||||
#attachments_fields {
|
||||
#attachments_fields,
|
||||
#existing-attachments,
|
||||
.attachments_fields {
|
||||
> span {
|
||||
display: block;
|
||||
margin-bottom: $line-height-computed / 4;
|
||||
@@ -538,67 +544,42 @@ label[for=closed] {
|
||||
}
|
||||
|
||||
|
||||
#watchers_form {
|
||||
overflow: hidden;
|
||||
|
||||
.search_for_watchers {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#watchers_inputs {
|
||||
display: block;
|
||||
max-width: 64em;
|
||||
margin-top: $input-padding-vertical + 1px;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
columns: 18em 3;
|
||||
overflow: auto;
|
||||
}
|
||||
#watchers_inputs {
|
||||
display: block;
|
||||
max-width: 64em;
|
||||
max-height: $check-list-max-height;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
padding-top: $check-list-offset-top;
|
||||
overflow: auto;
|
||||
columns: 18em 3;
|
||||
|
||||
label.floating {
|
||||
@include checkbox;
|
||||
display: block;
|
||||
width: auto;
|
||||
margin: 0;
|
||||
float: none;
|
||||
|
||||
input[type="checkbox"] {
|
||||
top: -1px;
|
||||
}
|
||||
@include check-list;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Custom logic (boolean) field displayed as radio buttons
|
||||
//== List of custom field values
|
||||
//
|
||||
|
||||
.check_box_group {
|
||||
display: block;
|
||||
width: 90%;
|
||||
max-height: $check-list-max-height;
|
||||
padding-top: $check-list-offset-top;
|
||||
overflow-y: auto;
|
||||
|
||||
label {
|
||||
display: block;
|
||||
width: auto;
|
||||
margin-bottom: 0;
|
||||
margin-left: 0;
|
||||
float: none;
|
||||
font-weight: normal;
|
||||
text-align: left;
|
||||
@include check-list;
|
||||
}
|
||||
|
||||
// Boolean field displayed as inline radio buttons
|
||||
&.bool_cf {
|
||||
label {
|
||||
@extend %clearfix;
|
||||
display: inline-block;
|
||||
margin-right: 10px;
|
||||
padding-left: 20px;
|
||||
user-select: none;
|
||||
overflow: initial;
|
||||
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
top: 0;
|
||||
margin-left: -20px;
|
||||
float: left;
|
||||
}
|
||||
label {
|
||||
display: inline-block;
|
||||
margin-right: $check-input-margin-horizontal;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -649,6 +630,7 @@ fieldset#filters {
|
||||
|
||||
div.add-filter {
|
||||
padding-top: $table-condensed-cell-padding;
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
position: absolute;
|
||||
top: 0;
|
||||
height: 16px;
|
||||
overflow: hidden;
|
||||
border: 1px solid $gray-lighter;
|
||||
border-left-width: 0;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
|
||||
&.nwday {
|
||||
background-color: $gray-lightest;
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
// --------------------------------------------------
|
||||
|
||||
img.gravatar {
|
||||
overflow: hidden;
|
||||
border-radius: $border-radius-large;
|
||||
line-height: 1;
|
||||
overflow: hidden;
|
||||
vertical-align: middle;
|
||||
|
||||
h2 &,
|
||||
|
||||
@@ -93,6 +93,15 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
font-size: 0;
|
||||
white-space: nowrap;
|
||||
|
||||
@at-root a#{&} {
|
||||
// scss-lint:disable ImportantRule
|
||||
display: inline;
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
padding-left: 0 !important;
|
||||
font-size: 0 !important;
|
||||
}
|
||||
|
||||
&::before {
|
||||
font-size: $font-size-base;
|
||||
}
|
||||
@@ -105,6 +114,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-del::before { content: $fa-var-trash; }
|
||||
.icon-move::before { content: $fa-var-arrows; }
|
||||
.icon-save::before { content: $fa-var-save; }
|
||||
.icon-download::before { content: $fa-var-download; }
|
||||
.icon-cancel::before { content: $fa-var-ban; }
|
||||
.icon-multiple::before { content: $fa-var-plus-circle; }
|
||||
.icon-folder::before { content: $fa-var-folder; }
|
||||
@@ -115,6 +125,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-help::before { content: $fa-var-info-circle; }
|
||||
.icon-attachment::before { content: $fa-var-paperclip; }
|
||||
.icon-history::before { content: $fa-var-history; }
|
||||
.icon-time-entry::before { content: $fa-var-clock-o; }
|
||||
.icon-time::before { content: $fa-var-clock-o; }
|
||||
.icon-time-add::before { content: $fa-var-clock-o; }
|
||||
.icon-stats::before { content: $fa-var-line-chart; }
|
||||
@@ -122,12 +133,16 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-error::before { content: $fa-var-exclamation; }
|
||||
.icon-fav::before { content: $fa-var-star; }
|
||||
.icon-fav-off::before { content: $fa-var-star-o; }
|
||||
.icon-heart::before { content: $fa-var-heart; }
|
||||
.icon-heart-off::before { content: $fa-var-heart-o; }
|
||||
.icon-reload::before { content: $fa-var-refresh; }
|
||||
.icon-locked::before { content: $fa-var-lock; }
|
||||
.icon-lock::before { content: $fa-var-lock; }
|
||||
.icon-unlock::before { content: $fa-var-unlock; }
|
||||
.icon-checked::before { content: $fa-var-check; }
|
||||
.icon-details::before { content: $fa-var-search-plus; }
|
||||
.icon-report::before { content: $fa-var-pie-chart; }
|
||||
.icon-comments::before { content: $fa-var-comment; }
|
||||
.icon-comment::before { content: $fa-var-comment; }
|
||||
.icon-summary::before { content: $fa-var-file-text; }
|
||||
.icon-server-authentication::before { content: $fa-var-key; }
|
||||
@@ -145,6 +160,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-magnifier::before { content: $fa-var-search; }
|
||||
.icon-email::before { content: $fa-var-envelope; }
|
||||
.icon-email-disabled::before { content: $fa-var-envelope-o; }
|
||||
.icon-email-add::before { content: $fa-var-envelope; }
|
||||
.icon-move-up::before { content: $fa-var-angle-up; }
|
||||
.icon-move-top::before { content: $fa-var-angle-double-up; }
|
||||
.icon-move-down::before { content: $fa-var-angle-down; }
|
||||
@@ -153,6 +169,30 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-not-ok::before { content: $fa-var-times; }
|
||||
.icon-link-break::before { content: $fa-var-chain-broken; }
|
||||
.icon-list::before { content: $fa-var-list-ul; }
|
||||
.icon-sticky::before { content: $fa-var-thumb-tack; }
|
||||
.icon-arrow-right::before { content: $fa-var-arrow-right; }
|
||||
.icon-close::before { content: $fa-var-times-circle; }
|
||||
.icon-close:hover::before { content: $fa-var-times-circle-o; }
|
||||
.icon-settings::before { content: $fa-var-cog; }
|
||||
.icon-group::before { content: $fa-var-users; }
|
||||
.icon-groupnonmember::before { content: $fa-var-users; }
|
||||
.icon-groupanonymous::before { content: $fa-var-users; }
|
||||
.icon-roles::before { content: $fa-var-eye; }
|
||||
.icon-issue-edit::before { content: $fa-var-edit; }
|
||||
.icon-workflows::before { content: $fa-var-sitemap; }
|
||||
.icon-custom-fields::before { content: $fa-var-edit; }
|
||||
.icon-plugins::before { content: $fa-var-puzzle-piece; }
|
||||
.icon-news::before { content: $fa-var-newspaper-o; }
|
||||
.icon-issue-closed::before { content: $fa-var-ticket; }
|
||||
.icon-issue-note::before { content: $fa-var-comment; }
|
||||
.icon-changeset::before { content: $fa-var-upload; }
|
||||
.icon-message::before { content: $fa-var-comment; }
|
||||
.icon-reply::before { content: $fa-var-comment-o; }
|
||||
.icon-wiki-page::before { content: $fa-var-file-text-o; }
|
||||
.icon-document::before { content: $fa-var-file-text; }
|
||||
.icon-project::before { content: $fa-var-cube; }
|
||||
.icon-add-bullet::before { content: $fa-var-plus-circle; }
|
||||
.icon-shared::before { content: $fa-var-link; }
|
||||
} @else {
|
||||
.icon {
|
||||
padding-top: 2px;
|
||||
@@ -189,6 +229,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-del { background-image: url("../../../images/delete.png"); }
|
||||
.icon-move { background-image: url("../../../images/move.png"); }
|
||||
.icon-save { background-image: url("../../../images/save.png"); }
|
||||
.icon-download { background-image: url("../../../images/download.png"); }
|
||||
.icon-cancel { background-image: url("../../../images/cancel.png"); }
|
||||
.icon-multiple { background-image: url("../../../images/table_multiple.png"); }
|
||||
.icon-folder { background-image: url("../../../images/folder.png"); }
|
||||
@@ -199,6 +240,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-help { background-image: url("../../../images/help.png"); }
|
||||
.icon-attachment { background-image: url("../../../images/attachment.png"); }
|
||||
.icon-history { background-image: url("../../../images/history.png"); }
|
||||
.icon-time-entry { background-image: url("../../../images/time.png"); }
|
||||
.icon-time { background-image: url("../../../images/time.png"); }
|
||||
.icon-time-add { background-image: url("../../../images/time_add.png"); }
|
||||
.icon-stats { background-image: url("../../../images/stats.png"); }
|
||||
@@ -207,11 +249,13 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-fav { background-image: url("../../../images/fav.png"); }
|
||||
.icon-fav-off { background-image: url("../../../images/fav_off.png"); }
|
||||
.icon-reload { background-image: url("../../../images/reload.png"); }
|
||||
.icon-locked { background-image: url("../../../images/locked.png"); }
|
||||
.icon-lock { background-image: url("../../../images/locked.png"); }
|
||||
.icon-unlock { background-image: url("../../../images/unlock.png"); }
|
||||
.icon-checked { background-image: url("../../../images/true.png"); }
|
||||
.icon-details { background-image: url("../../../images/zoom_in.png"); }
|
||||
.icon-report { background-image: url("../../../images/report.png"); }
|
||||
.icon-comments { background-image: url("../../../images/comment.png"); }
|
||||
.icon-comment { background-image: url("../../../images/comment.png"); }
|
||||
.icon-summary { background-image: url("../../../images/lightning.png"); }
|
||||
.icon-server-authentication { background-image: url("../../../images/server_key.png"); }
|
||||
@@ -223,6 +267,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-magnifier { background-image: url("../../../images/magnifier.png"); }
|
||||
.icon-email { background-image: url("../../../images/email.png"); }
|
||||
.icon-email-disabled { background-image: url("../../../images/email_disabled.png"); }
|
||||
.icon-email-add { background-image: url("../../../images/email_add.png"); }
|
||||
.icon-move-up { background-image: url("../../../images/1uparrow.png"); }
|
||||
.icon-move-top { background-image: url("../../../images/2uparrow.png"); }
|
||||
.icon-move-down { background-image: url("../../../images/1downarrow.png"); }
|
||||
@@ -231,6 +276,30 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
.icon-not-ok { background-image: url("../../../images/false.png"); }
|
||||
.icon-link-break { background-image: url("../../../images/link_break.png"); }
|
||||
.icon-list { background-image: url("../../../images/text_list_bullets.png"); }
|
||||
.icon-sticky { background-image: url("../../../images/bullet_go.png"); }
|
||||
.icon-arrow-right { background-image: url("../../../images/bullet_go.png"); }
|
||||
.icon-close { background-image: url("../../../images/close.png"); }
|
||||
.icon-close:hover { background-image: url("../../../images/close_hl.png"); }
|
||||
.icon-settings { background-image: url("../../../images/changeset.png"); }
|
||||
.icon-group { background-image: url("../../../images/group.png"); }
|
||||
.icon-groupnonmember { background-image: url("../../../images/group.png"); }
|
||||
.icon-groupanonymous { background-image: url("../../../images/group.png"); }
|
||||
.icon-roles { background-image: url("../../../images/database_key.png"); }
|
||||
.icon-issue-edit { background-image: url("../../../images/ticket_edit.png"); }
|
||||
.icon-workflows { background-image: url("../../../images/ticket_go.png"); }
|
||||
.icon-custom-fields { background-image: url("../../../images/textfield.png"); }
|
||||
.icon-plugins { background-image: url("../../../images/plugin.png"); }
|
||||
.icon-news { background-image: url("../../../images/news.png"); }
|
||||
.icon-issue-closed { background-image: url("../../../images/ticket_checked.png"); }
|
||||
.icon-issue-note { background-image: url("../../../images/ticket_note.png"); }
|
||||
.icon-changeset { background-image: url("../../../images/changeset.png"); }
|
||||
.icon-message { background-image: url("../../../images/message.png"); }
|
||||
.icon-reply { background-image: url("../../../images/comments.png"); }
|
||||
.icon-wiki-page { background-image: url("../../../images/wiki_edit.png"); }
|
||||
.icon-document { background-image: url("../../../images/document.png"); }
|
||||
.icon-project { background-image: url("../../../images/projects.png"); }
|
||||
.icon-add-bullet { background-image: url("../../../images/bullet_add.png"); }
|
||||
.icon-shared { background-image: url("../../../images/link.png"); }
|
||||
}
|
||||
|
||||
|
||||
@@ -281,8 +350,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
|
||||
.icon-file {
|
||||
&::before {
|
||||
color: $gray;
|
||||
content: $fa-var-file-o;
|
||||
color: $gray;
|
||||
}
|
||||
|
||||
&.text-plain::before { content: $fa-var-file-text-o; }
|
||||
@@ -415,6 +484,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
&::before { content: $fa-var-ticket; }
|
||||
}
|
||||
|
||||
.issue-statuses,
|
||||
.issue_statuses {
|
||||
@extend %admin-icon;
|
||||
|
||||
@@ -427,6 +497,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
&::before { content: $fa-var-sitemap; }
|
||||
}
|
||||
|
||||
.custom-fields,
|
||||
.custom_fields {
|
||||
@extend %admin-icon;
|
||||
|
||||
@@ -457,6 +528,7 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
&::before { content: $fa-var-info-circle; }
|
||||
}
|
||||
|
||||
.ldap-authentication,
|
||||
.server_authentication {
|
||||
@extend %admin-icon;
|
||||
|
||||
@@ -493,16 +565,16 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
cursor: move;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-arrows-v;
|
||||
width: 16px;
|
||||
margin: 0;
|
||||
content: $fa-var-arrows-v;
|
||||
}
|
||||
|
||||
&.ajax-loading {
|
||||
&::before {
|
||||
color: $gray;
|
||||
animation: spin 1s linear infinite;
|
||||
content: $fa-var-refresh;
|
||||
animation: spin 1s linear infinite;
|
||||
color: $gray;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -512,8 +584,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background: url("../../../images/reorder.png") no-repeat 0 50%;
|
||||
cursor: move;
|
||||
vertical-align: middle;
|
||||
cursor: move;
|
||||
|
||||
&.ajax-loading {
|
||||
background-image: url("../../../images/loading.gif");
|
||||
@@ -638,8 +710,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-plus;
|
||||
color: $icon-success-color;
|
||||
}
|
||||
|
||||
&:hover::before,
|
||||
@@ -693,12 +765,12 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
}
|
||||
|
||||
.my-project {
|
||||
@extend %fa-icon-after;
|
||||
@extend %fa-icon;
|
||||
|
||||
&::after {
|
||||
&::before {
|
||||
content: $fa-var-star;
|
||||
color: #f6ab02;
|
||||
font-size: $font-size-small;
|
||||
content: $fa-var-star;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -739,15 +811,15 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
|
||||
a.remove-upload {
|
||||
@extend %fa-icon;
|
||||
opacity: .75;
|
||||
color: $icon-danger-color;
|
||||
text-align: center;
|
||||
opacity: .75;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
opacity: 1;
|
||||
color: $icon-danger-hover-color;
|
||||
text-decoration: none;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
&::before {
|
||||
@@ -861,10 +933,10 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-external-link;
|
||||
display: inline;
|
||||
margin-right: 3px;
|
||||
font-size: 10px;
|
||||
content: $fa-var-external-link;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -886,9 +958,9 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-plus;
|
||||
margin-right: .3em;
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-plus;
|
||||
}
|
||||
|
||||
&:hover::before,
|
||||
@@ -953,13 +1025,13 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
background: transparent;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-circle;
|
||||
position: relative;
|
||||
top: -.12em;
|
||||
font-size: .7143em;
|
||||
content: $fa-var-circle;
|
||||
}
|
||||
|
||||
&.folder::before { top: 0; font-size: 1em; content: $fa-var-folder; }
|
||||
&.folder::before { content: $fa-var-folder; top: 0; font-size: 1em; }
|
||||
&.folder.change-A::before { content: $fa-var-folder-open; }
|
||||
&.folder.change-M::before { content: $fa-var-folder-open; }
|
||||
&.change-A::before { content: $fa-var-plus-circle; }
|
||||
@@ -993,8 +1065,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
}
|
||||
|
||||
.my-project {
|
||||
padding-right: 18px;
|
||||
background: url("../../../images/fav.png") no-repeat right center;
|
||||
padding-left: 18px;
|
||||
background: url("../../../images/fav.png") no-repeat left center;
|
||||
}
|
||||
|
||||
.sort {
|
||||
@@ -1094,8 +1166,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
color: $icon-danger-color;
|
||||
content: $fa-var-trash;
|
||||
color: $icon-danger-color;
|
||||
}
|
||||
|
||||
&:hover::before,
|
||||
@@ -1116,8 +1188,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-pencil;
|
||||
color: $icon-success-color;
|
||||
}
|
||||
|
||||
&:hover::before,
|
||||
@@ -1129,8 +1201,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
padding-left: 0;
|
||||
|
||||
&::before {
|
||||
margin: 0;
|
||||
content: "";
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1142,33 +1214,35 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
|
||||
// Issue journal contextual icons
|
||||
|
||||
.journal .contextual {
|
||||
a {
|
||||
.journal .wiki .contextual {
|
||||
> a {
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-comment;
|
||||
&:not([class*="icon"]) {
|
||||
&::before {
|
||||
content: $fa-var-comment;
|
||||
}
|
||||
|
||||
&:nth-child(2) {
|
||||
@include link-variant($icon-success-color, $icon-success-hover-color);
|
||||
|
||||
&::before {
|
||||
content: $fa-var-pencil;
|
||||
}
|
||||
}
|
||||
|
||||
&:nth-child(3) {
|
||||
@include link-variant($icon-danger-color, $icon-danger-hover-color);
|
||||
|
||||
&::before {
|
||||
content: $fa-var-trash;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
display: none;
|
||||
}
|
||||
|
||||
&:nth-child(2) {
|
||||
@include link-variant($icon-success-color, $icon-success-hover-color);
|
||||
|
||||
&::before {
|
||||
content: $fa-var-pencil;
|
||||
}
|
||||
}
|
||||
|
||||
&:nth-child(3) {
|
||||
@include link-variant($icon-danger-color, $icon-danger-hover-color);
|
||||
|
||||
&::before {
|
||||
content: $fa-var-trash;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1180,8 +1254,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-plus-square;
|
||||
color: $icon-success-color;
|
||||
}
|
||||
|
||||
&:hover::before,
|
||||
@@ -1201,10 +1275,10 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %image-calendar;
|
||||
position: relative;
|
||||
top: -1px;
|
||||
box-sizing: border-box;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
padding-left: 14px;
|
||||
box-sizing: border-box;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
@@ -1215,9 +1289,9 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-check;
|
||||
margin-right: 0;
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-check;
|
||||
}
|
||||
|
||||
img {
|
||||
@@ -1232,13 +1306,13 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&[href*="edit"]::before {
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-pencil;
|
||||
color: $icon-success-color;
|
||||
}
|
||||
|
||||
&[data-method="delete"]::before {
|
||||
color: $icon-danger-color;
|
||||
content: $fa-var-trash;
|
||||
color: $icon-danger-color;
|
||||
}
|
||||
|
||||
img {
|
||||
@@ -1253,8 +1327,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
@extend %fa-icon;
|
||||
|
||||
&[data-method="delete"]::before {
|
||||
color: $icon-danger-color;
|
||||
content: $fa-var-trash;
|
||||
color: $icon-danger-color;
|
||||
}
|
||||
|
||||
img {
|
||||
@@ -1270,8 +1344,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
font-size: $font-size-base;
|
||||
|
||||
&::before {
|
||||
color: $icon-danger-color;
|
||||
content: $fa-var-trash;
|
||||
color: $icon-danger-color;
|
||||
}
|
||||
|
||||
img {
|
||||
@@ -1284,8 +1358,8 @@ $icon-danger-hover-color: darken($brand-danger, 10%);
|
||||
font-size: $font-size-base;
|
||||
|
||||
&::before {
|
||||
color: $icon-success-color;
|
||||
content: $fa-var-plus-square;
|
||||
color: $icon-success-color;
|
||||
}
|
||||
|
||||
img {
|
||||
|
||||
@@ -13,6 +13,29 @@
|
||||
word-wrap: break-word;
|
||||
|
||||
@if $use-gravatars {
|
||||
// For Redmine 3.4+
|
||||
.gravatar-with-child {
|
||||
position: relative;
|
||||
|
||||
> img.gravatar {
|
||||
width: $issue-gravatar-size;
|
||||
height: $issue-gravatar-size;
|
||||
margin-right: 10px;
|
||||
margin-bottom: $line-height-computed / 2;
|
||||
float: left;
|
||||
|
||||
&:nth-child(2) {
|
||||
position: absolute;
|
||||
top: $issue-gravatar-size * .6;
|
||||
left: $issue-gravatar-size * .6;
|
||||
width: $issue-gravatar-size * .5;
|
||||
height: $issue-gravatar-size * .5;
|
||||
border: 2px solid rgba(255, 255, 255, .9);
|
||||
border-radius: 20%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> img.gravatar {
|
||||
width: $issue-gravatar-size;
|
||||
height: $issue-gravatar-size;
|
||||
@@ -29,7 +52,7 @@
|
||||
|
||||
> .subject,
|
||||
> .author {
|
||||
padding-left: $issue-gravatar-size + 10px;
|
||||
padding-left: $issue-gravatar-size * 1.1 + 10px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -196,8 +219,9 @@
|
||||
}
|
||||
|
||||
div.attachments {
|
||||
margin: $issue-padding (-$issue-padding) (-$issue-padding);
|
||||
margin: -$issue-padding;
|
||||
padding: $issue-padding;
|
||||
border-top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,6 +233,11 @@ div.attachments {
|
||||
padding: $line-height-computed 0;
|
||||
border-top: 1px solid $issue-border;
|
||||
|
||||
@at-root .collapsible #{&} {
|
||||
padding-top: 0;
|
||||
border-top: 0;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 10px 0 0;
|
||||
}
|
||||
@@ -354,15 +383,15 @@ div.thumbnails {
|
||||
}
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
top: -($line-height-computed + 2px);
|
||||
left: 22px;
|
||||
width: 4px;
|
||||
height: $line-height-computed;
|
||||
background-color: darken($body-bg, 5%);
|
||||
content: "";
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
.tabs + &::before {
|
||||
@@ -384,7 +413,32 @@ div.thumbnails {
|
||||
}
|
||||
}
|
||||
|
||||
h4 {
|
||||
// For Redmine 4.0+
|
||||
> div > .contextual {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
margin: 0;
|
||||
padding: $bubble-padding-vertical $bubble-padding-horizontal;
|
||||
font-size: $font-size-list;
|
||||
|
||||
> .journal-actions > a {
|
||||
opacity: .5;
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
> a.journal-link {
|
||||
color: $gray;
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> div > h4 {
|
||||
margin: 0;
|
||||
padding: $bubble-padding-vertical $bubble-padding-horizontal;
|
||||
border-radius: $panel-border-radius $panel-border-radius 0 0;
|
||||
@@ -406,11 +460,12 @@ div.thumbnails {
|
||||
}
|
||||
|
||||
@if $use-gravatars {
|
||||
h4 {
|
||||
> div > h4 {
|
||||
position: relative;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 9px;
|
||||
@@ -420,7 +475,6 @@ div.thumbnails {
|
||||
height: 0;
|
||||
border-style: solid solid outset;
|
||||
border-color: transparent;
|
||||
content: " ";
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
@@ -448,9 +502,9 @@ div.thumbnails {
|
||||
margin: 0;
|
||||
padding: $bubble-padding-vertical 0;
|
||||
padding-left: $bubble-padding-horizontal * 3;
|
||||
list-style: none;
|
||||
border-top: 1px solid mix($body-bg, $issue-border, 50%);
|
||||
font-size: $font-size-list;
|
||||
list-style: none;
|
||||
|
||||
li {
|
||||
position: relative;
|
||||
@@ -461,6 +515,7 @@ div.thumbnails {
|
||||
}
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
@@ -469,7 +524,6 @@ div.thumbnails {
|
||||
height: 6px;
|
||||
border-radius: 50%;
|
||||
background-color: $gray-light;
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -579,11 +633,11 @@ span.private {
|
||||
|
||||
div.changeset {
|
||||
margin-top: $line-height-computed / 2 + 2px * 2;
|
||||
overflow: hidden;
|
||||
border: 1px solid $issue-border;
|
||||
border-radius: $panel-border-radius;
|
||||
background-color: $issue-bg;
|
||||
font-size: $font-size-list;
|
||||
overflow: hidden;
|
||||
|
||||
&:first-of-type {
|
||||
margin-top: 0;
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
}
|
||||
|
||||
.ui-icon {
|
||||
background-image: url("/stylesheets/jquery/images/ui-icons_ffffff_256x240.png");
|
||||
background-image: url("../../../stylesheets/jquery/images/ui-icons_ffffff_256x240.png");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -70,9 +70,9 @@
|
||||
.ui-widget-header .ui-state-default {
|
||||
border: 1px solid $component-border;
|
||||
background: $component-bg;
|
||||
box-shadow: none;
|
||||
color: $component-color;
|
||||
font-weight: normal;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.ui-state-default a,
|
||||
@@ -115,7 +115,7 @@
|
||||
font-weight: normal;
|
||||
|
||||
.ui-icon {
|
||||
background-image: url("/stylesheets/jquery/images/ui-icons_ffffff_256x240.png");
|
||||
background-image: url("../../../stylesheets/jquery/images/ui-icons_ffffff_256x240.png");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,8 +149,8 @@
|
||||
//
|
||||
|
||||
.modal {
|
||||
background: $body-bg;
|
||||
z-index: 50;
|
||||
background: $body-bg;
|
||||
|
||||
h3.title {
|
||||
display: none;
|
||||
@@ -167,10 +167,10 @@
|
||||
@include nice-shadow(5);
|
||||
padding: 3px;
|
||||
border: 0 none;
|
||||
}
|
||||
|
||||
.ui-dialog-content {
|
||||
padding: 1em;
|
||||
.ui-dialog-content {
|
||||
padding: 1em;
|
||||
}
|
||||
}
|
||||
|
||||
.ui-dialog-titlebar-close {
|
||||
@@ -192,8 +192,8 @@
|
||||
|
||||
img.ui-datepicker-trigger {
|
||||
margin-left: 4px;
|
||||
cursor: pointer;
|
||||
vertical-align: middle;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.ui-datepicker {
|
||||
|
||||
@@ -2,6 +2,63 @@
|
||||
// WYSIWYG icons
|
||||
// --------------------------------------------------
|
||||
|
||||
// For Redmine 4.0+
|
||||
#content {
|
||||
div.jstTabs.tabs {
|
||||
height: auto;
|
||||
@if $flexbox-layout {
|
||||
@media screen and (max-width: $redmine-responsive-max) {
|
||||
clear: both;
|
||||
}
|
||||
}
|
||||
|
||||
ul {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
|
||||
li {
|
||||
height: auto;
|
||||
margin: 0;
|
||||
|
||||
&::before {
|
||||
content: none;
|
||||
}
|
||||
|
||||
&:not(.tab-elements) {
|
||||
@if $flexbox-layout {
|
||||
align-self: flex-end;
|
||||
}
|
||||
|
||||
.selected {
|
||||
border-color: $input-border $input-border $tab-active-bg;
|
||||
}
|
||||
}
|
||||
|
||||
&.tab-elements {
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.jstElements {
|
||||
height: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.jstEditor {
|
||||
.wiki-preview {
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
border: 1px solid $input-border;
|
||||
border-radius: $input-border-radius;
|
||||
background-color: $wiki-preview-bg;
|
||||
|
||||
p {
|
||||
padding: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.jstElements {
|
||||
@extend %clearfix;
|
||||
|
||||
@@ -95,13 +152,13 @@
|
||||
.jstb_h2 {
|
||||
@extend %jstb-icon;
|
||||
|
||||
&::before { font-size: .7857em; content: $fa-var-header; }
|
||||
&::before { content: $fa-var-header; font-size: .7857em; }
|
||||
}
|
||||
|
||||
.jstb_h3 {
|
||||
@extend %jstb-icon;
|
||||
|
||||
&::before { font-size: .6429em; content: $fa-var-header; }
|
||||
&::before { content: $fa-var-header; font-size: .6429em; }
|
||||
}
|
||||
|
||||
.jstb_ul {
|
||||
|
||||
@@ -45,6 +45,12 @@ table.list {
|
||||
text-align: center;
|
||||
vertical-align: top;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&.icon {
|
||||
padding-left: $table-cell-padding + 20px;
|
||||
}
|
||||
}
|
||||
|
||||
&.checkbox {
|
||||
width: 15px;
|
||||
padding: $table-cell-padding 0 0;
|
||||
@@ -67,12 +73,15 @@ table.list {
|
||||
}
|
||||
|
||||
&.assigned_to,
|
||||
&.attachments,
|
||||
&.author,
|
||||
&.activity,
|
||||
&.category,
|
||||
&.comments,
|
||||
&.description,
|
||||
&.fixed_version,
|
||||
&.last_notes,
|
||||
&.last_updated_by,
|
||||
&.name,
|
||||
&.priority,
|
||||
&.relations,
|
||||
@@ -97,6 +106,10 @@ table.list {
|
||||
&.reorder {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
&.attachments a {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
td,
|
||||
@@ -199,8 +212,9 @@ tr.issue {
|
||||
}
|
||||
|
||||
.issues {
|
||||
.description {
|
||||
padding: 0;
|
||||
.description,
|
||||
.last_notes {
|
||||
padding: $table-cell-padding;
|
||||
text-align: left;
|
||||
|
||||
@media screen and (min-width: $screen-sm-min) {
|
||||
@@ -283,6 +297,20 @@ tr.entry {
|
||||
}
|
||||
}
|
||||
|
||||
@if $table-list-color-odd-rows {
|
||||
table.list:not(.odd-even) tbody tr:nth-child(odd),
|
||||
.odd {
|
||||
background-color: $table-bg-accent;
|
||||
}
|
||||
}
|
||||
|
||||
@if $table-list-color-even-rows {
|
||||
table.list:not(.odd-even) tbody tr:nth-child(even),
|
||||
.even {
|
||||
background-color: $table-bg-accent;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Priorities
|
||||
//
|
||||
@@ -328,6 +356,7 @@ tr.entry {
|
||||
text-decoration: none;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
right: 5px;
|
||||
@@ -337,7 +366,6 @@ tr.entry {
|
||||
transform: rotate(-4deg);
|
||||
transition: border-color .1s;
|
||||
border-top: 2px solid rgba($tracker-default-text, .95);
|
||||
content: "";
|
||||
}
|
||||
|
||||
&:hover::after {
|
||||
@@ -351,8 +379,8 @@ tr.entry {
|
||||
padding: $tracker-list-padding;
|
||||
|
||||
&::before {
|
||||
color: mix($tracker-default-text, $tracker-default-bg, 50%);
|
||||
content: "#";
|
||||
color: mix($tracker-default-text, $tracker-default-bg, 50%);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -375,18 +403,6 @@ tr.entry {
|
||||
}
|
||||
}
|
||||
|
||||
@if $table-list-color-odd-rows {
|
||||
.odd {
|
||||
background-color: $table-bg-accent;
|
||||
}
|
||||
}
|
||||
|
||||
@if $table-list-color-even-rows {
|
||||
.even {
|
||||
background-color: $table-bg-accent;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== List groups
|
||||
//
|
||||
@@ -603,6 +619,18 @@ table.files {
|
||||
}
|
||||
}
|
||||
|
||||
table.list.enumerations {
|
||||
table-layout: fixed;
|
||||
|
||||
+ h3 {
|
||||
margin-top: $line-height-computed * 2;
|
||||
}
|
||||
|
||||
+ p {
|
||||
margin-bottom: $line-height-computed * 2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//== Totals
|
||||
//
|
||||
|
||||
@@ -2,46 +2,86 @@
|
||||
// Login form
|
||||
// --------------------------------------------------
|
||||
|
||||
$login-form-width: 350px;
|
||||
$login-input-width: 200px;
|
||||
|
||||
#login-form {
|
||||
box-sizing: border-box;
|
||||
margin: $line-height-computed * 2 auto;
|
||||
|
||||
label,
|
||||
input:not([type="checkbox"]) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: $padding-base-vertical;
|
||||
font-weight: $font-weight-bold;
|
||||
|
||||
&[for="autologin"] {
|
||||
@include check;
|
||||
margin-bottom: $line-height-computed;
|
||||
}
|
||||
|
||||
> a {
|
||||
float: right;
|
||||
font-weight: $font-weight-normal;
|
||||
}
|
||||
}
|
||||
|
||||
input[type="text"],
|
||||
input[type="password"] {
|
||||
margin-bottom: $panel-body-padding-vertical;
|
||||
}
|
||||
|
||||
table {
|
||||
margin: auto;
|
||||
table-layout: fixed;
|
||||
}
|
||||
|
||||
@media screen and (min-width: $screen-sm-min) {
|
||||
width: $login-form-width;
|
||||
td {
|
||||
padding: 0;
|
||||
|
||||
padding: $panel-body-padding;
|
||||
&:first-child {
|
||||
width: $login-form-label-width;
|
||||
padding-right: $table-cell-padding;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
> label {
|
||||
margin-bottom: $panel-body-padding-vertical;
|
||||
}
|
||||
|
||||
> input[type="submit"] {
|
||||
width: auto;
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: $login-form-box-breakpoint) {
|
||||
width: $login-form-width;
|
||||
padding: $padding-side;
|
||||
border: 1px solid $panel-border;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: $panel-bg;
|
||||
color: $panel-color;
|
||||
box-shadow: $panel-shadow;
|
||||
color: $panel-color;
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
td {
|
||||
width: 90%; // make columns expand
|
||||
padding: $table-cell-padding;
|
||||
@each $adjustment, $languages in $login-form-adjustments-map {
|
||||
@each $language in $languages {
|
||||
html[lang="#{$language}"] & td:first-child {
|
||||
width: $login-form-label-width + $adjustment * 1em;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#username,
|
||||
#password,
|
||||
#openid_url {
|
||||
width: $login-input-width;
|
||||
}
|
||||
|
||||
#openid_url {
|
||||
padding-right: 8px + 24px;
|
||||
padding-right: $input-padding-horizontal + 24px;
|
||||
background-image: url("../../../images/openid-bg.gif");
|
||||
background-repeat: no-repeat;
|
||||
background-position: ($login-input-width - 24px) center;
|
||||
background-position: right $input-padding-horizontal center;
|
||||
}
|
||||
|
||||
@@ -54,11 +54,11 @@
|
||||
|
||||
.page.current,
|
||||
.current > span {
|
||||
z-index: 2;
|
||||
border-color: $pagination-active-border;
|
||||
background-color: $pagination-active-bg;
|
||||
color: $pagination-active-color;
|
||||
cursor: default;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.items,
|
||||
|
||||
@@ -30,12 +30,72 @@
|
||||
}
|
||||
}
|
||||
|
||||
.flyout-menu & {
|
||||
a {
|
||||
&:hover {
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.burndown_chart {
|
||||
max-width: $sidebar-width-computed;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine Hearts
|
||||
// https://github.com/cat-in-136/redmine_hearts
|
||||
// --------------------------------------------------
|
||||
|
||||
.journal > div + .contextual {
|
||||
border: 0;
|
||||
|
||||
> .heart-link-with-count {
|
||||
display: block;
|
||||
position: relative;
|
||||
margin: -($line-height-computed / 2 + 1px) $bubble-padding-vertical 0;
|
||||
float: right;
|
||||
border: 0;
|
||||
background-color: $body-bg;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
@if $use-font-awesome {
|
||||
.icon.icon-heart,
|
||||
.icon.icon-heart-off {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.icon.icon-heart {
|
||||
&::before {
|
||||
color: #eb5286;
|
||||
}
|
||||
}
|
||||
|
||||
.heart-link-with-count {
|
||||
margin-left: $padding-small-vertical;
|
||||
|
||||
> .heart-count-number {
|
||||
display: inline-block;
|
||||
min-width: 1em;
|
||||
margin: 0 0 0 3px;
|
||||
padding: 1px 4px;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: $btn-default-bg;
|
||||
color: $btn-default-color;
|
||||
text-align: center;
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine Time Tracker
|
||||
// https://github.com/fernandokosh/redmine_time_tracker
|
||||
@@ -188,8 +248,8 @@
|
||||
td a {
|
||||
display: block;
|
||||
max-width: floor($sidebar-width / 3);
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
|
||||
&:hover {
|
||||
position: absolute;
|
||||
@@ -325,3 +385,33 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Redmine WikiNG
|
||||
// https://github.com/martin-denizet/wiking
|
||||
// --------------------------------------------------
|
||||
|
||||
div.wiking {
|
||||
&.flash {
|
||||
@if $use-font-awesome {
|
||||
&.warning,
|
||||
&.notice,
|
||||
&.tip {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
&.tip {
|
||||
&::before {
|
||||
content: $fa-var-lightbulb-o;
|
||||
}
|
||||
}
|
||||
} @else {
|
||||
&.warning,
|
||||
&.notice,
|
||||
&.tip {
|
||||
background-position: $padding-large-horizontal 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,16 @@
|
||||
display: none;
|
||||
}
|
||||
|
||||
.pagination {
|
||||
.pages,
|
||||
.per-page {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
#main {
|
||||
display: block;
|
||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
@@ -23,19 +32,48 @@
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
||||
border: 0;
|
||||
background: #fff;
|
||||
overflow: visible !important; // scss-lint:disable ImportantRule
|
||||
}
|
||||
|
||||
.autoscroll {
|
||||
overflow-x: visible;
|
||||
}
|
||||
|
||||
a {
|
||||
// scss-lint:disable ImportantRule
|
||||
padding: 0 !important;
|
||||
background-color: transparent !important;
|
||||
color: #000 !important;
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
&.issue.closed {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
}
|
||||
|
||||
table.list {
|
||||
tr {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
th,
|
||||
td {
|
||||
border: 1px solid #aaa;
|
||||
background-color: transparent;
|
||||
|
||||
&.buttons {
|
||||
padding: 0;
|
||||
|
||||
a {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,8 +7,8 @@ table.progress {
|
||||
margin-top: 1px;
|
||||
margin-right: 5px;
|
||||
float: left;
|
||||
border: 1px solid rgba(#000, .1);
|
||||
empty-cells: show;
|
||||
border: 1px solid rgba(#000, .1);
|
||||
|
||||
.version-overview & {
|
||||
width: 40em;
|
||||
|
||||
209
src/sass/components/_responsive.scss
Normal file
@@ -0,0 +1,209 @@
|
||||
.theme-Purplemine2 {
|
||||
@media screen and (max-width: $redmine-responsive-max) {
|
||||
.flyout-menu + div {
|
||||
#header {
|
||||
height: $responsive-header-height;
|
||||
background-color: $header-bg;
|
||||
|
||||
.jump-box-arrow {
|
||||
&::before {
|
||||
line-height: $responsive-header-height;
|
||||
}
|
||||
}
|
||||
|
||||
#quick-search {
|
||||
select {
|
||||
top: 0;
|
||||
height: $responsive-header-height;
|
||||
box-shadow: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#main {
|
||||
padding-top: $responsive-header-height;
|
||||
}
|
||||
}
|
||||
|
||||
#header {
|
||||
#project-jump {
|
||||
padding: 0 $responsive-header-height 0 0;
|
||||
|
||||
.drdn-trigger {
|
||||
display: block;
|
||||
height: $responsive-header-height;
|
||||
padding: 0 0 0 ($padding-base-horizontal + 30px);
|
||||
background-color: transparent;
|
||||
box-shadow: none;
|
||||
line-height: $responsive-header-height;
|
||||
|
||||
&::before {
|
||||
padding-left: $padding-base-horizontal;
|
||||
font-size: 1.2em;
|
||||
font-weight: normal;
|
||||
line-height: $responsive-header-height * .9;
|
||||
}
|
||||
|
||||
@if $use-font-awesome {
|
||||
&::after {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.drdn-content {
|
||||
top: $responsive-header-height;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.mobile-toggle-button {
|
||||
width: $responsive-header-height;
|
||||
height: $responsive-header-height;
|
||||
line-height: $responsive-header-height;
|
||||
|
||||
&:focus {
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
.flyout-menu {
|
||||
background-color: $flyout-menu-bg;
|
||||
color: $flyout-menu-text;
|
||||
|
||||
&__search {
|
||||
height: $responsive-header-height;
|
||||
padding: ($padding-side / 2);
|
||||
line-height: normal;
|
||||
|
||||
input[type='text'] {
|
||||
height: $responsive-header-height - $padding-side;
|
||||
line-height: $responsive-header-height - $padding-side;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $flyout-menu-link;
|
||||
}
|
||||
}
|
||||
|
||||
h3 {
|
||||
border-top: 1px solid $flyout-menu-header-border;
|
||||
border-bottom: 1px solid $flyout-menu-header-border;
|
||||
background-color: $flyout-menu-header-bg;
|
||||
color: $flyout-menu-header-text;
|
||||
}
|
||||
|
||||
#admin-menu {
|
||||
a {
|
||||
background-position: 8px center;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
&::before {
|
||||
color: $flyout-menu-link;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.selected {
|
||||
background-color: $body-bg;
|
||||
color: $text-color;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
color: $text-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#query_form_content {
|
||||
fieldset {
|
||||
margin-bottom: $line-height-computed;
|
||||
}
|
||||
}
|
||||
|
||||
.search-magnifier {
|
||||
&--flyout {
|
||||
line-height: normal;
|
||||
}
|
||||
}
|
||||
|
||||
.splitcontentleft {
|
||||
padding-right: 0;
|
||||
float: none;
|
||||
}
|
||||
|
||||
.splitcontentright {
|
||||
padding-left: 0;
|
||||
float: none;
|
||||
}
|
||||
|
||||
p.buttons,
|
||||
.other-formats > span,
|
||||
#wiki_add_attachment > p,
|
||||
#content > .contextual {
|
||||
margin-bottom: $line-height-computed - $padding-small-horizontal;
|
||||
padding: 0;
|
||||
float: none;
|
||||
text-align: left;
|
||||
|
||||
a {
|
||||
display: inline-block;
|
||||
margin: 0 $padding-small-vertical $padding-small-horizontal 0;
|
||||
padding: ($btn-padding-vertical * 2) $btn-padding-horizontal;
|
||||
border: 1px solid $pagination-border;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: $pagination-bg;
|
||||
background-position: $btn-padding-horizontal center;
|
||||
font-weight: $btn-font-weight;
|
||||
|
||||
&:active,
|
||||
&:hover,
|
||||
&:focus {
|
||||
border-color: $pagination-hover-border;
|
||||
outline: 0;
|
||||
background-color: $pagination-hover-bg;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
&.icon {
|
||||
padding-left: 20px + $btn-padding-horizontal;
|
||||
}
|
||||
|
||||
@if $use-font-awesome == false {
|
||||
&.atom {
|
||||
padding-left: 20px + $btn-padding-horizontal;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// For Redmine 3.4+
|
||||
#my-page {
|
||||
#list-left {
|
||||
width: 100%;
|
||||
padding-right: 0;
|
||||
float: none;
|
||||
}
|
||||
|
||||
#list-right {
|
||||
width: 100%;
|
||||
padding-left: 0;
|
||||
float: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
380
src/sass/components/_rouge.scss
Normal file
@@ -0,0 +1,380 @@
|
||||
//
|
||||
// Syntax highlight - Rouge
|
||||
// --------------------------------------------------
|
||||
|
||||
.syntaxhl {
|
||||
background: #fafafa;
|
||||
|
||||
.hll {
|
||||
background-color: #ffc;
|
||||
}
|
||||
|
||||
// Comment
|
||||
.c {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
// Error
|
||||
.err {
|
||||
background-color: #faa;
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
// Keyword
|
||||
.k {
|
||||
color: #080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Operator
|
||||
.o {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
// Comment.Hashbang
|
||||
.ch {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
// Comment.Multiline
|
||||
.cm {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
// Comment.Preproc
|
||||
.cp {
|
||||
color: #579;
|
||||
}
|
||||
|
||||
// Comment.PreprocFile
|
||||
.cpf {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
// Comment.Single
|
||||
.c1 {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
// Comment.Special
|
||||
.cs {
|
||||
color: #c00;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Generic.Deleted
|
||||
.gd {
|
||||
color: #a00000;
|
||||
}
|
||||
|
||||
// Generic.Emph
|
||||
.ge {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
// Generic.Error
|
||||
.gr {
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
// Generic.Heading
|
||||
.gh {
|
||||
color: #000080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Generic.Inserted
|
||||
.gi {
|
||||
color: #00a000;
|
||||
}
|
||||
|
||||
// Generic.Output
|
||||
.go {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
// Generic.Prompt
|
||||
.gp {
|
||||
color: #c65d09;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Generic.Strong
|
||||
.gs {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Generic.Subheading
|
||||
.gu {
|
||||
color: #800080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Generic.Traceback
|
||||
.gt {
|
||||
color: #04d;
|
||||
}
|
||||
|
||||
// Keyword.Constant
|
||||
.kc {
|
||||
color: #080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Keyword.Declaration
|
||||
.kd {
|
||||
color: #080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Keyword.Namespace
|
||||
.kn {
|
||||
color: #080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Keyword.Pseudo
|
||||
.kp {
|
||||
color: #038;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Keyword.Reserved
|
||||
.kr {
|
||||
color: #080;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Keyword.Type
|
||||
.kt {
|
||||
color: #339;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.Number
|
||||
.m {
|
||||
color: #60e;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.String
|
||||
.s {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Name.Attribute
|
||||
.na {
|
||||
color: #00c;
|
||||
}
|
||||
|
||||
// Name.Builtin
|
||||
.nb {
|
||||
color: #007020;
|
||||
}
|
||||
|
||||
// Name.Class
|
||||
.nc {
|
||||
color: #b06;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Constant
|
||||
.no {
|
||||
color: #036;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Decorator
|
||||
.nd {
|
||||
color: #555;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Entity
|
||||
.ni {
|
||||
color: #800;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Exception
|
||||
.ne {
|
||||
color: #f00;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Function
|
||||
.nf {
|
||||
color: #06b;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Label
|
||||
.nl {
|
||||
color: #970;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Namespace
|
||||
.nn {
|
||||
color: #0e84b5;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Tag
|
||||
.nt {
|
||||
color: #070;
|
||||
}
|
||||
|
||||
// Name.Variable
|
||||
.nv {
|
||||
color: #963;
|
||||
}
|
||||
|
||||
// Operator.Word
|
||||
.ow {
|
||||
color: #000;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Text.Whitespace
|
||||
.w {
|
||||
color: #bbb;
|
||||
}
|
||||
|
||||
// Literal.Number.Bin
|
||||
.mb {
|
||||
color: #60e;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.Number.Float
|
||||
.mf {
|
||||
color: #60e;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.Number.Hex
|
||||
.mh {
|
||||
color: #058;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.Number.Integer
|
||||
.mi {
|
||||
color: #00d;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.Number.Oct
|
||||
.mo {
|
||||
color: #40e;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.String.Affix
|
||||
.sa {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Literal.String.Backtick
|
||||
.sb {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Literal.String.Char
|
||||
.sc {
|
||||
color: #04d;
|
||||
}
|
||||
|
||||
// Literal.String.Delimiter
|
||||
.dl {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Literal.String.Doc
|
||||
.sd {
|
||||
color: #d42;
|
||||
}
|
||||
|
||||
// Literal.String.Double
|
||||
.s2 {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Literal.String.Escape
|
||||
.se {
|
||||
background-color: #fff0f0;
|
||||
color: #666;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Literal.String.Heredoc
|
||||
.sh {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Literal.String.Interpol
|
||||
.si {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
// Literal.String.Other
|
||||
.sx {
|
||||
background-color: #fff0f0;
|
||||
color: #d20;
|
||||
}
|
||||
|
||||
// Literal.String.Regex
|
||||
.sr {
|
||||
background-color: #fff0ff;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
// Literal.String.Single
|
||||
.s1 {
|
||||
background-color: #fff0f0;
|
||||
}
|
||||
|
||||
// Literal.String.Symbol
|
||||
.ss {
|
||||
color: #a60;
|
||||
}
|
||||
|
||||
// Name.Builtin.Pseudo
|
||||
.bp {
|
||||
color: #007020;
|
||||
}
|
||||
|
||||
// Name.Function.Magic
|
||||
.fm {
|
||||
color: #06b;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Variable.Class
|
||||
.vc {
|
||||
color: #369;
|
||||
}
|
||||
|
||||
// Name.Variable.Global
|
||||
.vg {
|
||||
color: #d70;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
// Name.Variable.Instance
|
||||
.vi {
|
||||
color: #33b;
|
||||
}
|
||||
|
||||
// Name.Variable.Magic
|
||||
.vm {
|
||||
color: #963;
|
||||
}
|
||||
|
||||
// Literal.Number.Integer.Long
|
||||
.il {
|
||||
color: #00d;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
@@ -72,8 +72,8 @@
|
||||
}
|
||||
|
||||
dd {
|
||||
font-size: $font-size-small;
|
||||
overflow: hidden;
|
||||
font-size: $font-size-small;
|
||||
|
||||
&.grouped {
|
||||
margin-left: $activity-indent;
|
||||
@@ -99,15 +99,15 @@
|
||||
// Search form
|
||||
|
||||
#search-form {
|
||||
margin-bottom: $line-height-computed;
|
||||
|
||||
input,
|
||||
select {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
label {
|
||||
@include checkbox;
|
||||
display: inline-block;
|
||||
margin-right: 5px;
|
||||
@include check-inline;
|
||||
}
|
||||
|
||||
p:last-child {
|
||||
|
||||
@@ -2,11 +2,12 @@
|
||||
// Tabs
|
||||
// --------------------------------------------------
|
||||
|
||||
$tabs-height: $line-height-computed + $tab-padding-vertical * 2 + 1px + 1px;
|
||||
|
||||
.tabs {
|
||||
$tabs-buttons-width: 40px;
|
||||
|
||||
position: relative;
|
||||
margin-bottom: $line-height-computed;
|
||||
overflow: hidden;
|
||||
|
||||
@if not $flexbox-layout {
|
||||
@@ -14,23 +15,21 @@
|
||||
}
|
||||
|
||||
> ul {
|
||||
box-sizing: border-box;
|
||||
margin: 0;
|
||||
padding-left: 0;
|
||||
border-bottom: 1px solid $tab-border;
|
||||
list-style: none;
|
||||
|
||||
@if $flexbox-layout {
|
||||
display: flex;
|
||||
flex-wrap: nowrap;
|
||||
height: $line-height-computed + $tab-padding-vertical * 2 + 1px;
|
||||
height: $tabs-height;
|
||||
} @else {
|
||||
width: 2000px;
|
||||
@extend %clearfix;
|
||||
}
|
||||
|
||||
> li {
|
||||
margin-bottom: -1px;
|
||||
|
||||
@if $flexbox-layout {
|
||||
flex: 0 1 auto;
|
||||
} @else {
|
||||
@@ -39,26 +38,15 @@
|
||||
|
||||
> a {
|
||||
display: block;
|
||||
min-width: 2em;
|
||||
box-sizing: border-box;
|
||||
min-width: 3em;
|
||||
height: $tabs-height;
|
||||
margin-right: 2px;
|
||||
padding: $tab-padding-vertical $tab-padding-horizontal;
|
||||
border: 1px solid transparent;
|
||||
border-radius: $border-radius-base $border-radius-base 0 0;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
border-color: $tab-hover-border $tab-hover-border $tab-border;
|
||||
background-color: $tab-hover-bg;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
border-color: $tab-active-border $tab-active-border $tab-active-bg;
|
||||
background: $tab-active-bg;
|
||||
color: $tab-active-text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -68,24 +56,23 @@
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: $tabs-buttons-width;
|
||||
padding-left: 5px;
|
||||
border-bottom: 1px solid $tab-border;
|
||||
background-color: $body-bg;
|
||||
|
||||
> button {
|
||||
width: 50%;
|
||||
height: $tab-padding-vertical * 2 + $line-height-computed + 1px;
|
||||
height: $tabs-height;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
float: left;
|
||||
transition: opacity .1s;
|
||||
border: 0 none;
|
||||
border-bottom: 1px solid $tab-border;
|
||||
border-radius: 0;
|
||||
opacity: .8;
|
||||
background-color: $body-bg;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
box-shadow: none;
|
||||
opacity: .8;
|
||||
|
||||
&:hover,
|
||||
&:active {
|
||||
@@ -107,6 +94,44 @@
|
||||
}
|
||||
}
|
||||
|
||||
div.tabs:not(#main-menu) {
|
||||
height: $tabs-height;
|
||||
margin-bottom: $line-height-computed;
|
||||
|
||||
> ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border-bottom: 1px solid $tab-border;
|
||||
|
||||
> li {
|
||||
margin: 0 0 -1px;
|
||||
background: transparent;
|
||||
|
||||
> a {
|
||||
padding: $tab-padding-vertical $tab-padding-horizontal;
|
||||
border-color: transparent;
|
||||
background: transparent;
|
||||
color: $link-color;
|
||||
font: inherit;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
border-color: $tab-hover-border $tab-hover-border $tab-border;
|
||||
background-color: $tab-hover-bg;
|
||||
color: $link-hover-color;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
border-color: $tab-active-border $tab-active-border $tab-active-bg;
|
||||
background: $tab-active-bg;
|
||||
color: $tab-active-text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//== Specific tabs content layout
|
||||
//
|
||||
|
||||
@@ -133,7 +158,7 @@
|
||||
}
|
||||
|
||||
label {
|
||||
@include checkbox;
|
||||
@include check;
|
||||
display: block;
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
@@ -39,22 +39,14 @@
|
||||
}
|
||||
user-select: none;
|
||||
|
||||
@if $use-font-awesome {
|
||||
font-size: 14px;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-down;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-down-white;
|
||||
}
|
||||
|
||||
@if $use-font-awesome {
|
||||
@extend %fa-icon;
|
||||
color: mix($top-menu-link, $top-menu-bg, 33%);
|
||||
font-size: 14px;
|
||||
line-height: 1;
|
||||
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-down;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
@@ -64,6 +56,7 @@
|
||||
color: mix($top-menu-link-hover, $top-menu-bg, 50%);
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-down-white;
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
border-radius: $border-radius-base;
|
||||
@@ -103,6 +96,7 @@
|
||||
margin: 0 .5em 0 0;
|
||||
padding: 0;
|
||||
list-style-type: none;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
a {
|
||||
@@ -185,29 +179,20 @@
|
||||
float: right;
|
||||
color: $header-text;
|
||||
|
||||
label {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
form {
|
||||
display: inline;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
input,
|
||||
select {
|
||||
margin-left: 5px;
|
||||
transition: color ease-in-out .1s,
|
||||
background-color ease-in-out .1s,
|
||||
border-color ease-in-out .1s;
|
||||
border-color: darken($header-bg, 15%);
|
||||
background: darken($header-bg, 10%);
|
||||
color: $header-root;
|
||||
input {
|
||||
width: $quick-search-width;
|
||||
}
|
||||
|
||||
> form > input,
|
||||
> select {
|
||||
border-color: $quick-search-border;
|
||||
|
||||
&:focus {
|
||||
border-color: darken($header-bg, 35%);
|
||||
background-color: $input-bg;
|
||||
color: $input-color;
|
||||
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .3);
|
||||
border-color: $quick-search-border-focus;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -219,27 +204,80 @@
|
||||
color: $gray-lighter;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
input {
|
||||
width: 200px;
|
||||
#project-jump {
|
||||
display: inline-block;
|
||||
|
||||
&.expanded {
|
||||
.drdn-trigger {
|
||||
z-index: 1003;
|
||||
height: auto;
|
||||
padding-bottom: $header-padding-horizontal / 2;
|
||||
border-color: $quick-search-dropdown-bg;
|
||||
background-color: $quick-search-dropdown-bg;
|
||||
}
|
||||
}
|
||||
|
||||
.drdn {
|
||||
&-trigger {
|
||||
min-width: $quick-search-width;
|
||||
border-color: $quick-search-border;
|
||||
}
|
||||
|
||||
&-content {
|
||||
min-width: $quick-search-box-width;
|
||||
background: $quick-search-dropdown-bg;
|
||||
|
||||
> .quick-search {
|
||||
padding: $header-padding-horizontal / 2;
|
||||
|
||||
> input {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&-items {
|
||||
border-top: 1px solid $quick-search-dropdown-border;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: $main-menu-link;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
outline: 0 none;
|
||||
background-color: $component-active-bg;
|
||||
color: $component-active-color;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
.all-projects a {
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
}
|
||||
|
||||
#main-menu {
|
||||
$tabs-height: $main-menu-padding-vertical * 2 + $line-height-computed;
|
||||
|
||||
clear: both;
|
||||
background-color: $main-menu-bg;
|
||||
color: $text-color;
|
||||
box-shadow: inset 0 -1px $main-menu-border;
|
||||
color: $text-color;
|
||||
|
||||
&.tabs {
|
||||
margin-bottom: 0;
|
||||
overflow: inherit;
|
||||
|
||||
> ul {
|
||||
height: auto;
|
||||
height: $tabs-height;
|
||||
|
||||
> li {
|
||||
> a {
|
||||
height: $tabs-height;
|
||||
border: 0 none;
|
||||
border-radius: 0;
|
||||
background: transparent;
|
||||
@@ -252,8 +290,8 @@
|
||||
@extend %clearfix;
|
||||
margin: 0;
|
||||
padding: 0 ($padding-side - $main-menu-padding-horizontal);
|
||||
color: $main-menu-link;
|
||||
list-style: none;
|
||||
color: $main-menu-link;
|
||||
|
||||
> li {
|
||||
position: relative;
|
||||
@@ -262,8 +300,8 @@
|
||||
|
||||
&:hover {
|
||||
> .new-object {
|
||||
border-bottom: 1px solid $main-menu-dropdown-bg;
|
||||
z-index: 100;
|
||||
border-bottom: 1px solid $main-menu-dropdown-bg;
|
||||
}
|
||||
|
||||
> .menu-children {
|
||||
@@ -287,21 +325,21 @@
|
||||
&:hover,
|
||||
&:focus {
|
||||
outline: 0 none;
|
||||
text-decoration: none;
|
||||
box-shadow: inset 0 (-$main-menu-shadow-width) 0 $main-menu-shadow-hover;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
&.selected {
|
||||
padding-bottom: $main-menu-padding-vertical - $main-menu-shadow-width;
|
||||
border-bottom: 3px solid $main-menu-shadow-active;
|
||||
box-shadow: none;
|
||||
color: $main-menu-link-active;
|
||||
font-weight: $font-weight-bold;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
&.new-object {
|
||||
position: relative;
|
||||
min-width: 1.1em;
|
||||
min-width: 1.6em;
|
||||
padding-bottom: $main-menu-padding-vertical - 1px;
|
||||
border: 1px solid $main-menu-border;
|
||||
border-width: 0 1px;
|
||||
@@ -328,14 +366,14 @@
|
||||
@include nice-shadow(2);
|
||||
display: none;
|
||||
position: absolute;
|
||||
z-index: 1001;
|
||||
min-width: 130px;
|
||||
margin: 0 1px;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
list-style: none;
|
||||
border-radius: 0 0 $border-radius-base $border-radius-base;
|
||||
background: $main-menu-dropdown-bg;
|
||||
list-style: none;
|
||||
overflow: hidden;
|
||||
z-index: 1001;
|
||||
|
||||
&.visible {
|
||||
display: block;
|
||||
@@ -367,7 +405,8 @@
|
||||
background-color: $main-menu-bg;
|
||||
|
||||
> button {
|
||||
height: $main-menu-padding-vertical * 2 + $line-height-computed - 1px;
|
||||
box-sizing: border-box;
|
||||
height: $tabs-height;
|
||||
background-color: $main-menu-bg;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,13 +3,6 @@
|
||||
font-size: $wiki-font-size;
|
||||
|
||||
@if $wiki-page-more-vertical-space {
|
||||
// Anchors will make headers more separated,
|
||||
// and it will look better when you open page with hash in URL
|
||||
a[name]:empty {
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
// Add some space between list items
|
||||
ul,
|
||||
ol {
|
||||
@@ -105,12 +98,12 @@ div.wiki {
|
||||
+ h5,
|
||||
+ h6 {
|
||||
&::before {
|
||||
content: "#";
|
||||
display: inline-block;
|
||||
width: .7em;
|
||||
margin-left: -.7em;
|
||||
color: $headings-anchor-color-active;
|
||||
font-weight: normal;
|
||||
content: "#";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -131,7 +124,7 @@ div.wiki {
|
||||
|
||||
.contextual {
|
||||
a {
|
||||
opacity: .4;
|
||||
opacity: .5;
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
@@ -207,12 +200,12 @@ div.wiki {
|
||||
width: auto;
|
||||
margin-bottom: 1.15em;
|
||||
padding: 4px 8px;
|
||||
overflow-x: auto;
|
||||
overflow-y: hidden;
|
||||
border: 1px solid #e7e7e7;
|
||||
border-radius: $border-radius-base;
|
||||
border-color: rgba(#000, .068);
|
||||
background-color: rgba(#000, .03);
|
||||
overflow-x: auto;
|
||||
overflow-y: hidden;
|
||||
font-size: $font-size-small;
|
||||
|
||||
code {
|
||||
@@ -241,8 +234,8 @@ div.wiki {
|
||||
border: 1px solid $highlight-border;
|
||||
border-radius: $border-radius-base;
|
||||
background-color: $highlight-bg;
|
||||
font-size: $font-size-small;
|
||||
box-shadow: $panel-shadow;
|
||||
font-size: $font-size-small;
|
||||
|
||||
a {
|
||||
color: $highlight-text;
|
||||
@@ -283,8 +276,8 @@ div.wiki {
|
||||
margin: 0;
|
||||
|
||||
li {
|
||||
list-style-type: disc;
|
||||
margin-left: 1.5em;
|
||||
list-style-type: disc;
|
||||
|
||||
li {
|
||||
list-style-type: circle;
|
||||
@@ -345,12 +338,12 @@ p.footnote {
|
||||
margin-bottom: 5px;
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
display: block;
|
||||
width: 300px;
|
||||
margin-top: $line-height-computed;
|
||||
padding-top: $line-height-computed / 2;
|
||||
border-top: 1px solid $gray-lighter;
|
||||
content: "";
|
||||
}
|
||||
|
||||
+ p.footnote::before {
|
||||
@@ -379,10 +372,19 @@ p.footnote {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#add_attachment_form {
|
||||
> form {
|
||||
padding-top: $line-height-computed;
|
||||
clear: left;
|
||||
}
|
||||
|
||||
.collapsible & {
|
||||
padding-top: 0;
|
||||
border-top: 0;
|
||||
|
||||
> form {
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,115 +1,119 @@
|
||||
@if $enable-sidebar-toggler {
|
||||
$toggler-position-v: 1px;
|
||||
$toggler-position-h: 1px;
|
||||
$toggler-position-v: 1px;
|
||||
$toggler-position-h: 1px;
|
||||
|
||||
#main {
|
||||
position: relative;
|
||||
#main {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
@if $fixed-layout {
|
||||
will-change: margin, opacity;
|
||||
transition: margin .5s, opacity .5s;
|
||||
opacity: 1;
|
||||
} @else {
|
||||
will-change: margin;
|
||||
transition: margin .5s;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
@if $fixed-layout {
|
||||
will-change: margin, opacity;
|
||||
transition: margin .5s, opacity .5s;
|
||||
opacity: 1;
|
||||
} @else {
|
||||
will-change: margin;
|
||||
transition: margin .5s;
|
||||
}
|
||||
|
||||
&.sidebar-hiding {
|
||||
@if $fixed-layout {
|
||||
opacity: 0;
|
||||
}
|
||||
@if $sidebar-position == "left" {
|
||||
margin-left: -$sidebar-width;
|
||||
} @else {
|
||||
margin-right: -$sidebar-width;
|
||||
}
|
||||
}
|
||||
|
||||
&.sidebar-hidden {
|
||||
display: none;
|
||||
}
|
||||
&.sidebar-hiding {
|
||||
@if $fixed-layout {
|
||||
opacity: 0;
|
||||
}
|
||||
@if $sidebar-position == "left" {
|
||||
margin-left: -$sidebar-width;
|
||||
} @else {
|
||||
margin-right: -$sidebar-width;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-toggler {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: $toggler-position-v;
|
||||
user-select: none;
|
||||
&.sidebar-hidden {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-toggler {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: $toggler-position-v;
|
||||
user-select: none;
|
||||
|
||||
@media print {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@if $use-font-awesome {
|
||||
@extend %fa-icon;
|
||||
color: $gray-light;
|
||||
line-height: 1;
|
||||
|
||||
&::before {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
color: $gray;
|
||||
}
|
||||
} @else {
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
border-radius: $border-radius-base;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
background-color: $gray-lighter;
|
||||
}
|
||||
}
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
left: $toggler-position-h;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-left;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-left;
|
||||
}
|
||||
} @else {
|
||||
right: $toggler-position-h;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-right;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-right;
|
||||
}
|
||||
}
|
||||
|
||||
&.sidebar-hidden {
|
||||
@if $sidebar-position == "left" {
|
||||
@if $use-font-awesome {
|
||||
@extend %fa-icon;
|
||||
color: $gray-light;
|
||||
line-height: 1;
|
||||
|
||||
&::before {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
color: $gray;
|
||||
}
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-right;
|
||||
}
|
||||
} @else {
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
border-radius: $border-radius-base;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
background-color: $gray-lighter;
|
||||
}
|
||||
@extend %image-arrow-right;
|
||||
}
|
||||
|
||||
@if $sidebar-position == "left" {
|
||||
left: $toggler-position-h;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-left;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-left;
|
||||
}
|
||||
} @else {
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-left;
|
||||
}
|
||||
} @else {
|
||||
right: $toggler-position-h;
|
||||
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-right;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-right;
|
||||
}
|
||||
}
|
||||
|
||||
&.sidebar-hidden {
|
||||
@if $sidebar-position == "left" {
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-right;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-right;
|
||||
}
|
||||
} @else {
|
||||
@if $use-font-awesome {
|
||||
&::before {
|
||||
content: $fa-var-caret-square-o-left;
|
||||
}
|
||||
} @else {
|
||||
@extend %image-arrow-left;
|
||||
}
|
||||
}
|
||||
@extend %image-arrow-left;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} @else {
|
||||
.sidebar-toggler {
|
||||
display: none;
|
||||
}
|
||||
.sidebar-toggler {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
|
||||
@mixin clearfix() {
|
||||
&::after {
|
||||
content: "";
|
||||
display: block;
|
||||
clear: both;
|
||||
content: "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
//
|
||||
@mixin form-control-focus($color: $input-border-focus) {
|
||||
&:focus {
|
||||
border-color: $color;
|
||||
border-color: rgba($input-border-focus, $input-border-focus-alpha);
|
||||
outline: 0;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075), 0 0 5px rgba($color, .5);
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075), 0 0 0 2px rgba($input-border-focus, $input-shadow-focus-alpha);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
//
|
||||
@mixin placeholder($color: $input-color-placeholder) {
|
||||
&::placeholder {
|
||||
color: $color;
|
||||
opacity: 1; // See https://github.com/twbs/bootstrap/pull/11526
|
||||
color: $color;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,13 +40,36 @@
|
||||
}
|
||||
}
|
||||
|
||||
@mixin checkbox() {
|
||||
@mixin check() {
|
||||
@extend %clearfix;
|
||||
padding-left: 20px;
|
||||
user-select: none;
|
||||
position: relative;
|
||||
padding-left: $check-input-gutter;
|
||||
text-align: left;
|
||||
font-weight: $font-weight-normal;
|
||||
|
||||
input[type="checkbox"] {
|
||||
margin-left: -20px;
|
||||
float: left;
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
position: absolute;
|
||||
width: auto;
|
||||
margin-top: $check-input-margin-vertical;
|
||||
margin-left: -$check-input-gutter;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin check-inline() {
|
||||
@include check;
|
||||
display: inline-block;
|
||||
margin-right: $check-input-margin-horizontal;
|
||||
}
|
||||
|
||||
@mixin check-list() {
|
||||
@include check;
|
||||
display: block;
|
||||
width: auto;
|
||||
margin: $btn-padding-vertical 0;
|
||||
float: none;
|
||||
|
||||
@media screen and (min-width: $screen-sm-min) {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,20 @@
|
||||
|
||||
$border-color: darken(desaturate($background, 30%), 13.5%);
|
||||
|
||||
table.list:not(.odd-even) tbody tr#{$parent} {
|
||||
@if $table-list-color-odd-rows {
|
||||
&:nth-child(odd) {
|
||||
background: darken($background, $table-accent-factor * 100%);
|
||||
}
|
||||
}
|
||||
|
||||
@if $table-list-color-even-rows {
|
||||
&:nth-child(even) {
|
||||
background: darken($background, $table-accent-factor * 100%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tr#{$parent} {
|
||||
background: $background;
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
@import "common";
|
||||
|
||||
html {
|
||||
overflow-y: scroll;
|
||||
height: 100%;
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
body {
|
||||
@@ -50,10 +50,10 @@ button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
box-sizing: border-box;
|
||||
font-family: inherit;
|
||||
font-size: $font-size-base;
|
||||
line-height: $line-height-base;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
select,
|
||||
@@ -71,13 +71,13 @@ input.editor,
|
||||
border: 1px solid $input-border;
|
||||
border-radius: $input-border-radius;
|
||||
background-color: $input-bg;
|
||||
color: $input-color;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
color: $input-color;
|
||||
}
|
||||
|
||||
textarea {
|
||||
resize: vertical;
|
||||
height: auto;
|
||||
resize: vertical;
|
||||
}
|
||||
|
||||
select:-moz-focusring {
|
||||
@@ -86,17 +86,17 @@ select:-moz-focusring {
|
||||
}
|
||||
|
||||
button.ui-multiselect {
|
||||
box-sizing: border-box;
|
||||
height: $input-height-base;
|
||||
padding: $input-padding-vertical $input-padding-horizontal;
|
||||
overflow: hidden;
|
||||
transition: border-color ease-in-out .1s, box-shadow ease-in-out .1s;
|
||||
border: 1px solid $input-border;
|
||||
background: $input-bg;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
color: $input-color;
|
||||
white-space: nowrap;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
|
||||
cursor: default;
|
||||
overflow: hidden;
|
||||
box-sizing: border-box;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
@@ -125,11 +125,11 @@ button.ui-multiselect {
|
||||
@include clearfix;
|
||||
display: block;
|
||||
position: relative;
|
||||
z-index: 1000;
|
||||
padding: 10px $padding-side;
|
||||
overflow: hidden;
|
||||
background-color: $main-menu-bg;
|
||||
box-shadow: $panel-shadow;
|
||||
overflow: hidden;
|
||||
z-index: 1000;
|
||||
|
||||
.breadcrumbs {
|
||||
margin-right: 10px;
|
||||
@@ -262,8 +262,8 @@ ul.ui-sortable {
|
||||
.issue-description {
|
||||
max-height: 10em;
|
||||
margin-top: 12px;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.issue-field {
|
||||
@@ -293,8 +293,8 @@ ul.ui-sortable {
|
||||
|
||||
.rb-sortable-disabled,
|
||||
.ui-sortable-disabled {
|
||||
background-color: $gray-lighter;
|
||||
opacity: .5;
|
||||
background-color: $gray-lighter;
|
||||
}
|
||||
|
||||
.w-rb-header-collapsed {
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
.ui-helper-reset {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-size: 100%;
|
||||
list-style: none;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@@ -33,11 +33,11 @@
|
||||
display: inline-block;
|
||||
|
||||
&::after {
|
||||
content: ".";
|
||||
display: block;
|
||||
visibility: hidden;
|
||||
height: 0;
|
||||
clear: both;
|
||||
content: ".";
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,9 +76,9 @@
|
||||
|
||||
.ui-icon {
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
background-repeat: no-repeat;
|
||||
text-indent: -9999px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Misc visuals
|
||||
@@ -156,9 +156,9 @@
|
||||
.ui-widget-header .ui-state-default {
|
||||
border: 1px solid $component-border;
|
||||
background: $component-bg;
|
||||
box-shadow: none;
|
||||
color: $component-color;
|
||||
font-weight: normal;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.ui-state-default a,
|
||||
@@ -250,14 +250,14 @@
|
||||
|
||||
.ui-priority-secondary,
|
||||
.ui-widget-content .ui-priority-secondary {
|
||||
font-weight: normal;
|
||||
opacity: .7;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.ui-state-disabled,
|
||||
.ui-widget-content .ui-state-disabled {
|
||||
background-image: none;
|
||||
opacity: .35;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
/* Icons
|
||||
@@ -520,16 +520,16 @@
|
||||
/* Overlays */
|
||||
|
||||
.ui-widget-overlay {
|
||||
background: #000;
|
||||
opacity: .3;
|
||||
background: #000;
|
||||
}
|
||||
|
||||
.ui-widget-shadow {
|
||||
margin: -8px 0 0 -8px;
|
||||
padding: 8px;
|
||||
border-radius: 8px;
|
||||
background: #aaa;
|
||||
opacity: .3;
|
||||
background: #aaa;
|
||||
}
|
||||
|
||||
/* Resizable
|
||||
@@ -542,8 +542,8 @@
|
||||
.ui-resizable-handle {
|
||||
display: block;
|
||||
position: absolute;
|
||||
font-size: .1px;
|
||||
z-index: 9999;
|
||||
font-size: .1px;
|
||||
}
|
||||
|
||||
.ui-resizable-disabled .ui-resizable-handle,
|
||||
@@ -660,9 +660,9 @@
|
||||
margin-top: -2px;
|
||||
margin-bottom: 2px;
|
||||
padding: 1em 2.2em;
|
||||
border-top: 0;
|
||||
overflow: auto;
|
||||
zoom: 1;
|
||||
border-top: 0;
|
||||
}
|
||||
|
||||
.ui-accordion-content-active {
|
||||
@@ -731,11 +731,11 @@
|
||||
position: relative;
|
||||
margin-right: .1em;
|
||||
padding: 0;
|
||||
overflow: visible;
|
||||
zoom: 1;
|
||||
text-align: center;
|
||||
text-decoration: none !important; // scss-lint:disable ImportantRule
|
||||
cursor: pointer;
|
||||
overflow: visible;
|
||||
zoom: 1;
|
||||
}
|
||||
|
||||
/* the overflow property removes extra width in IE */
|
||||
@@ -881,10 +881,10 @@ button.ui-button::-moz-focus-inner {
|
||||
.ui-dialog-content {
|
||||
position: relative;
|
||||
padding: .5em 1em;
|
||||
border: 0 none;
|
||||
background: none;
|
||||
overflow: auto;
|
||||
zoom: 1;
|
||||
border: 0 none;
|
||||
background: none;
|
||||
}
|
||||
|
||||
.ui-dialog-buttonpane {
|
||||
@@ -899,9 +899,9 @@ button.ui-button::-moz-focus-inner {
|
||||
margin: .5em .4em .5em 0;
|
||||
padding: .2em .6em .3em;
|
||||
float: right;
|
||||
overflow: visible;
|
||||
line-height: 1.4em;
|
||||
cursor: pointer;
|
||||
overflow: visible;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -926,19 +926,19 @@ button.ui-button::-moz-focus-inner {
|
||||
|
||||
.ui-slider-handle {
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
width: 1.2em;
|
||||
height: 1.2em;
|
||||
cursor: default;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.ui-slider-range {
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
border: 0 none;
|
||||
background-position: 0 0;
|
||||
font-size: .7em;
|
||||
z-index: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1006,8 +1006,8 @@ button.ui-button::-moz-focus-inner {
|
||||
margin: 0 .2em 1px 0;
|
||||
padding: 0;
|
||||
float: left;
|
||||
border-bottom: 0 !important; // scss-lint:disable ImportantRule
|
||||
list-style: none;
|
||||
border-bottom: 0 !important; // scss-lint:disable ImportantRule
|
||||
white-space: nowrap;
|
||||
|
||||
a {
|
||||
@@ -1081,9 +1081,9 @@ button.ui-button::-moz-focus-inner {
|
||||
.ui-state-default {
|
||||
border: 1px solid $body-bg;
|
||||
background: $body-bg;
|
||||
box-shadow: none;
|
||||
color: $component-color;
|
||||
font-weight: normal;
|
||||
box-shadow: none;
|
||||
|
||||
a,
|
||||
a:link,
|
||||
@@ -1169,8 +1169,8 @@ button.ui-button::-moz-focus-inner {
|
||||
table {
|
||||
width: 100%;
|
||||
margin: 0 0 .4em;
|
||||
font-size: .9em;
|
||||
border-collapse: collapse;
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
th {
|
||||
@@ -1220,8 +1220,8 @@ button.ui-button::-moz-focus-inner {
|
||||
margin: .5em .2em .4em;
|
||||
padding: .2em .6em .3em;
|
||||
float: right;
|
||||
cursor: pointer;
|
||||
overflow: visible;
|
||||
cursor: pointer;
|
||||
|
||||
&.ui-datepicker-current {
|
||||
float: left;
|
||||
|
||||
@@ -57,9 +57,9 @@
|
||||
@include nice-shadow(2);
|
||||
display: none;
|
||||
position: absolute;
|
||||
z-index: 10000;
|
||||
padding: 3px;
|
||||
text-align: left;
|
||||
z-index: 10000;
|
||||
}
|
||||
|
||||
.ui-multiselect-checkboxes {
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
@include nice-shadow(2);
|
||||
position: relative;
|
||||
padding: 10px;
|
||||
overflow: hidden;
|
||||
border: 1px solid $tooltip-border;
|
||||
background-color: $tooltip-bg;
|
||||
color: $tooltip-text;
|
||||
font-size: $font-size-list;
|
||||
text-align: left;
|
||||
word-wrap: break-word;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.ui-tooltip-tip {
|
||||
@@ -29,9 +29,9 @@
|
||||
|
||||
.ui-tooltip-tip {
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
border: 0 none;
|
||||
background: transparent;
|
||||
overflow: hidden;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
@@ -189,9 +189,9 @@ $story-sp-input-width: 50px;
|
||||
|
||||
&:focus {
|
||||
border-color: lighten($header-bg, 25%);
|
||||
color: $gray-darkest;
|
||||
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2),
|
||||
0 0 0 1px lighten($header-bg, 25%);
|
||||
color: $gray-darkest;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -203,8 +203,8 @@ $story-sp-input-width: 50px;
|
||||
|
||||
.name {
|
||||
padding-left: $padding-base-horizontal;
|
||||
font-weight: $font-weight-bold;
|
||||
overflow: hidden;
|
||||
font-weight: $font-weight-bold;
|
||||
}
|
||||
|
||||
.date {
|
||||
@@ -247,13 +247,13 @@ $story-sp-input-width: 50px;
|
||||
.editors {
|
||||
display: block;
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
padding-top: $editor-padding;
|
||||
border-radius: $border-radius-large $border-radius-large 0 0;
|
||||
background-color: $header-bg;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
label,
|
||||
@@ -299,6 +299,7 @@ $story-sp-input-width: 50px;
|
||||
.menu {
|
||||
position: relative;
|
||||
height: $header-line-height;
|
||||
overflow: visible;
|
||||
transition: background-color 0s .1s, border-color 0s .1s;
|
||||
border-right: 1px solid #888;
|
||||
border-bottom: 1px solid $header-bg;
|
||||
@@ -306,13 +307,12 @@ $story-sp-input-width: 50px;
|
||||
font-size: $font-size-small;
|
||||
line-height: $line-height-base;
|
||||
cursor: pointer;
|
||||
overflow: visible;
|
||||
|
||||
&:hover {
|
||||
z-index: 1000;
|
||||
transition: background-color 0s 0s, border-color 0s 0s;
|
||||
border-color: $body-bg;
|
||||
background-color: $body-bg;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
.icon {
|
||||
@@ -325,20 +325,20 @@ $story-sp-input-width: 50px;
|
||||
}
|
||||
|
||||
ul {
|
||||
visibility: hidden;
|
||||
position: absolute;
|
||||
z-index: 999;
|
||||
top: $header-line-height + 1px;
|
||||
left: -1px;
|
||||
margin: 0;
|
||||
padding: $padding-small-vertical 0;
|
||||
list-style: none;
|
||||
transition: visibility 0s .1s;
|
||||
border: 1px solid $header-bg;
|
||||
border-top-width: 0;
|
||||
border-radius: 0 0 $border-radius-base $border-radius-base;
|
||||
background-color: $body-bg;
|
||||
list-style: none;
|
||||
box-shadow: 0 2px 1px rgba(#000, .1);
|
||||
visibility: hidden;
|
||||
z-index: 999;
|
||||
|
||||
a {
|
||||
color: $gray-darker;
|
||||
@@ -346,8 +346,8 @@ $story-sp-input-width: 50px;
|
||||
}
|
||||
|
||||
&:hover .items {
|
||||
transition: visibility 0s 0s;
|
||||
visibility: visible;
|
||||
transition: visibility 0s 0s;
|
||||
}
|
||||
|
||||
.item {
|
||||
@@ -385,8 +385,8 @@ $story-sp-input-width: 50px;
|
||||
background-color: darken($body-bg, 8%);
|
||||
|
||||
ul {
|
||||
transition: visibility 0s 0s;
|
||||
visibility: visible;
|
||||
transition: visibility 0s 0s;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -399,9 +399,9 @@ $story-sp-input-width: 50px;
|
||||
|
||||
.close_sprint {
|
||||
float: left;
|
||||
overflow: hidden;
|
||||
color: $header-link;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.closedbacklog {
|
||||
@@ -425,8 +425,8 @@ $story-sp-input-width: 50px;
|
||||
min-height: ($line-height-computed + $table-condensed-cell-padding * 2);
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: $font-size-list;
|
||||
list-style: none;
|
||||
font-size: $font-size-list;
|
||||
|
||||
.v {
|
||||
display: none;
|
||||
@@ -492,6 +492,7 @@ $story-sp-input-width: 50px;
|
||||
text-align: right;
|
||||
|
||||
&::before {
|
||||
content: "#";
|
||||
margin-left: -1em;
|
||||
@if $color-trackers {
|
||||
color: mix($tracker-default-text, $tracker-default-bg, 50%);
|
||||
@@ -499,7 +500,6 @@ $story-sp-input-width: 50px;
|
||||
color: $gray-light;
|
||||
}
|
||||
font-weight: normal;
|
||||
content: "#";
|
||||
}
|
||||
|
||||
&:hover {
|
||||
@@ -527,9 +527,9 @@ $story-sp-input-width: 50px;
|
||||
width: $story-project-width;
|
||||
padding: $table-condensed-cell-padding 0 $table-condensed-cell-padding $table-condensed-cell-padding;
|
||||
float: left;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
|
||||
.t {
|
||||
overflow: hidden;
|
||||
@@ -592,9 +592,9 @@ $story-sp-input-width: 50px;
|
||||
|
||||
&:focus {
|
||||
border-color: darken($highlight-border, 15%);
|
||||
color: $gray-darkest;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075),
|
||||
0 0 5px rgba(darken($highlight-border, 15%), .5);
|
||||
color: $gray-darkest;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -646,8 +646,8 @@ $story-sp-input-width: 50px;
|
||||
width: calc(100% - #{$subject-width-minus}) !important; // scss-lint:disable ImportantRule
|
||||
height: 60px;
|
||||
float: left;
|
||||
white-space: normal;
|
||||
overflow: auto;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
&.category_id {
|
||||
@@ -682,8 +682,8 @@ $story-sp-input-width: 50px;
|
||||
// Override: display story subject in multiple lines
|
||||
.rb-multilinesubject & .subject {
|
||||
height: auto;
|
||||
white-space: normal;
|
||||
overflow: show;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
@if $color-trackers {
|
||||
|
||||
@@ -64,11 +64,11 @@ $swimlane-width: $issue-width + 2 * ($issue-margin + $issue-paddi
|
||||
|
||||
#board_header {
|
||||
position: absolute;
|
||||
z-index: 200;
|
||||
margin-right: 10px;
|
||||
margin-bottom: 0;
|
||||
border: 1px solid darken($header-bg, 5%);
|
||||
background-color: $header-bg;
|
||||
z-index: 200;
|
||||
|
||||
td {
|
||||
height: 20px;
|
||||
@@ -146,12 +146,12 @@ $swimlane-width: $issue-width + 2 * ($issue-margin + $issue-paddi
|
||||
.id {
|
||||
margin-bottom: 5px;
|
||||
padding: 0 3px;
|
||||
overflow: hidden;
|
||||
border-radius: $border-radius-base;
|
||||
opacity: .8;
|
||||
background-color: $body-bg;
|
||||
font-size: .9em;
|
||||
line-height: 16px;
|
||||
opacity: .8;
|
||||
overflow: hidden;
|
||||
|
||||
a,
|
||||
.remaininghours {
|
||||
@@ -174,8 +174,8 @@ $swimlane-width: $issue-width + 2 * ($issue-margin + $issue-paddi
|
||||
.subject {
|
||||
height: $issue-height * .6;
|
||||
padding: 2px;
|
||||
line-height: 1.3;
|
||||
overflow: hidden;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
&.closed .subject {
|
||||
@@ -245,14 +245,14 @@ $swimlane-width: $issue-width + 2 * ($issue-margin + $issue-paddi
|
||||
.id {
|
||||
margin-bottom: 5px;
|
||||
padding: 0 3px;
|
||||
overflow: hidden;
|
||||
border-radius: $border-radius-base;
|
||||
opacity: .8;
|
||||
background-color: $body-bg;
|
||||
font-size: $font-size-small-px;
|
||||
font-weight: $font-weight-bold;
|
||||
line-height: 16px;
|
||||
text-align: right;
|
||||
opacity: .8;
|
||||
overflow: hidden;
|
||||
|
||||
.v {
|
||||
display: none;
|
||||
@@ -284,9 +284,9 @@ $swimlane-width: $issue-width + 2 * ($issue-margin + $issue-paddi
|
||||
margin-top: 2px;
|
||||
padding: 2px;
|
||||
padding-top: 0;
|
||||
overflow: hidden;
|
||||
font-size: 9px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.v {
|
||||
@@ -375,9 +375,9 @@ $swimlane-width: $issue-width + 2 * ($issue-margin + $issue-paddi
|
||||
}
|
||||
|
||||
.ui-widget-header {
|
||||
opacity: .5;
|
||||
background: none;
|
||||
background-color: #fff;
|
||||
opacity: .5;
|
||||
}
|
||||
|
||||
.ui-dialog-title {
|
||||
|
||||