aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorRubén Beltrán del Río <jj@r.bdr.sh>2026-01-19 00:38:37 +0100
committerRubén Beltrán del Río <jj@r.bdr.sh>2026-01-19 02:28:00 +0100
commitb41c4768d9b2e41532ae0018469809ff37280216 (patch)
treecd73007bd2690efeca6ecfbc8eab4f61232bfb1f /src/main.rs
parenta5ac6203f247d884aba8530b108d554ff80be333 (diff)
Update to use Gnome 48 features1.0.0
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/main.rs b/src/main.rs
index 5aff910..41d3f68 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -43,7 +43,6 @@ use crate::icon_names::shipped::{
use cairo::ImageSurface;
use gtk::gio;
use gtk::glib;
-use gtk::prelude::*;
use relm4::{
Component, ComponentController, ComponentParts, ComponentSender, RelmApp, RelmWidgetExt,
SimpleComponent,
@@ -51,7 +50,7 @@ use relm4::{
gtk,
};
use sourceview5::LanguageManager;
-use sourceview5::prelude::{BufferExt, TextBufferExt, TextViewExt};
+use sourceview5::prelude::*;
use stages::{ALL_STAGE_TYPES, LocalizedStageType};
use wmap_parser::{Map, parse};
use wmap_renderer::{Configuration, StageType, render_to_surface};
@@ -289,18 +288,18 @@ impl AppModel {
let css = if self.preferences.use_custom_editor_font {
self.source_view.set_monospace(false);
format!(
- "textview {{ font-family: \"{}\"; font-size: {}pt; }}",
+ ".map-editor {{ font-family: \"{}\"; font-size: {}pt; }}",
self.preferences.custom_editor_font_name, self.preferences.editor_font_size as i32
)
} else {
self.source_view.set_monospace(true);
format!(
- "textview {{ font-size: {}pt; }}",
+ ".map-editor {{ font-size: {}pt; }}",
self.preferences.editor_font_size as i32
)
};
- self.editor_css_provider.load_from_data(&css);
+ self.editor_css_provider.load_from_string(&css);
self.render_configuration.options.smart_label_positioning =
self.preferences.use_smart_label_positioning;
@@ -630,10 +629,14 @@ impl SimpleComponent for AppModel {
source_view.set_monospace(true);
let editor_css_provider = gtk::CssProvider::new();
- source_view.style_context().add_provider(
- &editor_css_provider,
- gtk::STYLE_PROVIDER_PRIORITY_APPLICATION,
- );
+ source_view.add_css_class("map-editor");
+ if let Some(display) = gtk::gdk::Display::default() {
+ gtk::style_context_add_provider_for_display(
+ &display,
+ &editor_css_provider,
+ gtk::STYLE_PROVIDER_PRIORITY_APPLICATION,
+ );
+ }
let (drawing_area, map, render_configuration, stage_type, surface) =
Self::init_drawing_area(&initial_content);
@@ -755,7 +758,9 @@ impl SimpleComponent for AppModel {
Action::SaveToFile { path, close_after } => {
handlers::file::save_to_file(self, path, close_after);
}
- Action::CloseWindow => handlers::file::close_window(self, &sender),
+ Action::CloseWindow => {
+ handlers::file::close_window(self, &sender);
+ }
Action::MarkInitialized => self.initialized = true,