Cargo format

main
Tassilo Horn 3 years ago
parent 33f85b576c
commit d7aa1d856c
  1. 2
      swayr/src/cmds.rs
  2. 7
      swayr/src/daemon.rs
  3. 35
      swayr/src/focus.rs
  4. 2
      swayr/src/lib.rs

@ -754,7 +754,7 @@ fn select_and_move_focused_to(prompt: &str, choices: &[t::DisplayNode]) {
pub fn move_focused_to_workspace(fdata: &FocusData) {
let root = ipc::get_root_node(true);
let tree = t::get_tree(&root);
select_and_move_focused_to(
select_and_move_focused_to(
"Move focused container to workspace",
&tree.get_workspaces(fdata),
);

@ -296,10 +296,7 @@ fn focus_lock_in_handler(
let update_focus = |fev: Option<FocusEvent>| {
if let Some(fev) = fev {
log::debug!("Locking-in focus on {}", fev.node_id);
fdata.update_last_focus_tick(
fev.node_id,
fev.ev_focus_ctr,
)
fdata.update_last_focus_tick(fev.node_id, fev.ev_focus_ctr)
}
};
@ -318,7 +315,7 @@ fn focus_lock_in_handler(
FocusMessage::TickUpdateActivate => {
inhibit.clear();
update_focus(pending_fev.take());
continue
continue;
}
FocusMessage::FocusEvent(fev) => {
if let InhibitState::FocusInhibit = inhibit {

@ -15,10 +15,10 @@
//! Structure to hold window focus timestamps used by swayrd
use std::collections::HashMap;
use std::sync::mpsc;
use std::sync::Arc;
use std::sync::RwLock;
use std::collections::HashMap;
/// Data tracking most recent focus events for Sway windows/containers
#[derive(Clone)]
@ -29,51 +29,38 @@ pub struct FocusData {
impl FocusData {
pub fn last_focus_tick(&self, id: i64) -> u64 {
*self.focus_tick_by_id
.read()
.unwrap()
.get(&id)
.unwrap_or(&0)
*self.focus_tick_by_id.read().unwrap().get(&id).unwrap_or(&0)
}
pub fn update_last_focus_tick(
&self,
id: i64,
focus_val: u64,
) {
pub fn update_last_focus_tick(&self, id: i64, focus_val: u64) {
let mut write_lock = self.focus_tick_by_id.write().unwrap();
if let Some(tick) = write_lock.get_mut(&id) {
*tick = focus_val;
}
// else the node has since been closed before this focus event got locked in
}
pub fn remove_focus_data(
&self,
id: i64
) {
pub fn remove_focus_data(&self, id: i64) {
self.focus_tick_by_id.write().unwrap().remove(&id);
}
/// Ensures that a given node_id is present in the ExtraProps map, this
/// later used to distinguish between the case where a container was
/// closed (it will no longer be in the map) or
/// closed (it will no longer be in the map) or
pub fn ensure_id(&self, id: i64) {
let mut write_lock = self.focus_tick_by_id.write().unwrap();
if write_lock.get(&id).is_none() {
write_lock.insert(
id,
0,
);
write_lock.insert(id, 0);
}
}
pub fn send(&self, fmsg: FocusMessage) {
// todo can this be removed?
if let FocusMessage::FocusEvent(ref fev) = fmsg {
if let FocusMessage::FocusEvent(ref fev) = fmsg {
self.ensure_id(fev.node_id);
}
self.focus_chan.send(fmsg)
self.focus_chan
.send(fmsg)
.expect("Failed to send focus event over channel");
}
}

@ -22,8 +22,8 @@ pub mod client;
pub mod cmds;
pub mod config;
pub mod daemon;
pub mod focus;
pub mod layout;
pub mod shared;
pub mod tree;
pub mod util;
pub mod focus;

Loading…
Cancel
Save