refactor, will do with shared memory
This commit is contained in:
		
							parent
							
								
									c3a3c1a1c7
								
							
						
					
					
						commit
						61caaa3365
					
				| @ -80,7 +80,6 @@ pub enum Data { | ||||
|         enabled: bool, | ||||
|     }, | ||||
|     SystemInfo(Option<String>), | ||||
|     ClickTime(i64), | ||||
|     Authorize, | ||||
|     Close, | ||||
|     SAS, | ||||
|  | ||||
| @ -19,7 +19,6 @@ use sha2::{Digest, Sha256}; | ||||
| pub type Sender = mpsc::UnboundedSender<(Instant, Arc<Message>)>; | ||||
| 
 | ||||
| lazy_static::lazy_static! { | ||||
|     static ref CLICK_TIME: Arc::<Mutex<i64>> = Default::default(); | ||||
|     static ref LOGIN_FAILURES: Arc::<Mutex<HashMap<String, (i32, i32, i32)>>> = Default::default(); | ||||
| } | ||||
| 
 | ||||
| @ -637,9 +636,6 @@ impl Connection { | ||||
|                 Some(message::Union::mouse_event(me)) => { | ||||
|                     if self.keyboard { | ||||
|                         handle_mouse(&me, self.inner.id()); | ||||
|                         if is_left_up(&me) { | ||||
|                             *CLICK_TIME.lock().unwrap() = crate::get_time(); | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|                 Some(message::Union::key_event(mut me)) => { | ||||
| @ -666,9 +662,6 @@ impl Connection { | ||||
|                         } else { | ||||
|                             handle_key(&me); | ||||
|                         } | ||||
|                         if is_enter(&me) { | ||||
|                             *CLICK_TIME.lock().unwrap() = crate::get_time(); | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|                 Some(message::Union::clipboard(cb)) => { | ||||
| @ -945,18 +938,7 @@ async fn start_ipc( | ||||
|                         return Err(err.into()); | ||||
|                     } | ||||
|                     Ok(Some(data)) => { | ||||
|                         match data { | ||||
|                             ipc::Data::ClickTime(_)=> { | ||||
|                                 unsafe { | ||||
|                                     let ct = *CLICK_TIME.lock().unwrap(); | ||||
|                                     let data = ipc::Data::ClickTime(ct); | ||||
|                                     stream.send(&data).await?; | ||||
|                                 } | ||||
|                             } | ||||
|                             _ => { | ||||
|                                 tx_from_cm.send(data)?; | ||||
|                             } | ||||
|                         } | ||||
|                         tx_from_cm.send(data)?; | ||||
|                     } | ||||
|                     _ => {} | ||||
|                 } | ||||
|  | ||||
							
								
								
									
										11
									
								
								src/ui/cm.rs
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								src/ui/cm.rs
									
									
									
									
									
								
							| @ -57,13 +57,6 @@ impl ConnectionManager { | ||||
|         ICON.to_owned() | ||||
|     } | ||||
| 
 | ||||
|     fn check_click_time(&mut self, id: i32) { | ||||
|         let lock = self.read().unwrap(); | ||||
|         if let Some(s) = lock.senders.get(&id) { | ||||
|             allow_err!(s.send(Data::ClickTime(crate::get_time()))); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     #[inline] | ||||
|     fn call(&self, func: &str, args: &[Value]) { | ||||
|         let r = self.read().unwrap(); | ||||
| @ -118,9 +111,6 @@ impl ConnectionManager { | ||||
|             Data::ChatMessage { text } => { | ||||
|                 self.call("newMessage", &make_args!(id, text)); | ||||
|             } | ||||
|             Data::ClickTime(ms) => { | ||||
|                 self.call("resetClickCallback", &make_args!(ms as f64)); | ||||
|             } | ||||
|             Data::FS(v) => match v { | ||||
|                 ipc::FS::ReadDir { | ||||
|                     dir, | ||||
| @ -318,7 +308,6 @@ impl sciter::EventHandler for ConnectionManager { | ||||
|     } | ||||
| 
 | ||||
|     sciter::dispatch_script_call! { | ||||
|         fn check_click_time(i32); | ||||
|         fn get_icon(); | ||||
|         fn close(i32); | ||||
|         fn authorize(i32); | ||||
|  | ||||
| @ -3,8 +3,6 @@ view.windowFrame = is_osx ? #extended : #solid; | ||||
| var body; | ||||
| var connections = []; | ||||
| var show_chat = false; | ||||
| var click_callback; | ||||
| var click_callback_time = 0; | ||||
| 
 | ||||
| class Body: Reactor.Component | ||||
| { | ||||
| @ -208,21 +206,8 @@ event click $(div.chaticon) { | ||||
|     }); | ||||
| } | ||||
| 
 | ||||
| handler.resetClickCallback = function(ms) { | ||||
|     if (click_callback_time - ms < 120) | ||||
|         click_callback = null; | ||||
| } | ||||
| 
 | ||||
| function checkClickTime(callback) { | ||||
|     click_callback_time = getTime(); | ||||
|     click_callback = callback; | ||||
|     handler.check_click_time(body.cid); | ||||
|     self.timer(120ms, function() { | ||||
|         if (click_callback) { | ||||
|             click_callback(); | ||||
|             click_callback = null; | ||||
|         } | ||||
|     }); | ||||
|     callback(); | ||||
| } | ||||
| 
 | ||||
| function adaptSize() { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user