]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/shared/shared-forms/markdown-textarea.component.ts
Add tooltip to maximize button and remove grey background
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-forms / markdown-textarea.component.ts
index d47f22d1d1796771014fe3470d52f66cba5c1c7c..9b3ab9cf3f4719f7e7532a826bdaecdf294ac3eb 100644 (file)
@@ -4,7 +4,7 @@ import { Subject } from 'rxjs'
 import { debounceTime, distinctUntilChanged } from 'rxjs/operators'
 import { Component, ElementRef, forwardRef, Input, OnInit, ViewChild } from '@angular/core'
 import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms'
-import { MarkdownService } from '@app/core'
+import { MarkdownService, ScreenService } from '@app/core'
 
 @Component({
   selector: 'my-markdown-textarea',
@@ -35,11 +35,15 @@ export class MarkdownTextareaComponent implements ControlValueAccessor, OnInit {
   previewHTML = ''
   isMaximized = false
 
+  maximizeInText = $localize`Maximize editor`
+  maximizeOutText = $localize`Exit maximized editor`
+
   private contentChanged = new Subject<string>()
   private scrollPosition: [number, number]
 
   constructor (
     private viewportScroller: ViewportScroller,
+    private screenService: ScreenService,
     private markdownService: MarkdownService
   ) { }
 
@@ -80,7 +84,10 @@ export class MarkdownTextareaComponent implements ControlValueAccessor, OnInit {
     this.isMaximized = !this.isMaximized
 
     // Make sure textarea have the focus
-    this.textareaElement.nativeElement.focus()
+    // Except on touchscreens devices, the virtual keyboard may move up and hide the textarea in maximized mode
+    if (!this.screenService.isInTouchScreen()) {
+      this.textareaElement.nativeElement.focus()
+    }
 
     // Make sure the window has no scrollbars
     if (!this.isMaximized) {