
Upate to use 'link' version as per mocks, and align right. Change-Id: I1955ca3f715f1eea495dde8987d99defab485fbc
104 lines
3.2 KiB
HTML
104 lines
3.2 KiB
HTML
<!--
|
|
Copyright (C) 2016 The Android Open Source Project
|
|
|
|
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.
|
|
-->
|
|
<link rel="import" href="../../../bower_components/polymer/polymer.html">
|
|
|
|
<link rel="import" href="../../../behaviors/keyboard-shortcut-behavior/keyboard-shortcut-behavior.html">
|
|
<link rel="import" href="../../../bower_components/iron-dropdown/iron-dropdown.html">
|
|
<link rel="import" href="../../../bower_components/paper-input/paper-input.html">
|
|
<link rel="import" href="../../../styles/shared-styles.html">
|
|
|
|
<dom-module id="gr-editable-label">
|
|
<template>
|
|
<style include="shared-styles">
|
|
:host {
|
|
align-items: center;
|
|
display: inline-flex;
|
|
}
|
|
:host([uppercase]) label {
|
|
text-transform: uppercase;
|
|
}
|
|
input,
|
|
label {
|
|
width: 100%;
|
|
}
|
|
input {
|
|
font: inherit;
|
|
}
|
|
label {
|
|
color: #777;
|
|
display: inline-block;
|
|
font-family: var(--font-family-bold);
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
label.editable {
|
|
color: var(--color-link);
|
|
cursor: pointer;
|
|
}
|
|
#dropdown {
|
|
box-shadow: rgba(0, 0, 0, 0.3) 0 1px 3px;
|
|
}
|
|
.inputContainer {
|
|
padding: .8em;
|
|
background-color: #fff;
|
|
}
|
|
.buttons {
|
|
display: flex;
|
|
padding-top: 1.2em;
|
|
justify-content: flex-end;
|
|
width: 100%;
|
|
}
|
|
.buttons gr-button {
|
|
margin-left: .5em;
|
|
}
|
|
paper-input {
|
|
--paper-input-container: {
|
|
padding: 0;
|
|
min-width: 15em;
|
|
}
|
|
--paper-input-container-input: {
|
|
font-size: 1em;
|
|
}
|
|
}
|
|
</style>
|
|
<label
|
|
class$="[[_computeLabelClass(readOnly, value, placeholder)]]"
|
|
title$="[[_computeLabel(value, placeholder)]]"
|
|
on-tap="_showDropdown">[[_computeLabel(value, placeholder)]]</label>
|
|
<iron-dropdown id="dropdown"
|
|
vertical-align="auto"
|
|
horizontal-align="auto"
|
|
vertical-offset="[[_verticalOffset]]"
|
|
allow-outside-scroll="true"
|
|
on-iron-overlay-canceled="_cancel">
|
|
<div class="dropdown-content" slot="dropdown-content">
|
|
<div class="inputContainer">
|
|
<paper-input
|
|
id="input"
|
|
label="[[labelText]]"
|
|
value="{{_inputText}}"></paper-input>
|
|
<div class="buttons">
|
|
<gr-button link id="cancelBtn" on-tap="_cancel">cancel</gr-button>
|
|
<gr-button link id="saveBtn" on-tap="_save">save</gr-button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</iron-dropdown>
|
|
</template>
|
|
<script src="gr-editable-label.js"></script>
|
|
</dom-module>
|