aboutsummaryrefslogtreecommitdiff
path: root/sway
AgeCommit message (Collapse)Author
2016-03-20Merge pull request #525 from mikkeloscar/fix-clang-warningDrew DeVault
Use correct type for keycode
2016-03-20Use correct type for keycodeMikkel Oscar Lyderik
2016-03-20Implement 'smart_gaps' feature from i3-gapsMikkel Oscar Lyderik
2016-03-19Make key handling less strictMikkel Oscar Lyderik
Sway has been very strict when it comes to key handling. Only on an exact match would a bindsym be triggered. This patch makes it less strict by for instance allowing the key combo `$mod+1+2` to act as `$mod+2` if 2 was the last pressed key and `$mod+1` if 1 was the last pressed key. The new key handling uses the following algorithm: 1. List of bindings sorted by number of keys in binding (already the default) 2. Find all bindings covered by the current keyboard state and list them by same order as in 1. 3. Select the first binding from the list where the last pressed key is part of the binding. Addresses #452
2016-03-19Allow legal non-x11 keycodesMikkel Oscar Lyderik
2016-03-19Add config option workspace_layoutMikkel Oscar Lyderik
This implements the config parsing of `workspace_layout <default|stacking|tabbed>` http://i3wm.org/docs/userguide.html#_layout_mode_for_new_containers
2016-03-18Don't strip quotes from exec argsMikkel Oscar Lyderik
Before passing a command to a command handler the quotes are stripped from each argument in the command. This is usually the wanted behavior but causes a problem in the case of `exec` where quoted arguments can be required when passing the exec command to `/bin/sh -c`. This patch makes `exec` a special case and doesn't strip quotes from the arguments. It will just pass the exec command verbatim to the exec command handler. Fix #518
2016-03-17Remove unused panel_size (and fix rearrange)Mikkel Oscar Lyderik
desktop_shell.panel_size was only used to determine if sway should rearrange the output when rendering the panel in the output_pre_render hook. This is not needed since the output will have been arranged at that point. It also caused sway to rearrange all the time when running with two or more different monitors/resolutions because panel_size kept changing with every output_pre_render callback. Should fix #514
2016-03-17Focus correct swaylock view in multimonitor setupMikkel Oscar Lyderik
Swaylock spawns and focuses a view for each output in sway. This can sometimes move the focus to a new output after locking and unlocking the screens. This patch makes sure that the output which had focus when swaylock was invoked, will regain focus once swaylock is closed/unlocked. Fix #499
2016-03-17Document swaybar commandsMikkel Oscar Lyderik
Documents most of the bar commands in sway-bar(5) manpage. The following command has not been document because they haven't been fully implemented yet: * mode * hidden_state * modifier * tray_output * tray_padding Close #375
2016-03-17Schedule render when adding bg and panel.Mikkel Oscar Lyderik
This should be a real fix for #509 This schedules a render when a background or panel is added to sway through the desktop shell interface, that makes sure the render isn't scheduled before the bg or panel is ready and you don't end up with a black screen until the cursor is moved.
2016-03-17Revert "Render outputs as soon as wlc is ready"Mikkel Oscar Lyderik
This reverts commit 96458bf63c10a702797a8687e2f73d7814a6b079.
2016-03-13Render outputs as soon as wlc is readyMikkel Oscar Lyderik
This makes sure that the outputs are rendered when sway is launched, so the user doesn't have to move the cursor before the background and bar gets rendered on screen. Fixes #509
2016-03-05Remove focus when switching to empty workspaceMikkel Oscar Lyderik
Fix #504
2016-03-04Merge pull request #502 from mikkeloscar/lock-reset-inputDrew DeVault
Reset input state when locking compositor
2016-03-04Reset input state when locking compositorMikkel Oscar Lyderik
Fix #498
2016-03-04Fix assigning workspaces to outputsMikkel Oscar Lyderik
It's possible to assign workspaces to certain outputs using the command: workspace <name> output <output> However, this did not work in some cases where the workspace was assigned before the given output was made available to sway. This patch fixes those cases.
2016-02-29Segregate between config and runtime cmds in docYacine Hmito
In anticipation for #375, reorganized and augmented slightly sway(5) so it makes a difference between commands intended for configuration, commands intended for control, and those that can serve as both.
2016-02-28sway: rearrange the whole ws on lock view setupprogandy
2016-02-28sway: set lock view to floating after ws switchprogandy
This avoids calling swayc_active_workspace.
2016-02-28Correctly move focus from one output to a new one.Mikkel Oscar Lyderik
This patch aims to correctly handle moving focus <left|right|up|down> between outputs. For instance, if moving from one output to a new output at the left of the current one, it should focus the right-most view/container on the new output, and the opposite if moving from right to left. This should happen regardless of the previously stored focus of the new output. This also handles moving to a new output above or below the current one.
2016-02-27Merge pull request #492 from mikkeloscar/swaybar-multi-outputDrew DeVault
Display single swaybar on multiple outputs
2016-02-27Free config before exiting sway.Mikkel Oscar Lyderik
Apart from freeing the sway_config struct, this also terminates the swaybars spawned by sway, since they are linked by PID to the bar config structs.
2016-02-27Improve how swaybars are spawnedMikkel Oscar Lyderik
2016-02-27Add outputs to bar_config ipc responseMikkel Oscar Lyderik
2016-02-27Make sway spawn only one bar per bar configMikkel Oscar Lyderik
2016-02-27Set pointer pos before focusing view under itMikkel Oscar Lyderik
2016-02-26Correctly exit sway on errors.Mikkel Oscar Lyderik
Calling `exit` in sway_terminate prevents sway from correctly shutting down (freeing data, cleanly terminating the ipc server, etc.). A better way is to exit straight away if the failure occurs before `wlc_run` and use sway_abort as usual if it occur when wlc is running.
2016-02-25Fix for when sway_abort doesn't exitYacine Hmito
sway_terminate does an exit in case wlc_terminate doesn't
2016-02-25Fixed swaymsg command name in sway(5) docYacine Hmito
2016-02-25No options when using sway as IPC clientYacine Hmito
Sway used to attempt sending an IPC command composed of every argument after the first non-option argument encountered. Now, raises an error if an option is encountered before the intended command. Some options such as -h or -v take effect when parsing, so they still apply.
2016-02-25Removed p as a valid CLI optionYacine Hmito
The get-socketpath long option had an undocumented short alternative as `p`. It has been removed. However, the code in the options array is still the 'p' char.
2016-02-25Don't rearrange views behind swaylock.Mikkel Oscar Lyderik
Fix #481
2016-02-25Check for empty ws on view destroyed.Mikkel Oscar Lyderik
In some cases destroying a view can result in an empty and inactive workspace, which should be destroyed. This handles those cases.
2016-02-25Send workspace ICP event on ws destroy/empty.Mikkel Oscar Lyderik
There is no 'destroy' change type in the i3 IPC so this uses `empty` to notify about empty workspaces (which will be destroyed from sway right after).
2016-02-25Prevent crash when showing scratchpad on new ws.Mikkel Oscar Lyderik
Fix #469
2016-02-12Prefer named output config over wildcard config.Mikkel Oscar Lyderik
This makes sure that a named output config is applied before the general wildcard config when a new output is created. This ensures that the config: output * ... output NAME ... behaves the same way as: output NAME ... output * ...
2016-02-08Replace deprecated function wlc_output_get_pixels.Mikkel Oscar Lyderik
This makes IPC GET_PIXELS use the new `wlc_pixels_read` call instead of the deprecated `wlc_output_get_pixels`. The old version worked by passing a callback function to wlc which would grab the pixels and send them to the IPC client. The new version works by maintaining a list of clients who have requested the pixels of some output and then grap and send the pixels in the output_post_render hook of the `wlc_interface`.
2016-02-08Squash trailing whitespaceMikkel Oscar Lyderik
2016-02-08Fix clang warningsMikkel Oscar Lyderik
2016-02-08Add wlc-render.h to handlers.cDrew DeVault
2016-01-28commands: move position mousecrondog
Bounds checking works ok except it overlaps the bar. Just like with normal floating. Should be fixed once swaybar is fixed.
2016-01-27font: Allow adding font to the config. In prep for border titlescrondog
v2: Give default font and make bar use it if no bar font
2016-01-26Fix returning to sway after swaylock completesDrew DeVault
2016-01-25Add quotes to multiword arguments.Mikkel Oscar Lyderik
This adds quotes around multiword arguments before they are passed to `/bin/sh -c` in an exec command. Example: I connect to irc like this: exec termite -e "mosh server tmux a" Without this patch the arguments are passed to sh as: termite -e mosh server tmux a When it should be: termite -e "mosh server tmux a" For the command to work.
2016-01-23Merge pull request #457 from mikkeloscar/move-view-fixDrew DeVault
Fix rendering of view when moving to new workspace
2016-01-23Add new wlc thing to viewsDrew DeVault
2016-01-23Revert "s/numlen/log10/g"Drew DeVault
This reverts commit 038bb8cc7c4dee77f8ee4ba3ac1ffc47409b2370.
2016-01-23s/numlen/log10/gDrew DeVault
2016-01-23commands: Fix memory allocation in assignQuentin Glidic
Also use the safer snprintf since we just computed the size. Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>