applied Ali Gholami Rudi's patch regarding DPMS timeout customization and persistence
This commit is contained in:
		
							parent
							
								
									cadc8a7472
								
							
						
					
					
						commit
						0cb05bdb75
					
				| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
# slock version
 | 
					# slock version
 | 
				
			||||||
VERSION = 0.9
 | 
					VERSION = 1.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Customize below to fit your system
 | 
					# Customize below to fit your system
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										13
									
								
								slock.c
								
								
								
								
							
							
						
						
									
										13
									
								
								slock.c
								
								
								
								
							| 
						 | 
					@ -79,6 +79,7 @@ main(int argc, char **argv) {
 | 
				
			||||||
	XColor black, dummy;
 | 
						XColor black, dummy;
 | 
				
			||||||
	XEvent ev;
 | 
						XEvent ev;
 | 
				
			||||||
	XSetWindowAttributes wa;
 | 
						XSetWindowAttributes wa;
 | 
				
			||||||
 | 
						CARD16 standby, suspend, off;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if((argc == 2) && !strcmp("-v", argv[1]))
 | 
						if((argc == 2) && !strcmp("-v", argv[1]))
 | 
				
			||||||
		die("slock-"VERSION", © 2006-2008 Anselm R Garbe\n");
 | 
							die("slock-"VERSION", © 2006-2008 Anselm R Garbe\n");
 | 
				
			||||||
| 
						 | 
					@ -123,12 +124,13 @@ main(int argc, char **argv) {
 | 
				
			||||||
	len = 0;
 | 
						len = 0;
 | 
				
			||||||
	XSync(dpy, False);
 | 
						XSync(dpy, False);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if(DPMSCapable(dpy)) { /* save and customize DPMS settings */
 | 
				
			||||||
 | 
							DPMSGetTimeouts(dpy, &standby, &suspend, &off);
 | 
				
			||||||
 | 
							DPMSSetTimeouts(dpy, 10, 30, 90);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* main event loop */
 | 
						/* main event loop */
 | 
				
			||||||
	while(running && !XNextEvent(dpy, &ev)) {
 | 
						while(running && !XNextEvent(dpy, &ev)) {
 | 
				
			||||||
		if(len == 0 && DPMSCapable(dpy)) {
 | 
					 | 
				
			||||||
			DPMSEnable(dpy);
 | 
					 | 
				
			||||||
			DPMSForceLevel(dpy, DPMSModeOff);
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
		if(ev.type == KeyPress) {
 | 
							if(ev.type == KeyPress) {
 | 
				
			||||||
			buf[0] = 0;
 | 
								buf[0] = 0;
 | 
				
			||||||
			num = XLookupString(&ev.xkey, buf, sizeof buf, &ksym, 0);
 | 
								num = XLookupString(&ev.xkey, buf, sizeof buf, &ksym, 0);
 | 
				
			||||||
| 
						 | 
					@ -170,6 +172,9 @@ main(int argc, char **argv) {
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						if(DPMSCapable(dpy)) { /* restore DPMS settings */
 | 
				
			||||||
 | 
							DPMSSetTimeouts(dpy, standby, suspend, off);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	XUngrabPointer(dpy, CurrentTime);
 | 
						XUngrabPointer(dpy, CurrentTime);
 | 
				
			||||||
	XFreePixmap(dpy, pmap);
 | 
						XFreePixmap(dpy, pmap);
 | 
				
			||||||
	XDestroyWindow(dpy, w);
 | 
						XDestroyWindow(dpy, w);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue