mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/RevisionSlider
synced 2024-12-12 15:35:11 +00:00
6502728184
This adds a button which allows a user to make revision slider automatically expand on each diff page (disabled by default). User's choice is stored as a hidden user preference. This is a bit hacky as it squeezes a button on top of another button (100% wide expand/collapse button). This also adjusts styles of ToggleButtonWidget so the button looks more like a frameless button, although it is created as a framed one (to have inverted behaviour when button is in its "on" state). The button only gets visible when Resource Loader finishes loading JS and CSS to avoid button jumping around the top of slider window before "right" styles are applied. Bug: T142196 Change-Id: Id561485344cba9b136666fe31b086151467de19e
286 lines
5.1 KiB
CSS
286 lines
5.1 KiB
CSS
.mw-revslider-container {
|
|
/* This will flip with CSSJanus in case */
|
|
/* the interface is in RTL */
|
|
direction: ltr;
|
|
position: relative;
|
|
}
|
|
|
|
.mw-revslider-toggle-button {
|
|
width: 100%;
|
|
text-align: center;
|
|
}
|
|
|
|
.mw-revslider-toggle-button .oo-ui-buttonElement-button {
|
|
width: 100%;
|
|
}
|
|
|
|
.mw-revslider-toggle-button .oo-ui-labelElement-label {
|
|
line-height: 1.875em;
|
|
}
|
|
|
|
.mw-revslider-toggle-button .oo-ui-iconElement-icon {
|
|
float: right;
|
|
}
|
|
|
|
.mw-revslider-auto-expand-button {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 1.875em;
|
|
}
|
|
|
|
/* This is a bit hacky way, the goal being to have a framed toggle button widget with some styles
|
|
of the frameless one (to fit the size of the toggle button */
|
|
.mw-revslider-auto-expand-button .oo-ui-buttonElement-button {
|
|
z-index: 10;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
width: 1.875em;
|
|
height: 1.875em;
|
|
}
|
|
|
|
.mw-revslider-button-active {
|
|
background-color: #999;
|
|
}
|
|
|
|
.mw-revslider-revision {
|
|
position: relative;
|
|
margin-top: 70px;
|
|
background-color: #e3e3e3;
|
|
border-color: #e3e3e3;
|
|
}
|
|
|
|
.mw-revslider-revision:hover,
|
|
.mw-revslider-revision-wrapper-hovered .mw-revslider-revision {
|
|
background-color: #ccc;
|
|
border-color: #ccc;
|
|
transition: all ease 0.2s;
|
|
-webkit-transition: all ease 0.2s;
|
|
-moz-transition: all ease 0.2s;
|
|
-o-transition: all ease 0.2s;
|
|
}
|
|
|
|
.mw-revslider-revision-up {
|
|
border-bottom-width: 2px;
|
|
border-bottom-style: solid;
|
|
}
|
|
|
|
.mw-revslider-revision-down {
|
|
border-top-width: 2px;
|
|
border-top-style: solid;
|
|
}
|
|
|
|
.mw-revslider-revision-old {
|
|
background-color: #fee6a8;
|
|
border-color: #e8bd4f;
|
|
}
|
|
|
|
.mw-revslider-revision-old:hover,
|
|
.mw-revslider-revision-wrapper-hovered .mw-revslider-revision-old {
|
|
background-color: #fdc44b;
|
|
border-color: #dda000;
|
|
}
|
|
|
|
.mw-revslider-revision-new {
|
|
background-color: #c3e2ff;
|
|
border-color: #1e6db8;
|
|
}
|
|
|
|
.mw-revslider-revision-new:hover,
|
|
.mw-revslider-revision-wrapper-hovered .mw-revslider-revision-new {
|
|
background-color: #45a6ff;
|
|
border-color: #065cad;
|
|
}
|
|
|
|
.mw-revslider-revision-intermediate {
|
|
background-color: #bcbcbc;
|
|
border-color: #989898;
|
|
}
|
|
|
|
.mw-revslider-revision-intermediate:hover,
|
|
.mw-revslider-revision-wrapper-hovered .mw-revslider-revision-intermediate {
|
|
background-color: #a6a6a6;
|
|
border-color: #828282;
|
|
}
|
|
|
|
.mw-revslider-revision-wrapper {
|
|
display: inline-block;
|
|
cursor: pointer;
|
|
z-index: 10;
|
|
height: 140px;
|
|
}
|
|
|
|
.mw-revslider-revision-wrapper:hover,
|
|
.mw-revslider-revision-wrapper-hovered {
|
|
background-color: #f2f2f2;
|
|
}
|
|
|
|
.mw-revslider-revision-border-box {
|
|
height: 100%;
|
|
width: 100%;
|
|
border-left: solid 1px #fff;
|
|
}
|
|
|
|
.mw-revslider-tooltip {
|
|
font-size: 0.8em;
|
|
}
|
|
|
|
.mw-revslider-revision-tooltip .mw-revslider-change-positive {
|
|
color: #006400;
|
|
}
|
|
|
|
.mw-revslider-revision-tooltip .mw-revslider-change-negative {
|
|
color: #8b0000;
|
|
}
|
|
|
|
.mw-revslider-revision-tooltip .mw-revslider-change-none {
|
|
color: #aaa;
|
|
}
|
|
|
|
.mw-revslider-arrow-tooltip,
|
|
.mw-revslider-help-tooltip {
|
|
text-align: center;
|
|
}
|
|
|
|
.mw-revslider-revisions {
|
|
height: 140px;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.mw-revslider-revisions-container {
|
|
width: 90%;
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.mw-revslider-revisions-container,
|
|
.mw-revslider-arrow {
|
|
float: left;
|
|
}
|
|
|
|
.mw-revslider-arrow {
|
|
width: 22px;
|
|
height: 142px;
|
|
}
|
|
|
|
.mw-revslider-arrow .oo-ui-buttonElement-button {
|
|
height: 140px;
|
|
width: 20px;
|
|
padding: 0;
|
|
}
|
|
|
|
.mw-revslider-auto-expand-button.oo-ui-buttonElement > .oo-ui-buttonElement-button {
|
|
border-color: #fff;
|
|
}
|
|
|
|
.mw-revslider-arrow .oo-ui-iconElement-icon {
|
|
width: 20px;
|
|
height: 20px;
|
|
min-width: inherit;
|
|
min-height: inherit;
|
|
}
|
|
|
|
.mw-revslider-auto-expand-button.oo-ui-iconElement > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon {
|
|
position: static;
|
|
left: auto;
|
|
top: auto;
|
|
}
|
|
|
|
.mw-revslider-arrow.oo-ui-iconElement > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon {
|
|
left: 0;
|
|
top: 61px;
|
|
}
|
|
|
|
.mw-revslider-arrow-backwards {
|
|
margin-right: 30px;
|
|
}
|
|
|
|
.mw-revslider-arrow-forwards {
|
|
margin-left: 30px;
|
|
margin-right: 0;
|
|
}
|
|
|
|
.mw-revslider-revision-slider {
|
|
position: relative;
|
|
margin: auto;
|
|
}
|
|
|
|
.mw-revslider-pointer-container {
|
|
position: absolute;
|
|
clear: both;
|
|
top: 57px;
|
|
margin: auto;
|
|
z-index: 10;
|
|
}
|
|
|
|
.mw-revslider-pointer-upper {
|
|
padding: 4px 4px 0 4px;
|
|
margin-left: -4px;
|
|
margin-top: -4px;
|
|
background-position: 4px 0;
|
|
}
|
|
.mw-revslider-pointer-lower {
|
|
top: 15px;
|
|
padding: 0 4px 4px 4px;
|
|
margin-left: -4px;
|
|
background-position: 4px 0;
|
|
}
|
|
|
|
.mw-revslider-pointer {
|
|
position: absolute !important; /* stylelint-disable-line declaration-no-important */
|
|
z-index: 11;
|
|
width: 18px;
|
|
height: 13px;
|
|
background-repeat: no-repeat;
|
|
}
|
|
|
|
.mw-revslider-pointer-cursor {
|
|
cursor: ew-resize;
|
|
}
|
|
|
|
.mw-revslider-revisions-older {
|
|
float: left;
|
|
}
|
|
|
|
.mw-revslider-revisions-newer {
|
|
float: right;
|
|
}
|
|
|
|
.mw-revslider-diff-loading {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.mw-revslider-help-dialog-image-landscape {
|
|
height: 160px;
|
|
width: 100%;
|
|
background-repeat: no-repeat;
|
|
background-position: center;
|
|
}
|
|
|
|
.mw-revslider-help-dialog-image-portrait {
|
|
height: 180px;
|
|
width: 100%;
|
|
background-repeat: no-repeat;
|
|
background-position: center;
|
|
}
|
|
|
|
.mw-revslider-column-image {
|
|
width: 50%;
|
|
float: left;
|
|
}
|
|
|
|
.mw-revslider-column-text {
|
|
width: 50%;
|
|
float: right;
|
|
}
|
|
|
|
.mw-revslider-help-dialog-text {
|
|
font-size: 14px;
|
|
}
|
|
|
|
.mw-revslider-show-help {
|
|
position: absolute;
|
|
right: 0;
|
|
bottom: 0;
|
|
margin-right: 0;
|
|
}
|