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} },
 | 
			
		||||
	{ 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} },
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										15
									
								
								st.c
								
								
								
								
							
							
						
						
									
										15
									
								
								st.c
								
								
								
								
							| 
						 | 
				
			
			@ -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);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue