From 9723cef99abab2aa4058343430018605b9368e56 Mon Sep 17 00:00:00 2001 From: Alexandre Flament Date: Sun, 5 Jun 2022 23:03:26 +0200 Subject: [PATCH 1/2] Revert "Theme: add a preference to center the results (Oscar)" This reverts commit 4237f5fd50c2dc0e91513056d885f25038ef6787. --- searx/preferences.py | 10 - searx/settings.yml | 2 - searx/settings_defaults.py | 1 - .../themes/simple/src/less/definitions.less | 1 - .../themes/simple/src/less/style-center.less | 102 ---------- .../static/themes/simple/src/less/style.less | 179 +++++++++--------- searx/templates/simple/base.html | 2 +- searx/templates/simple/preferences.html | 10 - 8 files changed, 88 insertions(+), 219 deletions(-) delete mode 100644 searx/static/themes/simple/src/less/style-center.less diff --git a/searx/preferences.py b/searx/preferences.py index a7ecac55e..46b7b39d7 100644 --- a/searx/preferences.py +++ b/searx/preferences.py @@ -365,16 +365,6 @@ class Preferences: locked=is_locked('simple_style'), choices=['', 'auto', 'light', 'dark'] ), - 'center_aligment': MapSetting( - settings['ui']['center_aligment'], - locked=is_locked('center_aligment'), - map={ - '0': False, - '1': True, - 'False': False, - 'True': True - } - ), 'advanced_search': MapSetting( settings['ui']['advanced_search'], locked=is_locked('advanced_search'), diff --git a/searx/settings.yml b/searx/settings.yml index 8f3ae137f..8a97bbcdc 100644 --- a/searx/settings.yml +++ b/searx/settings.yml @@ -82,8 +82,6 @@ ui: query_in_title: false # ui theme default_theme: simple - # center the results ? - center_aligment: false # Default interface locale - leave blank to detect from browser information or # use codes from the 'locales' config section default_locale: "" diff --git a/searx/settings_defaults.py b/searx/settings_defaults.py index c3dfb563b..938b9714d 100644 --- a/searx/settings_defaults.py +++ b/searx/settings_defaults.py @@ -183,7 +183,6 @@ SCHEMA = { 'theme_args': { 'simple_style': SettingsValue(SIMPLE_STYLE, 'auto'), }, - 'center_aligment': SettingsValue(bool, False), 'results_on_new_tab': SettingsValue(bool, False), 'advanced_search': SettingsValue(bool, False), 'query_in_title': SettingsValue(bool, False), diff --git a/searx/static/themes/simple/src/less/definitions.less b/searx/static/themes/simple/src/less/definitions.less index ef6b02b2c..dc2717067 100644 --- a/searx/static/themes/simple/src/less/definitions.less +++ b/searx/static/themes/simple/src/less/definitions.less @@ -243,7 +243,6 @@ /// General Size @results-width: 45rem; -@results-sidebar-width: 25rem; @results-offset: 10rem; @results-tablet-offset: 0.5rem; @results-gap: 5rem; diff --git a/searx/static/themes/simple/src/less/style-center.less b/searx/static/themes/simple/src/less/style-center.less deleted file mode 100644 index 749aab4e8..000000000 --- a/searx/static/themes/simple/src/less/style-center.less +++ /dev/null @@ -1,102 +0,0 @@ -/* ---center-page-width overrides the less variable @results-width when the results are centered -see the CSS rules for #results in style.less ( grid-template-columns and gap). - -In this file, the --center-page-width values comes from the Oscar theme (Bootstrap 3). - -All rules starts with ".center-aligment-yes #main_results" to be enabled only -on the /search URL and when the "center alignment" preference is enabled. -*/ - -@media screen and (min-width: @phone) { - .center-aligment-yes #main_results { - --center-page-width: 48rem; - } -} - -@media screen and (min-width: 62rem) { - .center-aligment-yes #main_results { - --center-page-width: 60rem; - } -} - -@media screen and (min-width: @tablet) { - .center-aligment-yes #main_results { - --center-page-width: 73rem; - } -} - -@media screen and (min-width: @phone) and (max-width: @tablet) { - .center-aligment-yes #main_results { - #results { - grid-template-columns: 60% 1fr; - margin-left: 0; - margin-right: 0; - } - - #urls { - .ltr-margin-left(3rem); - } - - #sidebar { - .ltr-margin-right(1rem); - } - - #backToTop { - .ltr-left(calc(60% + 1rem)); - } - } -} - -@media screen and (min-width: @tablet) { - .center-aligment-yes #main_results { - display: flex; - flex-direction: column; - align-items: center; - - #search { - width: 100%; - display: flex; - flex-direction: column; - align-items: center; - } - - #search_header { - grid-template-columns: calc(50% - 4.5rem - var(--center-page-width) / 2) 3rem var(--center-page-width); - grid-template-areas: "na logo search" "na spacer categories"; - width: 100%; - padding-left: 0; - padding-right: 0; - } - - .search_filters { - .ltr-margin-left(0.5rem); - width: var(--center-page-width); - } - - #results { - &.only_template_images, - &.image-detail-open { - // * grid-template-columns and .ltr-margin-left are set in style.less - // * With .image-detail-open.only_template_images, the width is set in detail.less - // * #results is going to be centered because of the #main_results rules, - // align-self aligns the results on the left or right according to the language. - align-self: flex-start; - } - - &:not(.only_template_images):not(.image-detail-open) { - // the gap is set in style.less - .ltr-margin-left(1.5rem); - grid-template-columns: calc(var(--center-page-width) - @results-gap - @results-sidebar-width) @results-sidebar-width; - - #backToTop { - .ltr-left(calc(50% - @results-sidebar-width - @results-gap + 1rem + var(--center-page-width) / 2)); - } - } - - .result .content { - max-width: inherit; - } - } - } -} diff --git a/searx/static/themes/simple/src/less/style.less b/searx/static/themes/simple/src/less/style.less index 6777cbadc..45c6eb204 100644 --- a/searx/static/themes/simple/src/less/style.less +++ b/searx/static/themes/simple/src/less/style.less @@ -29,9 +29,6 @@ // Search-Field @import "search.less"; -// to center the results -@import "style-center.less"; - // ion-icon .ion-icon { display: inline-block; @@ -463,7 +460,7 @@ article[data-vim-selected].category-social { margin-bottom: 0; .ltr-margin-left(@results-offset); display: grid; - grid-template-columns: @results-width @results-sidebar-width; + grid-template-columns: @results-width 25rem; grid-template-rows: min-content min-content 1fr min-content; gap: 0 @results-gap; grid-template-areas: @@ -702,106 +699,104 @@ article[data-vim-selected].category-social { } @media screen and (max-width: @tablet) { - .center-aligment-no { - .page_with_header { - margin: 2rem 0.5rem; - width: auto; - } + .page_with_header { + margin: 2rem 0.5rem; + width: auto; + } - #infoboxes { - position: inherit; - max-width: inherit; + #infoboxes { + position: inherit; + max-width: inherit; - .infobox { - clear: both; - - img { - .ltr-float-left(); - max-width: 10em; - margin-top: 0.5em; - .ltr-margin-right(0.5em); - margin-bottom: 0.5em; - .ltr-margin-left(0); - } - } - } - - #sidebar { - margin: 0 @results-tablet-offset @results-margin @results-tablet-offset; - padding: 0; - float: none; - border: none; - width: auto; - - input { - border: 0; - } - } - - #apis { - display: none; - } - - #search_url { - display: none; - } - - .result { - .thumbnail { - max-width: 98%; - } - - .url { - span.url { - display: block; - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; - width: 100%; - } - } - - .engines { - .ltr-float-right(); - padding: 0 0 3px 0; - } - } - - .result-images { - border-bottom: none !important; - } - - .image_result { - max-width: 98%; + .infobox { + clear: both; img { - max-width: 98%; + .ltr-float-left(); + max-width: 10em; + margin-top: 0.5em; + .ltr-margin-right(0.5em); + margin-bottom: 0.5em; + .ltr-margin-left(0); + } + } + } + + #sidebar { + margin: 0 @results-tablet-offset @results-margin @results-tablet-offset; + padding: 0; + float: none; + border: none; + width: auto; + + input { + border: 0; + } + } + + #apis { + display: none; + } + + #search_url { + display: none; + } + + .result { + .thumbnail { + max-width: 98%; + } + + .url { + span.url { + display: block; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + width: 100%; } } - #backToTop { - display: none; + .engines { + .ltr-float-right(); + padding: 0 0 3px 0; } + } - #pagination { - margin: 2rem 0 0 0 !important; - } + .result-images { + border-bottom: none !important; + } - #main_results div#results { - margin: 1rem auto 0 auto; - justify-content: center; - display: grid; - grid-template-columns: @results-width; - grid-template-rows: min-content min-content min-content 1fr min-content min-content; - gap: 0; - grid-template-areas: - "corrections" - "answers" - "sidebar" - "urls" - "pagination"; + .image_result { + max-width: 98%; + + img { + max-width: 98%; } } + + #backToTop { + display: none; + } + + #pagination { + margin: 2rem 0 0 0 !important; + } + + #main_results div#results { + margin: 1rem auto 0 auto; + justify-content: center; + display: grid; + grid-template-columns: @results-width; + grid-template-rows: min-content min-content min-content 1fr min-content min-content; + gap: 0; + grid-template-areas: + "corrections" + "answers" + "sidebar" + "urls" + "pagination"; + } } #main_results div#results.only_template_images { diff --git a/searx/templates/simple/base.html b/searx/templates/simple/base.html index a424032aa..d8eaaa02b 100644 --- a/searx/templates/simple/base.html +++ b/searx/templates/simple/base.html @@ -1,5 +1,5 @@ - + diff --git a/searx/templates/simple/preferences.html b/searx/templates/simple/preferences.html index aa0e65e28..4dde6fec2 100644 --- a/searx/templates/simple/preferences.html +++ b/searx/templates/simple/preferences.html @@ -213,16 +213,6 @@

{{ _('Choose auto to follow your browser settings') }}
-
- {{ _('Center Alignment') }} -

- -

-
{{ _('Displays results in the center of the page (Oscar layout).') }}
-
{% endif %} {% if 'results_on_new_tab' not in locked_preferences %}
From 06217ef184574c8171205fc681462d9a685fb5bb Mon Sep 17 00:00:00 2001 From: Alexandre Flament Date: Sun, 5 Jun 2022 23:06:19 +0200 Subject: [PATCH 2/2] [build] /static --- .../themes/simple/css/searxng-rtl.min.css | Bin 65663 -> 63495 bytes .../themes/simple/css/searxng-rtl.min.css.map | Bin 106948 -> 103280 bytes .../static/themes/simple/css/searxng.min.css | Bin 64565 -> 62401 bytes .../themes/simple/css/searxng.min.css.map | Bin 105261 -> 101593 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/searx/static/themes/simple/css/searxng-rtl.min.css b/searx/static/themes/simple/css/searxng-rtl.min.css index a9d72498a6393f9b5ef198e57fa0f4e77f960612..5080411a94bb1e0016cb1c60be9fb7c3d496ae54 100644 GIT binary patch delta 113 zcmV-%0FM9vfCPu|1F(6-vz^OiC6g8LE|XXBE|Zz@ACt`Sc9T}}Qj@&$7zHC?aA|Xs zKfxB07xNO6J@X-xa`S1E@AEE`G4w2xar7LMq4XaZBVu7=YgBJkZ*Y5LX>)LFVR<@k TZ*FCMlJzK)QuZ0MRrM+hu97yY delta 1854 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 J%q=vy_P>Qmk`({| diff --git a/searx/static/themes/simple/css/searxng.min.css b/searx/static/themes/simple/css/searxng.min.css index 99a4d6cadd065c512c9ab5e0c41d816ed881bdf3..3aff95a7e0e24d0d7578784e9a6db97b0b037b4e 100644 GIT binary patch delta 189 zcmdn`gZbcd<_+aXHcvktuR3}5ImyY&A4MnoeAJu#@R=}Ab#hK>Vv$u+eo02{vwd{wFd delta 1942 zcmbtU&1(}u6h|uJ!4FECU<=hDv5=+R?It#ENH>T?n28p;+`k5O3ZTn_%(g(b=!i+F5GrX?Nb6_j~X6-f!N{_mQ{1N8W7g@)vyk zK6ca%Y_e9htRq|TH3K;e5fxgvX^UTV3sI1_A$Dp6(YD2?ud4AK4>nO8Jb#lQo9~#} z2SdC{NtjLzSkYs^=~br_OjiIJ`IWu zvS>rn6yX+Xu&SP%2yV8-u_FaJ)I5-H6N~x>QG%+Djf6~0fnpQYAxWa6ti^u`52EYP zc)H@QxSk&tZ$Qf^1gvI20HFlKn;$mj1ij|J*2ehi_UKX|8Arto*|ZudxoA?HHw`UBA9i0>$^{;$NpZ$ zjtls+Pm_HAM`rxU3XlFuur}G11_?Gt*s+eYm}I z&UeoF&Uen;Prs;p_+H%|;Hez+#3DP=@ev%4_V`eLSm4hJ!X!TlOZZw;{Ex-JkD|ii z=P@Bs;}sz+@lX&1eo}Cv1zyn%96rd0Z7Wb3El^I{PZ{XhHnpxwuCyR{lPB0r-(QF~-~M6quio-7qvXG47U! z3A{Shc?gASxWO8(5Ut{tqcRT0+VK6U&wQE@uhK8#tMDHmN}iRRIuW>pH__2{WK53m zD&rOrXtTDs63kT|qAQ>QSzQ)3 zvBl7Z(GfnzkWMH{&IwLc1uoI6Jue9jY1@jy1hqOkGDY*E!%(P9pMMG(v~)roae`#^ zbqr@$8?{hUtj@hBi6772Y|vg?+=eM?FTQf|>R~jrB#yiN!bDn>U42oA+1>63m+*1* zRs#weB9n!-b{ZbTzpGFCkwN>VYe-E|m}7UlADgIL9lfN5OzLu%u*bwrbLTIGtuVi2 zi)C+%og>0R>;eiCh%U86Rbt7RgFX&+lLS6%$GJfIy)2@Y9Odg+U~f*0IB5DnTuKTu z^5Q98WjPd>%kQTUhY(t14!6}JRhExo@4WPiUfpC#kXdd@#+?A=2A}(+dy=sk*$ibt zmg#_SdA`3bC8BhJYHkyYz-)mE9L2%zwnduJE?{%8*I|xjbTiPN9BsBUvK{+>{hD(2 zgS8JRjOu(ZrL*8XLj?;LTd<`sdSW^Jv;N~z6e?}cOkpeTiq_ApeJ4?g{dZ*=Ea9IP zVmun?t@V%!ijYr)h449EW@1KAI#~1OF-*jov|vy)t3L~a!OGo)|3u~4?a;^MlL2sI zt2__LHt@&_*WKK;7m_&J1|6ie9ki1tCU}8-83aCZZw)k( zR1nmYM{A&o9O?wk=^! zFM|d$umLy%H$XQT*#kPs5ijtP`Uq`vc$(hc90PSE&M6nyLyJ(>t;A=-6nJ9&xfy|*3gAs<|)3H*dk=sv@(-vFZ| pfGO_240?!#sjYRBg8iFxBpf%>Oes3kIil{R?gwIb{F< delta 4572 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