Commit graph

781 commits

Author SHA1 Message Date
S. Christoffer Eliesen 3c250e78be layout: get_swayc_in_direction: Properly find adjacent outputs. 2015-10-29 16:20:48 +01:00
S. Christoffer Eliesen 5fa8f91655 commands: Learn 'focus output <direction|name>' 2015-10-28 20:06:48 +01:00
S. Christoffer Eliesen fede354a3d layout: Don't reset container size if it's a floating window. 2015-10-28 20:06:48 +01:00
S. Christoffer Eliesen fabcf7c678 handlers: Pass workspace to workspace_switch, not output. 2015-10-27 23:22:57 +01:00
Drew DeVault 6cd106d23c Merge pull request #208 from minus7/ipc_subscribe
implemented IPC subscribe for workspace event
2015-10-27 17:19:18 -04:00
minus 9925554ea4 implemented IPC subscribe for workspace event 2015-10-27 21:59:17 +01:00
S. Christoffer Eliesen 9f02b0bf16 commands: Learn 'debuglog'.
Replicates i3 option. Verbosity level given as command line argument
becomes default log level, and using 'debuglog toggle' switches back and
forth between default and debug (or L_ERROR and debug if default is also
L_DEBUG).
2015-10-27 14:37:44 +01:00
S. Christoffer Eliesen 83ca7d3a5c output: Fix code style. 2015-10-25 13:57:11 +01:00
S. Christoffer Eliesen c49e5340db commands: cmd_move: Fix "move container to workspace _number_ n"
This is an undocumented feature (the word "number" is just ignored
anyway), but it exists to be compatible with i3 config syntax.

Plus some code cleanup at the same time.
2015-10-25 13:19:48 +01:00
S. Christoffer Eliesen 5a70853253 log: Add swayc_log, use at a few key places.
swayc_log works just like sway_log, but appends type and name from given
container to the log output.
2015-10-25 13:14:28 +01:00
S. Christoffer Eliesen c6bb23b7dd sway/output: Create, move code from handlers.c here. 2015-10-25 13:14:23 +01:00
Drew DeVault 010368150b Update set_origin to match wlc changes 2015-10-23 14:29:35 -04:00
S. Christoffer Eliesen c1479701de seamless_mouse: Move pointer only if successfully changed workspace.
If e.g. a window has a popup open then that will lock the current focus,
making a workspace switch denied.

So don't move the mouse pointer in such cases.
2015-10-23 16:35:48 +02:00
S. Christoffer Eliesen 1f08106b0a handlers: Don't switch output when mouse button is pressed.
(E.g. if the user is using a scrollbar at the edge of the screen then
switching workspace would cancel the scroll.)
2015-10-23 16:35:48 +02:00
S. Christoffer Eliesen 362413bd50 commands: cmd_results->input is duplicated/freed. 2015-10-23 13:03:14 +02:00
S. Christoffer Eliesen 88a2ddbe83 commands: Code formatting. 2015-10-23 12:55:48 +02:00
S. Christoffer Eliesen 187f0ab1c4 commands: Allow 'floating_modifier' & 'focus_follows_mouse' at runtime. 2015-10-23 12:45:46 +02:00
S. Christoffer Eliesen af30a1b67c ipc,commands,config: Replace cmd_status enum with cmd_results struct.
In i3 the ipc reply will contain a human readable error message, and
this patch replicates that behaviour.

However, that error message is also useful for logging, which this
patch takes advantage of.

E.g. instead of logging errors directly in commands.c/checkargs, it is
fed back to the caller which eventually ends up logging everything with
maximum context available (config.c/read_config).

So instead of logging e.g. "Error on line 'exit'" it will now log:
"Error on line 'exit': Can't execute from config."
2015-10-22 23:36:24 +02:00
S. Christoffer Eliesen 544c6c412a ipc: Return correct status in ipc reply. 2015-10-22 23:36:24 +02:00
S. Christoffer Eliesen b093a5d16f handlers: Fix swapped top/bottom for seamless transitions. 2015-10-22 23:07:27 +02:00
Drew DeVault 2c100105bf Move pointer during seamless transitions 2015-10-22 16:44:29 -04:00
S. Christoffer Eliesen edf33aad29 config: Add "seamless_mouse" to decide if pointer crosses output edges. 2015-10-22 01:39:12 +02:00
S. Christoffer Eliesen fc1bacf034 Switch to adjacent output when hitting output edge.
(Currently, after switching output the relative position of the mouse
stays the same.)
2015-10-22 01:18:51 +02:00
S. Christoffer Eliesen 9b271573a9 commands: Allow changing resolution outside config load. 2015-10-22 00:16:10 +02:00
S. Christoffer Eliesen 4fea92ef0c config: Don't try to apply bad output resolution. 2015-10-21 23:59:01 +02:00
S. Christoffer Eliesen ca862a5bd4 config: Apply output config also during config reload. 2015-10-21 23:24:06 +02:00
S. Christoffer Eliesen 6eb8da0e14 commands,container: Tweak debug output to better reflect reality. 2015-10-21 22:22:01 +02:00
S. Christoffer Eliesen e3837ba634 commands: Gracefully handle empty commands.
Before this patch sway would proceed into find_handler which would cause
a crash trying to parse a NULL string.

This could be triggered via e.g. `i3-msg -s $(sway --get-socketpath)`.
2015-10-19 19:45:35 +02:00
Drew DeVault 83c23f274c Merge pull request #195 from sce/get_socketpath
main: Implement --get-socketpath switch.
2015-10-18 14:25:57 -04:00
S. Christoffer Eliesen 3be11a08e6 main: Implement --get-socketpath switch. 2015-10-18 19:53:56 +02:00
S. Christoffer Eliesen 71ebe8c36b commands: Catch empty exec with --no-startup-id cases. 2015-10-18 19:14:49 +02:00
S. Christoffer Eliesen 71bcee4f96 commands: Ignore exec switch "--no-startup-id".
When using an i3 config verbatim in sway this switch to exec or
exec_always might appear.

Before this patch the switch would be passed to /bin/sh, causing
an error, and the command would not be run.
2015-10-17 14:28:38 +02:00
S. Christoffer Eliesen 783290e81a sway/ipc: Use sway_abort instead of returning NULL. 2015-10-16 13:23:08 +02:00
S. Christoffer Eliesen 7cb0732030 sway/ipc: ipc_user_sockaddr: Use sway_assert instead of assert. 2015-10-16 13:07:50 +02:00
S. Christoffer Eliesen 382b4e425a sway/ipc: Fix whitespace. 2015-10-16 13:06:30 +02:00
S. Christoffer Eliesen 26beb66eb5 sway/ipc: Free ipc_sockaddr upon termination. 2015-10-16 12:16:18 +02:00
S. Christoffer Eliesen f94f8fde7e sway/ipc: Support multiple users. 2015-10-16 12:16:16 +02:00
S. Christoffer Eliesen ae93c6e6fe sway/ipc: Dynamically assign ipc_sockaddr. 2015-10-16 12:15:11 +02:00
taiyu 18f4905e62 #187, let init handle child processes 2015-10-08 08:12:31 -07:00
Drew DeVault 5bcecbb751 Revert "#187 cleanup zombies properly" 2015-10-08 06:24:35 -04:00
taiyu 5539fd89be #187 cleanup zombies properly using default 2015-10-07 16:18:57 -07:00
taiyu c963aa7ced return after disconnect ipc client and minor checks 2015-09-29 07:19:10 -07:00
taiyu 4944996170 Merge branch 'master' of https://github.com/taiyu-len/sway
merge
2015-09-22 09:41:32 -07:00
taiyu 6c33f8122a #184 2015-09-22 09:41:01 -07:00
taiyu 72aaffcf5b fix config search paths 2015-09-20 10:56:22 -07:00
taiyu 9fd2d635a1 container_move check 2015-09-18 11:34:57 -07:00
taiyu 7672886cb5 dont log empty config lines 2015-09-18 08:33:28 -07:00
taiyu 0d51f62224 merge + no c_extensions 2015-09-18 07:23:04 -07:00
taiyu d2e2b04bfd minor fix 2015-09-18 06:52:04 -07:00
Drew DeVault 318e1be240 Fix warnings introduced by prior commit 2015-09-18 07:27:35 -04:00
Drew DeVault 8e25ce4e57 Fix build for debian stretch
Fixes #182
2015-09-18 07:16:20 -04:00
taiyu a04f645d7c style, safer fork 2015-09-15 06:56:51 -07:00
taiyu a18caf6706 nomacro 2015-09-15 06:39:24 -07:00
taiyu 0bea2e2122 multi command keybinds 2015-09-14 19:59:25 -07:00
Drew DeVault e505abfe75 Revert "new_workspace null behavior + testmap functions + regex"
This reverts commit e1d18e42a8.

Fixes #180

cc @taiyu-len
2015-09-13 19:46:16 -04:00
taiyu 2093d4ddee cmd_for_window dummy function 2015-09-12 02:45:03 -07:00
taiyu e1d18e42a8 new_workspace null behavior + testmap functions + regex 2015-09-12 02:38:03 -07:00
taiyu aaa0923bc4 cmd status + workspace ws output op 2015-09-10 11:07:40 -07:00
taiyu 6388241abb mode supports multi token names 2015-09-08 10:53:15 -07:00
taiyu 799ff640f8 remove old things 2015-09-08 10:28:53 -07:00
taiyu aa22dc3113 var replacement changes 2015-09-08 10:27:09 -07:00
taiyu fd6d06ff61 fix missing symbol bug 2015-09-08 09:52:33 -07:00
taiyu da76ecb5f8 escape check fix 2015-09-08 09:10:36 -07:00
taiyu d673a72705 set variable changes 2015-09-08 08:54:57 -07:00
Thomas Wouters c3f76f8785 fix outut typo 2015-09-08 14:37:20 +02:00
taiyu 0de29d8247 prevent views from disappearing 2015-09-07 15:22:15 -07:00
taiyu 3eb29ea736 strdup + style 2015-09-07 15:03:04 -07:00
taiyu 47ff000697 put strip_whitespace back 2015-09-07 14:40:23 -07:00
taiyu 71af5b7dde config modes 2015-09-07 14:29:40 -07:00
taiyu 3fb8397724 free config stuff 2015-09-07 06:52:27 -07:00
taiyu b7de289332 free config when reloading 2015-09-06 23:22:02 -07:00
taiyu 5408d34c9c config_path cleanup 2015-09-06 22:48:43 -07:00
taiyu 3e9cdfd6a3 man page 2015-09-06 06:52:20 -07:00
taiyu f25c6b312b gap resize 2015-09-05 20:48:52 -07:00
taiyu afa6747145 enum for command type 2015-09-04 17:09:07 -07:00
taiyu c5d0b5d437 style 2015-09-04 17:02:02 -07:00
taiyu 4cd18449d2 better handling of commands during config 2015-09-04 16:57:03 -07:00
taiyu dbeca88dee default gap value 2015-09-04 16:14:59 -07:00
taiyu 782729be13 properly free cmd_queue, should partially fix #165 from what i tell from its log. 2015-09-02 08:51:26 -07:00
Drew DeVault 1756a4f2da fclose /proc/modules when we're done with it 2015-09-02 11:47:15 -04:00
Drew DeVault 4ef60e7c09 Add check for nvidia module and warn user 2015-09-02 11:46:21 -04:00
Drew DeVault 47c7ed9f3a Do not set FD_CLOEXEC 2015-09-02 10:47:02 -04:00
Drew DeVault eb003689a3 Log sway version on startup 2015-09-02 09:42:27 -04:00
Drew DeVault 930f42ae81 Remove stropts.h from ipc.c
Apparently it's not required, and for some reason Fedora doesn't have
it. Fixes #162
2015-09-02 07:37:41 -04:00
taiyu 972748e674 cleaned up leaky prev_workspace_name 2015-09-01 09:02:26 -07:00
taiyu 09c9ee76c3 properly remove children in loops 2015-08-31 08:49:24 -07:00
Luminarys 12e96f0f9e Added in workspace_auto_back_and_forth 2015-08-30 21:34:24 -05:00
Luminarys 23f040133d Removed unnecessary debug line 2015-08-30 20:02:31 -05:00
Luminarys fe2ec8a676 Added in workspace back_and_forth 2015-08-30 19:59:14 -05:00
taiyu 7fbb8b785e #154 destroy view handler properly destroys views 2015-08-30 16:28:21 -07:00
taiyu f787fac8fc #153 add "ctrl" and "alt" to modifiers struct 2015-08-30 13:20:56 -07:00
Luminarys 28e937020a Made scratchpad handling identical to i3 2015-08-29 21:14:13 -05:00
taiyu 79da7f112a #151 fix 2015-08-29 06:51:37 -07:00
Drew DeVault 6b962ebd22 Merge pull request #150 from Luminarys/master
Added in Scratchpad
2015-08-29 06:51:16 -04:00
taiyu 836f24b047 #149 change focus before pointer_mode 2015-08-28 23:43:52 -07:00
taiyu 9acd3d2068 #149 fix, reorder floating windows on click. 2015-08-28 23:01:48 -07:00
taiyu 1924399166 #148 fix, choose non-floating view for inserting container 2015-08-28 22:51:36 -07:00
Luminarys 167409702f Fixed move scratchpad and added in scratchpad show 2015-08-29 00:33:33 -05:00
Luminarys 7eefecf479 Added in scratchpad adding 2015-08-28 23:39:12 -05:00
taiyu 63e735270c move v3 2015-08-28 19:35:29 -07:00
taiyu e0d5486957 default floating_mod 2015-08-28 14:45:40 -07:00
taiyu da2d992563 style 2015-08-28 12:31:41 -07:00
taiyu b359429e90 fix issue #140, dont set pointer mode if no floating_mod 2015-08-28 12:30:59 -07:00
taiyu 28c22c8f80 style 2015-08-28 11:14:59 -07:00
taiyu c9de300888 layout fix for a certain case 2015-08-28 11:11:26 -07:00
taiyu 076cf78d7c dont move floating contaienrs 2015-08-28 11:04:58 -07:00
taiyu 1820b3f0bb move function redone 2015-08-28 11:03:10 -07:00
taiyu 4757ea6a12 forgot visibility of floating containers 2015-08-27 23:42:26 -07:00
taiyu 5678d824e4 update visibility + container info functions 2015-08-27 23:18:28 -07:00
taiyu dfe0dda8d0 proper visibility update 2015-08-27 20:55:48 -07:00
taiyu da79bd65de use previous outputs 2015-08-27 20:32:56 -07:00
Luminarys acb3fbdfb5 Added in default_orientation handling 2015-08-27 21:52:59 -05:00
taiyu 0a74364656 update visibility for moved workspaces 2015-08-27 08:32:06 -07:00
taiyu 08faffdd76 dont swap floating containers 2015-08-27 07:10:17 -07:00
taiyu d115335951 move workspace from dead output to other output 2015-08-26 21:25:57 -07:00
Luminarys 42de135c3a Added in better versioning info 2015-08-26 21:13:53 -05:00
taiyu 4df64127e9 slight fix 2015-08-26 16:50:47 -07:00
taiyu 274e56a602 fixed move_container bug, log prints before aborting 2015-08-26 16:27:01 -07:00
minus 6bbfd65735 fixed container_map
applies to the passed in container now as well.
fixes workspaces staying always marked visible.
also set workspaces to not visible by default; happens when you move a
container to a new workspace that thus is not visible
2015-08-27 00:44:47 +02:00
minus 873a51f7e2 converted IPC to use json-c
get_workspaces and get_outputs
2015-08-27 00:41:07 +02:00
minus 2289029fab added json-c lib and implemented IPC get_version 2015-08-26 23:49:38 +02:00
taiyu 357af228d6 some function documentation, fixed gaps on config reload 2015-08-26 13:35:22 -07:00
taiyu 1fa7a91bfb move_container_to fixup 2015-08-26 11:01:26 -07:00
Drew DeVault c4257055eb Merge pull request #135 from Luminarys/master
Added in build version based on git hash
2015-08-26 10:18:06 -04:00
Drew DeVault adcf89cfe4 Do not pass modifiers when getting keysyms from wlc
Fixes #124

Keyboard handling can likely be simplified after this change.
2015-08-26 08:24:23 -04:00
Luminarys 38cfdf99f4 Added in build version based on git hash 2015-08-25 22:04:57 -05:00
taiyu e121258426 longopt minor fix 2015-08-25 16:39:05 -07:00
Drew DeVault 10eb58667b Merge pull request #133 from minus7/wlc-keyboard-fix
fixed keyboard handling
2015-08-25 16:39:25 -04:00
minus bfdff821c3 fixed keyboard handling
handle_key does not get the keysym from wlc anymore
2015-08-25 22:38:16 +02:00
taiyu 225c2fbe5b fixed segfault on exit + a little fixup of that floatfocus pr 2015-08-25 13:29:33 -07:00
Drew DeVault 0bf380a0b1 Merge pull request #131 from nicklaswj/master
Focus floating window, if any, when the last tiling window has been closed
2015-08-25 16:13:06 -04:00
Nicklas Warming Jacobsen 227d5dbe08 code style clean up 2015-08-25 22:00:39 +02:00
minus 9535305137 fixed moving to other output and visibility 2015-08-25 20:43:37 +02:00
Nicklas Warming Jacobsen a70b9a9a7a removed stupid test code 2015-08-25 20:25:38 +02:00
Nicklas Warming Jacobsen 7a1c36716a Focus floating window, if any, when the last tiling has been closed 2015-08-25 20:15:23 +02:00
minus ca89ba83a8 changed view visibility to be bool
view_visibility enum remains with one constant that is the mask to wlc's view masking
2015-08-25 20:13:35 +02:00
minus e533014201 added missing util.h/c stuff 2015-08-25 19:53:59 +02:00
minus e854a54e96 changed workspace_{outout_,}{next,prev} to return workspace
so it can be reused for "move container to workspace next"
2015-08-25 19:00:20 +02:00
minus 03e4a97dbe added "move container to workspace"
makes the previous commit actually testable
2015-08-25 18:25:36 +02:00
minus f22c937953 refactored view visibility
- replace visibilty mask integers with an enum
- set output's visibilty mask on creation
- added update_visibility to manually update a containers visibility (e.g. when it moved to an invisible workspace)
2015-08-25 18:24:15 +02:00
minus 1efda79bf2 refactored workspace_next/prev 2015-08-25 15:17:18 +02:00
Luminarys 7c5b6f8c52 Added in backtrace printing 2015-08-24 15:44:58 -05:00
taiyu dbad30a409 add limit to swayc_in_direction 2015-08-24 01:11:21 -07:00
taiyu b054ac9d49 Merge branch 'master' of https://github.com/SirCmpwn/sway
merge
2015-08-23 19:11:06 -07:00
taiyu c8415d7fef split_string memory leaks cleanedup 2015-08-23 19:09:18 -07:00
Drew DeVault f30fb2452c Minor fixes to keyboard handling 2015-08-23 15:52:36 -04:00
taiyu 51ab3c9180 merge 2015-08-23 12:34:18 -07:00
Drew DeVault 1ac0c8cd47 Refactor keyboard to consider modified keysyms
Press Shift
Press 0       # Reads as ')'
Release Shift
Release 0     # Reads as '0' but we now recognize it as the same
2015-08-23 15:28:49 -04:00
Drew DeVault 663f53b22a Merge pull request #123 from Luminarys/master
Added in output disabling
2015-08-23 14:34:20 -04:00
Luminarys 7a21388997 Minor fix 2015-08-23 13:32:47 -05:00
Luminarys 5bfed9b213 Cleanup and minor adjustments to disabling 2015-08-23 13:18:07 -05:00
Drew DeVault e78221e6a0 Prefix log events from wlc with [wlc] 2015-08-23 13:31:16 -04:00
Luminarys e01cf0b566 Added in glitchy disabling 2015-08-23 12:23:01 -05:00
Luminarys 98fad060e2 Added in glitchy disabling 2015-08-23 12:23:01 -05:00
Drew DeVault e232241466 Do not log with colors unless stdout is a tty 2015-08-23 13:17:53 -04:00
Drew DeVault ac2034df99 Handle wlc log events 2015-08-23 13:08:04 -04:00
taiyu d72cc92541 style 2015-08-23 07:59:18 -07:00
taiyu 299406a048 slight fix 2015-08-22 22:32:41 -07:00
taiyu f53ce887e8 fixed container resize oddity 2015-08-22 22:14:59 -07:00
taiyu f24b78898a dont swap view with workspace... 2015-08-22 21:54:39 -07:00
taiyu a4ded14991 small change 2015-08-22 21:23:22 -07:00
taiyu f1e38be09f no mode for fullscreen 2015-08-22 21:16:46 -07:00
taiyu 42d5d9a177 mouse tile resize mode done 2015-08-22 21:03:45 -07:00
taiyu 36cd180f02 fixed vanishing floating view 2015-08-22 18:25:05 -07:00
taiyu e139de0857 floating/tiling move + floating resize cleaned and fixed 2015-08-22 18:01:38 -07:00
Drew DeVault 1fd5962aeb Fix minor bug with output positioning 2015-08-22 15:21:56 -04:00
Drew DeVault 07229edfe6 Implement output positioning
🎉
2015-08-22 15:19:02 -04:00
Drew DeVault eac0920f49 Set x/y positions for output containers 2015-08-22 14:44:47 -04:00
Drew DeVault 232940f813 Whoops
Regards to @Cloudef
2015-08-22 14:03:51 -04:00
Drew DeVault b7f4607544 Implement output configuration through config
Do not use `output res WIDTHxHEIGHT` yet, wlc has issues with it (cc
@Cloudef)
2015-08-22 11:18:55 -04:00
Luminarys c0b68aa6fc Added in bspwm like view swapping 2015-08-22 01:03:18 -05:00
Luminarys f6b16ca089 Refactored resizing functions into resize.c 2015-08-21 22:26:11 -05:00
Luminarys ad1ca31dd5 Altered resize command to prevent resizing past min h/w 2015-08-21 21:22:29 -05:00
Luminarys e067913fb8 More resize fixes 2015-08-21 20:50:17 -05:00
Luminarys 63a3236064 Fixed resizing 2015-08-21 19:37:19 -05:00
Drew DeVault 2a799a731f Remove wlc logging stuff 2015-08-21 18:24:54 -04:00
Drew DeVault 39041d07b5 Merge remote-tracking branch 'taiyu-len/master' 2015-08-21 17:00:00 -04:00
Luminarys f7a6dd7ce9 Minor fix to resizing with mouse 2015-08-21 15:36:37 -05:00
taiyu b05317c3a6 style 2015-08-21 12:41:54 -07:00
taiyu de5196dc1e comments + fixed leak 2015-08-21 12:19:29 -07:00
taiyu d2e1c660b1 swayc_is_fullscreen 2015-08-21 10:45:18 -07:00
taiyu dde8bfe728 check floating mod for resizing windows, and dont send click 2015-08-21 10:34:37 -07:00
taiyu 5a67628ad9 Merge branch 'master' of https://github.com/SirCmpwn/sway
merge
2015-08-21 10:28:49 -07:00
taiyu 1a1ac64662 bugfixes, renames 2015-08-21 10:28:37 -07:00
Luminarys ad72abb58f Removed ugly intializer for pointer_state 2015-08-21 11:31:05 -05:00
Drew DeVault 1c38b7a8d2 Merge pull request #111 from Luminarys/master
Added in proper resize locking
2015-08-21 12:23:53 -04:00
Luminarys a8eab5492a Added in proper resize locking 2015-08-21 11:19:06 -05:00
minus 8dfaf6265b fixed #108 signed/unsigned comparison 2015-08-21 16:53:11 +02:00
Luminarys 97bd548456 More minor fixes 2015-08-21 09:26:22 -05:00
Luminarys de86c5f4ea Cleanup and minor fixes 2015-08-21 09:24:26 -05:00
Drew DeVault 6278922f7a Fix clang warnings
These particular warnings have always struck me as stupid
2015-08-21 08:24:48 -04:00
Drew DeVault a436fc17ff Merge pull request #105 from Half-Shot/master
Basic 'move' functionality.
2015-08-21 07:24:17 -04:00
Drew DeVault 0266b0666a Fix compiler warnings (which were really errors) 2015-08-21 07:15:00 -04:00
Drew DeVault 464b49eda2 Merge pull request #101 from Luminarys/master
Added in basic resizing command.
2015-08-21 07:12:05 -04:00
Luminarys 96ab21b276 Fixes to resizing and added in resize lock once boundaries are exceeded 2015-08-21 00:49:47 -05:00
Luminarys 461da7f87f Added in bspwm like mouse resizing 2015-08-21 00:17:26 -05:00
Luminarys f589731f29 Rewrite of resize command to make it more sane 2015-08-20 21:37:59 -05:00
Half-Shot 68213d57c5 Fixed style errors 2015-08-20 22:29:36 +01:00
Drew DeVault 3a5fce339f Reset key buffer on reload
To preserve my sanity
2015-08-20 17:14:46 -04:00
Half-Shot 713bf29ec9 Few stray bits 2015-08-20 21:45:00 +01:00
Half-Shot 5a9ba261bc Merge branch 'master' of https://github.com/SirCmpwn/sway 2015-08-20 21:32:08 +01:00
Half-Shot 2a62c5c7fb Basic left right move command implemented. 2015-08-20 21:29:40 +01:00
minus 754793aad4 added IPC messages get_workspaces and get_outputs
No escaping on container names is done yet, as well as some values are
hardcoded because they don't exist yet.
2015-08-20 21:13:01 +02:00
taiyu 36e07e9ebc find_parent_by_type 2015-08-20 09:52:54 -07:00
Luminarys c9935507f2 Style fixes 2015-08-20 11:42:01 -05:00
Luminarys d06732e1a8 Altered incorrect comment 2015-08-20 11:35:01 -05:00
Luminarys bc3babf566 Added in basic resize command 2015-08-20 11:30:32 -05:00
minus 4c56cd0ed6 set I3SOCK for i3-msg compatibility 2015-08-20 15:27:59 +02:00
minus 6ab968e63e fixed formatting 2015-08-20 15:27:59 +02:00
minus f26ed32e46 added sway_terminate to exit cleanly 2015-08-20 15:27:56 +02:00
minus 70f046c87a set IPC client sockets to close on exec 2015-08-20 15:24:33 +02:00
minus 91c0877264 properly exit sway
- wlc_terminate() instead of exit(0)
- unlink IPC socket
2015-08-20 15:24:33 +02:00
minus bfbadadf70 use env var SWAYSOCK if available
or fall back to /tmp/sway-ipc.sock
2015-08-20 15:24:33 +02:00
minus 773e85c681 properly handle IPC clients 2015-08-20 15:24:33 +02:00
minus 5d99215469 added i3-ipc support/parsing 2015-08-20 15:24:33 +02:00
minus 8981b48cd2 very basic IPC implementation
simply executes the received data as command
2015-08-20 15:24:33 +02:00
Drew DeVault 579fe70ed9 Add command line parsing
Closes #6
2015-08-20 08:37:24 -04:00
taiyu 927ef0a5ec Merge branch 'master' of https://github.com/SirCmpwn/sway
merging
2015-08-20 05:08:04 -07:00
Drew DeVault 95f5660897 Merge pull request #97 from taiyu-len/master
setup for resizable windows, drop weight
2015-08-20 08:07:16 -04:00
taiyu f5fde7c45c style 2015-08-20 05:06:22 -07:00
taiyu f6e002fb8b small fix, default width/height 0 2015-08-20 04:57:01 -07:00
taiyu b76dcf6e0f unnessesary log 2015-08-20 04:50:15 -07:00
taiyu fbaa9111a8 setup for resizable windows, drop weight 2015-08-20 04:47:36 -07:00
Drew DeVault 85ae987515 Fix compiler warning 2015-08-20 07:38:40 -04:00
Drew DeVault 14947c92aa Merge pull request #94 from taiyu-len/master
input_state.ch, and command conflicts resolved
2015-08-20 07:38:04 -04:00
taiyu ba6034e8c8 changes 2015-08-20 04:24:39 -07:00
KoffeinFlummi 3c124d9e7d Change gap behaviour to more closely match i3-gaps
Previously, when only using inner gaps, the gap between a window at the
edge of the output was only half the size of the gaps between views.

Additionally, the gaps between the actual windows was twice as wide as
it was on i3-gaps.
2015-08-20 08:47:51 +02:00
taiyu 1d9b73ed67 remove debug message 2015-08-19 20:31:28 -07:00
taiyu 686780f12d another small fix to move_focus 2015-08-19 20:29:24 -07:00
taiyu 66e82a68fc small fix 2015-08-19 20:28:05 -07:00
taiyu 5ff0619ca1 input state, find_container_in_direction 2015-08-19 20:22:15 -07:00
taiyu 470b4dfbae key_state.ch, and command conflicts resolved 2015-08-19 18:59:27 -07:00
Drew DeVault 4db89b5fe4 Deal with more xkb bullshit 2015-08-19 21:14:34 -04:00
Drew DeVault e5d3074d70 Whitelist a handful of characters for keys
Ones that don't change when you hold shift
2015-08-19 21:04:34 -04:00
Luminarys 29b6b2f37b Fixed mode_toggle 2015-08-19 19:57:39 -05:00
Drew DeVault 1d8591d902 Improve key handling somewhat
XKB is fucking bullshit
2015-08-19 20:52:52 -04:00
Drew DeVault 84a778b688 Improve key buffer handling 2015-08-19 20:12:05 -04:00
Drew DeVault 2dabca03f4 Remove logging of all key presess
This makes the logs a bit too hard to read
2015-08-19 19:55:40 -04:00
Drew DeVault 057d2e529d Merge pull request #92 from z33ky/master
A couple of cppcheck issues
2015-08-19 19:30:26 -04:00
Alexander 'z33ky' Hirsch f85d0740a8 Fix potential memory leak 2015-08-20 02:30:22 +02:00
Alexander 'z33ky' Hirsch 22675b0111 Minor style fix 2015-08-20 02:30:22 +02:00
Alexander 'z33ky' Hirsch c068f47ce3 Fix potential crash when toggling fullscreen mode 2015-08-20 02:30:22 +02:00
Drew DeVault 74c9df0c07 Fix error with workspace/output name matching 2015-08-19 19:29:55 -04:00
taiyu 6f424ff6b8 fixed default active_workspace, and more use of set_focused_container_for(...) 2015-08-19 16:15:17 -07:00
taiyu b79a49a394 use enums for pointer click names 2015-08-19 15:44:13 -07:00
taiyu a31f23f90c fixed active_workspace update on focus change 2015-08-19 15:22:55 -07:00
taiyu 269d6ba4ea fixed 2015-08-19 13:27:06 -07:00
taiyu 48a983316c floating mode_toggle 2015-08-19 13:02:29 -07:00
Luminarys c29214f348 Minor style fix 2015-08-19 14:14:54 -05:00
Drew DeVault 4ac920827d Merge pull request #89 from taiyu-len/master
reset floating view on floating_mod repress
2015-08-19 15:09:14 -04:00
taiyu e53a95c60d style 2015-08-19 11:15:13 -07:00
taiyu 7bbb102e2d reset floating view on floating_mod repress 2015-08-19 10:45:40 -07:00
aouelete acbcf17905 Fixed config path 2015-08-19 13:41:58 -04:00
taiyu 8f529536e3 pointer uses its own modifiers 2015-08-19 10:27:53 -07:00
Luminarys daea22bc89 Resize lock fixes 2015-08-19 12:06:00 -05:00
Luminarys 9542f8746a Added in resize locking 2015-08-19 11:28:04 -05:00
taiyu 289aab9f0a removed debug which shouldnt be there 2015-08-19 09:21:44 -07:00
taiyu 8205a6fd3b floating_modifier uses mod_keys instead of anykey 2015-08-19 09:09:35 -07:00
Luminarys 0e4df85ba1 Fixed config loading 2015-08-19 09:33:30 -05:00
Drew DeVault 0f29f04816 Set test to NULL when appropriate
Thanks @SyedAmerGilani
2015-08-19 08:24:39 -04:00
Drew DeVault 1ec8e082a2 Free environment vars after loading config
Thanks @SyedAmerGilani
2015-08-19 08:22:18 -04:00
Drew DeVault 79f9d93ef3 Refactor config file loading 2015-08-19 07:50:27 -04:00
Drew DeVault 8fb2e7e34e Merge pull request #79 from taiyu-len/master
fixed floating_modifier related things
2015-08-19 07:14:03 -04:00
Drew DeVault ae367c5af4 Merge pull request #80 from SyedAmerGilani/fix_memory_leaks
fix a few possible memory leaks
2015-08-19 07:01:14 -04:00
Syed Amer Gilani ba5b451dd0 fixed string building for XDG_CONFIG_HOME config loading 2015-08-19 12:51:11 +02:00
Syed Amer Gilani 95517ac77e fix a few possible memory leaks 2015-08-19 11:27:48 +02:00
taiyu c5a6982893 fixed some more bugs, moved layout_log into log.ch, restored focus_parent 2015-08-19 01:06:15 -07:00
taiyu e16a4015ff fixed focus key handler 2015-08-19 00:28:53 -07:00
taiyu 1bf02144e5 fixed floating_modifier related things 2015-08-18 23:52:42 -07:00
taiyu 6dc1ae802b focus to only child 2015-08-18 22:20:31 -07:00
Luminarys 774e594714 Fixed full screen workspace switch focusing 2015-08-18 21:41:16 -05:00
taiyu 2f40459de4 fixed focus on fullscreen view destroy 2015-08-18 19:15:10 -07:00
Luminarys f718556a85 Removed debugging, added in proper gap resets for config reloads 2015-08-18 21:05:58 -05:00
Luminarys ab43927a47 Minor fixes that might be helpful later 2015-08-18 18:04:46 -05:00
Luminarys 7137be9a3f Fixes to make floating windows work better 2015-08-18 18:03:23 -05:00
Luminarys 3e950c2b1c Basic fixes to floating movement 2015-08-18 18:03:23 -05:00
Drew DeVault cf916bbf6f Improvements to gaps 2015-08-18 18:44:50 -04:00
Drew DeVault 446d593b4c Merge pull request #73 from KoffeinFlummi/gaps
Add support for gaps option
2015-08-18 18:07:51 -04:00
KoffeinFlummi c75d5ceba4 Merge remote-tracking branch 'upstream/master' into gaps 2015-08-19 00:05:18 +02:00
Drew DeVault 8e201091a5 Fix indented comments being weird 2015-08-18 18:03:38 -04:00
KoffeinFlummi 4c688cba4e Add support for gaps option 2015-08-18 23:53:57 +02:00
Drew DeVault 443ae9b89e Merge pull request #72 from minus7/assert
added sway_assert function
2015-08-18 17:44:00 -04:00
minus faccaf6112 added sway_assert function
returns false on a failed assertion in release mode and raises SIGABRT in debug mode
2015-08-18 23:38:34 +02:00
Luminarys 5b6e489872 More patches for wlc compat 2015-08-18 16:28:24 -05:00
Luminarys a7c045a520 Patched for wlc updates 2015-08-18 16:24:01 -05:00
Half-Shot f314d95103 Merge branch 'master' of https://github.com/SirCmpwn/sway 2015-08-18 21:42:28 +01:00
Will Hunt d6ab5e481b Beguin work on the move command.
Stubbed method.
2015-08-18 21:42:23 +01:00
Luminarys 7756f423c3 Removed unnecessary debugging lines 2015-08-18 13:54:52 -05:00
Luminarys 01c6caced6 Added in proper focus handling for floating windows 2015-08-18 13:53:06 -05:00
taiyu 03e83c7ef9 restored fullscreen/focus behavior 2015-08-18 11:22:52 -07:00
Luminarys 23b90d8e69 Fixed mouse clicks from triggering a segfault 2015-08-18 10:39:37 -05:00
Drew DeVault 85a573dab7 Revert "enhanced whitespace remover"
This reverts commit abd0afb03a.
2015-08-18 08:39:26 -04:00
Drew DeVault a64b10df83 Fix switching between focused outputs 2015-08-18 08:30:21 -04:00
Drew DeVault 868cb3ca71 Revert "config handles comments better"
This reverts commit e9c3a9016f.
2015-08-18 08:05:34 -04:00
Drew DeVault 2139001c9f Coding style enforcement
This was done by hand, so I might have missed things. If anyone knows of
a good C style enforcement tool, let me know.
2015-08-18 07:20:34 -04:00
taiyu af1b3d9755 fixed floating window crashing bug 2015-08-18 04:09:43 -07:00
Drew DeVault 2f6dd0687b Merge pull request #65 from taiyu-len/focus_v2
Focus v2
2015-08-18 07:02:31 -04:00
Drew DeVault debb0d6bc1 Fix #64 2015-08-18 06:53:13 -04:00
taiyu b132f67e7b minor fixes 2015-08-18 03:48:41 -07:00
taiyu abd0afb03a enhanced whitespace remover 2015-08-18 03:22:31 -07:00
taiyu e9c3a9016f config handles comments better 2015-08-18 02:48:56 -07:00
taiyu 63bc0d3b54 more changes 2015-08-18 02:46:14 -07:00
taiyu eff55d0de1 fixed doubling memory bug for config lines longer then 128 2015-08-18 01:32:54 -07:00
taiyu 4606fb1ee3 merged Luminarys resizing code 2015-08-18 01:07:12 -07:00
taiyu f0fe4a346d style 2015-08-18 00:58:25 -07:00
taiyu 11321ca2dd changed handling of focus, handling of view by type 2015-08-18 00:28:44 -07:00
Luminarys e541ba3d87 Added in basic, but semi-broken moving/resizing functionality to floating windows 2015-08-18 01:33:15 -05:00
Drew DeVault 780893a933 Add support for workspace [name] output [name] 2015-08-17 20:34:53 -04:00
Drew DeVault 3f3d1ffee4 Rearrange main.c some more 2015-08-17 18:20:56 -04:00
Luminarys 7427ce8930 Switched config loading order to prevent root access w/wlc 2015-08-17 17:15:05 -05:00
Luminarys 1781450e86 Typo fix and more clarification 2015-08-17 14:24:55 -05:00
Luminarys b5f19f0fd3 View destroy handling clean up and clarifications 2015-08-17 14:22:49 -05:00
taiyu 199ba05ef1 put back 2015-08-17 11:44:05 -07:00
taiyu 0eed6a4f99 Merge branch 'master' of https://github.com/SirCmpwn/sway
merging
2015-08-17 11:25:36 -07:00
taiyu d2995d1eb2 fixed handling of views with override_redirect (dmenu) 2015-08-17 11:24:45 -07:00
Drew DeVault 9835845e22 Fix segfault from focus_view 2015-08-17 14:18:57 -04:00
taiyu f832c02065 fixed when views dont have names. 2015-08-17 10:02:09 -07:00
Luminarys c9ce8bf1bd Style and other minor fixes 2015-08-17 10:34:39 -05:00
Luminarys 3f475f5009 Minor fix to do proper floating refocuses 2015-08-17 10:22:00 -05:00
Luminarys 47ec999e71 Fixes to floating and umanaged views 2015-08-17 10:18:06 -05:00
Luminarys da77dc45a9 Deleted file 2015-08-17 00:40:14 -05:00
Luminarys 05f969074e Added in basic floating toggling 2015-08-17 00:38:34 -05:00
Drew DeVault be2635daa6 Fix format warnings 2015-08-16 22:16:09 -04:00
taiyu f1d5305dc6 fix 2015-08-16 19:06:31 -07:00
taiyu 4077238782 sends hidden views to back, visible view to front 2015-08-16 18:59:12 -07:00
taiyu ffb3458322 focus changes when mouse moves over border instead of all mouse movement 2015-08-16 18:41:51 -07:00
taiyu 498cf268f7 unmanaged views handled better 2015-08-16 18:24:46 -07:00
taiyu c024f06631 handle_view_state_request 2015-08-16 17:28:06 -07:00
Luminarys 6b80879ec9 Minor naming fix workspace changing commands 2015-08-16 15:51:43 -05:00
Drew DeVault 7f4529ec8b Merge pull request #44 from Luminarys/master
Added in workspace next/prev and workspace output_next/prev
2015-08-16 16:46:16 -04:00
taiyu 5b860c67c3 fixed split [vh], small memory leak, unescape_strings handle \xnn 2015-08-16 13:38:54 -07:00
Drew DeVault 7514431836 Fix pointer events properly 2015-08-16 16:12:40 -04:00
Drew DeVault 7878490425 Revert "Return false from pointer events"
This reverts commit 981db16a8e.
2015-08-16 16:10:05 -04:00
Drew DeVault 981db16a8e Return false from pointer events 2015-08-16 16:00:11 -04:00
Luminarys 0a0fe18fd6 Added in workspace next/prev and workspace output_next/prev 2015-08-16 14:50:01 -05:00
Drew DeVault 4a5828370c Log output name when added to tree 2015-08-16 14:51:53 -04:00
Drew DeVault 19c0ec6a08 Fix movement between outputs 2015-08-16 14:47:08 -04:00
Drew DeVault 5ff71c2d5c Fix key handling from wlc 2015-08-16 13:26:41 -04:00
Drew DeVault e64e61779e Set C_OUTPUT name to name from wlc 2015-08-16 13:07:43 -04:00
Drew DeVault a092df52da Remove WLC_IDLE_TIME environment variable 2015-08-16 13:04:59 -04:00
Luminarys dfaf3a059f Added in better exit handling 2015-08-16 11:54:37 -05:00
Luminarys c94c41d1db Added in kill command 2015-08-16 11:41:41 -05:00
Drew DeVault 6e8280e7fd Config errors should not be fatal 2015-08-16 12:03:34 -04:00
Drew DeVault 7f8ebb7d0d Move headers to include/ 2015-08-16 11:02:56 -04:00
Drew DeVault 360b3d67b0 Add split [h|v|horizontal|vertical] command 2015-08-16 11:01:01 -04:00
Drew DeVault ae536c21d3 Revert "get/set_userdata stores swayc_t *, fixed memory leak, minor changes." 2015-08-16 08:10:56 -04:00
taiyu eefc76b39e set userdata for handler to swayc_t container 2015-08-16 00:46:58 -07:00
taiyu e9e09d123c reduced code duplication 2015-08-15 22:11:19 -07:00
taiyu 9d69d880e6 Merge branch 'master' of https://github.com/SirCmpwn/sway
merge
2015-08-15 21:52:46 -07:00
taiyu 083d1eed1f fixed 2 small memory leaks & adds format attribute to log. 2015-08-15 21:21:20 -07:00