From 38361e7c8d644b10d9b6747c26eeec2b50d42845 Mon Sep 17 00:00:00 2001
From: Jan Lukas Gernert <jangernert@gmail.com>
Date: Sun, 7 Jun 2020 18:55:59 +0200
Subject: [PATCH] use usize where possible
---
src/article_list/article_row.rs | 24 ++++++------
src/article_list/mod.rs | 4 +-
src/article_view/mod.rs | 56 +++++++++++++--------------
src/content_page/content_header.rs | 12 +++---
src/error_bar.rs | 18 ++++-----
src/login_screen/password_login.rs | 38 +++++++++---------
src/login_screen/web_login.rs | 30 +++++---------
src/reset_page.rs | 4 +-
src/sidebar/feed_list/category_row.rs | 12 +++---
src/sidebar/feed_list/feed_row.rs | 10 ++---
src/tag_popover/mod.rs | 20 +++++-----
src/util/gtk_util.rs | 7 +++-
12 files changed, 114 insertions(+), 121 deletions(-)
diff --git a/src/article_list/article_row.rs b/src/article_list/article_row.rs
index 255665b..ca3ebf6 100644
--- a/src/article_list/article_row.rs
+++ b/src/article_list/article_row.rs
@@ -24,7 +24,7 @@ pub struct ArticleRow {
unread_stack: Stack,
title_label: Label,
row_hovered: Arc<RwLock<bool>>,
- connected_signals: Vec<(u64, Widget)>,
+ connected_signals: Vec<(usize, Widget)>,
}
impl ArticleRow {
@@ -175,7 +175,7 @@ impl ArticleRow {
title_label: &Label,
article_id: &ArticleID,
list_model: &Arc<RwLock<ArticleListModel>>,
- ) -> Vec<(u64, Widget)> {
+ ) -> Vec<(usize, Widget)> {
let mut vec = Vec::new();
vec.push((
eventbox
@@ -192,7 +192,7 @@ impl ArticleRow {
}
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -211,7 +211,7 @@ impl ArticleRow {
}
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -249,7 +249,7 @@ impl ArticleRow {
Util::send(&sender, Action::MarkArticleRead(update));
Inhibit(true)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -264,7 +264,7 @@ impl ArticleRow {
marked_stack: &Stack,
article_id: &ArticleID,
list_model: &Arc<RwLock<ArticleListModel>>,
- ) -> Vec<(u64, Widget)> {
+ ) -> Vec<(usize, Widget)> {
let mut vec = Vec::new();
vec.push((
@@ -282,7 +282,7 @@ impl ArticleRow {
}
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -301,7 +301,7 @@ impl ArticleRow {
}
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -337,7 +337,7 @@ impl ArticleRow {
Util::send(&sender, Action::MarkArticle(update));
Inhibit(true)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -352,7 +352,7 @@ impl ArticleRow {
marked_stack: &Stack,
title_label: &Label,
row_hovered: &Arc<RwLock<bool>>,
- ) -> Vec<(u64, Widget)> {
+ ) -> Vec<(usize, Widget)> {
Self::update_title_label(&title_label, *read.read());
Self::update_unread_stack(&unread_stack, *read.read(), *row_hovered.read());
Self::update_marked_stack(&marked_stack, *marked.read());
@@ -382,7 +382,7 @@ impl ArticleRow {
}
Inhibit(true)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
@@ -409,7 +409,7 @@ impl ArticleRow {
}
Inhibit(true)
}))
- .to_glib(),
+ .to_glib() as usize,
eventbox.clone().upcast::<Widget>(),
));
diff --git a/src/article_list/mod.rs b/src/article_list/mod.rs
index 86cbbd6..1122367 100644
--- a/src/article_list/mod.rs
+++ b/src/article_list/mod.rs
@@ -33,7 +33,7 @@ pub struct ArticleList {
list_1: Arc<RwLock<SingleArticleList>>,
list_2: Arc<RwLock<SingleArticleList>>,
list_model: Arc<RwLock<ArticleListModel>>,
- list_activate_signal: Option<u64>,
+ list_activate_signal: Option<usize>,
local_state: MainWindowState,
global_state: Arc<RwLock<MainWindowState>>,
current_list: Arc<RwLock<CurrentList>>,
@@ -263,7 +263,7 @@ impl ArticleList {
}
}))
.to_glib();
- self.list_activate_signal = Some(activate_signal_id);
+ self.list_activate_signal = Some(activate_signal_id as usize);
}
fn require_new_list(&self, new_state: &RwLock<MainWindowState>) -> bool {
diff --git a/src/article_view/mod.rs b/src/article_view/mod.rs
index b29edb2..f43c487 100644
--- a/src/article_view/mod.rs
+++ b/src/article_view/mod.rs
@@ -59,16 +59,16 @@ pub struct ArticleView {
visible_feed_name: Arc<RwLock<Option<String>>>,
widnow_state: Arc<RwLock<MainWindowState>>,
internal_state: Arc<RwLock<InternalState>>,
- load_changed_signal: Arc<RwLock<Option<u64>>>,
- decide_policy_signal: Arc<RwLock<Option<u64>>>,
- mouse_over_signal: Arc<RwLock<Option<u64>>>,
- scroll_signal: Arc<RwLock<Option<u64>>>,
- key_press_signal: Arc<RwLock<Option<u64>>>,
- ctx_menu_signal: Arc<RwLock<Option<u64>>>,
- load_signal: Arc<RwLock<Option<u64>>>,
- click_signal: Arc<RwLock<Option<u64>>>,
- click_release_signal: Arc<RwLock<Option<u64>>>,
- drag_motion_notify_signal: Arc<RwLock<Option<u64>>>,
+ load_changed_signal: Arc<RwLock<Option<usize>>>,
+ decide_policy_signal: Arc<RwLock<Option<usize>>>,
+ mouse_over_signal: Arc<RwLock<Option<usize>>>,
+ scroll_signal: Arc<RwLock<Option<usize>>>,
+ key_press_signal: Arc<RwLock<Option<usize>>>,
+ ctx_menu_signal: Arc<RwLock<Option<usize>>>,
+ load_signal: Arc<RwLock<Option<usize>>>,
+ click_signal: Arc<RwLock<Option<usize>>>,
+ click_release_signal: Arc<RwLock<Option<usize>>>,
+ drag_motion_notify_signal: Arc<RwLock<Option<usize>>>,
drag_released_motion_signal: Arc<RwLock<Option<u32>>>,
drag_buffer_update_signal: Arc<RwLock<Option<u32>>>,
progress_overlay_delay_signal: Arc<RwLock<Option<u32>>>,
@@ -303,15 +303,15 @@ impl ArticleView {
progress_overlay_label: &Arc<RwLock<ProgressOverlay>>,
old_state: &Arc<RwLock<InternalState>>,
stack: >k::Stack,
- load_changed_signal: &Arc<RwLock<Option<u64>>>,
- decide_policy_signal: &Arc<RwLock<Option<u64>>>,
- mouse_over_signal: &Arc<RwLock<Option<u64>>>,
- scroll_signal: &Arc<RwLock<Option<u64>>>,
- key_press_signal: &Arc<RwLock<Option<u64>>>,
- ctx_menu_signal: &Arc<RwLock<Option<u64>>>,
- load_signal: &Arc<RwLock<Option<u64>>>,
- click_signal: &Arc<RwLock<Option<u64>>>,
- click_release_signal: &Arc<RwLock<Option<u64>>>,
+ load_changed_signal: &Arc<RwLock<Option<usize>>>,
+ decide_policy_signal: &Arc<RwLock<Option<usize>>>,
+ mouse_over_signal: &Arc<RwLock<Option<usize>>>,
+ scroll_signal: &Arc<RwLock<Option<usize>>>,
+ key_press_signal: &Arc<RwLock<Option<usize>>>,
+ ctx_menu_signal: &Arc<RwLock<Option<usize>>>,
+ load_signal: &Arc<RwLock<Option<usize>>>,
+ click_signal: &Arc<RwLock<Option<usize>>>,
+ click_release_signal: &Arc<RwLock<Option<usize>>>,
drag_released_motion_signal: &Arc<RwLock<Option<u32>>>,
drag_buffer_update_signal: &Arc<RwLock<Option<u32>>>,
progress_overlay_delay_signal: &Arc<RwLock<Option<u32>>>,
@@ -431,7 +431,7 @@ impl ArticleView {
}
false
})
- .to_glib(),
+ .to_glib() as usize,
);
//----------------------------------
@@ -463,7 +463,7 @@ impl ArticleView {
url_overlay_label.read().reveal(false);
}
}))
- .to_glib(),
+ .to_glib() as usize,
);
//----------------------------------
@@ -489,7 +489,7 @@ impl ArticleView {
}
Inhibit(false)
})
- .to_glib(),
+ .to_glib() as usize,
);
//------------------------------------------------
@@ -509,7 +509,7 @@ impl ArticleView {
}
Inhibit(true)
})
- .to_glib(),
+ .to_glib() as usize,
);
//----------------------------------
@@ -542,7 +542,7 @@ impl ArticleView {
false
})
- .to_glib(),
+ .to_glib() as usize,
);
//----------------------------------
@@ -571,7 +571,7 @@ impl ArticleView {
progress_handle.read().reveal(true);
progress_handle.read().set_percentage(progress);
}))
- .to_glib(),
+ .to_glib() as usize,
);
Continue(false)
}))
@@ -652,7 +652,7 @@ impl ArticleView {
Self::set_scroll_pos_static(view, scroll_pos + scroll);
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
);
}
}
@@ -662,7 +662,7 @@ impl ArticleView {
}
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
);
self.click_release_signal.write().replace(
@@ -724,7 +724,7 @@ impl ArticleView {
}
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
);
//----------------------------------
diff --git a/src/content_page/content_header.rs b/src/content_page/content_header.rs
index e3bd5e3..8d828c9 100644
--- a/src/content_page/content_header.rs
+++ b/src/content_page/content_header.rs
@@ -33,7 +33,7 @@ pub struct ContentHeader {
marked_button: ToggleButton,
scrap_content_button: ToggleButton,
scrap_content_stack: Stack,
- scrap_content_event: RwLock<Option<u64>>,
+ scrap_content_event: RwLock<Option<usize>>,
tag_button: MenuButton,
tag_popover: RwLock<Option<TagPopover>>,
more_actions_button: MenuButton,
@@ -43,8 +43,8 @@ pub struct ContentHeader {
mark_article_read_button: ToggleButton,
mark_article_stack: Stack,
mark_article_read_stack: Stack,
- mark_article_event: RwLock<Option<u64>>,
- mark_article_read_event: RwLock<Option<u64>>,
+ mark_article_event: RwLock<Option<usize>>,
+ mark_article_read_event: RwLock<Option<usize>>,
}
impl ContentHeader {
@@ -557,7 +557,7 @@ impl ContentHeader {
}
Util::send(&sender, Action::ToggleArticleMarked);
}))
- .to_glib(),
+ .to_glib() as usize,
);
self.mark_article_read_event.write().replace(
@@ -573,7 +573,7 @@ impl ContentHeader {
}
Util::send(&sender, Action::ToggleArticleRead);
}))
- .to_glib(),
+ .to_glib() as usize,
);
self.scrap_content_event.write().replace(
@@ -590,7 +590,7 @@ impl ContentHeader {
Util::send(&sender, Action::RedrawArticle);
}
}))
- .to_glib(),
+ .to_glib() as usize,
);
self.more_actions_button.set_sensitive(sensitive);
diff --git a/src/error_bar.rs b/src/error_bar.rs
index cf24d98..48761c9 100644
--- a/src/error_bar.rs
+++ b/src/error_bar.rs
@@ -15,9 +15,9 @@ pub struct ErrorBar {
detail_button: Button,
login_button: Button,
offline_button: Button,
- detail_signal: Arc<RwLock<Option<u64>>>,
- relogin_signal: Arc<RwLock<Option<u64>>>,
- offline_signal: Arc<RwLock<Option<u64>>>,
+ detail_signal: Arc<RwLock<Option<usize>>>,
+ relogin_signal: Arc<RwLock<Option<usize>>>,
+ offline_signal: Arc<RwLock<Option<usize>>>,
sender: Sender<Action>,
}
@@ -71,9 +71,9 @@ impl ErrorBar {
detail_button: &Button,
login_button: &Button,
offline_button: &Button,
- detail_signal: &Arc<RwLock<Option<u64>>>,
- relogin_signal: &Arc<RwLock<Option<u64>>>,
- offline_signal: &Arc<RwLock<Option<u64>>>,
+ detail_signal: &Arc<RwLock<Option<usize>>>,
+ relogin_signal: &Arc<RwLock<Option<usize>>>,
+ offline_signal: &Arc<RwLock<Option<usize>>>,
) {
info_bar.set_revealed(false);
GtkUtil::disconnect_signal(*detail_signal.read(), detail_button);
@@ -114,7 +114,7 @@ impl ErrorBar {
log::info!("retry login");
Util::send(&sender, Action::RetryLogin);
}))
- .to_glib(),
+ .to_glib() as usize,
);
*self.offline_signal.write() = Some(
@@ -141,7 +141,7 @@ impl ErrorBar {
);
Util::send(&sender, Action::SetOfflineMode(true));
}))
- .to_glib(),
+ .to_glib() as usize,
);
}
@@ -155,7 +155,7 @@ impl ErrorBar {
error!("Failed to spawn ErrorDialog. Parent window not found.");
}
})
- .to_glib(),
+ .to_glib() as usize,
);
}
}
diff --git a/src/login_screen/password_login.rs b/src/login_screen/password_login.rs
index be1e1fd..683d3e9 100644
--- a/src/login_screen/password_login.rs
+++ b/src/login_screen/password_login.rs
@@ -34,16 +34,16 @@ pub struct PasswordLogin {
login_button: gtk::Button,
ignore_tls_button: gtk::Button,
error_details_button: gtk::Button,
- info_bar_close_signal: RwLock<Option<u64>>,
- info_bar_response_signal: RwLock<Option<u64>>,
- url_entry_signal: RwLock<Option<u64>>,
- user_entry_signal: RwLock<Option<u64>>,
- pass_entry_signal: RwLock<Option<u64>>,
- http_user_entry_signal: RwLock<Option<u64>>,
- http_pass_entry_signal: RwLock<Option<u64>>,
- login_button_signal: RwLock<Option<u64>>,
- ignore_tls_signal: RwLock<Option<u64>>,
- error_details_signal: RwLock<Option<u64>>,
+ info_bar_close_signal: RwLock<Option<usize>>,
+ info_bar_response_signal: RwLock<Option<usize>>,
+ url_entry_signal: RwLock<Option<usize>>,
+ user_entry_signal: RwLock<Option<usize>>,
+ pass_entry_signal: RwLock<Option<usize>>,
+ http_user_entry_signal: RwLock<Option<usize>>,
+ http_pass_entry_signal: RwLock<Option<usize>>,
+ login_button_signal: RwLock<Option<usize>>,
+ ignore_tls_signal: RwLock<Option<usize>>,
+ error_details_signal: RwLock<Option<usize>>,
}
impl PasswordLogin {
@@ -129,7 +129,7 @@ impl PasswordLogin {
.connect_close(|info_bar| {
PasswordLogin::hide_info_bar(info_bar);
})
- .to_glib(),
+ .to_glib() as usize,
);
self.info_bar_response_signal.write().replace(
self.info_bar
@@ -138,7 +138,7 @@ impl PasswordLogin {
PasswordLogin::hide_info_bar(info_bar);
}
})
- .to_glib(),
+ .to_glib() as usize,
);
if let LoginGUI::Password(pw_gui_desc) = &info.login_gui {
@@ -157,19 +157,19 @@ impl PasswordLogin {
// check if 'login' should be clickable
self.url_entry_signal
.write()
- .replace(self.setup_entry(&self.url_entry, &pw_gui_desc).to_glib());
+ .replace(self.setup_entry(&self.url_entry, &pw_gui_desc).to_glib() as usize);
self.user_entry_signal
.write()
- .replace(self.setup_entry(&self.user_entry, &pw_gui_desc).to_glib());
+ .replace(self.setup_entry(&self.user_entry, &pw_gui_desc).to_glib() as usize);
self.pass_entry_signal
.write()
- .replace(self.setup_entry(&self.pass_entry, &pw_gui_desc).to_glib());
+ .replace(self.setup_entry(&self.pass_entry, &pw_gui_desc).to_glib() as usize);
self.http_user_entry_signal
.write()
- .replace(self.setup_entry(&self.http_user_entry, &pw_gui_desc).to_glib());
+ .replace(self.setup_entry(&self.http_user_entry, &pw_gui_desc).to_glib() as usize);
self.http_pass_entry_signal
.write()
- .replace(self.setup_entry(&self.http_pass_entry, &pw_gui_desc).to_glib());
+ .replace(self.setup_entry(&self.http_pass_entry, &pw_gui_desc).to_glib() as usize);
// harvest login data
self.login_button_signal.write().replace(
@@ -231,7 +231,7 @@ impl PasswordLogin {
let login_data = LoginData::Password(login_data);
Util::send(&sender, Action::Login(login_data));
}))
- .to_glib(),
+ .to_glib() as usize,
);
return Ok(());
@@ -324,7 +324,7 @@ impl PasswordLogin {
.expect("MainWindow is not a parent of password login error details button.");
let _dialog = ErrorDialog::new(&error, &parent);
})
- .to_glib(),
+ .to_glib() as usize,
);
self.info_bar.set_visible(true);
self.info_bar.set_revealed(true);
diff --git a/src/login_screen/web_login.rs b/src/login_screen/web_login.rs
index 641415e..274c4fc 100644
--- a/src/login_screen/web_login.rs
+++ b/src/login_screen/web_login.rs
@@ -3,14 +3,7 @@ use crate::app::Action;
use crate::error_dialog::ErrorDialog;
use crate::i18n::i18n;
use crate::util::{BuilderHelper, GtkUtil, Util, GTK_BUILDER_ERROR};
-use glib::{
- clone,
- object::ObjectExt,
- signal::SignalHandlerId,
- source::Continue,
- translate::{FromGlib, ToGlib},
- Sender,
-};
+use glib::{clone, source::Continue, translate::ToGlib, Sender};
use gtk::{Box, BoxExt, Button, ButtonExt, InfoBar, InfoBarExt, Label, LabelExt, ResponseType, WidgetExt};
use news_flash::models::{LoginData, LoginGUI, OAuthData, PluginInfo};
use news_flash::{NewsFlashError, NewsFlashErrorKind};
@@ -26,10 +19,10 @@ pub struct WebLogin {
info_bar: gtk::InfoBar,
info_bar_label: gtk::Label,
error_details_button: gtk::Button,
- redirect_signal_id: Rc<RwLock<Option<u64>>>,
- info_bar_close_signal: RwLock<Option<u64>>,
- info_bar_response_signal: RwLock<Option<u64>>,
- error_details_signal: RwLock<Option<u64>>,
+ redirect_signal_id: Rc<RwLock<Option<usize>>>,
+ info_bar_close_signal: RwLock<Option<usize>>,
+ info_bar_response_signal: RwLock<Option<usize>>,
+ error_details_signal: RwLock<Option<usize>>,
}
impl WebLogin {
@@ -86,7 +79,7 @@ impl WebLogin {
let parent = GtkUtil::get_main_window(button).expect("MainWindow is not parent of details button.");
let _dialog = ErrorDialog::new(&error, &parent);
})
- .to_glib(),
+ .to_glib() as usize,
);
self.info_bar.set_visible(true);
@@ -100,7 +93,7 @@ impl WebLogin {
.connect_close(|info_bar| {
WebLogin::hide_info_bar(info_bar);
})
- .to_glib(),
+ .to_glib() as usize,
);
self.info_bar_response_signal.write().replace(
self.info_bar
@@ -109,7 +102,7 @@ impl WebLogin {
WebLogin::hide_info_bar(info_bar);
}
})
- .to_glib(),
+ .to_glib() as usize,
);
if let LoginGUI::OAuth(web_login_desc) = info.login_gui.clone() {
@@ -129,10 +122,7 @@ impl WebLogin {
url: uri.as_str().to_owned(),
};
let oauth_data = LoginData::OAuth(oauth_data);
- if let Some(signal_id) = *redirect_signal_id.read() {
- let signal_id = SignalHandlerId::from_glib(signal_id);
- webview.disconnect(signal_id);
- }
+ GtkUtil::disconnect_signal(*redirect_signal_id.read(), webview);
webview.stop_loading();
Util::send(&sender, Action::Login(oauth_data));
}
@@ -145,7 +135,7 @@ impl WebLogin {
}
}));
- self.redirect_signal_id.write().replace(signal_id.to_glib());
+ self.redirect_signal_id.write().replace(signal_id.to_glib() as usize);
return Ok(());
}
diff --git a/src/reset_page.rs b/src/reset_page.rs
index 6382cac..f088ff2 100644
--- a/src/reset_page.rs
+++ b/src/reset_page.rs
@@ -12,7 +12,7 @@ pub struct ResetPage {
reset_button: Button,
info_bar: InfoBar,
error_details_button: Button,
- error_details_signal: RwLock<Option<u64>>,
+ error_details_signal: RwLock<Option<usize>>,
}
impl ResetPage {
@@ -72,7 +72,7 @@ impl ResetPage {
.expect("MainWindow is not a parent of password login error details button.");
let _dialog = ErrorDialog::new(&error, &parent);
})
- .to_glib(),
+ .to_glib() as usize,
);
self.info_bar.set_revealed(true);
diff --git a/src/sidebar/feed_list/category_row.rs b/src/sidebar/feed_list/category_row.rs
index b33e694..0b6f580 100644
--- a/src/sidebar/feed_list/category_row.rs
+++ b/src/sidebar/feed_list/category_row.rs
@@ -32,7 +32,7 @@ pub struct CategoryRow {
item_count_event: EventBox,
title: Label,
expanded: bool,
- connected_signals: Vec<(u64, Widget)>,
+ connected_signals: Vec<(usize, Widget)>,
}
impl CategoryRow {
@@ -96,7 +96,7 @@ impl CategoryRow {
arrow_image.set_opacity(1.0);
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
arrow_event.clone().upcast::<Widget>(),
));
@@ -106,7 +106,7 @@ impl CategoryRow {
arrow_image.set_opacity(0.8);
Inhibit(false)
}))
- .to_glib(),
+ .to_glib() as usize,
arrow_event.clone().upcast::<Widget>(),
));
@@ -127,7 +127,7 @@ impl CategoryRow {
Inhibit(false)
}),
)
- .to_glib(),
+ .to_glib() as usize,
arrow_event.clone().upcast::<Widget>(),
));
@@ -155,7 +155,7 @@ impl CategoryRow {
features: &Arc<RwLock<Option<PluginCapabilities>>>,
label: String,
sender: Sender<Action>,
- ) -> Option<(u64, Widget)> {
+ ) -> Option<(usize, Widget)> {
row.set_activatable(true);
row.set_can_focus(false);
row.get_style_context().remove_class("activatable");
@@ -240,7 +240,7 @@ impl CategoryRow {
row.set_state_flags(StateFlags::PRELIGHT, false);
Inhibit(true)
- })).to_glib(), eventbox.clone().upcast::<Widget>()))
+ })).to_glib() as usize, eventbox.clone().upcast::<Widget>()))
} else {
None
}
diff --git a/src/sidebar/feed_list/feed_row.rs b/src/sidebar/feed_list/feed_row.rs
index 86529ad..248332b 100644
--- a/src/sidebar/feed_list/feed_row.rs
+++ b/src/sidebar/feed_list/feed_row.rs
@@ -39,7 +39,7 @@ pub struct FeedRow {
revealer: Revealer,
hide_timeout: Arc<RwLock<Option<u32>>>,
favicon: Image,
- connected_signals: Vec<(u64, Widget)>,
+ connected_signals: Vec<(usize, Widget)>,
}
impl FeedRow {
@@ -100,7 +100,7 @@ impl FeedRow {
id: &FeedID,
parent_id: &CategoryID,
label: String,
- ) -> Vec<(u64, Widget)> {
+ ) -> Vec<(usize, Widget)> {
let mut vec = Vec::new();
row.set_activatable(true);
@@ -135,7 +135,7 @@ impl FeedRow {
}
}
}))
- .to_glib(),
+ .to_glib() as usize,
revealer.clone().upcast::<Widget>(),
));
@@ -152,7 +152,7 @@ impl FeedRow {
style_context.remove_class("drag-icon");
drag_context.drag_set_icon_surface(&surface);
}))
- .to_glib(),
+ .to_glib() as usize,
revealer.clone().upcast::<Widget>(),
));
@@ -231,7 +231,7 @@ impl FeedRow {
row.set_state_flags(StateFlags::PRELIGHT, false);
Inhibit(true)
- })).to_glib(), row.clone().upcast::<Widget>()));
+ })).to_glib() as usize, row.clone().upcast::<Widget>()));
}
vec
diff --git a/src/tag_popover/mod.rs b/src/tag_popover/mod.rs
index af0905e..9b6a38e 100644
--- a/src/tag_popover/mod.rs
+++ b/src/tag_popover/mod.rs
@@ -28,11 +28,11 @@ pub struct TagPopover {
unassigned_tags_list_stack: Stack,
assigned_tags: Arc<RwLock<Vec<Tag>>>,
unassigned_tags: Arc<RwLock<Vec<Tag>>>,
- add_button_signal: Option<u64>,
- back_button_signal: Option<u64>,
- popover_close_signal: Option<u64>,
- assigned_click_signal: Option<u64>,
- unassigned_click_signal: Option<u64>,
+ add_button_signal: Option<usize>,
+ back_button_signal: Option<usize>,
+ popover_close_signal: Option<usize>,
+ assigned_click_signal: Option<usize>,
+ unassigned_click_signal: Option<usize>,
}
impl TagPopover {
@@ -55,7 +55,7 @@ impl TagPopover {
.connect_clicked(clone!(@weak main_stack => @default-panic, move |_button| {
main_stack.set_visible_child_full("possible_tags", StackTransitionType::SlideLeft);
}))
- .to_glib(),
+ .to_glib() as usize,
);
let back_button_signal = Some(
@@ -63,7 +63,7 @@ impl TagPopover {
.connect_clicked(clone!(@weak main_stack => @default-panic, move |_button| {
main_stack.set_visible_child_full("assigned_tags", StackTransitionType::SlideRight);
}))
- .to_glib(),
+ .to_glib() as usize,
);
let popover_close_signal = Some(
@@ -71,7 +71,7 @@ impl TagPopover {
.connect_closed(clone!(@weak main_stack => @default-panic, move |_button| {
main_stack.set_visible_child_full("assigned_tags", StackTransitionType::None);
}))
- .to_glib(),
+ .to_glib() as usize,
);
let assigned_click_signal = Some(
@@ -79,7 +79,7 @@ impl TagPopover {
.connect_row_activated(|_list, _row| {
info!("click");
})
- .to_glib(),
+ .to_glib() as usize,
);
let unassigned_click_signal = Some(
@@ -130,7 +130,7 @@ impl TagPopover {
main_stack.set_visible_child_full("assigned_tags", StackTransitionType::SlideRight);
list.remove(row);
}))
- .to_glib(),
+ .to_glib() as usize,
);
let popover = TagPopover {
diff --git a/src/util/gtk_util.rs b/src/util/gtk_util.rs
index d8ec0f0..7189533 100644
--- a/src/util/gtk_util.rs
+++ b/src/util/gtk_util.rs
@@ -155,9 +155,12 @@ impl GtkUtil {
None
}
- pub fn disconnect_signal<T: ObjectExt>(signal_id: Option<u64>, widget: &T) {
+ pub fn disconnect_signal<T: ObjectExt>(signal_id: Option<usize>, widget: &T) {
if let Some(signal_id) = signal_id {
- let signal_id = SignalHandlerId::from_glib(signal_id);
+ #[cfg(target_pointer_width = "64")]
+ let signal_id = SignalHandlerId::from_glib(signal_id as u64);
+ #[cfg(target_pointer_width = "32")]
+ let signal_id = SignalHandlerId::from_glib(signal_id as u32);
widget.disconnect(signal_id);
}
//warn!("Signal ID to disconnect is NONE");
--
2.27.0