pdf.js/web/annotation_editor_layer_builder.css
Calixte Denizet a7a5e98b7e [Editor] Add a z-index in order to draw them in the right order
The elements in the annotationEditor layer are rearranged to make them
more accessible, but we must draw them in the order they have been created,
hence this patch adds a z-index to the editors.
2022-07-20 15:47:43 +02:00

148 lines
3.2 KiB
CSS

/* Copyright 2022 Mozilla Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
:root {
--focus-outline: solid 2px red;
--hover-outline: dashed 2px blue;
--freetext-line-height: 1.35;
--freetext-padding: 2px;
--editorInk-editing-cursor: url(images/toolbarButton-editorInk.svg) 0 16;
}
@media (forced-colors: active) {
:root {
--focus-outline: solid 3px ButtonText;
--hover-outline: dashed 3px ButtonText;
}
}
[data-editor-rotation="90"] {
transform: rotate(90deg);
}
[data-editor-rotation="180"] {
transform: rotate(180deg);
}
[data-editor-rotation="270"] {
transform: rotate(270deg);
}
.annotationEditorLayer {
background: transparent;
position: absolute;
top: 0;
left: 0;
font-size: calc(100px * var(--scale-factor));
transform-origin: 0 0;
}
.annotationEditorLayer .freeTextEditor {
position: absolute;
background: transparent;
border-radius: 3px;
padding: calc(var(--freetext-padding) * var(--scale-factor));
resize: none;
width: auto;
height: auto;
z-index: 1;
transform-origin: 0 0;
}
.annotationEditorLayer .freeTextEditor .internal {
background: transparent;
border: none;
top: 0;
left: 0;
overflow: visible;
white-space: nowrap;
resize: none;
font: 10px sans-serif;
line-height: var(--freetext-line-height);
}
.annotationEditorLayer .freeTextEditor .overlay {
position: absolute;
display: none;
background: transparent;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.annotationEditorLayer .freeTextEditor .overlay.enabled {
display: block;
}
.annotationEditorLayer .freeTextEditor .internal:empty::before {
content: attr(default-content);
color: gray;
}
.annotationEditorLayer .freeTextEditor .internal:focus {
outline: none;
}
.annotationEditorLayer .freeTextEditor:focus-within {
outline: var(--focus-outline);
}
.annotationEditorLayer .inkEditor:not(:focus) {
resize: none;
}
.annotationEditorLayer .freeTextEditor:hover:not(:focus-within),
.annotationEditorLayer .inkEditor:hover:not(:focus) {
outline: var(--hover-outline);
}
.annotationEditorLayer .inkEditor.disabled:focus {
resize: horizontal;
}
.annotationEditorLayer .inkEditor {
position: absolute;
background: transparent;
border-radius: 3px;
overflow: auto;
width: 100%;
height: 100%;
z-index: 1;
transform-origin: 0 0;
cursor: auto;
}
.annotationEditorLayer .inkEditor:focus {
outline: var(--focus-outline);
resize: both;
}
.annotationEditorLayer .inkEditor.editing {
resize: none;
cursor: var(--editorInk-editing-cursor), pointer;
}
.annotationEditorLayer .inkEditor .inkEditorCanvas {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.annotationEditorLayer .selectedEditor {
outline: var(--focus-outline);
resize: none;
}