From e541ba3d876de8ce2812482fc6bfa13b236c6a58 Mon Sep 17 00:00:00 2001 From: Luminarys Date: Tue, 18 Aug 2015 01:33:15 -0500 Subject: Added in basic, but semi-broken moving/resizing functionality to floating windows --- include/config.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/config.h') diff --git a/include/config.h b/include/config.h index 38e93eb8..b9511aac 100644 --- a/include/config.h +++ b/include/config.h @@ -3,6 +3,7 @@ #include #include +#include #include "list.h" struct sway_variable { @@ -32,6 +33,7 @@ struct sway_config { list_t *cmd_queue; list_t *workspace_outputs; struct sway_mode *current_mode; + uint32_t floating_mod; // Flags bool focus_follows_mouse; -- cgit v1.2.3-54-g00ecf From b132f67e7bb5017c73658cec8d297060033890e8 Mon Sep 17 00:00:00 2001 From: taiyu Date: Tue, 18 Aug 2015 03:48:41 -0700 Subject: minor fixes --- include/config.h | 8 ++++---- sway/config.c | 2 +- sway/focus.c | 8 +++++++- sway/handlers.c | 2 +- 4 files changed, 13 insertions(+), 7 deletions(-) (limited to 'include/config.h') diff --git a/include/config.h b/include/config.h index b9511aac..9243bf35 100644 --- a/include/config.h +++ b/include/config.h @@ -33,17 +33,17 @@ struct sway_config { list_t *cmd_queue; list_t *workspace_outputs; struct sway_mode *current_mode; - uint32_t floating_mod; + uint32_t floating_mod; // Flags bool focus_follows_mouse; bool mouse_warping; - bool active; - bool failed; + bool active; + bool failed; bool reloading; }; -bool load_config(); +bool load_config(void); bool read_config(FILE *file, bool is_active); char *do_var_replacement(struct sway_config *config, char *str); diff --git a/sway/config.c b/sway/config.c index f06d55f8..4125f4cd 100644 --- a/sway/config.c +++ b/sway/config.c @@ -126,7 +126,7 @@ static char* get_config_path() { return NULL; } -bool load_config() { +bool load_config(void) { sway_log(L_INFO, "Loading config"); char *path = get_config_path(); diff --git a/sway/focus.c b/sway/focus.c index 4f57f252..14d27184 100644 --- a/sway/focus.c +++ b/sway/focus.c @@ -33,10 +33,11 @@ static void update_focus(swayc_t *c) { } active_workspace = c; break; + default: case C_VIEW: case C_CONTAINER: //TODO whatever to do when container changes - //for example, stacked and tabbing change whatever. + //for example, stacked and tabbing change stuff. break; } } @@ -114,6 +115,11 @@ swayc_t *get_focused_container(swayc_t *parent) { while (parent && !parent->is_focused) { parent = parent->focused; } + //just incase + if (parent == NULL) { + sway_log(L_DEBUG, "get_focused_container unable to find container"); + return active_workspace; + } return parent; } diff --git a/sway/handlers.c b/sway/handlers.c index 24e8e014..0157d466 100644 --- a/sway/handlers.c +++ b/sway/handlers.c @@ -252,7 +252,7 @@ static void handle_view_state_request(wlc_handle view, enum wlc_view_state_bit s static bool handle_key(wlc_handle view, uint32_t time, const struct wlc_modifiers *modifiers, uint32_t key, uint32_t sym, enum wlc_key_state state) { enum { QSIZE = 32 }; - if (locked_view_focus) { + if (locked_view_focus && state == WLC_KEY_STATE_PRESSED) { return false; } static uint8_t head = 0; -- cgit v1.2.3-54-g00ecf