From c8c753af29a0902c2da0c751a525916f994d7db8 Mon Sep 17 00:00:00 2001 From: Sunil Mohan Adapa Date: Wed, 30 Oct 2024 20:42:30 -0700 Subject: [PATCH] ui: Remove the noise background - Update the mediawiki functional tests which were using this image. - Slightly increase the darkness of the shadow around the cards to compensate for the loss of the contrast with the noise background. Tests: - Re-run mediawiki functional tests. Signed-off-by: Sunil Mohan Adapa Reviewed-by: James Valleroy --- .../modules/mediawiki/tests/test_functional.py | 15 +++++++++------ static/themes/default/css/main.css | 15 +-------------- static/themes/default/img/noise.png | Bin 23558 -> 0 bytes 3 files changed, 10 insertions(+), 20 deletions(-) delete mode 100644 static/themes/default/img/noise.png diff --git a/plinth/modules/mediawiki/tests/test_functional.py b/plinth/modules/mediawiki/tests/test_functional.py index a01d0faeb..149c90ce9 100644 --- a/plinth/modules/mediawiki/tests/test_functional.py +++ b/plinth/modules/mediawiki/tests/test_functional.py @@ -70,8 +70,9 @@ class TestMediawikiApp(functional.BaseAppTests): def test_upload_images(self, session_browser, login): """Test uploading an image.""" - _upload_image(session_browser, 'admin', 'whatever123', 'noise.png') - assert _image_exists(session_browser, 'Noise.png') + _upload_image(session_browser, 'admin', 'whatever123', + 'freedombox-logo-250px.png') + assert _image_exists(session_browser, 'Freedombox-logo-250px.png') def test_upload_svg_image(self, session_browser, login): """Test uploading an SVG image.""" @@ -81,20 +82,22 @@ class TestMediawikiApp(functional.BaseAppTests): def test_backup_restore(self, session_browser, login): """Test backup and restore of pages and images.""" - if not _image_exists(session_browser, 'Noise.png'): - _upload_image(session_browser, 'admin', 'whatever123', 'Noise.png') + if not _image_exists(session_browser, 'Freedombox-logo-250px.png'): + _upload_image(session_browser, 'admin', 'whatever123', + 'freedombox-logo-250px.png') functional.backup_create(session_browser, 'mediawiki', 'test_mediawiki') _enable_public_registrations(session_browser) - _delete_image(session_browser, 'admin', 'whatever123', 'Noise.png') + _delete_image(session_browser, 'admin', 'whatever123', + 'Freedombox-logo-250px.png') _delete_main_page(session_browser, 'admin', 'whatever123') functional.backup_restore(session_browser, 'mediawiki', 'test_mediawiki') assert _has_main_page(session_browser) - assert _image_exists(session_browser, 'Noise.png') + assert _image_exists(session_browser, 'Freedombox-logo-250px.png') _verify_create_account_link(session_browser) def test_uninstall(self, session_browser): diff --git a/static/themes/default/css/main.css b/static/themes/default/css/main.css index 4d199d2e9..0b39cd9aa 100644 --- a/static/themes/default/css/main.css +++ b/static/themes/default/css/main.css @@ -183,19 +183,6 @@ body { padding-top: 6rem; position: relative; font-family: Lato, sans-serif; - background: url('../img/noise.png') var(--background-color); -} - -@media (max-width: 767px) { - body { - background: none; - } - - body.index-page, - body.apps-page, - body.system-page { - background: url('../img/noise.png') var(--background-color); - } } .multiple-checkbox li { @@ -560,7 +547,7 @@ a.menu_link_active { display: block; line-height: 1.42857143; text-align: center; - box-shadow: 0 0.1875rem 0.3125rem 0 rgba(0,0,0,0.12); + box-shadow: 0 0.1875rem 0.3125rem 0 rgba(0,0,0,0.2); width: 10rem; padding: 0.5rem 0.25rem; margin: 0 0.625rem 1.25rem; diff --git a/static/themes/default/img/noise.png b/static/themes/default/img/noise.png deleted file mode 100644 index 4b89438e9af0ae4f1ace9c3b68027b7b68ca2733..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23558 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 RF696K002ovPDHLkV1l2gEl>ae