aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAge
* Implement include commandLibravatar Mikkel Oscar Lyderik2016-03-26
| | | | | | | | | | | | | | | | | | | | 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
* Add graphical feedback to swaylock (#526)Libravatar Kevin Hamacher2016-03-25
|
* Update to new WLC APILibravatar Drew DeVault2016-03-24
|
* Implement 'smart_gaps' feature from i3-gapsLibravatar Mikkel Oscar Lyderik2016-03-20
|
* Remove unused panel_size (and fix rearrange)Libravatar Mikkel Oscar Lyderik2016-03-17
| | | | | | | | | | | | 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
* Fix assigning workspaces to outputsLibravatar Mikkel Oscar Lyderik2016-03-04
| | | | | | | | | | | 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.
* Free config before exiting sway.Libravatar Mikkel Oscar Lyderik2016-02-27
| | | | | | 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.
* Improve how swaybars are spawnedLibravatar Mikkel Oscar Lyderik2016-02-27
|
* Differentiate between all or no outputsLibravatar Mikkel Oscar Lyderik2016-02-27
|
* Make sway spawn only one bar per bar configLibravatar Mikkel Oscar Lyderik2016-02-27
|
* Make single bar handle multiple outputsLibravatar Mikkel Oscar Lyderik2016-02-27
|
* Correctly exit sway on errors.Libravatar Mikkel Oscar Lyderik2016-02-26
| | | | | | | | 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.
* Fix ipc event bit masksLibravatar Mikkel Oscar Lyderik2016-02-21
|
* Replace deprecated function wlc_output_get_pixels.Libravatar Mikkel Oscar Lyderik2016-02-08
| | | | | | | | | | | 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`.
* Print /proc/<pid>/maps on segfaultLibravatar Drew DeVault2016-01-28
|
* font: Allow adding font to the config. In prep for border titlesLibravatar crondog2016-01-27
| | | | v2: Give default font and make bar use it if no bar font
* extract cairo_set_source_u32()Libravatar Christoph Gysin2016-01-25
|
* Add quotes to multiword arguments.Libravatar Mikkel Oscar Lyderik2016-01-25
| | | | | | | | | | | | | | | | | | | | | 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.
* swaybar: move headers to include/barLibravatar Mikkel Oscar Lyderik2016-01-24
|
* swaybar: move core functionality to state.cLibravatar Mikkel Oscar Lyderik2016-01-24
|
* Revert "s/numlen/log10/g"Libravatar Drew DeVault2016-01-23
| | | | This reverts commit 038bb8cc7c4dee77f8ee4ba3ac1ffc47409b2370.
* s/numlen/log10/gLibravatar Drew DeVault2016-01-23
|
* libinputLibravatar Cole Mickens2016-01-19
|
* Add support for bincode commandLibravatar Mikkel Oscar Lyderik2016-01-09
| | | | | If a bindsym and bincode maps to the same combination, the last one will overwrite any previous mappings.
* Implement IPC binding event (keyboard)Libravatar Mikkel Oscar Lyderik2016-01-08
| | | | | | | | | | | | | | | | | | | | | | | This implements the IPC binding event for keyboard bindings. It is slightly different from the i3 implementation [1] since sway supports more than one non-modifier key in a binding. Thus the json interface has been changed from: { ... "symbol": "t", ... } to: { ... "symbols": [ "t" ], ... } [1] http://i3wm.org/docs/ipc.html#_binding_event
* Add function for duplication a sway_bindingLibravatar Mikkel Oscar Lyderik2016-01-08
|
* Add function for getting list of modifier names.Libravatar Mikkel Oscar Lyderik2016-01-08
| | | | Get an array of modifier names from modifier masks.
* Implement bindsym --releaseLibravatar Mikkel Oscar Lyderik2016-01-07
| | | | | | | | | | | This is a "simple" version of --release (same as i3) that only supports a binding that contain one normal key. e.g.: bindsym --release $mod+x exec somthing-fun I didn't bother implementing it for a combination like `$mod+x+z` since it is a bit tricky to get right and also a bit weird to actually do on a keyboard.
* Only send modifier event once for active modifiersLibravatar Mikkel Oscar Lyderik2016-01-05
| | | | | | | | This makes sure that a modifier event is only sent for active bar modifiers, and that it is only sent once for each of those modifiers. An active bar modifier is a modifier defined for a bar with `mode hide` and `hidden_state hide`.
* Move modifier name table to common/util.cLibravatar Mikkel Oscar Lyderik2016-01-05
| | | | | Lookup of modifier names is required in several places, thus it makes sense to move it to a general place.
* Send IPC modifier event on bar_modifier up/downLibravatar Mikkel Oscar Lyderik2016-01-05
| | | | | | | | | | | | | | | Detects when a bar modifier key is pressed/released and sends a modifier IPC event to any listeners (usually swaybars). This way a swaybar can listen on the modifier event and hide/show the bar accordingly (not implemented yet) The modifier event looks like this: { "change": "pressed", // or released "modifier": "Mod4" }
* Detect bar modifier pressed/releasedLibravatar Mikkel Oscar Lyderik2016-01-05
|
* swaybar: Implement binding_mode_indicatorLibravatar Mikkel Oscar Lyderik2016-01-03
|
* Add type to returned response.Libravatar Mikkel Oscar Lyderik2016-01-03
| | | | | | | Makes `ipc_recv_response` return a struct with size, type and payload rather than just the payload string. This is useful if the type has to be checked on the client.
* Add IPC event typesLibravatar Mikkel Oscar Lyderik2016-01-03
| | | | Adds custom IPC_EVENT_* types
* Handle SIGTERM sent to swayLibravatar Mikkel Oscar Lyderik2015-12-29
| | | | | | | This makes sway handle and gracefully shut down everything when receiving a SIGTERM. Fix #416
* swaybar: fix memory leaksLibravatar progandy2015-12-22
|
* Merge pull request #393 from robotanarchy/musl-libc-compatibilityLibravatar Drew DeVault2015-12-21
|\ | | | | musl libc compatibility
| * replace non-standard qsort_r with qsortLibravatar robotanarchy2015-12-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've tried to make as few changes, as possible. Usually the reason for using qsort_r is, that you can pass an extra userdata pointer to the compare function. However, in sway list_sort wrapped qsort_r and always called a wrapper function for comparing, the wrapper function then had the real compare function as argument. The only thing, that the wrapper function does, is dereferencing the 'left' and 'right' function arguments before passing them to the real compare function. I have renamed list_sort to list_qsort to avoid confusion (so nobody tries to use list_qsort like list_sort) and removed the wrapper functionality. Now the dereferencing must be done in the compare function, that gets passed. Some compare functions were used in both list_sort and list_seq_find. To make the difference clear, I've added a '_qsort' suffix to the compare functions, that are intended to be used with the new list_qsort. (In other words: list_qsort is not compatible anymore with list_seq_find). - Changed and renamed function (it isn't used anywhere but in commands.c, and only for sorting): compare_set -> compare_set_qsort - New wrapper functions: sway_binding_cmp_qsort (for sway_binding_cmp) sway_mouse_binding_cmp_qsort (for sway_mouse_binding_cmp)
* | Trigger ipc_event_workspace in all casesLibravatar Mikkel Oscar Lyderik2015-12-21
| | | | | | | | | | | | This makes sure that the workspace IPC event is triggered when needed. Fixes #382 while making sure that the IPC event is only triggered once.
* | Implement `barconfig_update` IPC eventLibravatar Mikkel Oscar Lyderik2015-12-21
|/
* Merge pull request #373 from sce/per_panel_configLibravatar Drew DeVault2015-12-20
|\ | | | | Per panel config
| * extensions: Track panels by wl_resource, position per panel.Libravatar S. Christoffer Eliesen2015-12-20
| | | | | | | | | | | | | | | | Track each panel separately via its wl_resource. `set_panel_position` might be called before `set_panel`, so reuse panel config. Place the position in panel_config so that each panel has its own position.
| * extensions: panel_config->resource => wl_surface_res.Libravatar S. Christoffer Eliesen2015-12-20
| | | | | | | | Change the name to something less ambigious.
* | make gdk-pixbuf dependency really optionalLibravatar progandy2015-12-20
|/
* Fix default workspace name generationLibravatar Drew DeVault2015-12-18
| | | | This fixes the issue where workspace 10 ends up being the default.
* Merge pull request #359 from mikkeloscar/i3bar-commandLibravatar Drew DeVault2015-12-18
|\ | | | | Add bar option: swaybar_command <command>
| * Add bar option: swaybar_command <command>Libravatar Mikkel Oscar Lyderik2015-12-19
| |
* | Terminate children when freeing output containerLibravatar Mikkel Oscar Lyderik2015-12-18
| |
* | Reload swaybar/swaybg on config reload.Libravatar Mikkel Oscar Lyderik2015-12-18
|/ | | | | | | | This works by tracking the pids of the child processes in the related output container and terminating the processes and spawning new ones on a config reload. Should solve: #347