aboutsummaryrefslogtreecommitdiff
path: root/win.h
AgeCommit message (Collapse)AuthorFilesLines
2018-02-25Reduce visibility wherever possibleDevin J. Pohly1-1/+0
When possible, declare functions/variables static and move struct definitions out of headers. In order to allow utf8decode to become internal, use codepoint for DECSCUSR extension directly. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Pull term references out of xdrawcursorDevin J. Pohly1-1/+1
Gradually reducing x.c dependency on Term object. Old and new cursor glyph/position are passed to xdrawcursor. (There may be an opportunity to refactor further if we can unify "clear old cursor" and "draw new cursor" functionality.) Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Move win-agnostic parts of draw/drawregion to st.cDevin J. Pohly1-3/+4
Introduces three functions to encapsulate X-specific behavior: * xdrawline: draws a portion of a single line (used by drawregion) * xbegindraw: called to prepare for drawing (will be useful for e.g. Wayland) and returns true if drawing should happen * xfinishdraw: called to finish drawing (used by draw) Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Split mode bits between Term and TermWindowDevin J. Pohly1-0/+24
Moves the mode bits used by x.c from Term to TermWindow, absorbing UI/input-related mode bits (visible/focused/numlock) along the way. This is gradually reducing external references to Term. Since TermWindow is already internal to x.c, we add xsetmode() to allow st to modify window bits in accordance with escape sequences. IS_SET() is redefined accordingly (term.mode in st.c, win.mode in x.c). Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Remove X and fontconfig from st.cDevin J. Pohly1-5/+0
None of the X-related includes are needed any longer. In addition, move the X modifier defines into x.c, as they are not used outside. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Remove Time argument from xsetselDevin J. Pohly1-1/+1
This is an X type and should be internal to x.c. The selcopy() function was a single line and only used in one place, so it was inlined to reduce LOC. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Make win variable internal to x.cDevin J. Pohly1-0/+1
There was only a single reference to the `win` variable in st.c, so exporting that to x.c allows us to rid ourselves of another extern. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Inline clipboard functionsDevin J. Pohly1-2/+0
No need to keep a function that only calls another function in the same file. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Move config.h include from st.c to x.cDevin J. Pohly1-3/+0
config.h includes references to KeySyms and other X stuff. Until we come up with a cleaner way to separate configuration, it is simpler (leads to more code removal) to have this here. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Move window-manipulating functions into x.cDevin J. Pohly1-1/+0
xresize is now internal to x.c Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Move window urgency handling entirely into x.cDevin J. Pohly1-2/+1
This allows us to make xseturgency internal. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Move zoom functions into x.cDevin J. Pohly1-4/+3
This makes x(un)loadfonts internal to x.c. Needed to reorder includes and move a typedef to keep the compiler happy. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Move usage() to be with run() in x.cDevin J. Pohly1-2/+0
run/usage/xinit are now all internal to x.c Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2018-02-25Call xsetenv() in main process instead of childDevin J. Pohly1-2/+0
This makes xsetenv internal to x.c, and allows iso14755's external command to use $WINDOWID instead of having to snprintf it again. (The same benefit will apply to the externalpipe patch.) The xwinid function is no longer needed. Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
2017-03-19Support xterm Ms feature to set clipboardosandov@osandov.com1-0/+1
This is used by, e.g., tmux.
2017-01-20Split X-specific code into x.cMichael Forney1-0/+29