From 0462d0ea2f414a53a246aa6e028cabe5ca5a57f9 Mon Sep 17 00:00:00 2001 From: Timon Date: Wed, 6 Aug 2025 17:05:38 +0200 Subject: [PATCH] Desktop: Linux improve desktop integration (#3003) * Move consts to extra module * Add desktop icons * Add xdg desktop file * Improve window attributes * Make icon background white --- desktop/assets/graphite-icon-color.png | Bin 0 -> 86159 bytes desktop/assets/graphite-icon-color.svg | 9 ++++++ .../assets/rs.graphite.GraphiteEditor.desktop | 11 +++++++ desktop/src/app.rs | 28 ++++++++++++------ desktop/src/consts.rs | 3 ++ desktop/src/dirs.rs | 4 +-- desktop/src/main.rs | 2 ++ 7 files changed, 46 insertions(+), 11 deletions(-) create mode 100644 desktop/assets/graphite-icon-color.png create mode 100644 desktop/assets/graphite-icon-color.svg create mode 100644 desktop/assets/rs.graphite.GraphiteEditor.desktop create mode 100644 desktop/src/consts.rs diff --git a/desktop/assets/graphite-icon-color.png b/desktop/assets/graphite-icon-color.png new file mode 100644 index 0000000000000000000000000000000000000000..f4e2047ca9f1d58d8d88af7dd587c12b0030ec7e GIT binary patch literal 86159 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 GHwnXJz4jFQ#8S&DI2qKPFI@8Zun-z4%2{ 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 z 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 + + + + + + + + diff --git a/desktop/assets/rs.graphite.GraphiteEditor.desktop b/desktop/assets/rs.graphite.GraphiteEditor.desktop new file mode 100644 index 00000000..50ee7686 --- /dev/null +++ b/desktop/assets/rs.graphite.GraphiteEditor.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Graphite +GenericName=Vector & Raster Graphics Editor +Comment=Open-source vector & raster graphics editor. Featuring node based procedural nondestructive editing workflow. +Exec=graphite-editor +Terminal=false +Type=Application +Icon=graphite-icon-color +Categories=Graphics;VectorGraphics;RasterGraphics; +Keywords=graphite;editor;vector;raster;procedural;design; +StartupWMClass=rs.graphite.GraphiteEditor diff --git a/desktop/src/app.rs b/desktop/src/app.rs index 9dc16085..0f0f65c6 100644 --- a/desktop/src/app.rs +++ b/desktop/src/app.rs @@ -1,5 +1,6 @@ use crate::CustomEvent; use crate::WindowSize; +use crate::consts::APP_NAME; use crate::dialogs::dialog_open_graphite_file; use crate::dialogs::dialog_save_graphite_file; use crate::render::GraphicsState; @@ -142,15 +143,24 @@ impl ApplicationHandler for WinitApp { } fn resumed(&mut self, event_loop: &ActiveEventLoop) { - let window = Arc::new( - event_loop - .create_window( - Window::default_attributes() - .with_title("CEF Offscreen Rendering") - .with_inner_size(winit::dpi::LogicalSize::new(1200, 800)), - ) - .unwrap(), - ); + let mut window = Window::default_attributes() + .with_title(APP_NAME) + .with_min_inner_size(winit::dpi::LogicalSize::new(400, 300)) + .with_inner_size(winit::dpi::LogicalSize::new(1200, 800)); + + #[cfg(target_family = "unix")] + { + use crate::consts::APP_ID; + use winit::platform::wayland::ActiveEventLoopExtWayland; + + window = if event_loop.is_wayland() { + winit::platform::wayland::WindowAttributesExtWayland::with_name(window, APP_ID, "") + } else { + winit::platform::x11::WindowAttributesExtX11::with_name(window, APP_ID, APP_NAME) + } + } + + let window = Arc::new(event_loop.create_window(window).unwrap()); let graphics_state = GraphicsState::new(window.clone(), self.wgpu_context.clone()); self.window = Some(window); diff --git a/desktop/src/consts.rs b/desktop/src/consts.rs new file mode 100644 index 00000000..49543588 --- /dev/null +++ b/desktop/src/consts.rs @@ -0,0 +1,3 @@ +pub(crate) static APP_NAME: &str = "Graphite"; +pub(crate) static APP_ID: &str = "rs.graphite.GraphiteEditor"; +pub(crate) static APP_DIRECTORY_NAME: &str = "graphite-editor"; diff --git a/desktop/src/dirs.rs b/desktop/src/dirs.rs index 5e3cf636..6a964e01 100644 --- a/desktop/src/dirs.rs +++ b/desktop/src/dirs.rs @@ -1,7 +1,7 @@ use std::fs::create_dir_all; use std::path::PathBuf; -static APP_NAME: &str = "graphite-desktop"; +use crate::consts::APP_DIRECTORY_NAME; pub(crate) fn ensure_dir_exists(path: &PathBuf) { if !path.exists() { @@ -10,7 +10,7 @@ pub(crate) fn ensure_dir_exists(path: &PathBuf) { } pub(crate) fn graphite_data_dir() -> PathBuf { - let path = dirs::data_dir().expect("Failed to get data directory").join(APP_NAME); + let path = dirs::data_dir().expect("Failed to get data directory").join(APP_DIRECTORY_NAME); ensure_dir_exists(&path); path } diff --git a/desktop/src/main.rs b/desktop/src/main.rs index 41cf45ce..36fe41db 100644 --- a/desktop/src/main.rs +++ b/desktop/src/main.rs @@ -6,6 +6,8 @@ use graphite_editor::messages::prelude::Message; use tracing_subscriber::EnvFilter; use winit::event_loop::EventLoop; +pub(crate) mod consts; + mod cef; use cef::{Setup, WindowSize};