aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
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-19Parse output background configDrew 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-18Support cursors over wayland clientsDrew DeVault
Apparently wayland has fucking client-side cursors, too
2015-11-18Fix SIGBUS from wayland clientsDrew DeVault
2015-11-18Normalize indentationDrew DeVault
2015-11-18Clean up memory pool files betterDrew 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-16output: Support multiple adjacent outputs.S. Christoffer Eliesen
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).
2015-11-16cmd_output: Replace existing config if called multiple times.S. Christoffer Eliesen
2015-11-12We don't need to implement strdupDrew DeVault
After defining _GNU_SOURCE
2015-11-12Further refinement of wayland client supportDrew DeVault
2015-11-12Start fleshing out wayland client implementationDrew DeVault
This introduces a basic shared framework for making wayland clients within sway itself.
2015-11-12Start working on IPC for get_pixelsDrew DeVault
This is broken
2015-11-11Add file and line number to log in Debug buildDrew DeVault
2015-11-08Add some documentation commentsDrew DeVault
This is mostly setting a precedent, I hope that others will continue to write docs for more headers. Ref #218
2015-11-04Learn "gaps edge_gaps <on|off|toggle>".S. Christoffer Eliesen
When yes, the old behaviour of adding half the inner gap around each view is used. When no, don't add any gap when an edge of the view aligns with the workspace. The result is inner gap only between views, not against the workspace edge. The algorithm is not perfect because it means the extra space is distributed amongst edge-aligned views only, but it's simple, looks good and it works.
2015-11-03commands: Learn 'move workspace to output <direction|name>'.S. Christoffer Eliesen
2015-10-29container.h: Remove unused.S. Christoffer Eliesen
2015-10-29input_state: Remove mouse_origin (x&y). Query wlc instead.S. Christoffer Eliesen
2015-10-29commands: Learn mouse_warping.S. Christoffer Eliesen
Place mouse at center of focused view when changing to a workspace on a different output, if option is enabled. (This replicates existing i3 option.) This can be triggered in multiple ways: A) via `workspace <name>` which changes output B) via `focus <direction>` which changes output C) via `focus output <name>` which (obviously) changes output
2015-10-29input_state: Extract 'pointer_position_set' function from handlers.S. Christoffer Eliesen
2015-10-29container: Move container_under_pointer here from handlers.S. Christoffer Eliesen
2015-10-27Merge pull request #208 from minus7/ipc_subscribeDrew DeVault
implemented IPC subscribe for workspace event
2015-10-27implemented IPC subscribe for workspace eventminus
2015-10-27commands: Learn 'debuglog'.S. Christoffer Eliesen
Replicates i3 option. Verbosity level given as command line argument becomes default log level, and using 'debuglog toggle' switches back and forth between default and debug (or L_ERROR and debug if default is also L_DEBUG).
2015-10-25log: Add swayc_log, use at a few key places.S. Christoffer Eliesen
swayc_log works just like sway_log, but appends type and name from given container to the log output.
2015-10-25sway/output: Create, move code from handlers.c here.S. Christoffer Eliesen
2015-10-23seamless_mouse: Move pointer only if successfully changed workspace.S. Christoffer Eliesen
If e.g. a window has a popup open then that will lock the current focus, making a workspace switch denied. So don't move the mouse pointer in such cases.
2015-10-23commands: cmd_results->input is duplicated/freed.S. Christoffer Eliesen
2015-10-22ipc,commands,config: Replace cmd_status enum with cmd_results struct.S. Christoffer Eliesen
In i3 the ipc reply will contain a human readable error message, and this patch replicates that behaviour. However, that error message is also useful for logging, which this patch takes advantage of. E.g. instead of logging errors directly in commands.c/checkargs, it is fed back to the caller which eventually ends up logging everything with maximum context available (config.c/read_config). So instead of logging e.g. "Error on line 'exit'" it will now log: "Error on line 'exit': Can't execute from config."
2015-10-22config: Add "seamless_mouse" to decide if pointer crosses output edges.S. Christoffer Eliesen
2015-10-21config: Apply output config also during config reload.S. Christoffer Eliesen
2015-10-18main: Implement --get-socketpath switch.S. Christoffer Eliesen
2015-09-18merge + no c_extensionstaiyu
2015-09-18Fix warnings introduced by prior commitDrew DeVault
2015-09-14multi command keybindstaiyu
2015-09-13Revert "new_workspace null behavior + testmap functions + regex"Drew DeVault
This reverts commit e1d18e42a8f3a597b9bf5f1bb2ab6c346e4e7983. Fixes #180 cc @taiyu-len
2015-09-12visible valuestaiyu
2015-09-12new_workspace null behavior + testmap functions + regextaiyu
2015-09-10cmd status + workspace ws output optaiyu
2015-09-08mode supports multi token namestaiyu
2015-09-08var replacement changestaiyu
2015-09-08set variable changestaiyu
2015-09-07config modestaiyu