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) { pub fn move_focused_to_workspace(fdata: &FocusData) {
let root = ipc::get_root_node(true); let root = ipc::get_root_node(true);
let tree = t::get_tree(&root); let tree = t::get_tree(&root);
select_and_move_focused_to( select_and_move_focused_to(
"Move focused container to workspace", "Move focused container to workspace",
&tree.get_workspaces(fdata), &tree.get_workspaces(fdata),
); );

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

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

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

Loading…
Cancel
Save