Commit 222eddda authored by Mark Otto's avatar Mark Otto
Browse files

Merge branch 'v4-dev' into colors-redux

parents 1a23321f 16d77b4c
Showing with 173 additions and 173 deletions
+173 -173
...@@ -76,8 +76,10 @@ ...@@ -76,8 +76,10 @@
margin-left: -15px; margin-left: -15px;
@include media-breakpoint-up(md) { @include media-breakpoint-up(md) {
max-height: calc(100vh - 9rem); @supports (position: sticky) {
overflow-y: auto; max-height: calc(100vh - 9rem);
overflow-y: auto;
}
} }
// Override collapse behaviors // Override collapse behaviors
......
...@@ -35,7 +35,6 @@ module.exports = (ctx) => ({ ...@@ -35,7 +35,6 @@ module.exports = (ctx) => ({
'Android >= 4', 'Android >= 4',
'Opera >= 12' 'Opera >= 12'
] ]
}, }
'postcss-flexbugs-fixes': {}
} }
}) })
This diff is collapsed.
html{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0275d8;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important} html{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0275d8;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}/*# sourceMappingURL=bootstrap-reboot.min.css.map */
/*# sourceMappingURL=bootstrap-reboot.min.css.map */ \ No newline at end of file
\ No newline at end of file
...@@ -4629,8 +4629,8 @@ tbody.collapse.show { ...@@ -4629,8 +4629,8 @@ tbody.collapse.show {
display: -ms-flexbox; display: -ms-flexbox;
display: flex; display: flex;
-webkit-box-flex: 1; -webkit-box-flex: 1;
-webkit-flex: 1 0 0; -webkit-flex: 1 0 0%;
-ms-flex: 1 0 0px; -ms-flex: 1 0 0%;
flex: 1 0 0%; flex: 1 0 0%;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-direction: normal; -webkit-box-direction: normal;
...@@ -4656,8 +4656,8 @@ tbody.collapse.show { ...@@ -4656,8 +4656,8 @@ tbody.collapse.show {
} }
.card-group .card { .card-group .card {
-webkit-box-flex: 1; -webkit-box-flex: 1;
-webkit-flex: 1 0 0; -webkit-flex: 1 0 0%;
-ms-flex: 1 0 0px; -ms-flex: 1 0 0%;
flex: 1 0 0%; flex: 1 0 0%;
} }
.card-group .card + .card { .card-group .card + .card {
...@@ -4806,6 +4806,7 @@ tbody.collapse.show { ...@@ -4806,6 +4806,7 @@ tbody.collapse.show {
.pagination-lg .page-link { .pagination-lg .page-link {
padding: 0.75rem 1.5rem; padding: 0.75rem 1.5rem;
font-size: 1.25rem; font-size: 1.25rem;
line-height: 1.5;
} }
.pagination-lg .page-item:first-child .page-link { .pagination-lg .page-item:first-child .page-link {
...@@ -4821,6 +4822,7 @@ tbody.collapse.show { ...@@ -4821,6 +4822,7 @@ tbody.collapse.show {
.pagination-sm .page-link { .pagination-sm .page-link {
padding: 0.25rem 0.5rem; padding: 0.25rem 0.5rem;
font-size: 0.875rem; font-size: 0.875rem;
line-height: 1.5;
} }
.pagination-sm .page-item:first-child .page-link { .pagination-sm .page-item:first-child .page-link {
...@@ -5091,7 +5093,7 @@ a.badge:focus, a.badge:hover { ...@@ -5091,7 +5093,7 @@ a.badge:focus, a.badge:hover {
-webkit-box-flex: 1; -webkit-box-flex: 1;
-webkit-flex: 1; -webkit-flex: 1;
-ms-flex: 1; -ms-flex: 1;
flex: 1 1 0%; flex: 1;
} }
.list-group { .list-group {
......
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
This source diff could not be displayed because it is too large. You can view the blob instead.
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
This diff is collapsed.
This diff is collapsed.
...@@ -15,7 +15,7 @@ toc: true ...@@ -15,7 +15,7 @@ toc: true
<a href="{{ site.download.dist }}" class="btn btn-bd-purple" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download Bootstrap');">Download Bootstrap</a> <a href="{{ site.download.dist }}" class="btn btn-bd-purple" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download Bootstrap');">Download Bootstrap</a>
## Source files ## Source files
**Want to compile Bootstrap with your project's asset pipeline?** Choose this option to download our source Sass, JavaScript, and documentation files. Requires a Sass compiler, [Autoprefixer](https://github.com/postcss/autoprefixer), [postcss-flexbugs-fixes](https://github.com/luisrudge/postcss-flexbugs-fixes), and [some setup]({{ site.baseurl }}/docs/{{ site.docs_version }}/getting-started/build-tools/#tooling-setup). **Want to compile Bootstrap with your project's asset pipeline?** Choose this option to download our source Sass, JavaScript, and documentation files. Requires a Sass compiler, [Autoprefixer](https://github.com/postcss/autoprefixer), and [some setup]({{ site.baseurl }}/docs/{{ site.docs_version }}/getting-started/build-tools/#tooling-setup).
<a href="{{ site.download.source }}" class="btn btn-bd-purple" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download source');">Download source</a> <a href="{{ site.download.source }}" class="btn btn-bd-purple" onclick="ga('send', 'event', 'Getting started', 'Download', 'Download source');">Download source</a>
...@@ -30,7 +30,7 @@ Skip the download and use the Bootstrap CDN to deliver Bootstrap's compiled CSS ...@@ -30,7 +30,7 @@ Skip the download and use the Bootstrap CDN to deliver Bootstrap's compiled CSS
## Package managers ## Package managers
Pull in Bootstrap's **source files** into nearly any project with some of the most popular package managers. No matter the package manager, Bootstrap will **require a Sass compiler, [Autoprefixer](https://github.com/postcss/autoprefixer), and [postcss-flexbugs-fixes](https://github.com/luisrudge/postcss-flexbugs-fixes)** for a setup that matches our official compiled versions. Pull in Bootstrap's **source files** into nearly any project with some of the most popular package managers. No matter the package manager, Bootstrap will **require a Sass compiler and [Autoprefixer](https://github.com/postcss/autoprefixer)** for a setup that matches our official compiled versions.
### npm ### npm
......
...@@ -61,7 +61,7 @@ First, create your own `_custom.scss` and use it to override the [built-in custo ...@@ -61,7 +61,7 @@ First, create your own `_custom.scss` and use it to override the [built-in custo
@import "~bootstrap/scss/bootstrap"; @import "~bootstrap/scss/bootstrap";
{% endhighlight %} {% endhighlight %}
For Bootstrap to compile, make sure you install and use the required loaders: [sass-loader](https://github.com/webpack-contrib/sass-loader), [postcss-loader](https://github.com/postcss/postcss-loader) with [Autoprefixer](https://github.com/postcss/autoprefixer#webpack) and [postcss-flexbugs-fixes](https://github.com/luisrudge/postcss-flexbugs-fixes). With minimal setup, your webpack config should include this rule or similar: For Bootstrap to compile, make sure you install and use the required loaders: [sass-loader](https://github.com/webpack-contrib/sass-loader), [postcss-loader](https://github.com/postcss/postcss-loader) with [Autoprefixer](https://github.com/postcss/autoprefixer#webpack). With minimal setup, your webpack config should include this rule or similar:
{% highlight js %} {% highlight js %}
... ...
......
...@@ -39,14 +39,14 @@ var Alert = function ($) { ...@@ -39,14 +39,14 @@ var Alert = function ($) {
ALERT: 'alert', ALERT: 'alert',
FADE: 'fade', FADE: 'fade',
SHOW: 'show' SHOW: 'show'
};
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
* Class Definition * Class Definition
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
};
var Alert = function () { var Alert = function () {
function Alert(element) { function Alert(element) {
_classCallCheck(this, Alert); _classCallCheck(this, Alert);
...@@ -163,7 +163,7 @@ var Alert = function ($) { ...@@ -163,7 +163,7 @@ var Alert = function ($) {
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
$(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()) $(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
...@@ -171,7 +171,7 @@ var Alert = function ($) { ...@@ -171,7 +171,7 @@ var Alert = function ($) {
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
);$.fn[NAME] = Alert._jQueryInterface; $.fn[NAME] = Alert._jQueryInterface;
$.fn[NAME].Constructor = Alert; $.fn[NAME].Constructor = Alert;
$.fn[NAME].noConflict = function () { $.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT; $.fn[NAME] = JQUERY_NO_CONFLICT;
......
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
...@@ -41,14 +41,14 @@ var Button = function ($) { ...@@ -41,14 +41,14 @@ var Button = function ($) {
var Event = { var Event = {
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY, CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY,
FOCUS_BLUR_DATA_API: 'focus' + EVENT_KEY + DATA_API_KEY + ' ' + ('blur' + EVENT_KEY + DATA_API_KEY) FOCUS_BLUR_DATA_API: 'focus' + EVENT_KEY + DATA_API_KEY + ' ' + ('blur' + EVENT_KEY + DATA_API_KEY)
};
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
* Class Definition * Class Definition
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
};
var Button = function () { var Button = function () {
function Button(element) { function Button(element) {
_classCallCheck(this, Button); _classCallCheck(this, Button);
...@@ -154,7 +154,7 @@ var Button = function ($) { ...@@ -154,7 +154,7 @@ var Button = function ($) {
}).on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) { }).on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
var button = $(event.target).closest(Selector.BUTTON)[0]; var button = $(event.target).closest(Selector.BUTTON)[0];
$(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type)); $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type));
} });
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
...@@ -162,7 +162,7 @@ var Button = function ($) { ...@@ -162,7 +162,7 @@ var Button = function ($) {
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
);$.fn[NAME] = Button._jQueryInterface; $.fn[NAME] = Button._jQueryInterface;
$.fn[NAME].Constructor = Button; $.fn[NAME].Constructor = Button;
$.fn[NAME].noConflict = function () { $.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT; $.fn[NAME] = JQUERY_NO_CONFLICT;
......
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
...@@ -83,14 +83,14 @@ var Carousel = function ($) { ...@@ -83,14 +83,14 @@ var Carousel = function ($) {
INDICATORS: '.carousel-indicators', INDICATORS: '.carousel-indicators',
DATA_SLIDE: '[data-slide], [data-slide-to]', DATA_SLIDE: '[data-slide], [data-slide-to]',
DATA_RIDE: '[data-ride="carousel"]' DATA_RIDE: '[data-ride="carousel"]'
};
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
* Class Definition * Class Definition
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
};
var Carousel = function () { var Carousel = function () {
function Carousel(element, config) { function Carousel(element, config) {
_classCallCheck(this, Carousel); _classCallCheck(this, Carousel);
...@@ -493,7 +493,7 @@ var Carousel = function ($) { ...@@ -493,7 +493,7 @@ var Carousel = function ($) {
var $carousel = $(this); var $carousel = $(this);
Carousel._jQueryInterface.call($carousel, $carousel.data()); Carousel._jQueryInterface.call($carousel, $carousel.data());
}); });
} });
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
...@@ -501,7 +501,7 @@ var Carousel = function ($) { ...@@ -501,7 +501,7 @@ var Carousel = function ($) {
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
);$.fn[NAME] = Carousel._jQueryInterface; $.fn[NAME] = Carousel._jQueryInterface;
$.fn[NAME].Constructor = Carousel; $.fn[NAME].Constructor = Carousel;
$.fn[NAME].noConflict = function () { $.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT; $.fn[NAME] = JQUERY_NO_CONFLICT;
......
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
...@@ -60,14 +60,14 @@ var Collapse = function ($) { ...@@ -60,14 +60,14 @@ var Collapse = function ($) {
var Selector = { var Selector = {
ACTIVES: '.show, .collapsing', ACTIVES: '.show, .collapsing',
DATA_TOGGLE: '[data-toggle="collapse"]' DATA_TOGGLE: '[data-toggle="collapse"]'
};
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
* Class Definition * Class Definition
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
};
var Collapse = function () { var Collapse = function () {
function Collapse(element, config) { function Collapse(element, config) {
_classCallCheck(this, Collapse); _classCallCheck(this, Collapse);
...@@ -249,8 +249,8 @@ var Collapse = function ($) { ...@@ -249,8 +249,8 @@ var Collapse = function ($) {
Collapse.prototype._getConfig = function _getConfig(config) { Collapse.prototype._getConfig = function _getConfig(config) {
config = $.extend({}, Default, config); config = $.extend({}, Default, config);
config.toggle = Boolean(config.toggle // coerce string values config.toggle = Boolean(config.toggle); // coerce string values
);Util.typeCheckConfig(NAME, config, DefaultType); Util.typeCheckConfig(NAME, config, DefaultType);
return config; return config;
}; };
...@@ -347,7 +347,7 @@ var Collapse = function ($) { ...@@ -347,7 +347,7 @@ var Collapse = function ($) {
var config = data ? 'toggle' : $trigger.data(); var config = data ? 'toggle' : $trigger.data();
Collapse._jQueryInterface.call($target, config); Collapse._jQueryInterface.call($target, config);
}); });
} });
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
...@@ -355,7 +355,7 @@ var Collapse = function ($) { ...@@ -355,7 +355,7 @@ var Collapse = function ($) {
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
);$.fn[NAME] = Collapse._jQueryInterface; $.fn[NAME] = Collapse._jQueryInterface;
$.fn[NAME].Constructor = Collapse; $.fn[NAME].Constructor = Collapse;
$.fn[NAME].noConflict = function () { $.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT; $.fn[NAME] = JQUERY_NO_CONFLICT;
......
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment