summaryrefslogtreecommitdiffstats
path: root/sway
Commit message (Collapse)AuthorAge
* workspace: Learn sticky.Libravatar S. Christoffer Eliesen2015-11-27
| | | | | A floating window that's sticky will move to the new active workspace whenever the workspace on the same output changes.
* commands: code formatting: Sort list of commands by alphabet.Libravatar S. Christoffer Eliesen2015-11-27
|
* Merge pull request #265 from sce/better_loggingLibravatar Drew DeVault2015-11-27
|\ | | | | debug_log: Improve container_log so that debug lines are aligned.
| * debug_log: Improve container_log so that debug lines are aligned.Libravatar S. Christoffer Eliesen2015-11-27
| | | | | | | | | | Makes the log easier to read, and the developers more happy (this one at least).
* | Merge pull request #264 from sce/fix_ws_next_nameLibravatar Drew DeVault2015-11-27
|\ \ | |/ |/| workspace: Improve workspace_next_name.
| * workspace: Improve workspace_next_name.Libravatar S. Christoffer Eliesen2015-11-27
| | | | | | | | | | | | | | | | | | | | | | | | This function looks for bound commands that start with `workspace` (ie. the commands that change to a static workspace) and fetches the workspace name. However, if it's actually a list of commands, then the parsing will pick up the delimiter ("," or ";") and also fail to recognize keywords ("next" etc). This patch fixes that by properly separating with delimiters.
* | cmd_floating: Support `enable` and `disable` commands too.Libravatar S. Christoffer Eliesen2015-11-27
|/ | | | | This is especially relevant in combination with `for_window`, e.g.: `for_window [title="Terminal"] floating enable`.
* Move IPC client into common, refactor IPCLibravatar Drew DeVault2015-11-27
|
* Add "variant": "sway" to IPC version responseLibravatar Drew DeVault2015-11-26
|
* Parse command line args for swaymsgLibravatar Drew DeVault2015-11-26
|
* Merge pull request #261 from christophgysin/execLibravatar Drew DeVault2015-11-25
|\ | | | | Call swaybg without invoking a shell
| * Call swaybg without invoking a shellLibravatar Christoph Gysin2015-11-25
| | | | | | | | | | | | | | This makes escaping the arguments obsolete. Also avoid dynamic memory allocation for the output id. It only supported ids up to 99. Now we support up to 999, and take 4 bytes off the stack instead.
* | swaybg: implement scaling mode "fit"Libravatar Christoph Gysin2015-11-25
|/
* Merge pull request #251 from sce/criteria_1Libravatar Drew DeVault2015-11-25
|\ | | | | criteria: Add. Learn for_window command.
| * criteria: Code formatting.Libravatar S. Christoffer Eliesen2015-11-25
| |
| * criteria: Add. Learn for_window command.Libravatar S. Christoffer Eliesen2015-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A criteria is a string in the form of `[class="regex.*" title="str"]`. It is stored in a struct with a list of *tokens* which is a attribute/value pair (stored as a `crit_token` struct). Most tokens will also have a precompiled regex stored that will be used during criteria matching. for_window command: When a new view is created its metadata is tested against all stored criteria, and if a match is found the associated command list is executed. Unfortunately some metadata is not available in sway at the moment (specifically `instance`, `window_role` and `urgent`). Any criteria string that tries to match an unsupported attribute will fail. (Note that while the criteria code can be used to parse any criteria string it is currently only used by the `for_window` command.)
* | config: print line numberLibravatar Christoph Gysin2015-11-25
|/
* extensions: add missing includeLibravatar Christoph Gysin2015-11-25
| | | | | | | | | | | This fixes a compiler warning: ../sway/extensions.c: In function ‘set_background’: ../sway/extensions.c:16:37: warning: implicit declaration of function ‘malloc’ [-Wimplicit-function-declaration] struct background_config *config = malloc(sizeof(struct background_config)); ^ ../sway/extensions.c:16:37: warning: incompatible implicit declaration of built-in function ‘malloc’ ../sway/extensions.c:16:37: note: include ‘<stdlib.h>’ or provide a declaration of ‘malloc’
* layout: get_swayc_in_direction_under: Handle floating views.Libravatar S. Christoffer Eliesen2015-11-24
|
* layout: swap_container: Handle floating views.Libravatar S. Christoffer Eliesen2015-11-24
|
* layout: replace_child: Handle floating views.Libravatar S. Christoffer Eliesen2015-11-24
|
* layout: add_sibling: Handle floating views properly.Libravatar S. Christoffer Eliesen2015-11-24
| | | | This should fix #241.
* sway_binding_cmp_keys: Differentiate between modifier keys.Libravatar S. Christoffer Eliesen2015-11-24
| | | | | Compare modifiers as well as keys when number of modifiers+keys are the same (so that e.g. mod1+x != mod4+x).
* handle_command: Skip commands that has a criteria string.Libravatar S. Christoffer Eliesen2015-11-24
| | | | | | | | | | We can't handle them currently (the criteria needs to e.g. be passed to each command handler which then needs to do the right thing), so it's better to just do nothing than to create unexpected results (because the command was executed on the wrong view). (Before this patch any command list with a criteria string would simply fail to parse, so this is at least a step in the right direction.)
* stringop: Properly handle criteria strings.Libravatar S. Christoffer Eliesen2015-11-24
| | | | | A criteria string (e.g. '[class="something" title="something"]') is now correctly treated as a single argument.
* container: Store app_id attribute for views.Libravatar S. Christoffer Eliesen2015-11-24
|
* container: Store class attribute for views.Libravatar S. Christoffer Eliesen2015-11-24
|
* fix list sortingLibravatar taiyu2015-11-24
|
* cmd_bindsym: Detect/handle duplicates.Libravatar S. Christoffer Eliesen2015-11-22
| | | | | Also replace `bindsym_sort` with function `sway_binding_cmp` that takes all data into account when comparing.
* commands: Comment/doc for config_command.Libravatar S. Christoffer Eliesen2015-11-22
|
* cmd_workspace: Don't fill up config->workspace_outputs with duplicates.Libravatar S. Christoffer Eliesen2015-11-22
| | | | | | This also fixes a bug where issuing a new "workspace a output b" command for an already assigned workspace would not work (the old config would be found first and used instead).
* stringop: lenient_strcmp: Add.Libravatar S. Christoffer Eliesen2015-11-21
|
* Fix #240Libravatar Drew DeVault2015-11-19
|
* Add all documented scaling modes to config parserLibravatar Drew DeVault2015-11-19
| | | | Note that not all scaling modes are actually supported by swaybg yet.
* Add wallpapers to output commandLibravatar Drew DeVault2015-11-19
|
* Parse output background configLibravatar Drew DeVault2015-11-19
|
* Fix background extensionsLibravatar Drew DeVault2015-11-19
| | | | Thanks @Cloudef, it works great
* Add background handlingLibravatar Drew DeVault2015-11-18
| | | | | | | | | | | | | | | This does not work as expected. I think the problem is on the wlc side. Please review, @Cloudef. To reproduce the issues: 1. Run sway 2. Open terminal in sway 3. Run swaybg swaybg will create a surface and ask to have it set as the background, but wlc_handle_from_wl_surface_resource will return 0. If the swaybg surface is a shell surface, then it works - but wlc complains about the pointer type and segfaults as soon as the pre-render hook tries to draw the background.
* Basic support for extensions in server and clientsLibravatar Drew DeVault2015-11-18
|
* Track pid of child process from execLibravatar Drew DeVault2015-11-16
| | | | | This will allow us to eventually open that process on the current view. Requires support from @Cloudef.
* output: Support multiple adjacent outputs.Libravatar S. Christoffer Eliesen2015-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | When querying for an adjacent output we now need an absolute position in order to know which adjacent output that matches. (The position is either the current mouse position or the center of the currently focused container, depending on context.) If two outputs have one edge each that at least partially align with each other they now count as adjacent. Seamless mouse is affected by this and now properly moves and positions itself between outputs with "uneven" placement (as long as they have at least some part of the edge adjacent to each other). When focusing or moving a container in a specified direction the center of the current focused container decides where to look for an adjacent output. So if e.g. an output has two adjacent outputs to the right and a "focus right" command is issued then it's the placement of the currently focused container that decides which output actually gets focused. Also, if an output has at least one output adjacent in some direction but the entire edge is not covered (ie. it has "holes" with no outputs), then the algorithm will choose the output that is closest to the currently focused container (this does not apply to seamless mouse, the pointer will just stop at the edge in that case).
* cmd_output: Replace existing config if called multiple times.Libravatar S. Christoffer Eliesen2015-11-16
|
* We somewhat more wlc_point nowLibravatar Drew DeVault2015-11-14
| | | | | | Apparently I missed some cc @Cloudef
* We wlc_point nowLibravatar Drew DeVault2015-11-14
| | | | cc @Cloudef
* ipc: Store socketname in SWAYSOCK. Fixes `--get-socketpath`.Libravatar S. Christoffer Eliesen2015-11-13
| | | | | | | | | | After adding pid to the socket path the `--get-socketpath` command broke because it doesn't know the pid of the running instance. Fix this by setting and querying `SWAYSOCK`. Also ignore `SWAYSOCK` upon normal startup if a socket exists at that location (ie. from another sway instance), and don't overwrite `I3SOCK` if it exists either.
* Merge branch 'master' of github.com:SirCmpwn/swayLibravatar Drew DeVault2015-11-13
|\
| * Merge pull request #225 from sce/logind_socket_pathLibravatar Drew DeVault2015-11-13
| |\ | | | | | | ipc: Put socket into proper user runtime dir.
| | * ipc: Put socket into proper user runtime dir.Libravatar S. Christoffer Eliesen2015-11-13
| | |
* | | Revert "Try ~/.i3/config earlier than /etc/sway/config"Libravatar Drew DeVault2015-11-13
|/ / | | | | | | This reverts commit f0ceb4e909bb0182d10ce09d34019497aa8d5715.
* / Try ~/.i3/config earlier than /etc/sway/configLibravatar Drew DeVault2015-11-13
|/ | | | And ~/.config/i3/config, of course.