mirror of
https://github.com/rustdesk/qemu-display.git
synced 2025-08-17 16:25:39 +00:00
console: render immediately when given an update
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
parent
c07a48ad2c
commit
64a6569da7
@ -1,5 +1,6 @@
|
|||||||
use glib::clone;
|
use glib::clone;
|
||||||
use glib::subclass::prelude::*;
|
use glib::subclass::prelude::*;
|
||||||
|
use gtk::glib::translate::FromGlibPtrBorrow;
|
||||||
use gtk::prelude::*;
|
use gtk::prelude::*;
|
||||||
use gtk::subclass::widget::WidgetImplExt;
|
use gtk::subclass::widget::WidgetImplExt;
|
||||||
use gtk::{gdk, glib, CompositeTemplate};
|
use gtk::{gdk, glib, CompositeTemplate};
|
||||||
@ -162,7 +163,15 @@ impl QemuConsole {
|
|||||||
match t {
|
match t {
|
||||||
Event::Update { .. } => {
|
Event::Update { .. } => {
|
||||||
priv_.wait_rendering.set(priv_.wait_rendering.get() + 1);
|
priv_.wait_rendering.set(priv_.wait_rendering.get() + 1);
|
||||||
priv_.area.queue_render();
|
// we don't simply queue_render, as we want a copy immediately
|
||||||
|
priv_.area.make_current();
|
||||||
|
priv_.area.attach_buffers();
|
||||||
|
let _ = unsafe {
|
||||||
|
glib::Object::from_glib_borrow(priv_.area.as_ptr() as *mut glib::gobject_ffi::GObject)
|
||||||
|
.emit("render", &[&priv_.area.get_context().as_ref()])
|
||||||
|
.unwrap()
|
||||||
|
};
|
||||||
|
priv_.area.queue_draw();
|
||||||
}
|
}
|
||||||
Event::Scanout(s) => {
|
Event::Scanout(s) => {
|
||||||
priv_.label.set_label(&format!("{:?}", s));
|
priv_.label.set_label(&format!("{:?}", s));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user