mirror of git://git.suckless.org/st
do not truncate font size when zooming
This commit is contained in:
parent
71fa10f613
commit
bdd649a102
|
@ -120,9 +120,9 @@ static Shortcut shortcuts[] = {
|
||||||
{ ControlMask, XK_Print, toggleprinter, {.i = 0} },
|
{ ControlMask, XK_Print, toggleprinter, {.i = 0} },
|
||||||
{ ShiftMask, XK_Print, printscreen, {.i = 0} },
|
{ ShiftMask, XK_Print, printscreen, {.i = 0} },
|
||||||
{ XK_ANY_MOD, XK_Print, printsel, {.i = 0} },
|
{ XK_ANY_MOD, XK_Print, printsel, {.i = 0} },
|
||||||
{ MODKEY|ShiftMask, XK_Prior, xzoom, {.i = +1} },
|
{ MODKEY|ShiftMask, XK_Prior, xzoom, {.f = +1} },
|
||||||
{ MODKEY|ShiftMask, XK_Next, xzoom, {.i = -1} },
|
{ MODKEY|ShiftMask, XK_Next, xzoom, {.f = -1} },
|
||||||
{ MODKEY|ShiftMask, XK_Home, xzoomreset, {.i = 0} },
|
{ MODKEY|ShiftMask, XK_Home, xzoomreset, {.f = 0} },
|
||||||
{ ShiftMask, XK_Insert, selpaste, {.i = 0} },
|
{ ShiftMask, XK_Insert, selpaste, {.i = 0} },
|
||||||
{ MODKEY|ShiftMask, XK_Insert, clippaste, {.i = 0} },
|
{ MODKEY|ShiftMask, XK_Insert, clippaste, {.i = 0} },
|
||||||
{ MODKEY|ShiftMask, XK_C, clipcopy, {.i = 0} },
|
{ MODKEY|ShiftMask, XK_C, clipcopy, {.i = 0} },
|
||||||
|
|
15
st.c
15
st.c
|
@ -3061,7 +3061,6 @@ xloadfont(Font *f, FcPattern *pattern) {
|
||||||
void
|
void
|
||||||
xloadfonts(char *fontstr, double fontsize) {
|
xloadfonts(char *fontstr, double fontsize) {
|
||||||
FcPattern *pattern;
|
FcPattern *pattern;
|
||||||
FcResult r_sz, r_psz;
|
|
||||||
double fontval;
|
double fontval;
|
||||||
float ceilf(float);
|
float ceilf(float);
|
||||||
|
|
||||||
|
@ -3080,11 +3079,11 @@ xloadfonts(char *fontstr, double fontsize) {
|
||||||
FcPatternAddDouble(pattern, FC_PIXEL_SIZE, (double)fontsize);
|
FcPatternAddDouble(pattern, FC_PIXEL_SIZE, (double)fontsize);
|
||||||
usedfontsize = fontsize;
|
usedfontsize = fontsize;
|
||||||
} else {
|
} else {
|
||||||
r_psz = FcPatternGetDouble(pattern, FC_PIXEL_SIZE, 0, &fontval);
|
if(FcPatternGetDouble(pattern, FC_PIXEL_SIZE, 0, &fontval) ==
|
||||||
r_sz = FcPatternGetDouble(pattern, FC_SIZE, 0, &fontval);
|
FcResultMatch) {
|
||||||
if(r_psz == FcResultMatch) {
|
|
||||||
usedfontsize = fontval;
|
usedfontsize = fontval;
|
||||||
} else if(r_sz == FcResultMatch) {
|
} else if(FcPatternGetDouble(pattern, FC_SIZE, 0, &fontval) ==
|
||||||
|
FcResultMatch) {
|
||||||
usedfontsize = -1;
|
usedfontsize = -1;
|
||||||
} else {
|
} else {
|
||||||
/*
|
/*
|
||||||
|
@ -3157,14 +3156,14 @@ void
|
||||||
xzoom(const Arg *arg) {
|
xzoom(const Arg *arg) {
|
||||||
Arg larg;
|
Arg larg;
|
||||||
|
|
||||||
larg.i = usedfontsize + arg->i;
|
larg.f = usedfontsize + arg->f;
|
||||||
xzoomabs(&larg);
|
xzoomabs(&larg);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
xzoomabs(const Arg *arg) {
|
xzoomabs(const Arg *arg) {
|
||||||
xunloadfonts();
|
xunloadfonts();
|
||||||
xloadfonts(usedfont, arg->i);
|
xloadfonts(usedfont, arg->f);
|
||||||
cresize(0, 0);
|
cresize(0, 0);
|
||||||
redraw();
|
redraw();
|
||||||
xhints();
|
xhints();
|
||||||
|
@ -3175,7 +3174,7 @@ xzoomreset(const Arg *arg) {
|
||||||
Arg larg;
|
Arg larg;
|
||||||
|
|
||||||
if(defaultfontsize > 0) {
|
if(defaultfontsize > 0) {
|
||||||
larg.i = defaultfontsize;
|
larg.f = defaultfontsize;
|
||||||
xzoomabs(&larg);
|
xzoomabs(&larg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue