History

Make Window::on_next_frame work in tests

Max Brunsfeld committed 2 years ago

Commit f2faa701 parent 863222e2 files · +20 −12Browse files

Unified · Split

2 files
  1. crates/gpui2/src/platform/mac/display_linker.rs +2 −1
  2. crates/gpui2/src/platform/test/platform.rs +18 −11
crates/gpui2/src/platform/mac/display_linker.rs+2−1
@@ -7,6 +7,7 @@ use std::{ · 6 unmodified lines
77 use crate::DisplayId;
88 use collections::HashMap;
99 use parking_lot::Mutex;
10+pub use sys::CVSMPTETime as SmtpeTime;
1011 pub use sys::CVTimeStamp as VideoTimestamp;
1112
1213 pub(crate) struct MacDisplayLinker {
@@ -153,7 +154,7 @@ mod sys { · 140 unmodified lines
153154 kCVTimeStampTopField | kCVTimeStampBottomField;
154155
155156 #[repr(C)]
156− #[derive(Clone, Copy)]
157+ #[derive(Clone, Copy, Default)]
157158 pub struct CVSMPTETime {
158159 pub subframes: i16,
159160 pub subframe_divisor: i16,
crates/gpui2/src/platform/test/platform.rs+18−11
@@ -147,18 +147,25 @@ impl Platform for TestPlatform { · 146 unmodified lines
147147 fn set_display_link_output_callback(
148148 &self,
149149 _display_id: DisplayId,
150− _callback: Box<dyn FnMut(&crate::VideoTimestamp, &crate::VideoTimestamp) + Send>,
150+ mut callback: Box<dyn FnMut(&crate::VideoTimestamp, &crate::VideoTimestamp) + Send>,
151151 ) {
152− unimplemented!()
153− }
154−
155− fn start_display_link(&self, _display_id: DisplayId) {
156− unimplemented!()
157− }
158−
159− fn stop_display_link(&self, _display_id: DisplayId) {
160− unimplemented!()
161− }
152+ let timestamp = crate::VideoTimestamp {
153+ version: 0,
154+ video_time_scale: 0,
155+ video_time: 0,
156+ host_time: 0,
157+ rate_scalar: 0.0,
158+ video_refresh_period: 0,
159+ smpte_time: crate::SmtpeTime::default(),
160+ flags: 0,
161+ reserved: 0,
162+ };
163+ callback(&timestamp, &timestamp)
164+ }
165+
166+ fn start_display_link(&self, _display_id: DisplayId) {}
167+
168+ fn stop_display_link(&self, _display_id: DisplayId) {}
162169
163170 fn open_url(&self, _url: &str) {
164171 unimplemented!()

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t