pageOverlayActive Klasse wird entfernt obwohl pageOverlayActive noch gültig ist.

  • Affected App
    WoltLab Suite Core

    Im UiDialog wird pageOverlayActive hinzugefügt und entfernt ohne zu überprüfen ob die Klasse bereits vorher von anderen Dingen gesetzt wurde. Ich sehe im UiDialog bereits Code der überprüft, ob es noch andere Dialoge gibt, aber wenn zum Beispiel Mobil das Menü auf ist und bei Klick eine Abfrage kommt, ob man wirklich dorthin navigieren möchte wird die Klasse beim Schließen entfernt.

    Da data.onClose(id); auch vor dem Entfernen der Klasse aufgerufen wird, kann man das leider nicht selber beheben.

    Mein Hintergrund:

    Ich verschiebe alle Overlays per JS aus dem #content und hinter #pageContainer, sodass ich bei overlays den #pageContainer blurren kann. Das beruht aber auf pageOverlayActive.

    P.S. Die Overlays generell von Haus aus außerhalb des #pageContainer zu haben wäre vllt ganz sinnvoll.

  • P.S. Die Overlays generell von Haus aus außerhalb des #pageContainer zu haben wäre vllt ganz sinnvoll.

    Die Platzierung innerhalb des Containers ist bewusst gestaltet und soll die korrekte Anwendung von CSS gewährleisten, die sich im Selektor u. a. auf den Inhaltsbereich beziehen. Eine Änderung in dieser Hinsicht kommt daher nicht in Frage und würde zudem einen signifikanten Bruch der Kompatibilität darstellen.

  • soll die korrekte Anwendung von CSS gewährleisten

    Vielen Dank für den Hinweis, das ist mir bisher noch nicht aufgefallen. Um welche Selektoren handelt es sich zum Beispiel?

    Mein P.S. soll aber nicht vom eigentlichen Fehler ablenken, auch wenn das verschieben des Overlays nicht korrekt ist.

  • Vielen Dank für den Hinweis, das ist mir bisher noch nicht aufgefallen. Um welche Selektoren handelt es sich zum Beispiel?

    Wir nutzen es beispielsweise selbst für die Schriftfarbe, die sich im Inhaltsbereich von der Schriftfarbe der umgebenden Seite unterscheidet. Derartige Konstrukte tauchen erfahrungsgemäß häufiger auf, sei es durch fertige Stile oder individuelle Anpassungen der Betreiber. Nicht zu letzt wäre ein abweichendes Verhalten ("Im Inhalt passt es, aber im Overlay nicht") erfahrungsgemäß für den Nutzer schwer durchschaubar und somit als nachteilig anzusehen.

    Darüber hinaus bietet die aktuelle Implementierung auch eine transparente Anwendung von Selektoren im JavaScript, auch hier erfolgt eine Abdeckung von (verschachtelten) Element-Referenzen auf Basis des Inhaltsbereiches.

  • Alexander Ebert October 15, 2018 at 12:09 PM

    Added the Label Future fix
  • Eine kurzfristige Behebung kann ich hierfür nicht anbieten, die Klasse wird bereits in mehreren Komponenten verwendet, die untereinander aber exklussiv sind. Im Rahmen von 3.2 würde ich dies in eine neu zu schaffende Komponente, nach dem Vorbild des Scroll-Handling in Ui/Screen, auslagern, damit dies Komponenten-übergreifend synchron bleibt.

  • Marcel Werk January 30, 2019 at 5:03 PM

    Set the Label from Future fix to Confirmed
  • Marcel Werk January 30, 2019 at 5:03 PM

    Added the Label 5.2.0 Beta 1
  • Alexander Ebert January 31, 2019 at 7:18 PM

    Set the Label from Confirmed to Fixed

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!