mirror of
https://github.com/zed-industries/zed.git
synced 2024-09-20 02:47:34 +03:00
Port 1.00 following tests
Co-Authored-By: Max <max@zed.dev>
This commit is contained in:
parent
5037cca7ec
commit
81d707adbc
@ -855,6 +855,14 @@ impl Database {
|
|||||||
.exec(&*tx)
|
.exec(&*tx)
|
||||||
.await?;
|
.await?;
|
||||||
|
|
||||||
|
follower::Entity::delete_many()
|
||||||
|
.filter(
|
||||||
|
Condition::all()
|
||||||
|
.add(follower::Column::FollowerConnectionId.eq(connection.id as i32)),
|
||||||
|
)
|
||||||
|
.exec(&*tx)
|
||||||
|
.await?;
|
||||||
|
|
||||||
// Unshare projects.
|
// Unshare projects.
|
||||||
project::Entity::delete_many()
|
project::Entity::delete_many()
|
||||||
.filter(
|
.filter(
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -214,7 +214,6 @@ impl TerminalPanel {
|
|||||||
pane::Event::Remove => cx.emit(PanelEvent::Close),
|
pane::Event::Remove => cx.emit(PanelEvent::Close),
|
||||||
pane::Event::ZoomIn => cx.emit(PanelEvent::ZoomIn),
|
pane::Event::ZoomIn => cx.emit(PanelEvent::ZoomIn),
|
||||||
pane::Event::ZoomOut => cx.emit(PanelEvent::ZoomOut),
|
pane::Event::ZoomOut => cx.emit(PanelEvent::ZoomOut),
|
||||||
pane::Event::Focus => cx.emit(PanelEvent::Focus),
|
|
||||||
|
|
||||||
pane::Event::AddItem { item } => {
|
pane::Event::AddItem { item } => {
|
||||||
if let Some(workspace) = self.workspace.upgrade() {
|
if let Some(workspace) = self.workspace.upgrade() {
|
||||||
|
@ -19,7 +19,6 @@ pub enum PanelEvent {
|
|||||||
ZoomOut,
|
ZoomOut,
|
||||||
Activate,
|
Activate,
|
||||||
Close,
|
Close,
|
||||||
Focus,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub trait Panel: FocusableView + EventEmitter<PanelEvent> {
|
pub trait Panel: FocusableView + EventEmitter<PanelEvent> {
|
||||||
@ -216,6 +215,28 @@ impl Dock {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
cx.on_focus_in(&focus_handle, {
|
||||||
|
let dock = dock.downgrade();
|
||||||
|
move |workspace, cx| {
|
||||||
|
let Some(dock) = dock.upgrade() else {
|
||||||
|
return;
|
||||||
|
};
|
||||||
|
let Some(panel) = dock.read(cx).active_panel() else {
|
||||||
|
return;
|
||||||
|
};
|
||||||
|
if panel.is_zoomed(cx) {
|
||||||
|
workspace.zoomed = Some(panel.to_any().downgrade().into());
|
||||||
|
workspace.zoomed_position = Some(position);
|
||||||
|
} else {
|
||||||
|
workspace.zoomed = None;
|
||||||
|
workspace.zoomed_position = None;
|
||||||
|
}
|
||||||
|
workspace.dismiss_zoomed_items_to_reveal(Some(position), cx);
|
||||||
|
workspace.update_active_view_for_followers(cx)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.detach();
|
||||||
|
|
||||||
cx.observe(&dock, move |workspace, dock, cx| {
|
cx.observe(&dock, move |workspace, dock, cx| {
|
||||||
if dock.read(cx).is_open() {
|
if dock.read(cx).is_open() {
|
||||||
if let Some(panel) = dock.read(cx).active_panel() {
|
if let Some(panel) = dock.read(cx).active_panel() {
|
||||||
@ -394,7 +415,6 @@ impl Dock {
|
|||||||
this.set_open(false, cx);
|
this.set_open(false, cx);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
PanelEvent::Focus => {}
|
|
||||||
}),
|
}),
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -561,6 +581,7 @@ impl Render for Dock {
|
|||||||
}
|
}
|
||||||
|
|
||||||
div()
|
div()
|
||||||
|
.track_focus(&self.focus_handle)
|
||||||
.flex()
|
.flex()
|
||||||
.bg(cx.theme().colors().panel_background)
|
.bg(cx.theme().colors().panel_background)
|
||||||
.border_color(cx.theme().colors().border)
|
.border_color(cx.theme().colors().border)
|
||||||
@ -584,7 +605,7 @@ impl Render for Dock {
|
|||||||
)
|
)
|
||||||
.child(handle)
|
.child(handle)
|
||||||
} else {
|
} else {
|
||||||
div()
|
div().track_focus(&self.focus_handle)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -720,7 +741,7 @@ pub mod test {
|
|||||||
|
|
||||||
impl Render for TestPanel {
|
impl Render for TestPanel {
|
||||||
fn render(&mut self, _cx: &mut ViewContext<Self>) -> impl IntoElement {
|
fn render(&mut self, _cx: &mut ViewContext<Self>) -> impl IntoElement {
|
||||||
div()
|
div().id("test").track_focus(&self.focus_handle)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -442,7 +442,7 @@ impl<T: Item> ItemHandle for View<T> {
|
|||||||
) && !pending_update_scheduled.load(Ordering::SeqCst)
|
) && !pending_update_scheduled.load(Ordering::SeqCst)
|
||||||
{
|
{
|
||||||
pending_update_scheduled.store(true, Ordering::SeqCst);
|
pending_update_scheduled.store(true, Ordering::SeqCst);
|
||||||
cx.on_next_frame({
|
cx.defer({
|
||||||
let pending_update = pending_update.clone();
|
let pending_update = pending_update.clone();
|
||||||
let pending_update_scheduled = pending_update_scheduled.clone();
|
let pending_update_scheduled = pending_update_scheduled.clone();
|
||||||
move |this, cx| {
|
move |this, cx| {
|
||||||
|
Loading…
Reference in New Issue
Block a user