Commit graph

1077 commits

Author SHA1 Message Date
Daniel Eklöf
bb425be8ac
fcft: update to 0.3.2 2019-12-03 21:39:22 +01:00
Daniel Eklöf
6c817d309e
meson: we don't need -lm anymore 2019-12-03 21:16:41 +01:00
Daniel Eklöf
0f15f0ba43
fcft: update to 0.3.0
fcft now calculates the underline and strikeout integer positions,
making our rendering code much simpler.
2019-12-03 21:03:52 +01:00
Daniel Eklöf
a17ce10c03
search: match_to_end_of_word: reset end_col when done with a row 2019-12-03 20:26:32 +01:00
Daniel Eklöf
0f98101bbc
search: match_to_end_of_word: bug: reset end-col when bumping end-row
When we calculate the end coords, we must reset end-col when we reach
the end of the line and bump the end-row.

This fixes an issue where bumping the row once lead to the end row
being bumped for *each* remaining match character.
2019-12-03 20:25:22 +01:00
Daniel Eklöf
6cfb3216c3
search: bug: restore end-col/end-row adjustment
Turns out end_col *can* be exactly 0. In this case, we need to adjust
the end-row too.
2019-12-03 20:24:41 +01:00
Daniel Eklöf
b0d555255c
render: limit size of search surface to parent window
This shouldn't be necessary, but Sway acts up when the subsurface
exceeds the parent surface (window, in this case) size, and extends
the window size (if floating), leaving it with no content
2019-12-03 20:19:50 +01:00
Daniel Eklöf
ba399fa874
Merge branch 'scrollback-search-extend-to-end-of-word' 2019-12-03 20:01:53 +01:00
Daniel Eklöf
008281757b
search: bug: re-initialize start-row when attempting a new match
When we've already found a partial match (but *not* a complete match),
and that match spanned multiple lines, then when we continued with the
next start-column we re-used a know-wrong row pointer.
2019-12-03 20:00:38 +01:00
Daniel Eklöf
3c71389993
render: don't allow negative coordinates of the search surface
While the protocol allows this, it appears Sway offsets (moves) the
parent surface when this happens, resulting in a window half without
content.
2019-12-03 19:58:33 +01:00
Daniel Eklöf
0982210af2
search: map ctrl+shift+w to match to end of word, spaces only
This works just like ctrl+w, except that the only space separating
characters are whitespaces.
2019-12-03 19:43:45 +01:00
Daniel Eklöf
867cac4207
search: search_match_to_end_of_word: rename start_{row,col} -> end_{row,col} 2019-12-03 19:43:11 +01:00
Daniel Eklöf
2a5da66e4e
search: split up search_update() into two
* search_find_next() searches the scrollback, continuing from the last
  match. The assumption is that the search buffer has changed.

* search_update_selection() updates the selection and moves the view
  to ensure the selection is visible. Note that it doesn't verify the
  selection actually matches the search buffer.
2019-12-03 19:40:22 +01:00
Daniel Eklöf
e003736e11
search: rename search_update() -> search_find_next() 2019-12-03 19:24:33 +01:00
Daniel Eklöf
b3287c07cd
README: describe ctrl+w while scrollback searching 2019-12-03 19:23:56 +01:00
Daniel Eklöf
b5a04dcaae
search: map ctrl+w to 'extend current selection to end of word'
If the user has started a scrollback search and have some matching
text, he can now press ctrl+w to extend that selection (and thus the
search criteria too) to the end of the current word, or to the end of
the next word if currently at a word separating character.
2019-12-03 19:22:47 +01:00
Daniel Eklöf
694d84a9e9
search: discard canceled compose sequences 2019-12-03 19:21:16 +01:00
Daniel Eklöf
a34deabcc9
Revert "search: discard canceled compose sequences"
This reverts commit f67733c0e3.
2019-12-03 19:21:03 +01:00
Daniel Eklöf
f67733c0e3
search: discard canceled compose sequences 2019-12-03 19:19:55 +01:00
Daniel Eklöf
ac2eda885a
search: remove debug log 2019-12-03 19:19:26 +01:00
Daniel Eklöf
10cf722617
search: don't line-wrap unless we actually have a match on the next row
When matching characters, we moved on to next row directly after
matching the last character in a row.

This was wrong since if that last character was the last matching
character, we tried to create a selection that was on the wrong row.
2019-12-03 19:17:51 +01:00
Daniel Eklöf
d94fc80966
search: break out search buffer resize code to a new function 2019-12-03 19:17:34 +01:00
Daniel Eklöf
198529525c
selection: break out isword() to a new file 2019-12-03 19:16:58 +01:00
Daniel Eklöf
f1c876884a
input: discard canceled compose sequences 2019-12-02 21:32:09 +01:00
Daniel Eklöf
f15a2af0b8
Merge branch 'fcft-0.2.0' 2019-12-01 19:26:02 +01:00
Daniel Eklöf
601f77fb1f
PKGBUILD: tllist is only a make dependency, bump fcft to 0.2.0 2019-12-01 19:25:39 +01:00
Daniel Eklöf
b3334444bb
meson: require fcft 0.2.0 2019-12-01 19:25:15 +01:00
Daniel Eklöf
644f114909
fcft: fixup 2019-12-01 19:25:06 +01:00
Daniel Eklöf
b5780e735e
Add missing includes 2019-12-01 19:22:45 +01:00
Daniel Eklöf
e9fbb371df
fcft: font_from_name() no longer accepts a tllist 2019-12-01 19:22:25 +01:00
Daniel Eklöf
69dc53409e
fcft: bump to 0.2.0 2019-12-01 19:22:09 +01:00
Daniel Eklöf
c92746203a
meson: fcft: version must be 0.1.x 2019-12-01 18:47:39 +01:00
Daniel Eklöf
e5b588977f
fcft: bump 2019-12-01 18:04:03 +01:00
Daniel Eklöf
1307f61da1
PKGBUILD/meson: add version requirements to tllist+fcft 2019-12-01 17:50:27 +01:00
Daniel Eklöf
a041b334af
fcft: bump 2019-12-01 17:45:43 +01:00
Daniel Eklöf
1585edd194
fcft: bump 2019-12-01 16:32:34 +01:00
Daniel Eklöf
50a32a0e15
PKGBUILD: don't allow subproject fallback 2019-12-01 16:28:49 +01:00
Daniel Eklöf
fcea49920f
meson: tllist/fcft: use system dependency first, fallback to subprojects 2019-12-01 16:11:35 +01:00
Daniel Eklöf
ba56379055
meson/PKGBUILD: we no longer depend directly on fontconfig/freetype 2019-12-01 15:42:28 +01:00
Daniel Eklöf
a38d1d6928
PKGBUILD: strip extra git revision data from checked in PKGBUILD 2019-12-01 14:05:56 +01:00
Daniel Eklöf
30335ef32a
fcft: include <fcft/fcft.h>, and use fcft/stride.h instead of local copy 2019-12-01 14:03:24 +01:00
Daniel Eklöf
5919b0642c
README: add tllist and fcft to list of required libraries 2019-12-01 13:57:59 +01:00
Daniel Eklöf
5fe34dc820
PKGBUILD: add tllist and fcft dependencies 2019-12-01 13:55:14 +01:00
Daniel Eklöf
30f58bac56
meson: tllist/fcft: oops, forgot to set 'required: false' 2019-12-01 13:54:18 +01:00
Daniel Eklöf
526f65a392
Merge branch 'use-fcft' 2019-12-01 13:52:30 +01:00
Daniel Eklöf
01c1fcd60f
PKGBUILD: don't error out on missing profile data count files 2019-12-01 13:50:57 +01:00
Daniel Eklöf
fd9c28464d
fcft: use fcft instead of local copy of font.c/font.h 2019-12-01 13:43:51 +01:00
Daniel Eklöf
3c939f76e3
meson: tllist: try subproject first, then fallback to system dependency 2019-12-01 13:40:19 +01:00
Daniel Eklöf
9f91760886
tllist: add git submodule directly under subprojects 2019-12-01 13:39:35 +01:00
Daniel Eklöf
ed176352e2
tllist: remove git submodule and local copy under subprojects 2019-12-01 13:38:59 +01:00