aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-11-25criteria: Add. Learn for_window command.S. Christoffer Eliesen
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.)
2015-11-25Merge pull request #255 from christophgysin/ninjaDrew DeVault
cmake: fix ninja build
2015-11-25Merge pull request #257 from christophgysin/missing-includeDrew DeVault
extensions: add missing include
2015-11-25cmake: fix ninja buildChristoph Gysin
When using the ninja generator: $ cmake -G Ninja <dir> $ ninja -C <dir> This commit fixes the warning: ninja: warning: multiple rules generate bin/wayland-desktop-shell-protocol.c. builds involving this target will not be correct; continuing anyway [-w dupbuild=warn]
2015-11-25extensions: add missing includeChristoph Gysin
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’
2015-11-25Merge pull request #254 from christophgysin/typotaiyu
cmake: Fix typo
2015-11-25cmake: Fix typoChristoph Gysin
2015-11-24Merge pull request #253 from sce/add_sibling_handle_floating_alt1Drew DeVault
Handle floating views in layout code
2015-11-24layout: get_swayc_in_direction_under: Handle floating views.S. Christoffer Eliesen
2015-11-24layout: swap_container: Handle floating views.S. Christoffer Eliesen
2015-11-24layout: replace_child: Handle floating views.S. Christoffer Eliesen
2015-11-24layout: add_sibling: Handle floating views properly.S. Christoffer Eliesen
This should fix #241.
2015-11-24Merge pull request #252 from sce/fix_binding_cmpDrew DeVault
sway_binding_cmp_keys: Differentiate between modifier keys.
2015-11-24sway_binding_cmp_keys: Differentiate between modifier keys.S. Christoffer Eliesen
Compare modifiers as well as keys when number of modifiers+keys are the same (so that e.g. mod1+x != mod4+x).
2015-11-24Merge pull request #250 from sce/initial_support_for_criteria_stringsDrew DeVault
Initial support for criteria strings
2015-11-24handle_command: Skip commands that has a criteria string.S. Christoffer Eliesen
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.)
2015-11-24stringop: Properly handle criteria strings.S. Christoffer Eliesen
A criteria string (e.g. '[class="something" title="something"]') is now correctly treated as a single argument.
2015-11-24Merge pull request #249 from sce/extra_view_metadataDrew DeVault
Extra view metadata
2015-11-24container: Store app_id attribute for views.S. Christoffer Eliesen
2015-11-24container: Store class attribute for views.S. Christoffer Eliesen
2015-11-24Merge pull request #248 from taiyu-len/masterDrew DeVault
fix list sorting
2015-11-24fix list sortingtaiyu
2015-11-22Merge pull request #247 from sce/handle_bindsym_duplicatesDrew DeVault
Handle bindsym duplicates
2015-11-22cmd_bindsym: Detect/handle duplicates.S. Christoffer Eliesen
Also replace `bindsym_sort` with function `sway_binding_cmp` that takes all data into account when comparing.
2015-11-22commands: Comment/doc for config_command.S. Christoffer Eliesen
2015-11-22Merge pull request #245 from sce/workspace_output_duplicatesDrew DeVault
Fix `workspace_output` duplicates
2015-11-22cmd_workspace: Don't fill up config->workspace_outputs with duplicates.S. Christoffer Eliesen
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).
2015-11-21stringop: lenient_strcmp: Add.S. Christoffer Eliesen
2015-11-21list: Add list_seq_find.S. Christoffer Eliesen
Sometimes one has to traverse a list to find out if some data already exists there in order to avoid dupilcates in the list, and this function facilitates in that without requiring that the data is ordered.
2015-11-19Update header for default configDrew DeVault
2015-11-19Fix #240Drew DeVault
2015-11-19Add all documented scaling modes to config parserDrew DeVault
Note that not all scaling modes are actually supported by swaybg yet.
2015-11-19Add wallpapers to output commandDrew DeVault
2015-11-19Parse output background configDrew DeVault
2015-11-19Stretch image to fit output resolutionDrew DeVault
2015-11-19Basic image rendering for swaybgDrew DeVault
2015-11-19Refactor the crap out of wayland clientsDrew DeVault
And create a background surface on every output when invoking swaybg.
2015-11-19Fix background extensionsDrew DeVault
Thanks @Cloudef, it works great
2015-11-18Add background handlingDrew DeVault
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.
2015-11-18Basic support for extensions in server and clientsDrew DeVault
2015-11-18Fix warning about uninitialized variableDrew DeVault
2015-11-18Exit if unable to allocate bufferDrew DeVault
2015-11-18Support cursors over wayland clientsDrew DeVault
Apparently wayland has fucking client-side cursors, too
2015-11-18Generate protocol headersDrew DeVault
2015-11-18Fix SIGBUS from wayland clientsDrew DeVault
2015-11-18Normalize indentationDrew DeVault
2015-11-18Clean up memory pool files betterDrew DeVault
2015-11-18Support resizing in wayland client implementationDrew DeVault
2015-11-18Fix up wayland client implementationDrew DeVault
Now it receives frame callbacks and renders properly, and is double buffered and such.
2015-11-16Track pid of child process from execDrew DeVault
This will allow us to eventually open that process on the current view. Requires support from @Cloudef.