aboutsummaryrefslogtreecommitdiff
path: root/src/socket
diff options
context:
space:
mode:
authorMatias Linares <matiaslina@openmailbox.org>2015-11-30 22:50:01 -0300
committerMatias Linares <matiaslina@openmailbox.org>2015-11-30 22:50:01 -0300
commit12faa87415d91820503b6b1c98ebabbddc50d665 (patch)
tree1f44c59543467629b0e6560dae05594d82142070 /src/socket
parent17e7402348195d24b7745d4dbea9f922b71f675c (diff)
downloaddotwm-12faa87415d91820503b6b1c98ebabbddc50d665.tar.gz
Add resize-win-sticky.
The move window sticky is working weirdly. The movement should be using the attrs.x and attrs.y instead the attrs.x/y + attrs.width/height. But it's working :).
Diffstat (limited to 'src/socket')
-rw-r--r--src/socket/mod.rs2
-rw-r--r--src/socket/parser.rs8
2 files changed, 6 insertions, 4 deletions
diff --git a/src/socket/mod.rs b/src/socket/mod.rs
index 667969b..66dae16 100644
--- a/src/socket/mod.rs
+++ b/src/socket/mod.rs
@@ -27,7 +27,7 @@ impl<'a> ParsedCmd<'a> {
pub fn handle(self, wm: &mut DotWM, bindings: &mut BindingHash) {
match self.f {
FnType::Bind => {
- let modifier = self.modifiers.iter()
+ let modifier: u32 = self.modifiers.iter()
.fold(0, |acc, x| acc | x );
add_binding(wm, bindings,
self.key, modifier, self.func, &self.args);
diff --git a/src/socket/parser.rs b/src/socket/parser.rs
index 491c315..bd73ff6 100644
--- a/src/socket/parser.rs
+++ b/src/socket/parser.rs
@@ -22,10 +22,11 @@ macro_rules! simple_try {
}
fn modifier_from<'a>(s: &'a str) -> Result<u32, &'static str> {
+ println!("Getted modifier {}", s);
match s {
- "Mod1" => Ok(xlib::Mod4Mask),
- "Mod2" => Ok(xlib::Mod4Mask),
- "Mod3" => Ok(xlib::Mod4Mask),
+ "Mod1" => Ok(xlib::Mod1Mask),
+ "Mod2" => Ok(xlib::Mod2Mask),
+ "Mod3" => Ok(xlib::Mod3Mask),
"Mod4" => Ok(xlib::Mod4Mask),
"Control" => Ok(xlib::ControlMask),
"Shift" => Ok(xlib::ShiftMask),
@@ -111,6 +112,7 @@ fn func<'a>(s: &'a str) -> Result<ExecFn, &'static str> {
"move-win-to" => Ok(move_win_to),
"move-win-sticky" => Ok(move_win_sticky),
"resize-win" => Ok(resize_win),
+ "resize-win-sticky" => Ok(resize_win_sticky),
"focus-next" => Ok(focus_next),
"close-win" => Ok(close_win),
"fullscreen" => Ok(fullscreen),