summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/browser/resources/pdf/elements/viewer-pdf-toolbar.html
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/browser/resources/pdf/elements/viewer-pdf-toolbar.html')
-rw-r--r--chromium/chrome/browser/resources/pdf/elements/viewer-pdf-toolbar.html289
1 files changed, 289 insertions, 0 deletions
diff --git a/chromium/chrome/browser/resources/pdf/elements/viewer-pdf-toolbar.html b/chromium/chrome/browser/resources/pdf/elements/viewer-pdf-toolbar.html
new file mode 100644
index 00000000000..348e2215fed
--- /dev/null
+++ b/chromium/chrome/browser/resources/pdf/elements/viewer-pdf-toolbar.html
@@ -0,0 +1,289 @@
+<link rel="import" href="chrome://resources/html/polymer.html">
+
+<link rel="import" href="chrome://resources/cr_elements/cr_icon_button/cr_icon_button.html">
+<link rel="import" href="chrome://resources/cr_elements/hidden_style_css.html">
+<link rel="import" href="chrome://resources/polymer/v1_0/paper-progress/paper-progress.html">
+<link rel="import" href="chrome://resources/cr_elements/icons.html">
+<link rel="import" href="icons.html">
+<link rel="import" href="viewer-bookmark.html">
+<link rel="import" href="viewer-page-selector.html">
+<if expr="chromeos">
+<link rel="import" href="viewer-pen-options.html">
+</if>
+<link rel="import" href="viewer-toolbar-dropdown.html">
+
+<dom-module id="viewer-pdf-toolbar">
+ <template>
+ <style include="cr-hidden-style">
+ :host ::selection {
+ background: rgba(255, 255, 255, 0.3);
+ }
+
+ /* We introduce a wrapper aligner element to help with laying out the main
+ * toolbar content without changing the bottom-aligned progress bar. */
+ #aligner {
+ align-items: center;
+ display: flex;
+ padding: 0 8px;
+ width: 100%;
+ }
+
+ #title {
+ flex: 5;
+ font-size: 0.87rem;
+ font-weight: 500;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+
+ #pageselector-container {
+ text-align: center;
+ /* The container resizes according to the width of the toolbar. On small
+ * screens with large numbers of pages, overflow page numbers without
+ * wrapping. */
+ white-space: nowrap;
+ }
+
+ #buttons {
+ flex: 5;
+ text-align: end;
+ user-select: none;
+ }
+
+ cr-icon-button {
+ --cr-icon-button-color: rgb(241, 241, 241);
+ margin: 6px;
+ }
+
+ cr-icon-button:hover {
+ background: rgba(255, 255, 255, 0.08);
+ border-radius: 50%;
+ }
+
+ paper-progress {
+ --paper-progress-active-color: var(--google-blue-300);
+ --paper-progress-container-color: transparent;
+ --paper-progress-height: 3px;
+ transition: opacity 150ms;
+ width: 100%;
+ }
+
+ #toolbar {
+ @apply --shadow-elevation-2dp;
+ background-color: rgb(50, 54, 57);
+ position: relative;
+ }
+
+ #annotations-bar {
+ align-items: center;
+ background-color: rgb(32, 33, 34);
+ justify-content: center;
+ }
+
+ #toolbar,
+ #annotations-bar {
+ color: rgb(241, 241, 241);
+ display: flex;
+ height: 48px;
+ padding: 0 16px;
+ }
+
+ #progress-container {
+ bottom: 0;
+ left: 0;
+ margin: 0;
+ position: absolute;
+ right: 0;
+ top: auto;
+ width: auto;
+ }
+
+ #pen,
+ #highlighter {
+ --dropdown-width: 346px;
+ }
+
+ #pen,
+ #highlighter {
+ --dropdown-open-background: rgb(50, 54, 57);
+ }
+
+ #eraser {
+ opacity: 0.38;
+ }
+
+ #eraser[selected],
+ #eraser:focus,
+ #eraser:hover {
+ opacity: 1;
+ }
+
+ #annotation-separator {
+ background: white;
+ height: 30px;
+ margin-inline-end: 12px;
+ margin-inline-start: 12px;
+ opacity: 0.38;
+ width: 1px;
+ }
+
+ :host([annotation-mode]) #annotate {
+ background-color: rgba(255, 255, 255, 0.24);
+ border-radius: 50%;
+ }
+
+ #bookmarks {
+ margin-inline-start: 8px;
+ }
+
+ #pen {
+ margin-inline-end: 10px;
+ }
+
+ #highlighter {
+ margin-inline-end: 6px;
+ }
+
+ .invisible {
+ visibility: hidden;
+ }
+
+ @media(max-width: 675px) {
+ #bookmarks,
+ #rotate-left {
+ display: none;
+ }
+
+ #pageselector-container {
+ flex: 2;
+ }
+ }
+
+ @media(max-width: 450px) {
+ #rotate-right {
+ display: none;
+ }
+ }
+
+ @media(max-width: 400px) {
+ #buttons,
+ #pageselector-container {
+ display: none;
+ }
+ }
+ </style>
+ <div id="toolbar">
+ <div id="aligner">
+ <span id="title" title="{{docTitle}}">
+ <span>{{docTitle}}</span>
+ </span>
+
+ <div id="pageselector-container">
+ <viewer-page-selector id="pageselector" class="invisible"
+ doc-length="{{docLength}}" page-no="{{pageNo}}"
+ strings="{{strings}}">
+ </viewer-page-selector>
+ </div>
+
+ <div id="buttons" class="invisible">
+ <template is="dom-if" if="[[pdfAnnotationsEnabled]]">
+ <cr-icon-button id="annotate" iron-icon="pdf:create"
+ disabled="[[!annotationAvailable]]" on-click="toggleAnnotation"
+ aria-label$="{{strings.tooltipAnnotate}}"
+ title$="{{strings.tooltipAnnotate}}"></cr-icon-button>
+ </template>
+
+ <cr-icon-button id="rotate-right" iron-icon="pdf:rotate-right"
+ disabled="[[annotationMode]]" on-click="rotateRight"
+ aria-label$="{{strings.tooltipRotateCW}}"
+ title$="{{strings.tooltipRotateCW}}"></cr-icon-button>
+
+ <cr-icon-button id="download" iron-icon="cr:file-download"
+ on-click="download" aria-label$="{{strings.tooltipDownload}}"
+ title$="{{strings.tooltipDownload}}"></cr-icon-button>
+
+ <cr-icon-button id="print" iron-icon="cr:print" on-click="print"
+ hidden="[[!printingEnabled]]" title$="{{strings.tooltipPrint}}"
+ aria-label$="{{strings.tooltipPrint}}"></cr-icon-button>
+
+ <viewer-toolbar-dropdown id="bookmarks"
+ selected
+ metrics-id="bookmarks"
+ hidden$="[[!bookmarks.length]]"
+ open-icon="pdf:bookmark"
+ closed-icon="pdf:bookmark-border"
+ header="{{strings.bookmarks}}">
+ <template is="dom-repeat" items="[[bookmarks]]">
+ <viewer-bookmark bookmark="[[item]]" depth="0"></viewer-bookmark>
+ </template>
+ </viewer-toolbar-dropdown>
+ </div>
+ </div>
+ <div id="progress-container">
+ <paper-progress id="progress"
+ value="[[loadProgress]]"
+ indeterminate="[[annotationMode]]"></paper-progress>
+ </div>
+ </div>
+
+ <div id="annotations-bar" hidden>
+ <viewer-toolbar-dropdown id="pen"
+ selected$="[[isAnnotationTool_('pen', annotationTool.tool)]]"
+ open-after-select
+ on-click="annotationToolClicked_"
+ open-icon="pdf:marker"
+ closed-icon="pdf:marker"
+ dropdown-centered
+ hide-header
+ header$="{{strings.annotationPen}}"
+ style="--pen-tip-fill: #000000">
+ <viewer-pen-options
+ selected-color="#000000"
+ selected-size="0.1429"
+ strings="[[strings]]"
+ on-selected-size-changed="annotationToolOptionChanged_"
+ on-selected-color-changed="annotationToolOptionChanged_">
+ </viewer-pen-options>
+ </viewer-toolbar-dropdown>
+
+ <viewer-toolbar-dropdown id="highlighter"
+ selected$="[[isAnnotationTool_('highlighter', annotationTool.tool)]]"
+ open-after-select
+ on-click="annotationToolClicked_"
+ open-icon="pdf:highlighter"
+ closed-icon="pdf:highlighter"
+ dropdown-centered
+ hide-header
+ header$="{{strings.annotationHighlighter}}"
+ style="--pen-tip-fill: #ffbc00">
+ <viewer-pen-options
+ selected-color="#ffbc00"
+ selected-size="0.7143"
+ strings="[[strings]]"
+ on-selected-size-changed="annotationToolOptionChanged_"
+ on-selected-color-changed="annotationToolOptionChanged_">
+ </viewer-pen-options>
+ </viewer-toolbar-dropdown>
+
+ <cr-icon-button id="eraser"
+ selected$="[[isAnnotationTool_('eraser', annotationTool.tool)]]"
+ on-click="annotationToolClicked_" iron-icon="pdf:eraser"
+ aria-label$="{{strings.annotationEraser}}"
+ title$="{{strings.annotationEraser}}"></cr-icon-button>
+
+ <div id="annotation-separator"></div>
+
+ <cr-icon-button id="undo" disabled="[[!canUndoAnnotation]]"
+ iron-icon="pdf:undo" on-click="undo"
+ aria-label$="{{strings.annotationUndo}}"
+ title$="{{strings.annotationUndo}}"></cr-icon-button>
+
+ <cr-icon-button id="redo" disabled="[[!canRedoAnnotation]]"
+ iron-icon="pdf:redo" on-click="redo"
+ aria-label$="{{strings.annotationRedo}}"
+ title$="{{strings.annotationRedo}}"></cr-icon-button>
+ </div>
+ </template>
+ <script src="viewer-pdf-toolbar.js"></script>
+</dom-module>