Files
react-native-devtools-frontend/front_end/ui/suggestBox.css
T
Erik Luo be755146c3 DevTools: fix suggestbox preferred width measurement
SuggestBox determines its preferred width by taking the character
length of the longest item, which includes whitespace. However,
whitespace is not preserved without 'white-space: pre', so
measurements are incorrect.

Screenshot: https://imgur.com/a/LcQEQ

Furthermore, preferred width measurements do not factor in the
scrollbar width.

Screenshot: https://imgur.com/a/x8MEF

Bug: 825386
Change-Id: I785dfca5d6a75832c62f41fa8140fb5f8c0dd3f1
Reviewed-on: https://chromium-review.googlesource.com/978937
Commit-Queue: Erik Luo <luoe@chromium.org>
Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#563129}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b43ea0045676c99221996b441a0bfcce9741fb47
2018-05-31 02:36:56 +00:00

101 lines
2.7 KiB
CSS

/*
* Copyright (C) 2011 Google Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following disclaimer
* in the documentation and/or other materials provided with the
* distribution.
* * Neither the name of Google Inc. nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
:host {
display: flex;
flex: auto;
}
.suggest-box {
flex: auto;
background-color: #FFFFFF;
pointer-events: auto;
margin-left: -3px;
box-shadow: var(--drop-shadow);
overflow-x: hidden;
}
.suggest-box-content-item {
padding: 1px 0 1px 1px;
margin: 0;
border: 1px solid transparent;
white-space: nowrap;
display: flex;
}
.suggest-box-content-item.secondary {
background-color: #f9f9f9;
}
.suggestion-title {
overflow: hidden;
text-overflow: ellipsis;
}
.suggestion-title span {
white-space: pre;
}
.suggestion-subtitle {
flex: auto;
text-align: right;
color: #999;
margin-right: 3px;
overflow: hidden;
text-overflow: ellipsis;
}
.suggestion-icon {
user-select: none;
align-self: center;
flex-shrink: 0;
}
.suggest-box-content-item .query {
font-weight: bold;
}
.suggest-box-content-item .spacer {
display: inline-block;
width: 20px;
}
.suggest-box-content-item.selected {
background-color: var(--selection-bg-color);
}
.suggest-box-content-item.selected > span {
color: var(--selection-fg-color);
}
.suggest-box-content-item:hover:not(.selected) {
background-color: rgba(56, 121, 217, 0.1);
}