summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2025-05-26 17:42:36 +0200
committerDavid Lönnhager <david.l@mullvad.net>2025-05-26 17:42:36 +0200
commit6c9f7ec18da5bd26ce5880e5dc8f5c8b83d5f77f (patch)
treefcc52ce780b0caeba8964477656119acd47dd481
parenta0d24f173aa9011056eaa7275a9f21ac4e6817b6 (diff)
parentb217577a8636eff573d97905dd7d54f1cc7e89c9 (diff)
downloadmullvadvpn-6c9f7ec18da5bd26ce5880e5dc8f5c8b83d5f77f.tar.xz
mullvadvpn-6c9f7ec18da5bd26ce5880e5dc8f5c8b83d5f77f.zip
Merge branch 'fix-macos-12-installer'
-rw-r--r--installer-downloader/CHANGELOG.md3
-rw-r--r--installer-downloader/assets/alert-circle.pdfbin0 -> 4424 bytes
-rw-r--r--installer-downloader/assets/logo-icon.pdfbin0 -> 2139 bytes
-rw-r--r--installer-downloader/assets/logo-text.pdfbin0 -> 2704 bytes
-rw-r--r--installer-downloader/src/cacao_impl/ui.rs33
5 files changed, 14 insertions, 22 deletions
diff --git a/installer-downloader/CHANGELOG.md b/installer-downloader/CHANGELOG.md
index df6d29eba2..aceeb14b41 100644
--- a/installer-downloader/CHANGELOG.md
+++ b/installer-downloader/CHANGELOG.md
@@ -20,6 +20,9 @@ Line wrap the file at 100 chars. Th
* **Security**: in case of vulnerabilities.
## [Unreleased]
+### Fix
+#### macOS
+- Fix rendering issues on old (unsupported) macOS versions.
## [1.0.0] - 2025-05-13
diff --git a/installer-downloader/assets/alert-circle.pdf b/installer-downloader/assets/alert-circle.pdf
new file mode 100644
index 0000000000..07d72968f3
--- /dev/null
+++ b/installer-downloader/assets/alert-circle.pdf
Binary files differ
diff --git a/installer-downloader/assets/logo-icon.pdf b/installer-downloader/assets/logo-icon.pdf
new file mode 100644
index 0000000000..8f3af48d3b
--- /dev/null
+++ b/installer-downloader/assets/logo-icon.pdf
Binary files differ
diff --git a/installer-downloader/assets/logo-text.pdf b/installer-downloader/assets/logo-text.pdf
new file mode 100644
index 0000000000..1ba10f05e4
--- /dev/null
+++ b/installer-downloader/assets/logo-text.pdf
Binary files differ
diff --git a/installer-downloader/src/cacao_impl/ui.rs b/installer-downloader/src/cacao_impl/ui.rs
index 745a725500..4bbab14332 100644
--- a/installer-downloader/src/cacao_impl/ui.rs
+++ b/installer-downloader/src/cacao_impl/ui.rs
@@ -22,12 +22,12 @@ use crate::resource::{
};
/// Logo render in the banner
-const LOGO_IMAGE_DATA: &[u8] = include_bytes!("../../assets/logo-icon.svg");
+const LOGO_IMAGE_DATA: &[u8] = include_bytes!("../../assets/logo-icon.pdf");
/// Logo banner text
-const LOGO_TEXT_DATA: &[u8] = include_bytes!("../../assets/logo-text.svg");
+const LOGO_TEXT_DATA: &[u8] = include_bytes!("../../assets/logo-text.pdf");
-const ALERT_CIRCLE_IMAGE_DATA: &[u8] = include_bytes!("../../assets/alert-circle.svg");
+const ALERT_CIRCLE_IMAGE_DATA: &[u8] = include_bytes!("../../assets/alert-circle.pdf");
/// Banner background color: #192e45
static BANNER_COLOR: LazyLock<Color> = LazyLock::new(|| {
@@ -159,7 +159,6 @@ pub struct AppWindow {
}
pub struct ErrorView {
- pub view: View,
pub text: Label,
pub circle: ImageView,
pub retry_button: Button,
@@ -445,7 +444,6 @@ impl ErrorView {
on_cancel: Option<impl Fn() + Send + Sync + 'static>,
) -> Self {
let mut error_view = ErrorView {
- view: Default::default(),
text: Default::default(),
circle: Default::default(),
retry_button: Button::new(&message.retry_button_text),
@@ -453,7 +451,6 @@ impl ErrorView {
};
let ErrorView {
- view,
text,
circle,
retry_button,
@@ -470,22 +467,16 @@ impl ErrorView {
retry_button.set_action(on_retry);
}
- view.add_subview(text);
- view.add_subview(circle);
- main_view.add_subview(view);
+ main_view.add_subview(text);
+ main_view.add_subview(circle);
main_view.add_subview(retry_button);
main_view.add_subview(cancel_button);
LayoutConstraint::activate(&[
- view.center_x.constraint_equal_to(&main_view.center_x),
- view.center_y
- .constraint_equal_to(&main_view.top)
- .offset(74.),
- view.width.constraint_equal_to_constant(536.),
- text.center_y.constraint_equal_to(&view.center_y),
- text.left.constraint_equal_to(&circle.right).offset(16.),
- text.right.constraint_equal_to(&view.right),
- circle.left.constraint_equal_to(&view.left),
+ text.top.constraint_equal_to(&main_view.top).offset(64.),
+ text.center_x.constraint_equal_to(&main_view.center_x),
+ text.width.constraint_equal_to_constant(448.),
+ circle.right.constraint_equal_to(&text.left).offset(-8.),
circle.center_y.constraint_equal_to(&text.center_y),
retry_button
.top
@@ -497,11 +488,11 @@ impl ErrorView {
.offset(24.),
retry_button
.left
- .constraint_equal_to(&view.center_x)
+ .constraint_equal_to(&main_view.center_x)
.offset(8.),
cancel_button
.right
- .constraint_equal_to(&view.center_x)
+ .constraint_equal_to(&main_view.center_x)
.offset(-8.),
retry_button.width.constraint_equal_to_constant(213.),
cancel_button.width.constraint_equal_to_constant(213.),
@@ -514,13 +505,11 @@ impl ErrorView {
impl Drop for ErrorView {
fn drop(&mut self) {
let ErrorView {
- view,
text,
circle,
retry_button,
cancel_button,
} = self;
- view.remove_from_superview();
text.remove_from_superview();
circle.remove_from_superview();
retry_button.remove_from_superview();