Check if next_timeout is in past
When having a long running notification and an additional two shorter notifications arrive. The short notification, which times out later, does not timeout correctly and gets flushed only, when the long running notification is flushed or a Focus* XEvent is sent.
This commit is contained in:
		
							parent
							
								
									1fc96e9691
								
							
						
					
					
						commit
						2a823eb381
					
				| @ -78,7 +78,7 @@ gboolean run(void *data) | ||||
|                 gint64 timeout_at = now + sleep; | ||||
| 
 | ||||
|                 if (sleep >= 0) { | ||||
|                         if (timeout_cnt == 0 || timeout_at < next_timeout) { | ||||
|                         if (timeout_cnt == 0 || next_timeout < now || timeout_at < next_timeout) { | ||||
|                                 g_timeout_add(sleep/1000, run, mainloop); | ||||
|                                 next_timeout = timeout_at; | ||||
|                                 timeout_cnt++; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Benedikt Heine
						Benedikt Heine