summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2018-10-20Merge pull request #2901 from ianyfan/swaybar1.0-beta.1Furkan Sahin-7/+10
swaybar: render with minimum height, nominally text height
2018-10-20swaybar: render with minimum height, nominally text heightFurkan Sahin-7/+10
2018-10-20Merge pull request #2900 from Hi-Angel/masterFurkan Sahin-0/+28
A script to make inactive windows transparent
2018-10-20A script to make inactive windows transparentFurkan Sahin-0/+28
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>
2018-10-20Merge pull request #2896 from RyanDwyer/abort-proprietaryFurkan Sahin-7/+28
Abort if proprietary drivers are in use
2018-10-21Abort if proprietary drivers are in useFurkan Sahin-7/+28
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.
2018-10-20Merge pull request #2895 from RyanDwyer/fix-popup-damageFurkan Sahin-4/+10
Fix popup damage issues when toplevel and/or popup uses geometry
2018-10-20Merge pull request #2888 from RyanDwyer/remove-raise-floatingFurkan Sahin-42/+4
Remove raise_floating directive
2018-10-20Fix popup damage issues when toplevel and/or popup uses geometryFurkan Sahin-4/+10
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).
2018-10-20Merge pull request #2887 from RyanDwyer/bar-overlayFurkan Sahin-1/+1
Put swaybar in overlay layer when using mode hide
2018-10-20Merge pull request #2890 from mihaicmn/create-default-seatFurkan Sahin-11/+5
Fix crash when defaut seat is not created
2018-10-20Fix crash when defaut seat is not createdFurkan Sahin-11/+5
Function input_manager_get_default_seat should always return a seat.
2018-10-20Remove raise_floating directiveFurkan Sahin-42/+4
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.
2018-10-20Put swaybar in overlay layer when using mode hideFurkan Sahin-1/+1
This allows the bar to render over fullscreen views.
2018-10-20Merge pull request #2870 from RyanDwyer/refactor-input-managerFurkan Sahin-149/+116
Minor refactor of input manager
2018-10-20Merge pull request #2886 from RyanDwyer/fix-headless-unmap-crashFurkan Sahin-3/+12
Fix crash when view unmaps while no outputs connected
2018-10-20Merge pull request #2879 from Emantor/fix/swaybar_positionFurkan Sahin-7/+3
swaybar: disallow left and right position and print error on default
2018-10-20Merge pull request #2872 from RyanDwyer/cursor-rebaseFurkan Sahin-51/+78
Introduce cursor_rebase
2018-10-20Fix crash when view unmaps while no outputs connectedFurkan Sahin-3/+12
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.
2018-10-20Merge pull request #2885 from RyanDwyer/fix-tiling-drag-crashFurkan Sahin-3/+4
Fix crash when ending tiling drag
2018-10-20Merge pull request #2884 from c-edw/feature/2867_FixScalingParameterFurkan Sahin-2/+1
Prevent overriding background mode after it's been set.
2018-10-20Fix crash when ending tiling dragFurkan Sahin-3/+4
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.
2018-10-19commands/bar: remove left and right from allowed positionsFurkan Sahin-1/+1
"left" and "right" are not allowed positions for swaybar, remove them.
2018-10-19Change initial background mode before arg parse.Furkan Sahin-2/+1
2018-10-19Merge pull request #2883 from ponkyh/missing-stdlibFurkan Sahin-0/+1
missing headers for swaybar/input.c
2018-10-19missing headers for swaybar/input.cFurkan Sahin-0/+1
2018-10-19Merge pull request #2882 from RyanDwyer/fix-mouse-warp-logicFurkan Sahin-6/+9
Fix logic used for mouse_warping output
2018-10-19Fix logic used for mouse_warping outputFurkan Sahin-6/+9
Turns out we don't need to store the previous focus, and it should be based on which output the cursor was in.
2018-10-19Merge pull request #2875 from RedSoxFan/input-device-bindingsFurkan Sahin-36/+77
cmd_bind{sym,code}: Implement per-device bindings
2018-10-19swaybar: disallow left and right position and print error on defaultFurkan Sahin-6/+2
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
2018-10-19Merge pull request #2877 from RyanDwyer/warp-on-workspace-switchFurkan Sahin-24/+27
Consider cursor warp when switching workspaces
2018-10-19Consider cursor warp when switching workspacesFurkan Sahin-24/+27
Fixes a regression introduced in 7ad3daaabef750af13acc109250aafc4b4852b8f. 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>`.
2018-10-18Merge pull request #2874 from ianyfan/swaybarFurkan Sahin-316/+340
swaybar: separate input code to new file
2018-10-18cmd_bind{sym,code}: Implement per-device bindingsFurkan Sahin-36/+77
bindsym --input-device=<identifier> ... bindcode --input-device=<identifier> ...
2018-10-19Introduce cursor_rebaseFurkan Sahin-51/+78
This function "rebases" the cursor on top of whatever is underneath it, without triggering any focus changes.
2018-10-18Merge pull request #2871 from RyanDwyer/untangle-cursor-warpFurkan Sahin-38/+34
Remove cursor warping from seat_set_focus
2018-10-18Remove cursor warping from seat_set_focusFurkan Sahin-38/+34
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.
2018-10-18Minor refactor of input managerFurkan Sahin-149/+116
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).
2018-10-17Merge pull request #2868 from emersion/xcursor-envFurkan Sahin-2/+13
Export XCURSOR_SIZE and XCURSOR_THEME
2018-10-17swaybar: separate input code to new fileFurkan Sahin-316/+340
2018-10-17Export XCURSOR_SIZE and XCURSOR_THEMEFurkan Sahin-2/+13
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
2018-10-17Merge pull request #2858 from RyanDwyer/fix-move-to-floating-wsFurkan Sahin-1/+2
Fix moving tiled containers to workspaces which only have floating views
2018-10-17Merge pull request #2864 from sghctoma/freebsd-fixesFurkan Sahin-3/+16
FreeBSD fixes
2018-10-17Merge pull request #2861 from RyanDwyer/fix-empty-workspace-crashesFurkan Sahin-4/+4
Fix crashes when running certain commands on an empty workspace
2018-10-17Merge pull request #2820 from Emantor/fix-mouse-warping-containerFurkan Sahin-68/+102
Fix mouse warping container
2018-10-17Merge pull request #2862 from SpeedJack/fix-stringop-overflowFurkan Sahin-1/+1
Fix overflow in strcpy
2018-10-17Set sysconfdir to /etc only if prefix is /usrFurkan Sahin-2/+15
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.
2018-10-17Fix stringop-overflow warningsFurkan Sahin-1/+1
2018-10-17Fix crashes when running certain commands on an empty workspaceFurkan Sahin-4/+4
This fixes crashes when running the border, mark, unmark and title_format commands on an empty workspace.
2018-10-17Increase _POSIX_C_SOURCE to 200112LFurkan Sahin-1/+1
CLOCK_MONOTONIC appeared in IEEE Std. 1003.1-200x, it was not part of POSIX.1b (the 1993 version), and FreeBSD treats it accordingly.