doc: Make search engine configurable
Add UI to select preferred search engine when Google Programmable Search is enabled. The user's preference is saved using local storage. This also makes the search input field of type "search" for better UX (in particular on mobile). Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit is contained in:
parent
7688f4859c
commit
7e253ff937
5 changed files with 214 additions and 31 deletions
67
doc/_static/css/custom.css
vendored
67
doc/_static/css/custom.css
vendored
|
@ -552,7 +552,10 @@ kbd, .kbd,
|
|||
background-color: var(--navbar-background-color-active);
|
||||
}
|
||||
|
||||
.wy-side-nav-search input[type="text"] {
|
||||
.wy-side-nav-search input[type=search] {
|
||||
width: 100%;
|
||||
border-radius: 50px;
|
||||
padding: 6px 12px;
|
||||
background-color: var(--input-background-color);
|
||||
color: var(--body-color);
|
||||
/* Avoid reflowing when toggling the focus state */
|
||||
|
@ -563,11 +566,11 @@ kbd, .kbd,
|
|||
font-size: 14px;
|
||||
}
|
||||
|
||||
.wy-side-nav-search input[type="text"]:focus {
|
||||
.wy-side-nav-search input[type="search"]:focus {
|
||||
border: 2px solid var(--input-focus-border-color);
|
||||
}
|
||||
|
||||
.wy-side-nav-search input[type="text"]::placeholder {
|
||||
.wy-side-nav-search input[type="search"]::placeholder {
|
||||
color: var(--body-color);
|
||||
opacity: 0.55;
|
||||
}
|
||||
|
@ -889,3 +892,61 @@ dark-mode-toggle::part(toggleLabel){
|
|||
font-size: 3rem;
|
||||
color: white;
|
||||
}
|
||||
|
||||
/* Custom search box, including search engine selection */
|
||||
|
||||
.search-container {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#search-se-settings-icon {
|
||||
position: absolute;
|
||||
color: var(--body-color);
|
||||
right: 10px;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
cursor: pointer;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
#search-se-menu {
|
||||
display: none;
|
||||
position: absolute;
|
||||
font-size: 11px;
|
||||
background-color: var(--input-background-color);
|
||||
color: var(--body-color);
|
||||
right: 0px;
|
||||
top: 36px;
|
||||
border: solid 1px var(--body-color);
|
||||
border-radius: 10px;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
#search-se-menu ul {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#search-se-menu ul li {
|
||||
padding: 8px 12px;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
gap: 1em;
|
||||
}
|
||||
|
||||
#search-se-menu [role="menuitemradio"]:focus {
|
||||
background-color: var(--navbar-current-background-color-hover);
|
||||
color: var(--navbar-level-1-color);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#search-se-menu ul li .fa-check {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#search-se-menu ul li.selected .fa-check {
|
||||
display: inline;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue