Commit Graph

468 Commits

Author SHA1 Message Date
raichoo 28b39d629f add CHANGELOG.md to dist tarball 2020-05-14 15:39:09 +00:00
raichoo 2384a53d06 make `dump_debug` aware of multiple workspaces 2020-05-14 13:01:36 +00:00
raichoo 6a7a24ec65 make first/last group view work with multiple workspaces
Until now first and last view of a group where constrained to a workspace. This
causes confusing behavior, so this is now removed.
2020-05-12 17:27:11 +00:00
raichoo 3fe73ef0d4 TAG 1.2.0
* add drag/drop support
* add client side cursor setting
* add invisible view configuration flag
* add floating view configuration flag
* fix workspace focus on multimonitor
2020-05-14 14:54:09 +00:00
raichoo 4601d26f3e update CHANGELOG for 1.2.0 2020-05-14 14:41:15 +00:00
firefly 74b299a870 honour $XDG_CONFIG_HOME 2020-05-14 13:09:57 +00:00
raichoo db46efcc61 add `workspace-cycle-[next|prev]` actions
These actions allow one to cycle through all existing workspaces.
2020-05-12 15:16:19 +00:00
raichoo 0e72f76bc3 factor out center cursor
This patch provides a general function for centering the cursor inside of a box.
2020-05-12 15:12:49 +00:00
raichoo d1352d14ab fix view focus for multiple workspace
View focusing during cycling does not focus the view's workspace but rather
stays on the same workspace even if the view does not belong to that workspace.
This patch corrects that behavior.
2020-05-12 15:10:51 +00:00
raichoo 35f88853bb centralize view migration code
This code has been duplicated 3 times and is now moved to a central place.
2020-05-12 13:21:26 +00:00
raichoo 81deec5d6f damage focus view group on move/resize mode cancel
The `cancel` function only damaged the indicator. This leads to the view border
not being properly redrawn as well as group indication when the mode gets
cancelled.
2020-05-12 12:54:07 +00:00
raichoo 6cf17e749c only pass view flags to sheet indicator update 2020-05-12 12:08:17 +00:00
raichoo c2d3f16bb6 adjust formatting 2020-05-12 12:07:58 +00:00
raichoo 3f20cd5a46 make center cursor respect screen size
Centering the cursor on a view that is off-screen enough to have its center in
another view causes surprising behavior. This patch constrains the geometry that
is used to center to cursor to not leave the output.
2020-05-12 09:35:07 +00:00
raichoo 1a5dc476b5 streamline migration actions
Pinning a view to another sheet should position the view in a way so that it is
fully visible after the action. Migration via moving should not move a view off
screen in a way that it turns out to be invisible.
2020-05-11 16:58:36 +00:00
raichoo f504b354d1 do not center cursor on resize
This is consistent with move actions. The cursor gets centered once the action
has ended. This is important for move migration with resizing.
2020-05-11 15:26:46 +00:00
raichoo a5da0ec001 move migration for keyboard actions
This patch allows move-migration via move and resize actions. The top left
corner specifies the output the view migrates to.
2020-05-11 15:25:11 +00:00
raichoo a2a8bacd1f document `UPDATING` in `README` 2020-05-09 10:41:49 +00:00
raichoo bb8071021c add UPDATING
This file documents breaking changes in the repository that are going to go into
the next major release.
2020-05-09 10:18:21 +00:00
raichoo d6af36fd28 add `ui` configuration section
This patch moves all UI related configuration options from the top level into
their own section to group them up. This constitutes a breaking change for the
end user because it invalidates previous configurations and requires users to
adjust their configuration manually.
2020-05-09 09:20:26 +00:00
raichoo b6484749b7 improve `libinput` configuration for pointer devices
This patch introduces more configuration options for pointer devices:

* adds `tap` option
* adds `tap-drag` option
* adds `tap-drag-lock` option
* adds `natural-scrolling` option
* adds `no-scroll` to `scroll-method`

This also changes the way unconfigured options are handled. `hikari` is no
longer going to overwrite unconfigured values with its own default but rather
keeps them unchanged.
2020-05-08 12:33:29 +00:00
raichoo 0a7da8ead2 TAG 1.1.1
* Xwayland fix for multimonitor coordinates
* fix tile exchange with maximized views
* fix layer-shell destroy issue
2020-05-08 11:50:30 +00:00
raichoo dfa41812c1 update CHANGELOG for 1.1.1 2020-05-08 11:49:52 +00:00
andy 63e34a2a8a Configure Xwayland views with layout coordinates
Xwayland uses layout coordinates for positioning surfaces, while hikari uses
coordinates relative to the position of a view's output. That means that
coordinates need to be converted first before they are used in Xwayland calls
(and vice versa).

This basically reverts fdcada068164e5d4c89a932fdea94eb42d3e7c09 and
(hopefully) fixes the remaining places where a conversion was missing.
2020-05-08 07:22:56 +00:00
raichoo b51f78d9ad show group views in reverse order to maintain order 2020-05-07 13:48:18 +00:00
raichoo 78b0c261e1 allow view migration via mouse
This allows `move-mode` to migrate views between outputs as it it were just
movement.
2020-05-07 13:34:47 +00:00
raichoo 9e5ee6b784 separate reset and migrate
These are very different operations and this should be reflected in the code as
well. This patch also allows to write code that can migrate views on demand.
2020-05-07 12:32:56 +00:00
raichoo 63730ac383 `workspace-show-group` should raise `focus_view`
If this does not happen the focus can change to a different view during this
action. This is disorienting. To prevent this we raise the view to the top at
the beginning of the action.
2020-05-06 16:01:11 +00:00
raichoo 50237c0a34 remove unused function 2020-05-06 15:55:54 +00:00
raichoo cee60887b5 lift restriction that tiled views cannot be moved
This restriction has been bogus since symmetric resize has arrived, so we might
as well just remove it entirely for the next major release.
2020-05-06 14:20:49 +00:00
raichoo 776d1b021f Makefile changes to support more general builds
Pull ${CFLAGS_EXTRA} and ${LDFLAGS_EXTRA} from the environment, which allows the
user to specify additional CFLAGS and LDFLAGS that will be added to the
respective CFLAGS and LDFLAGS variables built up by the Makefile. (Setting
CFLAGS or LDFLAGS directly on the command line, at least with NetBSD make, would
cause make to ignore all of the appends in the Makefile.)

Add ${CFLAGS_EXTRA} and ${LDFLAGS_EXTRA} to the hikari-unlocker build command,
so those flags apply when building that target (this is important in Void
cross-compilation, because PAM libs and headers will not generally be in
/usr/lib or /usr/include and require specification).

Reorder the command-line arguments when building the hikari and hikari-unlocker
targets. Some compilers, like GCC, do not properly find symbols from libraries
unless the libraries are listed after the source files that reference them.
Libraries should always be listed last.

Add a ${DESTDIR} prefix to all install destinations, empty by default, to allow
installation into a chroot environment.

Drop the INSTALL_GROUP and associated -g flag to the install commands. Setting a
group explicitly is probably not useful, and can either cause breakage or
require manual specification for reasonable behavior. (In Void packaging
environments, for example, packages are built as an unprivileged user and the
default behavior of grabbing the user's primary group is not correct.) Files are
executable or readable by all users anyway and writable only by the owne
2020-05-06 14:38:26 +00:00
raichoo 9308270879 add missing argument to assert 2020-05-06 12:42:30 +00:00
raichoo f5b1420518 allow output relative view positioning
This patch allows to position views relative to the output by stating one of the
following values as position:

* `bottom-left`
* `bottom-middle`
* `bottom-right`
* `center`
* `center-left`
* `center-right`
* `top-left`
* `top-middle`
* `top-right`
2020-05-06 12:31:00 +00:00
raichoo 6458dec842 add `workspace-clear` action 2020-05-05 19:21:25 +00:00
raichoo fa3e2479a1 add `workspace-show-all` action 2020-05-05 19:16:22 +00:00
raichoo 29e43bb555 add `workspace-show-invisible` action 2020-05-05 19:02:18 +00:00
raichoo d9e5072e90 add `workspace-show-group` action 2020-05-05 19:00:06 +00:00
raichoo 7a02ab6188 add `sheet-show-group` action 2020-05-05 18:21:05 +00:00
raichoo 7ddba60c3c use "monospace 10" as default font setting 2020-05-05 18:18:38 +00:00
raichoo 667ce6430f handle layer destroy before map
As documented in issue #1 destroying a layer before mapping it leads to the
freed memory still being linked to the `layer_surfaces` list. This patch adds
the invariant the we always need to be able to remove this link. This is ensured
by doing a `wl_list_init` after every `wl_list_remove`.
2020-05-05 14:09:18 +00:00
raichoo d524815f90 add `floating` to view configuration
This patch allows to configure floating state for views.
2020-05-05 16:14:33 +00:00
raichoo acbd637500 add `invisible` to view configuration
This patch allows to configure invisible state for views.
2020-05-05 16:10:29 +00:00
raichoo f2ab7f7e9e factor out position configuration
Views and outputs can be configured with an explicit position. This can be
generalized into a single struct which streamlines the code.
2020-05-05 15:01:57 +00:00
raichoo a951b2f9e1 document `ETC_PREFIX` in README 2020-05-02 19:50:49 +00:00
raichoo f58b55aa68 reintroduce ETC_PREFIX for Linux builds 2020-05-02 18:52:21 +00:00
raichoo 401b900323 refactor configuration infrastructure
This patch reworks how `hikari` gets configured and provides a default
configuration as well as means to incorporate this into the binary.

This deprecated the `ETC_PREFIX` configuration during make and makes it reuse
`PREFIX`.

A default terminal is now specified via the `TERMINAL` environment variable.
2020-05-02 14:34:45 +00:00
raichoo 02a9f4c24c correctly indent empty container section in manpage 2020-05-01 13:59:37 +00:00
raichoo 7ebe8e0425 TAG 1.1.0
* add layer-shell support
* add begin/end action to bindings
* add "remove word" to input handling
* allow Ctrl-C and Ctrl-D to cancel modes
* add `step` configuration
* support xdg toplevel decoration events (fixes `alacritty` issues)
* add symmetric resize operations
* add dynamic layout scaling
2020-05-01 08:39:27 +00:00
raichoo f72a08d807 update CHANGELOG for 1.1.0 2020-05-01 08:35:57 +00:00
raichoo 16bb84a003 rename `output` to `wlr_ouptut` 2020-04-30 19:25:10 +00:00