2153 Commits (59c94887018bdfa578c4371c4275061ca6e71b3e)

Author SHA1 Message Date
Drew DeVault b6b674fd76
Merge pull request #1657 from emersion/render-fixes
7 years ago
emersion 681f38c878
Fix segfault on xwayland unmanaged view unmap
7 years ago
emersion 6c9d67b105
Handle set_cursor requests from clients
7 years ago
Drew DeVault 01af343912 Destroy empty workspaces when moving away
7 years ago
Drew DeVault 69eb021767 Add default_orientation command
7 years ago
emersion 28cb412b0d
Unify initial xwayland view mapping with map handler
7 years ago
emersion 981827ca42
Cleanup and remove global renderer reference
7 years ago
Drew DeVault 2d46050281 Fix crash when override redirect views close
7 years ago
Drew DeVault e62cc0ac26 Finish porting over workspace_next_name
7 years ago
Drew DeVault 00d450e554 Use output coords for layer surfaces
7 years ago
Drew DeVault d6acb3d86c Set WAYLAND_DISPLAY earlier in startup
7 years ago
Drew DeVault f26ecd9f58 Merge remote-tracking branch 'origin/wlroots' into swaybar-layers
7 years ago
Tony Crisci 8f490d7d2d Fix oversights from previous pull request
7 years ago
Tony Crisci dc8c9fbeb6 Revert "Merge pull request #1653 from swaywm/revert-1647-refactor-tree"
7 years ago
Drew DeVault d0c7f66e95
Revert "Refactor tree"
7 years ago
Drew DeVault 6b7841b11f
Merge pull request #1647 from acrisci/refactor-tree
7 years ago
Tony Crisci 2778edef97 arrange windows
7 years ago
Tony Crisci 92c58b1e63 rename container_for_each_descendent
7 years ago
Drew DeVault dbda7bfbed Move declaration into loop
7 years ago
Drew DeVault ddc09940b1 Exit ipc_get_workspace_callback early
7 years ago
Drew DeVault 8efee109ad Implement modes
7 years ago
Drew DeVault 741424c4e7 Clean up imported bar commands
7 years ago
Drew DeVault 849c3515ab Use statically allocated text buffer
7 years ago
Drew DeVault c91adbd188 Fix failure to rearrange output in some cases
7 years ago
Drew DeVault f3fbf19312 Do some small cleanup
7 years ago
Drew DeVault 5f5076baff Call arrange_windows on layer destroy
7 years ago
Drew DeVault 8b5b72c576 Restart swaybar on config reload
7 years ago
Drew DeVault 2e84f21ab7 Terminate swaybar when freeing bar config
7 years ago
Drew DeVault 2719ddfe5e Spawn swaybars when outputs are added
7 years ago
Drew DeVault 5c9cdbcdd2 Add swaybg_command
7 years ago
Drew DeVault 569b2bfd5d Move bar config into its own file
7 years ago
Drew DeVault bf7a4cd0eb Add bar configuration commands
7 years ago
Drew DeVault 6836074fed Implement enough IPC for swaybar to work
7 years ago
Drew DeVault a76829f375 Some layer shell fixes
7 years ago
Scott Anderson c8e7437b82 Clear buffer after beginning renderer
7 years ago
Tony Crisci 4c394a0e9e address feedback
7 years ago
Tony Crisci 4ec8bf4cee 80col
7 years ago
Tony Crisci 62d1b4cb96 fix container_get_in_direction name
7 years ago
Tony Crisci e5491bf498 rename container destroy func
7 years ago
Tony Crisci ed2cedb544 rename layout init
7 years ago
Tony Crisci eca029f218 more renaming things
7 years ago
Tony Crisci b90099b4b7 rename container functions
7 years ago
Drew DeVault 941ca5c8fd Maximize xdg shell surfaces on creation
7 years ago
Tony Crisci 83d09cf594 remove swayc_t typedef
7 years ago
Tony Crisci 874f009866 move tree includes to their own directory
7 years ago
Drew DeVault 8d6bce02af Address review feedback
7 years ago
Drew DeVault 68cfa7ef67 Render layer surfaces and respect exclusive zone
7 years ago
Drew DeVault 0c8a64942e Add initial layer shell skeleton
7 years ago
Drew DeVault 1e604f3e35 Update input events per swaywm/wlroots#765
7 years ago
Drew DeVault 53df5889d5 Fix lingering xdg shell issues
7 years ago
Drew DeVault cbb2e3308e Update API to match latest wlroots
7 years ago
emersion 01beee5826
Update wlroots API
7 years ago
emersion 1004915796
Update rendering code for wlroots matrix redesign
7 years ago
emersion 4ab5506064
ipc: add output modes
7 years ago
Dominique Martinet 95963e4a1f xwayland: do not send surface configure when no width/height
7 years ago
Tony Crisci 02804584e5 ipc new window event
7 years ago
Drew DeVault 3c80498891 Utilize wlr_xwayland_surface_is_unmanaged
7 years ago
Tony Crisci ad879c99e0 ipc show focused container
7 years ago
Drew DeVault 4b781356a4 Fix wlr_render_with_matrix call
7 years ago
Drew DeVault 265378270a Revert "Multiple output coords by scale"
7 years ago
Drew DeVault 94f8bdf081 Multiple output coords by scale
7 years ago
Drew DeVault 8ad26c8afd Send surface enter/leave events
7 years ago
Drew DeVault 61c1c3e7af Use focus for new windows xwayland/wl_shell
7 years ago
Drew DeVault 669f91b991 Document updates to the output command
7 years ago
Tony Crisci 1cca3965f3 static bfs queue
7 years ago
Tony Crisci 2154b7c7d6 add config handlers
7 years ago
Tony Crisci 7262bf655f remove checks for command handlers
7 years ago
Tony Crisci 5b219a1598 separate config directives and commands
7 years ago
Tony Crisci ac8269d536 take seat param for handle_command and rename
7 years ago
Tony Crisci 66d1e0b313 basic layout command
7 years ago
Tony Crisci bcb870bcf2 bug: fix crash on focus up
7 years ago
Tony Crisci 23e9f5dc35 use wl_container_of() in output destroy callback
7 years ago
Tony Crisci 4b3aa59b8b rename new_input listener on input-manager
7 years ago
Tony Crisci 316effd7b1 make handle_output_destroy() static
7 years ago
Tony Crisci 4c4cc9c999 remove old comments
7 years ago
Tony Crisci b88f06e70a bugfix: get right layout box for rendering views
7 years ago
Tony Crisci 176d24f02d choose adjacent container between outputs
7 years ago
Tony Crisci fb37e80225 basic move focus in direction across outputs
7 years ago
Tony Crisci 80927985fb fix output rendering issue
7 years ago
Tony Crisci 7c089442c3 use box projection function
7 years ago
Tony Crisci 9510a20fcd arrange windows after output add
7 years ago
Tony Crisci a3ae67af4e basic focus in direction
7 years ago
Tony Crisci 52670c636c basic focus (without direction)
7 years ago
Tony Crisci 780d9fe1e3 cleanup layout.c
7 years ago
Tony Crisci 083e11ac7c fix build for latest api
7 years ago
Tony Crisci c6cb87be19 output damage fix
7 years ago
Tony Crisci 7dfbf06de9 output destroy
7 years ago
Tony Crisci 06c71f115b input device destroy
7 years ago
Tony Crisci 946d9459c5 get swayc in direction
7 years ago
Tony Crisci 93084c9cf8 remove old focus member
7 years ago
Tony Crisci ce3a1b3922 properly pick next focus
7 years ago
Tony Crisci 145b4fdf58 use bfs iterator to collect focus stack
7 years ago
Tony Crisci 095ddb1561 fix build for output damage
7 years ago
Tony Crisci a7d49da239 separate seat get focus and seat get focus inactive
7 years ago
Tony Crisci 7d8f2c52aa make index_child static
7 years ago
Tony Crisci 5151502298 basic focus overhaul
7 years ago
Drew DeVault b28602aa74 Implement workspaces
7 years ago
Drew DeVault a686fb07ae Execute pending commands when Xwayland is ready
7 years ago
Dominique Martinet 6259831d31 commands/reload: remove unimplemented 'load_swaybars' call
7 years ago
Dominique Martinet 5766f426aa config reload: destroy old seat when removed from config
7 years ago
Dominique Martinet 869be4378d commands: add 'reload' command
7 years ago
emersion 0c58673c6a
Merge pull request #1574 from acrisci/config-refactor
7 years ago
Tony Crisci beb3805cf0 dont allow kill command in config
7 years ago
Tony Crisci 38a1628a76 clear handler context before ipc command
7 years ago
Tony Crisci c3fc0d446f cmd-kill: use sway_assert when no container
7 years ago
Tony Crisci 5505d84ac2 criteria cleanup
7 years ago
Drew DeVault a6bc46eea9 Remove sway/old/
7 years ago
Drew DeVault c933781fac
Merge pull request #1570 from acrisci/config-references
7 years ago
Tony Crisci 6b03b1205d implement property criteria
7 years ago
Tony Crisci 0e3eae4baa view interface
7 years ago
Tony Crisci 1156523ccf run all commands with focused container context
7 years ago
Tony Crisci 6a1d71b8b8 basic command criteria
7 years ago
Tony Crisci c353e01c85 add kill command
7 years ago
Tony Crisci cc3c713889 seat config handler context
7 years ago
Tony Crisci 9e0595f26b input config handler context
7 years ago
Tony Crisci 2bf76509f8 update for new wlr-keyboard modifiers
7 years ago
Tony Crisci 9f54cd8935 copy config references for input and seat
7 years ago
Tony Crisci ddc49ede46 xwm handle map and unmap
7 years ago
Tony Crisci 83ddd2d9db render override redirect
7 years ago
Tony Crisci 2ce1d8d6cd render wl-shell and xwayland views
7 years ago
Tony Crisci 619254db76 subsurface input
7 years ago
Tony Crisci 76ce629198 xdg-popups
7 years ago
Tony Crisci 4c8c9b29e4 render xdg surface
7 years ago
Dominique Martinet 67985e9031 sway: change all sway_log to wlr_log
7 years ago
Dominique Martinet c83900593d config: add 'set' command
7 years ago
Dominique Martinet 19ddb70a32 fixup free config use free_sway_binding
7 years ago
Dominique Martinet 9a326be7f8 config: leak sanitizer pass
7 years ago
Dominique Martinet f5b33cb4b6 fix typos in comments/messages; add shutting down message
7 years ago
Dominique Martinet 28b8ea9f1e cmd_input: cleanup around current_input_config
7 years ago
Dominique Martinet afca73b6fc apply_input_config: restore previous `current_input_config`
7 years ago
Drew DeVault 91313d3847
Merge pull request #1539 from acrisci/bindings
7 years ago
Drew DeVault bc7011db3c
Merge pull request #1543 from emersion/output-config-by-identifier
7 years ago
Tony Crisci b01a53abfb Merge branch 'wlroots' into bindings
7 years ago
Tony Crisci 8b4eb5d7d1 cleanup bindings
7 years ago
Tony Crisci 50e791cadb binding release
7 years ago
Calvin Lee 7196f59db0 Consolidate WLR and Sway logging
7 years ago
emersion ead3f1e676
Allow to configure outputs by their identifier
7 years ago
Tony Crisci bd3ca70e3d fix nitpicks
7 years ago
Tony Crisci 62b7ab3959 overwrite old bindings
7 years ago
Tony Crisci 0b8481f41a fix keyboard_execute_bindcode
7 years ago
Tony Crisci 8d567cd062 bindcode
7 years ago
Tony Crisci 27cd633b40 run compositor bindings last
7 years ago
Tony Crisci ccaedf5b15 run binding command
7 years ago
emersion 21c61f1c09
Refactor output command, add output enable
7 years ago
Tony Crisci d941246d58 match user bindsym
7 years ago
Tony Crisci daad222337 compositor bindings
7 years ago
Tony Crisci eea80e7276 keyboard translate keysyms
7 years ago
Tony Crisci ba69f06695 binding config
7 years ago
Drew DeVault e1c5adc918
Merge pull request #1535 from martinetd/libinput
7 years ago
Tony Crisci 2f7e435c6f desktop: use wlr-surface commit
7 years ago
Dominique Martinet f3d8df45fc seat_configure_pointer: apply libinput config
7 years ago
Tony Crisci 63f7fb9517 cleanup
7 years ago
Tony Crisci f35575f71d handle keymap not found
7 years ago
Tony Crisci 39e7871a85 dont set cursor image on motion
7 years ago
Tony Crisci 5c036a3eac error on not enough input/seat args for cmd
7 years ago
Tony Crisci 730af5e721 use snprintf to get identifier len
7 years ago
Tony Crisci 9df4a2c7a8 document fallback seat
7 years ago
Tony Crisci f2985000f3 ipc get_inputs
7 years ago
Tony Crisci a949d7de5a Merge branch 'wlroots' into feature/input
7 years ago
Tony Crisci a87960711a Merge branch 'feature/input' of github.com:acrisci/sway into feature/input
7 years ago
Tony Crisci 4c436a1a6f remove assumption of one device per identifier
7 years ago
Tony Crisci 483ede0146 improve xkb command logging
7 years ago
Drew DeVault eb4f66f785
Merge pull request #1526 from emersion/fractional-output-scale
7 years ago
emersion c815d6d1a9
Add support for fractional output scale
7 years ago
emersion 4e2ab53119
Add IPC get_outputs
7 years ago
Tony Crisci 41e71d950a remove verbose commit logging
7 years ago
Drew DeVault b0291d126f Fix compile error
7 years ago
Tony Crisci a27736adcd cleanup input-manager
7 years ago
Tony Crisci 88bcd43ebf seat fallback config
7 years ago
Tony Crisci e27eff8a29 send keyboard enter on keyboard configuration
7 years ago
Tony Crisci c41801b75e set keyboard config at runtime
7 years ago
Tony Crisci 0256cd1473 fix keyboard hotplugging
7 years ago
Tony Crisci 9e4fc7253e get device id correctly
7 years ago
Tony Crisci b0ed1ad28d device add/remove logging
7 years ago
Tony Crisci 24e2406429 strip whitespace for device id
7 years ago
Tony Crisci b8261ab24b expect exactly one xkb arg
7 years ago
Tony Crisci f16aa3c0ad rename config apply cmds
7 years ago
Tony Crisci f4a5a0ead4 put seat and input config in their own files
7 years ago
Tony Crisci 2624f55f8d input and seat command docs
7 years ago
Tony Crisci b3a0309f26 fix logging issue for new wlroots
7 years ago
Tony Crisci 9fa70ce426 Merge branch 'wlroots' into feature/input
7 years ago
Tony Crisci 030fcb64da keyboard cleanup
7 years ago
Tony Crisci 9eecbb5d8a xkb config
7 years ago
Tony Crisci 92fef27eaa basic configuration
7 years ago
emersion cba592b3d2
Use strtol instead of atoi in output command
7 years ago
emersion 9254c5a93f
Fail if unknown output subcommand
7 years ago
emersion 4d389f8b65
Replace refresh_rate and position by mode in output command
7 years ago
emersion ec2fd6e5c0
Handle output remove
7 years ago
emersion a4619e98c4
Update output containers on output layout change
7 years ago
emersion d293c42942
Update output container box in event handler
7 years ago
emersion c7abb77f22
Listen to output layout change
7 years ago
emersion f3d880b0ec
Add scale and transform events to sway_output
7 years ago
Tony Crisci c173d30b92 seat configuration
7 years ago
Tony Crisci 538903bc5a config cleanup
7 years ago
Tony Crisci 163edc5a90 sway input device
7 years ago
emersion 475a0132a9
Use custom modes when output has no mode
7 years ago
Tony Crisci 462a451328 input config
7 years ago
Tony Crisci 9ae906cd37 sway pointer
7 years ago
Tony Crisci 4d449743c5 keyboard remove
7 years ago
Tony Crisci 5e9ee32d63 set focus on new window
7 years ago
Tony Crisci 609f63934a basic keyboard
7 years ago
Tony Crisci 6339c4f161 remove pointer device
7 years ago
Tony Crisci 21626e8153 seat focus on button press
7 years ago
Tony Crisci 0fdecb4d3a Merge branch 'wlroots' into feature/input
7 years ago
Tony Crisci 5f644d78fc button and axis events
7 years ago
Tony Crisci e69b052a6d working pointer motion
7 years ago
Tony Crisci 9333a7eb53 working xcursor
7 years ago
Tony Crisci 7c67bea942 sway xcursor manager
7 years ago
emersion 4a14aa9ad9
Remove output from layout
7 years ago
Tony Crisci d76e745b73 input include directory
7 years ago
Tony Crisci ec7fc42a00 sway cursor
7 years ago
Tony Crisci f6f63f60d6 basic input manager and seat
7 years ago
Tony Crisci 21ce20885a rename input to input-manager
7 years ago
emersion 8764dc26c6
Add new_output_config, update root container size on output hotplug
7 years ago
emersion 41dd291612
Use wlr_output_layout_get_box
7 years ago
emersion 7c5d8c553c
Simplify free calls, use wlr_output_set_scale
7 years ago
emersion c25ad5e7c4
Merge branch 'wlroots' into output-config
7 years ago
Drew DeVault ab36a5a4d7
Merge pull request #1501 from emersion/command-include
7 years ago
Tony Crisci 338a0399f8 input skeleton
7 years ago
Tony Crisci 47f268d8fa view activate
7 years ago
emersion 68ae989cee
Init, merge output config params, use wlr_output_layout
7 years ago
emersion aaae59026f
Add output config
7 years ago
emersion 9aeda82477
Add include command
7 years ago
Drew DeVault 3fe64482bb
Merge pull request #1498 from emersion/config
7 years ago
Tony Crisci 8bdf3b1b02 view set position
7 years ago
emersion 90f7f1a0e6
Add minimal config subsystem
7 years ago
emersion 514c819ff9
Add exec and exec_always commands
7 years ago
Tony Crisci 0896b68675 Merge branch 'wlroots' into feature/xwayland
7 years ago
Tony Crisci 1870f116ba xwayland shell
7 years ago
Tony Crisci 9afcfd44c4 wl-shell: class instead of app_id
7 years ago
Tony Crisci 6a694853e5 wl-shell: dimensions to size
7 years ago
Tony Crisci 823f6ee122 Merge branch 'wlroots' into feature/wl-shell
7 years ago
Tony Crisci 8239067da4 basic wl-shell
7 years ago
Tony Crisci 802e7392f8 use "size" instead of "dimensions"
7 years ago
Tony Crisci 59db38ce17 sway wl_shell
7 years ago
Drew DeVault b6f4120afc
Merge pull request #1489 from acrisci/feature/basic-get-tree
7 years ago
Tony Crisci 9220225f1d remove unused timespec_to_msec
7 years ago
Tony Crisci 421f49fe03 basic get_tree
7 years ago
Tony Crisci 7152075681 log env after ipc init
7 years ago
Drew DeVault 1cfebe827a
Merge pull request #1479 from acrisci/feature/meson-build
7 years ago
Tony Crisci 31e44c01b4 send callbacks with send_frame_done
7 years ago
Tony Crisci 517af37cc9 remove relevant CMakeLists.txt
7 years ago
Tony Crisci 2f3633433e add meson install files
7 years ago
Tony Crisci cc310cffb0 meson: common static library
7 years ago
Tony Crisci 88cc7e3178 use meson subdirectories
7 years ago
Drew DeVault 974d510585
Merge pull request #1477 from acrisci/bug/set-mode
7 years ago
Tony Crisci 9696f50eba remove nvidia support claim
7 years ago
Tony Crisci 6993a76232 set mode on output
7 years ago
Drew DeVault 8caabe59c2 Handle view destruction properly
7 years ago
Drew DeVault a57d462926 Fix rendering issues, wire up some xdg listeners
7 years ago
Drew DeVault ce1936bc65 Arrange windows on desktop
7 years ago
Drew DeVault b379b40071 Invoke command handlers once parsed
7 years ago
Drew DeVault 7753a0ec75 Wire up IPC server
7 years ago
Drew DeVault d7d21bb0f8 Add initial command subsystem (untested)
7 years ago
Drew DeVault 4ca1e77fdb Add views to tree and render them
7 years ago
Drew DeVault aeda2e077f Add workspace to outputs
7 years ago
Dominique Martinet 6c1cd82e32 xdg_shell_v6: add _POSIX_C_SOURCE define for struct timespec
7 years ago
Dominique Martinet b8f8de27b8 wlr_data_device header update
7 years ago
Drew DeVault db4fb1c85c Add outputs to the tree
7 years ago
Drew DeVault 733993a651 Move everything to sway/old/
7 years ago
Drew DeVault 0c8491f7d0 Initial (awful) pass on xdg shell support
7 years ago
Drew DeVault 1efd5f819f Wire up output frame loop
7 years ago
Drew DeVault 7eafcc75f6 Initialize outputs from backend and add to tree
7 years ago
Drew DeVault 0ba6554c4f Move sway's internal tree code to sway/tree/
7 years ago
Drew DeVault 0f45fad18c Establish sway input submodule
7 years ago
Drew DeVault 7c448b4081 Fire up the wlroots backend and run the event loop
7 years ago
Drew DeVault 6edc32848f Find and link to wlroots
7 years ago
Dan Robertson 88d042ec49
nvidia: Validate the nvidia_drm module options
7 years ago
Mykyta Holubakha 22906f7fce
handlers: preserve parent pointer value
7 years ago
Drew DeVault b16dbf6d64 Fix crash closing fullscreen windows in container
7 years ago
David Hurst ee15068a8f Add scale to merge_output_config
7 years ago
Drew DeVault 2216e830be Merge pull request #1398 from johalun/freebsd-fix
7 years ago
madblobfish 93fe8ae705 Various manpage edits
7 years ago
Johannes Lundberg 5a63f0f57b Fix build on FreeBSD adjusting/removing _XOPEN_SOURCE declaration.
7 years ago
David Zero 03f8a8ae05 Update man 5 page
7 years ago
Drew DeVault a82aa2a20d Fix use-after free introduced by cbe7364
7 years ago
Drew DeVault 6271abd644 Fix #1291
7 years ago
Drew DeVault eb7b920303 Document new criteria
7 years ago
Drew DeVault a6d5cad309 Document swaylock -f, scratchpad show
7 years ago
Drew DeVault 6d83a59b46 Merge pull request #1263 from nyorain/master
7 years ago
Drew DeVault 5ecedc7199 Remove destroyed views from scratchpad
7 years ago
Drew DeVault 46e5aeac50 Fix crash on swaygrab with scratchpad populated
7 years ago
lbonn 61005c3bda ipc/window-event: fill "container" on close events
7 years ago
lbonn b2d4caf6c3 commands: fail when criteria match nothing
7 years ago
lbonn 514eed7e4b commands: allow criterion values to be unquoted
7 years ago
lbonn d879e5b15d commands: implement 3 missing criteria from i3
7 years ago
lbonn fd7c4bacbd ipc/tree: populate `focus` fields
7 years ago
lbonn 661625b29e ipc/tree: output mandatory fields for all nodes
7 years ago
lbonn e7df811f10 Security config: skip hidden files
7 years ago
lbonn a7e1a0eea9 Make `workspace_next_name` work with spaces
7 years ago
lbonn 6197fff0b4 Fix move to named workspaces
7 years ago
Drew DeVault c850d433a7 Merge pull request #1383 from kasicka/macarena
7 years ago
Zuzana Svetlikova ef0c51b2f3 Fix github links in doc
7 years ago
Calvin Lee 419a1087ac Clean up output command
7 years ago
Jonas Karlsson 05aeccfca0 Fix issue #1287
7 years ago
azarus 5987f19eb2 Check for Raspberry Pi
7 years ago
Hummer12007 6f355c6ff7 Raise max ipc message size limit to 256 MB
7 years ago
Drew DeVault 3553fa0a74 One more
7 years ago
Drew DeVault 03af90d302 Clean up fallthrough issues
7 years ago
Ilya Lukyanov 1c5a96c112
Implement nonblocking IO in IPC server
7 years ago
Calvin Lee 3c93e2cf1b Prevent race condition in the kill command
7 years ago
Drew DeVault 14eeeed7e0 Remove test clipboard code
8 years ago
Scott Anderson c29e5bbde8 Use WLC v2 pointer interface
8 years ago
nyorain 1cca551c6f Add get_clipbard ipc errors; Adapt swaymsg
8 years ago
nyorain 20888fbb5e Close fd in clipboard request
8 years ago
nyorain 727215c907 Add timeout; Fix receive loop & style issues
8 years ago
Johannes Lundberg a3c07273ba Add secucity config for FreeBSD.
8 years ago
Tobias Blass 566863ba5d fix use-after-free bug
8 years ago
nyorain f0463dab32 Signal base64 in clipboard type; Reimplement loop
8 years ago
nyorain 1e894c1166 Handle x11 text atoms in get_clipboard ipc
8 years ago
nyorain c0f2acce4e Rework get_clipboard implementation
8 years ago
nyorain 42547cafb6 Fix/Simplify get_clipboard ipc-server impl
8 years ago
nyorain 02c75ebe37 Implement ipc get_clipboard
8 years ago
Drew DeVault 23a1e94402 Make asciidoc (and man pages) optional
8 years ago
Mykyta Holubakha 7d8a84b587
Do not add empty policies
8 years ago
Mykyta Holubakha 4f905ecb96
permit.c: check for NULL pointer dereference
8 years ago
nyorain 60fa626116 Add the 'clipboard' command to set the clipboard
8 years ago
Drew DeVault 298f56353e Merge branch 'master' into server-decoration
8 years ago
Drew DeVault 76fcfa1e7f Force focus on unmanaged views during pointer test
8 years ago
Drew DeVault d158e18308 Fix Firefox address bar thing
8 years ago
Calvin Lee 843ad38b3c Implement Tray Icons
8 years ago
johalun 7fef283044 FreeBSD fixes
8 years ago
Mykyta Holubakha 93cf21fb9a Terminate when both suid bit and filecaps are set
8 years ago
Mykyta Holubakha f736198c31 Initialise logging earlier
8 years ago
wdbw 264a9ee9d8 Add missing send-event mode to sway-input(5)
8 years ago
Josip Janzic 400998d6d2 Add mouse button bindings
8 years ago
Zandr Martin 51ce752ebf
document font command
8 years ago
Zandr Martin f65a88e68d
prevent crash when `layout auto` is missing args
8 years ago
Drew DeVault 816ceddcbd Set child border to background if not specified
8 years ago
Drew DeVault 02812a2e4d Support specifying fewer than 5 colors
8 years ago
Drew DeVault a5c07dde6a Implement KDE's server-side decoration protocol
8 years ago
Drew DeVault 537261f23f Fix handling of floating windows
8 years ago
Drew DeVault ffd0d020d6 Update sway(5)
8 years ago
Drew DeVault 51143a75af Implement no_focus
8 years ago
Sebastian Noack 173b338567 Add -DVERSION flag for release version numbers
8 years ago
Calvin Lee 0dc7e9f514 Fix typo in sway(5)
8 years ago
Tomáš Čech 974be01e83
explicitly ignore unused return value
8 years ago
Drew DeVault 94ad169eb6 Merge pull request #1181 from wasamasa/bugfix-initial-scratchpad-size
8 years ago
Drew DeVault 35603b2341 Merge pull request #1178 from 4e554c4c/fork
8 years ago
Vasilij Schneidermann 0f31323659 Use i3's dimensions for initial scratchpad views
8 years ago
Calvin Lee cee26500a8 Prevent sway from duplicating on a failed fork
8 years ago
Vasilij Schneidermann d4ac594264 Implement and document `move [to] scratchpad`
8 years ago
Jerzi Kaminsky 2ad8850398 Handle symlinks as IPC security targets
8 years ago
Jerzi Kaminsky bcf9338ce7 Add validate_ipc_target()
8 years ago
Jerzi Kaminsky bfb99235e3 Move get_feature_policy to sway/security.c
8 years ago
Jerzi Kaminsky b4357a8eb6 Rename get_policy to get_feature_policy
8 years ago
Jerzi Kaminsky cf5e764c7f Disambiguate get_*_policy() and get_*_policy_mask()
8 years ago
Jerzi Kaminsky 6079e6f7e5 Fix style in sway-bar(5) manpage
8 years ago
Jerzi Kaminsky b463fb8adc Remain compat with libinput < 1.7.0
8 years ago
Drew DeVault b3541d9dc5 Implement more thourough nvidia config check
8 years ago
Drew DeVault b036ad9b54 Downgrade nvidia proprietary driver warning
8 years ago
Drew DeVault 5d3a02a7c6 Merge branch 'master' into pretty-print-swaymsg
8 years ago
Drew DeVault 7fee555a46 Merge pull request #1150 from JerziKaminsky/cmake_find_libcap
8 years ago
Calvin Lee 154c6718c1 Add `-t get_marks` and use more i3-like marks
8 years ago
Scott Anderson 1b2cd93212 Removed explicitly setting file descriptors to -1
8 years ago
Drew DeVault 50a31a6c88 Fix dangling file descriptors (fixes #1152)
8 years ago
JerziKaminsky aa6bd85da1 Add libcap check to CMake
8 years ago
Scott Anderson 3a32be67ed Added designated initaliser, to prevent any possible problem with
8 years ago
Scott Anderson fe54a6725e Changed regular expressions to use PCRE for i3 compatibility
8 years ago
Calvin Lee 069d37f987 Improve criteria handling
8 years ago
Calvin Lee 2445d27960 Impliment i3-style marks
8 years ago
Drew DeVault ab7570d311 Update man page
8 years ago
Drew DeVault 60ce81e06a Add pretty printing to swaymsg
8 years ago
Jarkko Oranen 924ed6464c Prevent "move next" and "move prev" commands from crashing
8 years ago
Jarkko Oranen d7350915d9 The default layout of a workspace should follow the output
8 years ago
Zandr Martin 2d46fc5602
prevent fullscreen focus thievery
8 years ago
Zandr Martin baa17ec696
remove unnecessary todo item
8 years ago
Jarkko Oranen f6196b7e9a Fix off-by-one error when checking workspace_layout arguments
8 years ago
Jaanus Torp 8306b886e9 Allow also 444 for security file mode
8 years ago
Zandr Martin b507462d1c
Merge branch 'master' of git://github.com/SirCmpwn/sway into new-command-aliases
8 years ago
John Chen a0711d9c94 Fix trivial typo in sway.5.txt (right_ -> _right_)
8 years ago
Drew DeVault 9aed9d9359 UnGNUify the codebase
8 years ago
Drew DeVault 74d4f1bec9 Further indentation corrections
8 years ago
Zandr Martin 18450dd16a
deprecate new_window and new_float commands
8 years ago
Zandr Martin 8684b9ecca
fix workspace output assignment
8 years ago
Calvin Lee d47d3d78de Fix #1099: Allow spaces in worspace names
8 years ago
Calvin Lee 032907e9d2 Clarify move documentation for floating containers
8 years ago
Calvin Lee b35782bcad i3 feature support: Moving flotaing containers
8 years ago
Drew DeVault 407ebe9cd3 Move env logging to earlier than wlc_init
8 years ago
Drew DeVault 126ce571da Read configs from /etc/sway/security.d/*
8 years ago
Drew DeVault eabfb6c559 Add * policies and fix bug
8 years ago
Drew DeVault 1980a08358 Enforce new IPC policies
8 years ago
Drew DeVault b10721b89e Add initial support code for new IPC security
8 years ago
Drew DeVault 7dbecdde95 Revise IPC security configuration
8 years ago
Zandr Martin c6f971d108
use absolute view geometry to calculate position
8 years ago
Mykyta Holubakha 4eae9b33e8
xdg-positioner: log window placement
8 years ago
Mykyta Holubakha 006bd0bc3f
Handle xdg-positioner stuff
8 years ago
Drew DeVault b3c0aa3a9e Merge pull request #1055 from Hummer12007/positioner
8 years ago
Mykyta Holubakha 7520607b8d Properly place windows with xdg-positioner
8 years ago
Drew DeVault 7cc6f288d9 Merge pull request #1053 from Hummer12007/__focused__
8 years ago
Mykyta Holubakha 28278864b4 Support __focused__ as a valid criterion
8 years ago
Mykyta Holubakha d443bce6fe Display instance (if present) in nested layouts
8 years ago
Mykyta Holubakha e714fbcbec Add window instance support
8 years ago
Frantisek Fladung 33a709cae9 add hide_edge_borders smart to sway.5 manual
8 years ago
Mykyta Holubakha 138bcd0cfa Unset LD_LIBRARY_PATH, unless specified
8 years ago
wil a90dddea40 [fix] handle auto layout of empty container
8 years ago
wil 71b386964a replaced "bot" with "bottom" in auto layout commands
8 years ago
wil b74870f516 Improved behavior of insert/remove child in auto layouts
8 years ago
willakat 4c06a10004 Merge branch 'master' into master
8 years ago
Daniel Kessler eda4bad725 Add output wrapping
8 years ago
Drew DeVault c1e6cc3257 Merge pull request #1044 from ametisf/master
8 years ago
Frantisek Fladung c04819e8c0 Implement hide_edge_borders smart (like in i3 4.13)
8 years ago
Mykyta Holubakha d9ba61d7e9 Log capability dropping
8 years ago
Mykyta Holubakha ea1313d80d Keep CAP_SYS_PTRACE with suid binary
8 years ago
Drew DeVault 527c259d06 Fix #1008
8 years ago
willakat dc361fd9df Merge branch 'master' into master
8 years ago
wil 52f3a8df51 fixed up space-after-cast style issues
8 years ago
wil 07474a4fa7 reworked "layout auto*" star commands
8 years ago
Drew DeVault 7c636da8a3 Fix format error
8 years ago
wil 063c79874a Indent cleanups
8 years ago
wil d822150d83 [fix] Keep Clang happy
8 years ago
wil 2040c62da9 Merge branch 'master' of https://github.com/SirCmpwn/sway
8 years ago
wil f24ebd75fa Added mouse resize for auto layouts
8 years ago
wil 1f47c58d63 simplification of apply_auto_layout
8 years ago
wil 3c84250be8 [fix] resize should now preserve surrounding container's dimensions
8 years ago
wil f7269684d0 [fix] scale check to prevent un-necessary layouts was in the wrong place.
8 years ago
wil d99efb5f6f [fix] corner cases win nb_children < nb_master|nb_col
8 years ago
wil bd415029ba Moved auto_* layout functions from resize.c to layout.c
8 years ago
Hummer12007 d59af31256 Fix workspace layouts in json data
8 years ago
wil 704b2db050 Merge branch 'master' of https://github.com/willakat/sway
8 years ago
wil 97f70987d7 [fix] cleanups suggested by Sway community
8 years ago
wil a62048f15d changed "layout promote" command to "move first"
8 years ago
Drew DeVault 0412e95ba9 Document new layout command syntax
8 years ago
Drew DeVault c01b898398 Fix inline is_auto_layout
8 years ago
wil 15745abf0c [fix] cycle auto layouts backwards
8 years ago
wil 1b87193c3d Added "layout promote" command.
8 years ago
wil a0aa8d9780 cleanup in auto layouts
8 years ago
wil 2b0e3c212a [fix] move next/prev behavior for vert/horiz layout
8 years ago
wil 0ff9fe9a7a introduce next/prev as a direction for focus/move commands.
8 years ago
wil bc3dc97026 [fix] Handle auto layout resize with multiple slave groups
8 years ago
wil ed71e67d7e [fix] handle cases where nb_master > children->length in auto layout
8 years ago
wil 8b0073b195 Added "layout incnmaster|incncol" commands
8 years ago
wil 5425d0489f Handle resize in auto layouts
8 years ago
wil 97f7d47413 Added Awesome/Monad type "auto" layouts
8 years ago
Drew DeVault aab360bf2f Add redshift support
8 years ago
Aleksa Sarai 09259021ab
sway: extensions: make locking give back focus
8 years ago
Aleksa Sarai 29a535aae4
sway: extensions: only unlock if lock_surfaces.length == 0
8 years ago
Drew DeVault 36e48fcf8d Update default swaybar command
8 years ago
Nicolas Cornu 0f0bbbff4d Put floating views in center, fallback on top left
8 years ago
Drew DeVault 1172566d4e Change how security config is loaded
8 years ago
Drew DeVault 14d9200e4e Merge pull request #996 from woutershep/datadir
8 years ago
Wouter van Kesteren 09b9106550 Use CMAKE_INSTALL_FULL_DATA{,ROOT}DIR
8 years ago
Drew DeVault d859f825d3 Fix build error
8 years ago
Drew DeVault 63d96c1bb4 Fix indentation issues
8 years ago
Drew DeVault 10c8b73075 Handle calloc failures
8 years ago
Drew DeVault a2b9149656 Add remaining sway allocation failure handling
8 years ago
Drew DeVault 7784f1a905 Handle allocation failures in security code
8 years ago
Drew DeVault 31b002b6d5 Handle IPC server allocation failures
8 years ago
Drew DeVault 8cef81d6f2 Handle some more memory allocation failures
8 years ago
Drew DeVault d75a747a3d Handle config-related allocation failures
8 years ago
Drew DeVault 248df18c24 Handle allocation failure in commands
8 years ago
Drew DeVault 8691ff1b63 Handle border-related malloc failures
8 years ago
Drew DeVault 4c6c65e70c Handle malloc failures from read_line
8 years ago
Greg V da26d69cb1 Fix build on FreeBSD
8 years ago
Drew DeVault d93e53fd4b Use return value of write
8 years ago
Drew DeVault 979878d8af Decrement expected_len
8 years ago
Drew DeVault 1a509dcc29 Fix to sway-security(7)
8 years ago
Drew DeVault cdecf3c495 Drop restart command from sanity check
8 years ago
D.B 35b8d185ac fix layout switching (was broken because of workspace_layout)
8 years ago
D.B 4762bcb3b9 wrap some views under workspaces
8 years ago
D.B 6fb4b6737a add workspace_layout to container
8 years ago
Drew DeVault e7a764fdf4 Disallow everything by default
8 years ago
Drew DeVault 93d99f3712 Fix use-after-free
8 years ago
Drew DeVault d2d6fcd1ff Fix clang issues
8 years ago
Drew DeVault 8577095db7 Check for CAP_SYS_PTRACE
8 years ago
Drew DeVault d353da248b Add ipc connection feature policy controls
8 years ago
Drew DeVault 62dad7148f Enforce IPC security policy
8 years ago
Drew DeVault c8dc4925d1 Add IPC security policy command handlers
8 years ago
Drew DeVault e9e1a6a409 Add IPC policy to config
8 years ago
Drew DeVault 0a1b211e09 Drop -Denable-binding-event
8 years ago
Drew DeVault 25a4a85a59 Run config files through sed and install to /etc
8 years ago
Drew DeVault 751e6d2ab2 Clarify lock permission consequences
8 years ago
Drew DeVault 0c8dc0e6df Clarify that executable has to be a full path
8 years ago
Drew DeVault c61746a15b Soften up environment security
8 years ago
Drew DeVault a4e92ad272 Deal with LD_LIBRARY_PATH
8 years ago
Drew DeVault 1a143e601b Clarify when keyboard/mouse features work
8 years ago
Drew DeVault 4d312f753c Add docs on what features sway programs require
8 years ago
Drew DeVault 3dbeb9c35c Add sway-security(7)
8 years ago
Drew DeVault 10c2125040 Unset LD_PRELOAD on startup (before dropping root)
8 years ago
Drew DeVault 04fc10feeb Flesh out security_sanity_check
8 years ago
Drew DeVault 39cf9a82f7 Enforce command policies
8 years ago
Drew DeVault f23880b1fd Add support for command policies in config file
8 years ago
Drew DeVault 0d395681fe Enforce mouse permissions
8 years ago
Drew DeVault 8aeeacf178 Enforce keyboard permissions
8 years ago
Drew DeVault ffdbb9d050 Enforce fullscreen permissions
8 years ago
Drew DeVault dc4b57c868 Shut Clang up
8 years ago
Drew DeVault 21e1b2bef3 Add security checks for background, panel, lock
8 years ago
Drew DeVault 76cab04b4d Implement permit and reject commands
8 years ago
Drew DeVault 1a8a42f372 Memory leak
8 years ago
Drew DeVault 2675293200 Implement policy lookups
8 years ago
Drew DeVault 44cc0ef125 Add config related code and initial headers
8 years ago
Drew DeVault 5831f7ab68 Write example security config, start on code
8 years ago
D.B 05be14ff7c change default layout toggle to L_HORIZ
8 years ago
D.B 3d1b472b83 swap unnecessary function for strndup
8 years ago
D.B 58eb7ac19f change bar colors from char[10] to *char
8 years ago
D.B ad4d21d60b add bar colours for focused_(workspace|statusline|separator)
8 years ago
D.B 39ee0ec552 use urgent_ws color in swaybar if binding_mode is undefined
8 years ago
Drew DeVault d3e55f88ec Log LD_LIBRARY_PATH
8 years ago
Drew DeVault 78b65e2317 Remove duplicate redhat-release line
8 years ago
Drew DeVault 7aef6e66ae Log uname -a on startup
8 years ago
Drew DeVault 6ad2186f0e Log contents of distro version files
8 years ago
Drew DeVault 0d6cbcacbe Log important env vars on startup
8 years ago
Michał Winiarski e8d8abfbb5 Add left_handed support for input devices
8 years ago
Mykyta Holubakha 2a24772c4b config: set pango_markup default to false
8 years ago
Drew DeVault 67a9a94596 Overwrite alpha when drawing borders
8 years ago
Drew DeVault 56a7e5fbce Revert "Merge pull request #952 from SirCmpwn/revert-948-floating-titlebar-click"
8 years ago
Drew DeVault 4cba91803e Revert "Fixes dealing with workspace_layout and related bugs [rfc]"
8 years ago
Drew DeVault f30f60dad8 Revert "also check floating cons in container_find"
8 years ago
Drew DeVault ce713efcd2 Merge pull request #945 from thejan2009/workspace_layout
8 years ago
D.B 166c2a3687 generalize wrapping views under workspaces
8 years ago
D.B 571321a1d8 add workspace_layout, ensure ws is always L_HORIZ
8 years ago
D.B 0ddc4279d1 wrap workspace's child into a container if needed
8 years ago
D.B 24c3b86065 also check floating cons in container_find
8 years ago
Nicolas Cornu 5384d3effe Can't move an empty workspace
8 years ago
Drew DeVault 8d277bc962 Merge pull request #942 from thejan2009/bugfix-931
8 years ago
Drew DeVault 0fc03f9c13 Merge pull request #941 from thejan2009/floating-border
8 years ago
D.B 8264fedce6 fix for_window [] move scratchpad
8 years ago
D.B 746345e3b8 reorder cmd_handler arrays for bsearch
8 years ago
D.B 77f99480ae draw indicator border only for non-floating
8 years ago
Nicolas Cornu 382d47e238 Fix creating of sibling floating/children
8 years ago
Nicolas Cornu 2d82586c88 Add constant scale factor in get_text_size
8 years ago
D.B 379b1a0378 add focus changing between floating containers
8 years ago
D.B d3f5ac8cbb add force_focus_wrapping option
8 years ago
D.B 7f558ce894 wrap container in direction (if possible)
8 years ago
Nicolas Cornu 6ced4098dc fix for click on title_bar
8 years ago
Nicolas Cornu 37065cd0c4 add click on title_bar to focus a container
8 years ago
Drew DeVault d2aba3ce3a Merge pull request #924 from zandrmartin/fix-focus-segfault
8 years ago
Zandr Martin ba581c4442
consolidate nodes json
8 years ago
Zandr Martin 09a44263c3 Merge branch 'master' into fix-focus-segfault
8 years ago
Zandr Martin 4c0e809028
prevent dereference of freed workspace
8 years ago
Patrick Sauter 153620aefe moved ipc_init above config file processing.
8 years ago
Zandr Martin 58ac1f7f24 fix pointer format string in sway_log() call
8 years ago
Drew DeVault 4e660975a9 Merge pull request #911 from thejan2009/setgid-setuid
8 years ago
Drew DeVault a95ce5ce65 Merge pull request #914 from zandrmartin/container-ids
8 years ago
Ryan Dwyer 64d463142f Implement default name for workspace command
8 years ago
Zandr Martin 7d947fdb95
add unique IDs to containers
8 years ago
D.B 5e585f9603 Split setgid and setuid, add privilege check
8 years ago
Zandr Martin 0516dba3f6
implement "focused container" feature for swaygrab
8 years ago
Zandr Martin e75217cfb1
fix get_workspaces json reply
8 years ago
Zandr Martin 87080bb9cc
take four!
8 years ago
Zandr Martin e18b7cdfa9
add global `current_focus` pointer
8 years ago
Ryan Dwyer e4cb4d1b5c Fix swaybar when running on named outputs.
8 years ago
Zandr Martin 64f61873a9 document `workspace_auto_back_and_forth` command
8 years ago
D.B 873dfc07f3 Use indicator border color only when needed.
8 years ago
Zandr Martin 511eed90cd
squash commits, move enum into resize.c
8 years ago
Mikkel Oscar Lyderik 84d504ebdf Make it possible to move views between outputs
8 years ago
Drew DeVault af44154119 Fix constant scale factor in font code
8 years ago
Drew DeVault 0913eff915 Add support for * input configs
8 years ago
Zandr Martin 65ace5dec5
merge in latest commits
8 years ago
Zandr Martin 79ffea328c
Merge branch 'master' of git://github.com/SirCmpwn/sway into commands-refactor
8 years ago
Zandr Martin b374c35758
refactor commands.c
8 years ago
Lukas Lihotzki 6addaca9fa Correct `hide_edge_borders` command
8 years ago
Drew DeVault 38ca94e0ed Tweak how swaylock surfaces are handled
8 years ago
Drew DeVault 416417a54c Reorganize includes
8 years ago
Zandr Martin a9c0993218 document `orientation` command
8 years ago
Hummer12007 db1c105e77 Fix a format string
8 years ago
James Murphy 8af49eb696 Avoid dereferencing null configuration
8 years ago
Götz Christ aecd33d25d Add input example section to config
8 years ago
Guillaume Brogi 7bbf7e15a0 Update man page
8 years ago
Guillaume Brogi 6173c84117 Rerender after every split command
8 years ago
Guillaume Brogi fc492a4da8 Add support for indicator color
8 years ago
D.B ce98569fbc Handle output disabling during runtime
9 years ago
Manuel Mendez 631ba506d6 document all xkb settings handled by wlc
9 years ago
Drew DeVault b8642ce681 Merge pull request #843 from thejan2009/bug/move-container-819
9 years ago
D.B 41b5c6d1a9 Sort workspaces when moving workspace to output
9 years ago
D.B 61781bbef0 Fix container move when workspace is focused
9 years ago
D.B 9c91952aec Display class in tab title if app_id is null
9 years ago
Drew DeVault aca9f6b2a2 Merge pull request #840 from minus7/man-inputs
9 years ago
minus 2f50be3d88 added get_inputs hint to man 5 sway-input
9 years ago
D.B aa292db8d1 Fix switch to prev ws on handle_view_created
9 years ago
Tony Crisci 4ab35df157 ipc: log sending of events
9 years ago
Tony Crisci e1e15bb43e ipc: recursive workspace containers in event
9 years ago
Tony Crisci 50901a0892 ipc: always include nodes in views
9 years ago
Mykyta Holubakha e1b1d94a4e Arrange windows after swapping containers
9 years ago
D.B 132017d242 Fix 'workspace back_and_forth' and workspace_auto_back_and_forth clash
9 years ago
Tony Crisci 81eb9ea12c Simplify focus setting
9 years ago
Tony Crisci c98e91f01f Use uintptr_t for ipc container id
9 years ago
minus b246799548 fixed uninitialized bar.wrap_scroll
9 years ago
Zandr Martin 9fa92951fe
remove unmanaged nodes from get_tree
9 years ago
Drew DeVault 31ce010861 Fix segfault in border.c
9 years ago
Tony Crisci 4344fe5011 bugfix: focus container on output when focused
9 years ago
Tony Crisci 2f65100bee Remove dead global locked_view_focus
9 years ago
Drew DeVault 2d907ef1f6 Merge pull request #811 from acrisci/feature/focus-container
9 years ago
Zandr Martin b18c169036
cache floating container size when fullscreening
9 years ago
Tony Crisci fe608c80ae Update view border when workspace is focused
9 years ago
Tony Crisci d731d6a846 Bugfix: descend focus stack on new window focus
9 years ago
Tony Crisci b39249508f Refactor functions to update container borders
9 years ago
Tony Crisci f78d07d39b Implement focus handling for containers
9 years ago
Zandr Martin 53f6b1f3b0
document `kill` command
9 years ago
D.B 9977b01928 Update container geometry on layout switch
9 years ago
Zandr Martin 98aa59fdda
implement solid color rendering for swaybg
9 years ago
Zandr Martin e6af5f8bdb
Merge branch 'master' of git://github.com/SirCmpwn/sway into x11-pids
9 years ago
D.B c33e0ee629 revert border hiding to more recent version
9 years ago
D.B 8d0048c8d5 properly hide top border inside tabbed/stacked
9 years ago
Zandr Martin c0683a0444
remove outdated (when wlc commit merged) comment
9 years ago
Zandr Martin d0a0d5e03c
update handler to get pid from wlc for all views
9 years ago
Drew DeVault 3f83968d30 Fix swaybg sizing on hidpi outputs
9 years ago
Drew DeVault 9b24af1c22 Document scale factor configuration in sway(5)
9 years ago
Drew DeVault 9661272224 Merge remote-tracking branch 'origin/hidpi'
9 years ago
Zandr Martin a3980d456d
third try for #678
9 years ago