move fetching icon into a separate thread
This commit is contained in:
		
							parent
							
								
									4cd8bfb869
								
							
						
					
					
						commit
						3595041e99
					
				
					 1 changed files with 99 additions and 84 deletions
				
			
		| 
						 | 
				
			
			@ -212,6 +212,9 @@ namespace Webpin.Widgets.Views {
 | 
			
		|||
            reset_grab_color_and_icon ();
 | 
			
		||||
            grab_timer = Timeout.add (
 | 
			
		||||
                500,
 | 
			
		||||
                () => {
 | 
			
		||||
                    new Thread<void*> (
 | 
			
		||||
                        "grab_color_and_icon",
 | 
			
		||||
                        () => {
 | 
			
		||||
                            if (tmp_icon_file != "" ) {
 | 
			
		||||
                                FileUtils.remove (tmp_icon_file);
 | 
			
		||||
| 
						 | 
				
			
			@ -239,7 +242,11 @@ namespace Webpin.Widgets.Views {
 | 
			
		|||
                                    var result = match_info.fetch (0);
 | 
			
		||||
                                    Gdk.RGBA return_value = {0, 0, 0, 1};
 | 
			
		||||
                                    if (return_value.parse (result)) {
 | 
			
		||||
                                        Idle.add (
 | 
			
		||||
                                            () => {
 | 
			
		||||
                                                primary_color_button.set_rgba (return_value);
 | 
			
		||||
                                                return false;
 | 
			
		||||
                                            });
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -304,12 +311,20 @@ namespace Webpin.Widgets.Views {
 | 
			
		|||
                                }
 | 
			
		||||
 | 
			
		||||
                                if (tmp_icon_file != "") {
 | 
			
		||||
                                    Idle.add (
 | 
			
		||||
                                        () => {
 | 
			
		||||
                                            icon_name_entry.set_text (tmp_icon_file);
 | 
			
		||||
                                            return false;
 | 
			
		||||
                                        });
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                            msg.dispose ();
 | 
			
		||||
                            session.dispose ();
 | 
			
		||||
 | 
			
		||||
                            return null;
 | 
			
		||||
                        });
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                    reset_grab_color_and_icon ();
 | 
			
		||||
                    return false;
 | 
			
		||||
                });
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue