summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Merge pull request #2901 from ianyfan/swaybar1.0-beta.1Libravatar emersion2018-10-20
|\ | | | | swaybar: render with minimum height, nominally text height
| * swaybar: render with minimum height, nominally text heightLibravatar Ian Fan2018-10-20
|/
* Merge pull request #2900 from Hi-Angel/masterLibravatar Drew DeVault2018-10-20
|\ | | | | A script to make inactive windows transparent
| * A script to make inactive windows transparentLibravatar Konstantin Kharlamov2018-10-20
|/ | | | | | | | Sway has ability to apply transparency to arbitrary windows. This script wires up this functional to one of popular use-cases from i3+<compositor_name>. Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
* Merge pull request #2896 from RyanDwyer/abort-proprietaryLibravatar Drew DeVault2018-10-20
|\ | | | | Abort if proprietary drivers are in use
| * Abort if proprietary drivers are in useLibravatar Ryan Dwyer2018-10-21
|/ | | | | | The idea here is we don't want users to be blissfully unaware that they are running unsupported drivers. So we abort on startup, and force the user to add a specific argument to bypass the check.
* Merge pull request #2895 from RyanDwyer/fix-popup-damageLibravatar Drew DeVault2018-10-20
|\ | | | | Fix popup damage issues when toplevel and/or popup uses geometry
| * Fix popup damage issues when toplevel and/or popup uses geometryLibravatar Ryan Dwyer2018-10-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The wlr_xdg_popup_get_toplevel_coords function has the following quirks: * It does not do anything with the coordinates of the passed popup. Instead, we are required to add them ourselves, which we do by passing them to the function as the surface local values. * It adds the geometry (shadows etc) of the toplevel itself, so the coordinates are surface local rather than content local. For this reason, we have to negate the toplevel's geometry (child->view->geometry). * I may be wrong, but the popup positions appear to be stored in surface local coordinates rather than content local coordinates. The geometry (shadows etc) of the popup itself must be negated (surface->geometry).
* | Merge pull request #2888 from RyanDwyer/remove-raise-floatingLibravatar Drew DeVault2018-10-20
|\ \ | |/ |/| Remove raise_floating directive
| * Remove raise_floating directiveLibravatar Ryan Dwyer2018-10-20
| | | | | | | | | | | | | | | | | | | | | | | | | | The directive controlled whether floating views should raise to the top when the cursor is moved over it while using focus_follows_mouse. The default was enabled, which is undesirable. For example, if you have two floating views where one completely covers the other, the smaller one would be inaccessible because moving the mouse over the bigger one would raise it above the smaller one. There is no known use case for having raise_floating enabled, so this patch removes the directive and implements the raise_floating disabled behaviour instead.
* | Merge pull request #2887 from RyanDwyer/bar-overlayLibravatar Drew DeVault2018-10-20
|\ \ | | | | | | Put swaybar in overlay layer when using mode hide
| * | Put swaybar in overlay layer when using mode hideLibravatar Ryan Dwyer2018-10-20
| |/ | | | | | | This allows the bar to render over fullscreen views.
* | Merge pull request #2890 from mihaicmn/create-default-seatLibravatar Ryan Dwyer2018-10-20
|\ \ | |/ |/| Fix crash when defaut seat is not created
| * Fix crash when defaut seat is not createdLibravatar Mihai Coman2018-10-20
|/ | | | Function input_manager_get_default_seat should always return a seat.
* Merge pull request #2870 from RyanDwyer/refactor-input-managerLibravatar emersion2018-10-20
|\ | | | | Minor refactor of input manager
| * Minor refactor of input managerLibravatar Ryan Dwyer2018-10-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The input manager is a singleton object. Passing the sway_input_manager argument to each of its functions is unnecessary, while removing the argument makes it obvious to the caller that it's a singleton. This patch removes the argument and makes the input manager use server.input instead. On a similar note: * sway_input_manager.server is removed in favour of using the server global. * seat.input is removed because it can get it from server.input. Due to a circular dependency, creating seat0 is now done directly in server_init rather than in input_manager_create. This is because creating seats must be done after server.input is set. Lastly, it now stores the default seat name using a constant and removes a second reference to seat0 (in input_manager_get_default_seat).
* | Merge pull request #2886 from RyanDwyer/fix-headless-unmap-crashLibravatar emersion2018-10-20
|\ \ | | | | | | Fix crash when view unmaps while no outputs connected
| * | Fix crash when view unmaps while no outputs connectedLibravatar Ryan Dwyer2018-10-20
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a view unmaps, we call workspace_consider_destroy. This function assumed the workspace would always have an output, but this is not the case when hotplugged down to zero. The function now handles this and allows itself to be destroyed when there is no output. This means that workspace_begin_destroy must remove the workspace from the root->saved_workspaces list to avoid an eventual dangling pointer, so it does that now. Lastly, when an output is plugged in again and it has to create a new initial workspace for it, we must emit the workspace::init IPC event otherwise swaybar shows no workspaces at all. I guess when you start sway, swaybar is started after the workspace has been created which is why this hasn't been needed earlier.
* | Merge pull request #2879 from Emantor/fix/swaybar_positionLibravatar emersion2018-10-20
|\ \ | |/ |/| swaybar: disallow left and right position and print error on default
| * commands/bar: remove left and right from allowed positionsLibravatar Rouven Czerwinski2018-10-20
| | | | | | | | "left" and "right" are not allowed positions for swaybar, remove them.
| * swaybar: disallow left and right position and print error on defaultLibravatar Rouven Czerwinski2018-10-20
| | | | | | | | | | | | | | | | The positions "left" and "right" are not allowed by the man page, remove them from the allowed positions. Also print an error to stderr if we default to the bottom position. Fixes #2878
* | Merge pull request #2872 from RyanDwyer/cursor-rebaseLibravatar Drew DeVault2018-10-20
|\ \ | | | | | | Introduce cursor_rebase
| * | Introduce cursor_rebaseLibravatar Ryan Dwyer2018-10-19
| | | | | | | | | | | | | | | This function "rebases" the cursor on top of whatever is underneath it, without triggering any focus changes.
* | | Merge pull request #2885 from RyanDwyer/fix-tiling-drag-crashLibravatar Drew DeVault2018-10-20
|\ \ \ | | | | | | | | Fix crash when ending tiling drag
| * | | Fix crash when ending tiling dragLibravatar Ryan Dwyer2018-10-20
| | |/ | |/| | | | | | | | | | | | | | | | If the container being dragged has a parent that needs to be reaped, it must be reaped after we've reinserted the dragging container into the tree. During reaping, handle_seat_node_destroy tries to refocus the dragging container which isn't possible while it's detached.
* | | Merge pull request #2884 from c-edw/feature/2867_FixScalingParameterLibravatar Drew DeVault2018-10-20
|\ \ \ | |/ / |/| | Prevent overriding background mode after it's been set.
| * | Change initial background mode before arg parse.Libravatar Connor E2018-10-19
|/ /
* | Merge pull request #2883 from ponkyh/missing-stdlibLibravatar emersion2018-10-19
|\ \ | |/ |/| missing headers for swaybar/input.c
| * missing headers for swaybar/input.cLibravatar ossi.ahosalmi2018-10-19
|/
* Merge pull request #2882 from RyanDwyer/fix-mouse-warp-logicLibravatar Drew DeVault2018-10-19
|\ | | | | Fix logic used for mouse_warping output
| * Fix logic used for mouse_warping outputLibravatar Ryan Dwyer2018-10-19
|/ | | | | Turns out we don't need to store the previous focus, and it should be based on which output the cursor was in.
* Merge pull request #2875 from RedSoxFan/input-device-bindingsLibravatar Drew DeVault2018-10-19
|\ | | | | cmd_bind{sym,code}: Implement per-device bindings
| * cmd_bind{sym,code}: Implement per-device bindingsLibravatar Brian Ashworth2018-10-18
| | | | | | | | | | bindsym --input-device=<identifier> ... bindcode --input-device=<identifier> ...
* | Merge pull request #2877 from RyanDwyer/warp-on-workspace-switchLibravatar Drew DeVault2018-10-19
|\ \ | |/ |/| Consider cursor warp when switching workspaces
| * Consider cursor warp when switching workspacesLibravatar Ryan Dwyer2018-10-19
|/ | | | | | | | | Fixes a regression introduced in 24a90e5d86441fc345356eb3767e5a6880dcedbd. consider_warp_to_focus has been renamed to seat_consider_warp_to_focus, moved to seat.c and made public. It is now called when switching workspaces via `workspace <ws>`.
* Merge pull request #2874 from ianyfan/swaybarLibravatar Brian Ashworth2018-10-18
|\ | | | | swaybar: separate input code to new file
| * swaybar: separate input code to new fileLibravatar Ian Fan2018-10-18
|/
* Merge pull request #2871 from RyanDwyer/untangle-cursor-warpLibravatar Drew DeVault2018-10-18
|\ | | | | Remove cursor warping from seat_set_focus
| * Remove cursor warping from seat_set_focusLibravatar Ryan Dwyer2018-10-18
|/ | | | | | | | | | | | Because cursor warping was the default behaviour in seat_set_focus, there may be cases where we may have been warping the cursor unintentionally. This patch removes cursor warping from seat_set_focus and only does it in the focus command. This is managed by a static function in focus.c. To know whether to warp or not, we need to know which node had focus previously. To keep track of this easily, seat->prev_focus has been introduced and is set to the previous in seat_set_focus.
* Merge pull request #2868 from emersion/xcursor-envLibravatar Drew DeVault2018-10-17
|\ | | | | Export XCURSOR_SIZE and XCURSOR_THEME
| * Export XCURSOR_SIZE and XCURSOR_THEMELibravatar emersion2018-10-17
|/ | | | | | | | These can be used by toolkits (currently Qt, libxcursor, glfw) to choose a default cursor theme and size. This backports this rootston commit: https://github.com/swaywm/wlroots/pull/1294/commits/3a181ab430997aaf03a75cbe3b79b0fc56ec96c3
* Merge pull request #2858 from RyanDwyer/fix-move-to-floating-wsLibravatar Drew DeVault2018-10-17
|\ | | | | Fix moving tiled containers to workspaces which only have floating views
| * Fix moving tiled containers to workspaces which only have floating viewsLibravatar Ryan Dwyer2018-10-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Make a workspace which only contains floating views * Switch to another workspace and create a tiled view * Move the tiled view to the workspace with `move container to workspace N` The container would be added as a sibling to the floating view, which makes the container floating while having the geometry of a tiled container. This changes it so it only looks for tiled containers in the workspace with a fallback to the workspace itself.
* | Merge pull request #2864 from sghctoma/freebsd-fixesLibravatar Drew DeVault2018-10-17
|\ \ | | | | | | FreeBSD fixes
| * | Set sysconfdir to /etc only if prefix is /usrLibravatar sghctoma2018-10-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR #2855 basically hardcodes the config file path to /etc, which is a problem on e.g. FreeBSD, where the expected path for config files of non-base software is '/usr/local/etc'. Meson sets sysconfdir to '/etc' explicitly only when prefix is '/usr', so it is still possible to use '/usr/local' as prefix, and install the config files under '/usr/local/etc'. This commit allows to do that by setting sysconfdir based on the value of prefix.
| * | Increase _POSIX_C_SOURCE to 200112LLibravatar sghctoma2018-10-17
| |/ | | | | | | | | CLOCK_MONOTONIC appeared in IEEE Std. 1003.1-200x, it was not part of POSIX.1b (the 1993 version), and FreeBSD treats it accordingly.
* | Merge pull request #2861 from RyanDwyer/fix-empty-workspace-crashesLibravatar Drew DeVault2018-10-17
|\ \ | | | | | | Fix crashes when running certain commands on an empty workspace
| * | Fix crashes when running certain commands on an empty workspaceLibravatar Ryan Dwyer2018-10-17
| |/ | | | | | | | | This fixes crashes when running the border, mark, unmark and title_format commands on an empty workspace.
* | Merge pull request #2820 from Emantor/fix-mouse-warping-containerLibravatar Drew DeVault2018-10-17
|\ \ | | | | | | Fix mouse warping container
| * | view: rewarp cursor during view_unmapLibravatar Rouven Czerwinski2018-10-16
| | | | | | | | | | | | | | | | | | If the cursor is warped during the destruction of the workspace, we end up in the wrong position. Warp the cursor after arrange_workspace() so we end up in the correct position.