Compare commits

..

3 Commits

Author SHA1 Message Date
3207b7704b Latest monitor setup 2024-03-24 12:58:42 -07:00
5113e9d7a5 Remove debugging. 2023-06-23 17:10:51 -07:00
4429b6a6a6 Add LG monitor to the right center of main screens. 2023-06-23 17:10:02 -07:00

View File

@ -2,25 +2,29 @@ use anyhow::Result;
use fixscreen::*;
fn main() -> Result<()> {
let dell24 = Screen {
name: ("DELL U2415".to_string()),
let dell43 = Screen {
name: ("DELL U4323QE".to_string()),
resolution: Resolution {
width: 1920,
height: 1200,
width: 3840,
height: 2160,
},
offset: Offset { x: 0, y: 950 },
offset: Offset { x: 2560, y: 0 },
//orientation: Orientation::Left,
workspaces: vec!["distortion".to_string()],
workspaces: vec!["fraud".to_string()],
..Default::default()
};
let dell30 = Screen {
name: ("DELL 3007WFP".to_string()),
let lenovo = Screen {
name: ("Lenovo Group Limited P27h-20".to_string()),
resolution: Resolution {
width: 2560,
height: 1600,
height: 1440,
},
offset: Offset { x: 1920, y: 0 },
workspaces: vec!["virtue".to_string()],
offset: Offset {
x: 0,
y: ((dell43.resolution.height - 1440) / 2) as isize,
},
primary: true,
workspaces: vec!["distortion".to_string()],
..Default::default()
};
let lg = Screen {
@ -34,29 +38,23 @@ fn main() -> Result<()> {
// monitors have a gap, you can move the mouse between any combo. When the top monitor
// is flush with the left, the bottom monitor will have a hard edge that prevents the
// mouse from moving to the left monitor.
x: 1 + dell24.resolution.height as isize,
y: 0,
x: (lenovo.resolution.width + dell43.resolution.width) as isize,
y: ((dell43.resolution.height - 1440) / 2) as isize,
},
workspaces: vec!["twilight".to_string()],
workspaces: vec!["virtue".to_string()],
..Default::default()
};
let lenovo = Screen {
name: ("Lenovo Group Limited P27h-20".to_string()),
resolution: Resolution {
width: 2560,
height: 1440,
},
offset: Offset { x: 1920, y: 1600 },
primary: true,
workspaces: vec!["fraud".to_string()],
..Default::default()
};
let screens = vec![dell24, dell30, lenovo];
let map = screen_mapping_from_xorg_log("/var/log/X.0.log")?;
let lg_connected = std::env::args().len() > 1;
let mut screens = vec![dell43, lenovo];
if lg_connected {
screens.push(lg);
}
let cfg = Config {
screens: screens.clone(),
};
let map = screen_mapping_from_xorg_log("/var/log/X.0.log")?;
let cmd = run_cmd(&map, &cfg)?;
println!("cmd {:#?}", cmd);
// TODO(wathiede): run xrandr --output $DPY --primary