aboutsummaryrefslogtreecommitdiff
path: root/sway
AgeCommit message (Collapse)Author
2016-03-26Don't try to read config if not a file.Mikkel Oscar Lyderik
2016-03-26Add config path to error msgMikkel Oscar Lyderik
2016-03-26Load correct config on reloadMikkel Oscar Lyderik
2016-03-26Document include commandMikkel Oscar Lyderik
2016-03-26Implement include commandMikkel Oscar Lyderik
The include command (`include <path>`) makes it possible to include sub config files from the main config file (or from within other sub config files). The include command uses the following rules for including config files: * the `path` can be either a full path or a path that is relative to the parent config. Shell expansion is supported, so it's possible to do `include ~/.config/sway.d/*`. * The same config file can only be included once (to prevent include cycles). If a config is included multiple times it will just be ignored after it has been included once. * Including a sub config file is the same as inserting the content of that file into the parent config, thus rules about overwriting bindsyms etc. works the same as for a single config. Implement #542
2016-03-24Gracefully exit when config is not foundMikkel Oscar Lyderik
This makes sure that sway will gracefully exit if the config is not found or sway is unable to read it.
2016-03-24Make the nvidia warning louderDrew DeVault
2016-03-24Don't set WLC_DIM on startupDrew DeVault
2016-03-24Update to new WLC APIDrew DeVault
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