Merge branch 'alatiera/updates' into 'master'
Update gtk-rs See merge request World/podcasts!137
This commit is contained in:
commit
59a57a740f
1496
Cargo.lock
generated
1496
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -12,7 +12,7 @@ dependency('glib-2.0', version: '>= 2.56')
|
||||
dependency('gio-2.0', version: '>= 2.56')
|
||||
dependency('gdk-pixbuf-2.0')
|
||||
dependency('gtk+-3.0', version: '>= 3.24.11')
|
||||
dependency('libhandy-0.0', version: '>= 0.0.11')
|
||||
dependency('libhandy-0.0', version: '>= 0.0.13')
|
||||
|
||||
dependency('gstreamer-1.0', version: '>= 1.16')
|
||||
dependency('gstreamer-base-1.0', version: '>= 1.16')
|
||||
|
||||
@ -25,7 +25,6 @@
|
||||
"--share=network"
|
||||
],
|
||||
"env" : {
|
||||
"RUSTFLAGS" : "--error-format=short --remap-path-prefix =../",
|
||||
"CARGO_HOME" : "/run/build/Podcasts/cargo",
|
||||
"RUSTFLAGS" : "",
|
||||
"RUST_BACKTRACE" : "1"
|
||||
@ -51,7 +50,7 @@
|
||||
{
|
||||
"type" : "git",
|
||||
"url" : "https://source.puri.sm/Librem5/libhandy.git",
|
||||
"commit" : "f5909a897f70143bdd2f89f47a63c1bf848330ce"
|
||||
"tag" : "v0.0.13"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@ -27,7 +27,6 @@
|
||||
],
|
||||
"env" : {
|
||||
"CARGO_HOME" : "/run/build/Podcasts/cargo",
|
||||
"RUSTFLAGS" : "--error-format=short --remap-path-prefix =../",
|
||||
"RUST_BACKTRACE" : "1"
|
||||
}
|
||||
},
|
||||
@ -51,7 +50,7 @@
|
||||
{
|
||||
"type" : "git",
|
||||
"url" : "https://source.puri.sm/Librem5/libhandy.git",
|
||||
"commit" : "f5909a897f70143bdd2f89f47a63c1bf848330ce"
|
||||
"tag" : "v0.0.13"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@ -7,12 +7,12 @@ edition = "2018"
|
||||
[dependencies]
|
||||
chrono = "0.4.9"
|
||||
crossbeam-channel = "0.3.9"
|
||||
gdk = "0.11.0"
|
||||
gdk-pixbuf = "0.7.0"
|
||||
gobject-sys = "0.9.0"
|
||||
glib-sys = "0.9.0"
|
||||
gst = { version = "0.14.0", package = "gstreamer" }
|
||||
gst-player = { version = "0.14.0", package = "gstreamer-player" }
|
||||
gdk = "0.12.0"
|
||||
gdk-pixbuf = "0.8.0"
|
||||
gobject-sys = "0.9.1"
|
||||
glib-sys = "0.9.1"
|
||||
gst = { version = "0.15.2", package = "gstreamer" }
|
||||
gst-player = { version = "0.15.0", package = "gstreamer-player" }
|
||||
humansize = "1.1.0"
|
||||
lazy_static = "1.4.0"
|
||||
log = "0.4.8"
|
||||
@ -28,8 +28,8 @@ reqwest = "0.9.22"
|
||||
serde_json = "1.0.41"
|
||||
# html2text = "0.1.8"
|
||||
html2text = { git = "https://github.com/jugglerchris/rust-html2text" }
|
||||
mpris-player = "0.4.0"
|
||||
pango = "0.7.0"
|
||||
mpris-player = "0.5.0"
|
||||
pango = "0.8.0"
|
||||
|
||||
[dependencies.gettext-rs]
|
||||
git = "https://github.com/danigm/gettext-rs"
|
||||
@ -37,19 +37,18 @@ branch = "no-gettext"
|
||||
features = ["gettext-system"]
|
||||
|
||||
[dependencies.glib]
|
||||
features = ["subclassing"]
|
||||
version = "0.8.2"
|
||||
version = "0.9.1"
|
||||
|
||||
[dependencies.gio]
|
||||
features = ["v2_50", "subclassing"]
|
||||
version = "0.7.0"
|
||||
features = ["v2_50"]
|
||||
version = "0.8.0"
|
||||
|
||||
[dependencies.gtk]
|
||||
features = ["v3_24", "subclassing"]
|
||||
version = "0.7.0"
|
||||
features = ["v3_24"]
|
||||
version = "0.8.0"
|
||||
|
||||
[dependencies.libhandy]
|
||||
version = "0.4.0"
|
||||
version = "0.5.0"
|
||||
features = [ "v0_0_10"]
|
||||
|
||||
# [dependencies.mpris-player]
|
||||
|
||||
@ -81,11 +81,21 @@ impl WindowGeometry {
|
||||
}
|
||||
|
||||
pub(crate) fn write(&self, settings: &gio::Settings) {
|
||||
settings.set_int("persist-window-geometry-left", self.left);
|
||||
settings.set_int("persist-window-geometry-top", self.top);
|
||||
settings.set_int("persist-window-geometry-width", self.width);
|
||||
settings.set_int("persist-window-geometry-height", self.height);
|
||||
settings.set_boolean("persist-window-geometry-maximized", self.is_maximized);
|
||||
settings
|
||||
.set_int("persist-window-geometry-left", self.left)
|
||||
.unwrap();
|
||||
settings
|
||||
.set_int("persist-window-geometry-top", self.top)
|
||||
.unwrap();
|
||||
settings
|
||||
.set_int("persist-window-geometry-width", self.width)
|
||||
.unwrap();
|
||||
settings
|
||||
.set_int("persist-window-geometry-height", self.height)
|
||||
.unwrap();
|
||||
settings
|
||||
.set_boolean("persist-window-geometry-maximized", self.is_maximized)
|
||||
.unwrap();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -90,7 +90,7 @@ impl PopulatedStack {
|
||||
|
||||
pub(crate) fn replace_shows(&mut self) -> Result<(), Error> {
|
||||
let old = &self.populated.view.container().clone();
|
||||
debug!("Name: {:?}", WidgetExt::get_name(old));
|
||||
debug!("Name: {:?}", old.get_widget_name());
|
||||
|
||||
let vadj = self.populated.view.get_vadjustment();
|
||||
let pop = ShowsView::new(self.sender.clone(), vadj);
|
||||
|
||||
@ -17,8 +17,8 @@
|
||||
//
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
use gio::{resources_register, Error, Resource};
|
||||
use glib::Bytes;
|
||||
use gio::{resources_register, Resource};
|
||||
use glib::{Error, Bytes};
|
||||
|
||||
pub(crate) fn init() -> Result<(), Error> {
|
||||
// load the gresource binary at build time and include/link it into the final
|
||||
|
||||
@ -19,11 +19,12 @@
|
||||
|
||||
#![allow(clippy::type_complexity)]
|
||||
|
||||
use gdk_pixbuf::{Object, Pixbuf};
|
||||
use gdk_pixbuf::Pixbuf;
|
||||
use glib::{self, object::WeakRef};
|
||||
use glib::{IsA, Object};
|
||||
use gtk;
|
||||
use gtk::prelude::*;
|
||||
use gtk::{IsA, Widget};
|
||||
use gtk::Widget;
|
||||
|
||||
use chrono::prelude::*;
|
||||
use crossbeam_channel::{bounded, unbounded, Sender};
|
||||
@ -388,7 +389,6 @@ fn lookup_id(id: u32) -> Result<String, Error> {
|
||||
}
|
||||
|
||||
pub(crate) fn on_import_clicked(window: >k::ApplicationWindow, sender: &Sender<Action>) {
|
||||
use glib::translate::ToGlib;
|
||||
use gtk::{FileChooserAction, FileChooserNative, FileFilter, ResponseType};
|
||||
|
||||
// Create the FileChooser Dialog
|
||||
@ -412,7 +412,7 @@ pub(crate) fn on_import_clicked(window: >k::ApplicationWindow, sender: &Sender
|
||||
|
||||
let resp = dialog.run();
|
||||
debug!("Dialog Response {}", resp);
|
||||
if resp == ResponseType::Accept.to_glib() {
|
||||
if resp == ResponseType::Accept {
|
||||
if let Some(filename) = dialog.get_filename() {
|
||||
debug!("File selected: {:?}", filename);
|
||||
|
||||
@ -436,7 +436,6 @@ pub(crate) fn on_import_clicked(window: >k::ApplicationWindow, sender: &Sender
|
||||
}
|
||||
|
||||
pub(crate) fn on_export_clicked(window: >k::ApplicationWindow, sender: &Sender<Action>) {
|
||||
use glib::translate::ToGlib;
|
||||
use gtk::{FileChooserAction, FileChooserNative, FileFilter, ResponseType};
|
||||
|
||||
// Create the FileChooser Dialog
|
||||
@ -460,7 +459,7 @@ pub(crate) fn on_export_clicked(window: >k::ApplicationWindow, sender: &Sender
|
||||
|
||||
let resp = dialog.run();
|
||||
debug!("Dialog Response {}", resp);
|
||||
if resp == ResponseType::Accept.to_glib() {
|
||||
if resp == ResponseType::Accept {
|
||||
if let Some(filename) = dialog.get_filename() {
|
||||
debug!("File selected: {:?}", filename);
|
||||
|
||||
|
||||
@ -100,7 +100,8 @@ fn populate_flowbox(shows: &Rc<ShowsView>, vadj: Option<Adjustment>) -> Result<(
|
||||
|
||||
fn on_child_activate(child: >k::FlowBoxChild, sender: &Sender<Action>) -> Result<(), Error> {
|
||||
// This is such an ugly hack...
|
||||
let id = WidgetExt::get_name(child)
|
||||
let id = child
|
||||
.get_widget_name()
|
||||
.ok_or_else(|| format_err!("Failed to get \"episodes\" child from the stack."))?
|
||||
.parse::<i32>()?;
|
||||
let pd = Arc::new(dbqueries::get_podcast_from_id(id)?);
|
||||
@ -148,7 +149,7 @@ impl ShowsChild {
|
||||
|
||||
fn init(&self, pd: &Show) {
|
||||
self.child.set_tooltip_text(Some(pd.title()));
|
||||
WidgetExt::set_name(&self.child, &pd.id().to_string());
|
||||
self.child.set_widget_name(&pd.id().to_string());
|
||||
|
||||
self.set_cover(pd.id())
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user