diff options
| author | Quentin Rameau <quinq@quinq.eu.org> | 2015-05-31 12:26:11 +0200 | 
|---|---|---|
| committer | Roberto E. Vargas Caballero <k0ga@shike2.com> | 2015-06-19 11:49:13 +0200 | 
| commit | bdd649a10289ade364f3deab3bbf6ee3169d67ca (patch) | |
| tree | 36b8019d0d2dc154d0fe646c7894ea32675c744e | |
| parent | 71fa10f613a22b3e75e0e897ee1be6667be3f449 (diff) | |
| download | st-bdd649a10289ade364f3deab3bbf6ee3169d67ca.tar.gz | |
do not truncate font size when zooming
| -rw-r--r-- | config.def.h | 6 | ||||
| -rw-r--r-- | st.c | 15 | 
2 files changed, 10 insertions, 11 deletions
| diff --git a/config.def.h b/config.def.h index bb5596e..64e75b8 100644 --- a/config.def.h +++ b/config.def.h @@ -120,9 +120,9 @@ static Shortcut shortcuts[] = {  	{ ControlMask,          XK_Print,       toggleprinter,  {.i =  0} },  	{ ShiftMask,            XK_Print,       printscreen,    {.i =  0} },  	{ XK_ANY_MOD,           XK_Print,       printsel,       {.i =  0} }, -	{ MODKEY|ShiftMask,     XK_Prior,       xzoom,          {.i = +1} }, -	{ MODKEY|ShiftMask,     XK_Next,        xzoom,          {.i = -1} }, -	{ MODKEY|ShiftMask,     XK_Home,        xzoomreset,     {.i =  0} }, +	{ MODKEY|ShiftMask,     XK_Prior,       xzoom,          {.f = +1} }, +	{ MODKEY|ShiftMask,     XK_Next,        xzoom,          {.f = -1} }, +	{ MODKEY|ShiftMask,     XK_Home,        xzoomreset,     {.f =  0} },  	{ ShiftMask,            XK_Insert,      selpaste,       {.i =  0} },  	{ MODKEY|ShiftMask,     XK_Insert,      clippaste,      {.i =  0} },  	{ MODKEY|ShiftMask,     XK_C,           clipcopy,       {.i =  0} }, @@ -3061,7 +3061,6 @@ xloadfont(Font *f, FcPattern *pattern) {  void  xloadfonts(char *fontstr, double fontsize) {  	FcPattern *pattern; -	FcResult r_sz, r_psz;  	double fontval;  	float ceilf(float); @@ -3080,11 +3079,11 @@ xloadfonts(char *fontstr, double fontsize) {  		FcPatternAddDouble(pattern, FC_PIXEL_SIZE, (double)fontsize);  		usedfontsize = fontsize;  	} else { -		r_psz = FcPatternGetDouble(pattern, FC_PIXEL_SIZE, 0, &fontval); -		r_sz = FcPatternGetDouble(pattern, FC_SIZE, 0, &fontval); -		if(r_psz == FcResultMatch) { +		if(FcPatternGetDouble(pattern, FC_PIXEL_SIZE, 0, &fontval) == +				FcResultMatch) {  			usedfontsize = fontval; -		} else if(r_sz == FcResultMatch) { +		} else if(FcPatternGetDouble(pattern, FC_SIZE, 0, &fontval) == +				FcResultMatch) {  			usedfontsize = -1;  		} else {  			/* @@ -3157,14 +3156,14 @@ void  xzoom(const Arg *arg) {  	Arg larg; -	larg.i = usedfontsize + arg->i; +	larg.f = usedfontsize + arg->f;  	xzoomabs(&larg);  }  void  xzoomabs(const Arg *arg) {  	xunloadfonts(); -	xloadfonts(usedfont, arg->i); +	xloadfonts(usedfont, arg->f);  	cresize(0, 0);  	redraw();  	xhints(); @@ -3175,7 +3174,7 @@ xzoomreset(const Arg *arg) {  	Arg larg;  	if(defaultfontsize > 0) { -		larg.i = defaultfontsize; +		larg.f = defaultfontsize;  		xzoomabs(&larg);  	}  } |