title: Can I run @Hostlistner with other mouse event?
body: <p>To avoid to set an unuseful listener, I would like to start the <strong>mousemove listener</strong> only when the <strong>mousedown event</strong> is run. Something like that :</p>
  
  <p><strong>Inside my component.ts</strong></p>
  
  <pre><code>private startMouseMove(start: boolean){
     if(start){
          @HostListener('mousemove', ['$event'])
          onMouseMove(event: MouseEvent){
               console.log("start mousemove");    
               this.mousemove.emit(event);
          }
      }
  }
  
  @HostListener('mouseup', ['$event'])
  onMouseup(event: MouseEvent){
      console.log(event.type);
      this.startMouseMove(false);
  }
  
  @HostListener('mousedown', ['$event'])
  onMousedown(event: MouseEvent) {
      console.log(event.type);
      this.startMouseMove(true);
      return false; // Call preventDefault() on the event
  }
  </code></pre>
  
  <p>That does not work of course. I would like to know if it's possible in Angular and if it's possible, how to do this?</p>