Another batch of lint fixes (#36521)
- **Enable a bunch of extra lints** - **First batch of fixes** - **More fixes** Release Notes: - N/A
This commit is contained in:
@@ -949,11 +949,8 @@ impl Dispatch<WlCallback, ObjectId> for WaylandClientStatePtr {
|
||||
};
|
||||
drop(state);
|
||||
|
||||
match event {
|
||||
wl_callback::Event::Done { .. } => {
|
||||
window.frame();
|
||||
}
|
||||
_ => {}
|
||||
if let wl_callback::Event::Done { .. } = event {
|
||||
window.frame();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2014,25 +2011,22 @@ impl Dispatch<wl_data_offer::WlDataOffer, ()> for WaylandClientStatePtr {
|
||||
let client = this.get_client();
|
||||
let mut state = client.borrow_mut();
|
||||
|
||||
match event {
|
||||
wl_data_offer::Event::Offer { mime_type } => {
|
||||
// Drag and drop
|
||||
if mime_type == FILE_LIST_MIME_TYPE {
|
||||
let serial = state.serial_tracker.get(SerialKind::DataDevice);
|
||||
let mime_type = mime_type.clone();
|
||||
data_offer.accept(serial, Some(mime_type));
|
||||
}
|
||||
if let wl_data_offer::Event::Offer { mime_type } = event {
|
||||
// Drag and drop
|
||||
if mime_type == FILE_LIST_MIME_TYPE {
|
||||
let serial = state.serial_tracker.get(SerialKind::DataDevice);
|
||||
let mime_type = mime_type.clone();
|
||||
data_offer.accept(serial, Some(mime_type));
|
||||
}
|
||||
|
||||
// Clipboard
|
||||
if let Some(offer) = state
|
||||
.data_offers
|
||||
.iter_mut()
|
||||
.find(|wrapper| wrapper.inner.id() == data_offer.id())
|
||||
{
|
||||
offer.add_mime_type(mime_type);
|
||||
}
|
||||
// Clipboard
|
||||
if let Some(offer) = state
|
||||
.data_offers
|
||||
.iter_mut()
|
||||
.find(|wrapper| wrapper.inner.id() == data_offer.id())
|
||||
{
|
||||
offer.add_mime_type(mime_type);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2113,13 +2107,10 @@ impl Dispatch<zwp_primary_selection_offer_v1::ZwpPrimarySelectionOfferV1, ()>
|
||||
let client = this.get_client();
|
||||
let mut state = client.borrow_mut();
|
||||
|
||||
match event {
|
||||
zwp_primary_selection_offer_v1::Event::Offer { mime_type } => {
|
||||
if let Some(offer) = state.primary_data_offer.as_mut() {
|
||||
offer.add_mime_type(mime_type);
|
||||
}
|
||||
}
|
||||
_ => {}
|
||||
if let zwp_primary_selection_offer_v1::Event::Offer { mime_type } = event
|
||||
&& let Some(offer) = state.primary_data_offer.as_mut()
|
||||
{
|
||||
offer.add_mime_type(mime_type);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -355,85 +355,82 @@ impl WaylandWindowStatePtr {
|
||||
}
|
||||
|
||||
pub fn handle_xdg_surface_event(&self, event: xdg_surface::Event) {
|
||||
match event {
|
||||
xdg_surface::Event::Configure { serial } => {
|
||||
{
|
||||
let mut state = self.state.borrow_mut();
|
||||
if let Some(window_controls) = state.in_progress_window_controls.take() {
|
||||
state.window_controls = window_controls;
|
||||
|
||||
drop(state);
|
||||
let mut callbacks = self.callbacks.borrow_mut();
|
||||
if let Some(appearance_changed) = callbacks.appearance_changed.as_mut() {
|
||||
appearance_changed();
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
let mut state = self.state.borrow_mut();
|
||||
|
||||
if let Some(mut configure) = state.in_progress_configure.take() {
|
||||
let got_unmaximized = state.maximized && !configure.maximized;
|
||||
state.fullscreen = configure.fullscreen;
|
||||
state.maximized = configure.maximized;
|
||||
state.tiling = configure.tiling;
|
||||
// Limit interactive resizes to once per vblank
|
||||
if configure.resizing && state.resize_throttle {
|
||||
return;
|
||||
} else if configure.resizing {
|
||||
state.resize_throttle = true;
|
||||
}
|
||||
if !configure.fullscreen && !configure.maximized {
|
||||
configure.size = if got_unmaximized {
|
||||
Some(state.window_bounds.size)
|
||||
} else {
|
||||
compute_outer_size(state.inset(), configure.size, state.tiling)
|
||||
};
|
||||
if let Some(size) = configure.size {
|
||||
state.window_bounds = Bounds {
|
||||
origin: Point::default(),
|
||||
size,
|
||||
};
|
||||
}
|
||||
}
|
||||
drop(state);
|
||||
if let Some(size) = configure.size {
|
||||
self.resize(size);
|
||||
}
|
||||
}
|
||||
}
|
||||
if let xdg_surface::Event::Configure { serial } = event {
|
||||
{
|
||||
let mut state = self.state.borrow_mut();
|
||||
state.xdg_surface.ack_configure(serial);
|
||||
if let Some(window_controls) = state.in_progress_window_controls.take() {
|
||||
state.window_controls = window_controls;
|
||||
|
||||
let window_geometry = inset_by_tiling(
|
||||
state.bounds.map_origin(|_| px(0.0)),
|
||||
state.inset(),
|
||||
state.tiling,
|
||||
)
|
||||
.map(|v| v.0 as i32)
|
||||
.map_size(|v| if v <= 0 { 1 } else { v });
|
||||
|
||||
state.xdg_surface.set_window_geometry(
|
||||
window_geometry.origin.x,
|
||||
window_geometry.origin.y,
|
||||
window_geometry.size.width,
|
||||
window_geometry.size.height,
|
||||
);
|
||||
|
||||
let request_frame_callback = !state.acknowledged_first_configure;
|
||||
if request_frame_callback {
|
||||
state.acknowledged_first_configure = true;
|
||||
drop(state);
|
||||
self.frame();
|
||||
let mut callbacks = self.callbacks.borrow_mut();
|
||||
if let Some(appearance_changed) = callbacks.appearance_changed.as_mut() {
|
||||
appearance_changed();
|
||||
}
|
||||
}
|
||||
}
|
||||
_ => {}
|
||||
{
|
||||
let mut state = self.state.borrow_mut();
|
||||
|
||||
if let Some(mut configure) = state.in_progress_configure.take() {
|
||||
let got_unmaximized = state.maximized && !configure.maximized;
|
||||
state.fullscreen = configure.fullscreen;
|
||||
state.maximized = configure.maximized;
|
||||
state.tiling = configure.tiling;
|
||||
// Limit interactive resizes to once per vblank
|
||||
if configure.resizing && state.resize_throttle {
|
||||
return;
|
||||
} else if configure.resizing {
|
||||
state.resize_throttle = true;
|
||||
}
|
||||
if !configure.fullscreen && !configure.maximized {
|
||||
configure.size = if got_unmaximized {
|
||||
Some(state.window_bounds.size)
|
||||
} else {
|
||||
compute_outer_size(state.inset(), configure.size, state.tiling)
|
||||
};
|
||||
if let Some(size) = configure.size {
|
||||
state.window_bounds = Bounds {
|
||||
origin: Point::default(),
|
||||
size,
|
||||
};
|
||||
}
|
||||
}
|
||||
drop(state);
|
||||
if let Some(size) = configure.size {
|
||||
self.resize(size);
|
||||
}
|
||||
}
|
||||
}
|
||||
let mut state = self.state.borrow_mut();
|
||||
state.xdg_surface.ack_configure(serial);
|
||||
|
||||
let window_geometry = inset_by_tiling(
|
||||
state.bounds.map_origin(|_| px(0.0)),
|
||||
state.inset(),
|
||||
state.tiling,
|
||||
)
|
||||
.map(|v| v.0 as i32)
|
||||
.map_size(|v| if v <= 0 { 1 } else { v });
|
||||
|
||||
state.xdg_surface.set_window_geometry(
|
||||
window_geometry.origin.x,
|
||||
window_geometry.origin.y,
|
||||
window_geometry.size.width,
|
||||
window_geometry.size.height,
|
||||
);
|
||||
|
||||
let request_frame_callback = !state.acknowledged_first_configure;
|
||||
if request_frame_callback {
|
||||
state.acknowledged_first_configure = true;
|
||||
drop(state);
|
||||
self.frame();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn handle_toplevel_decoration_event(&self, event: zxdg_toplevel_decoration_v1::Event) {
|
||||
match event {
|
||||
zxdg_toplevel_decoration_v1::Event::Configure { mode } => match mode {
|
||||
if let zxdg_toplevel_decoration_v1::Event::Configure { mode } = event {
|
||||
match mode {
|
||||
WEnum::Value(zxdg_toplevel_decoration_v1::Mode::ServerSide) => {
|
||||
self.state.borrow_mut().decorations = WindowDecorations::Server;
|
||||
if let Some(mut appearance_changed) =
|
||||
@@ -457,17 +454,13 @@ impl WaylandWindowStatePtr {
|
||||
WEnum::Unknown(v) => {
|
||||
log::warn!("Unknown decoration mode: {}", v);
|
||||
}
|
||||
},
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn handle_fractional_scale_event(&self, event: wp_fractional_scale_v1::Event) {
|
||||
match event {
|
||||
wp_fractional_scale_v1::Event::PreferredScale { scale } => {
|
||||
self.rescale(scale as f32 / 120.0);
|
||||
}
|
||||
_ => {}
|
||||
if let wp_fractional_scale_v1::Event::PreferredScale { scale } = event {
|
||||
self.rescale(scale as f32 / 120.0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -232,15 +232,12 @@ impl X11ClientStatePtr {
|
||||
};
|
||||
let mut state = client.0.borrow_mut();
|
||||
|
||||
if let Some(window_ref) = state.windows.remove(&x_window) {
|
||||
match window_ref.refresh_state {
|
||||
Some(RefreshState::PeriodicRefresh {
|
||||
event_loop_token, ..
|
||||
}) => {
|
||||
state.loop_handle.remove(event_loop_token);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
if let Some(window_ref) = state.windows.remove(&x_window)
|
||||
&& let Some(RefreshState::PeriodicRefresh {
|
||||
event_loop_token, ..
|
||||
}) = window_ref.refresh_state
|
||||
{
|
||||
state.loop_handle.remove(event_loop_token);
|
||||
}
|
||||
if state.mouse_focused_window == Some(x_window) {
|
||||
state.mouse_focused_window = None;
|
||||
@@ -876,22 +873,19 @@ impl X11Client {
|
||||
let Some(reply) = reply else {
|
||||
return Some(());
|
||||
};
|
||||
match str::from_utf8(&reply.value) {
|
||||
Ok(file_list) => {
|
||||
let paths: SmallVec<[_; 2]> = file_list
|
||||
.lines()
|
||||
.filter_map(|path| Url::parse(path).log_err())
|
||||
.filter_map(|url| url.to_file_path().log_err())
|
||||
.collect();
|
||||
let input = PlatformInput::FileDrop(FileDropEvent::Entered {
|
||||
position: state.xdnd_state.position,
|
||||
paths: crate::ExternalPaths(paths),
|
||||
});
|
||||
drop(state);
|
||||
window.handle_input(input);
|
||||
self.0.borrow_mut().xdnd_state.retrieved = true;
|
||||
}
|
||||
Err(_) => {}
|
||||
if let Ok(file_list) = str::from_utf8(&reply.value) {
|
||||
let paths: SmallVec<[_; 2]> = file_list
|
||||
.lines()
|
||||
.filter_map(|path| Url::parse(path).log_err())
|
||||
.filter_map(|url| url.to_file_path().log_err())
|
||||
.collect();
|
||||
let input = PlatformInput::FileDrop(FileDropEvent::Entered {
|
||||
position: state.xdnd_state.position,
|
||||
paths: crate::ExternalPaths(paths),
|
||||
});
|
||||
drop(state);
|
||||
window.handle_input(input);
|
||||
self.0.borrow_mut().xdnd_state.retrieved = true;
|
||||
}
|
||||
}
|
||||
Event::ConfigureNotify(event) => {
|
||||
|
||||
Reference in New Issue
Block a user