Hi,

I have been working quite a lot on Qt style sheets for various systems,
which I tested for both the Qt4 and Qt5 versions.  There are basically
the following themes:

    - Legacy  (the old default)
    - Native  (a replacement for the old default with a native look-and-feel)
    - Light   (a light theme)
    - Dark    (a dark theme)

The theme can be selected in the preferences.

Please find an updated list of remaining issues attached.

Best wishes, --Joris
<TeXmacs|2.1>

<style|<tuple|tmdoc|pagella-font>>

<\body>
  <subsection*|General Qt bugs>

  <\itemize>
    <item>There is an annoying issue with QComboBox: when using
    <menu|Edit|Preferences|User interface theme|Dark>, <menu|View|Retina
    settings|Scale graphical interface|1.5>, and then opening
    <menu|Document|Font>, the vertical spacing of the pulldown menu
    <menu|Standard> is incorrect. The bug is most prominent for large
    \Pscales\Q, but it is also present for the default scale.

    This problem seems to be due to the way Max creates the widgets: at
    creation time, the parents are not always known, whence the style can be
    incorrect and somehow some of the parameters for the popup menu seem to
    get frozen at the creation time (and not updated when the widget obtains
    a parent). I am not fluent enough with Qt and Max' implementation to
    understand what I should do. The bug is not critical, but it is annoying;
    I would like to understand if there is something we can do.

    <item>Setting the environment variable <var|scroll-bars> to
    <verbatim|false> does not seem to have any effect under Qt (contrary to
    Widkit). This already seems to be the case for Qt4.

    <item>On certain systems, when a tab button has the focus, then an ugly
    dotted rectangle is drawn around the text on the tab.
  </itemize>

  <subsection*|General Qt5 bugs>

  <\itemize>
    <item>Denis (Raux) and Jean-Marc (Notin) managed to compile <TeXmacs> for
    ARM (an <name|Apple><nbsp>M1 based <name|Mac> <name|Mini>), using
    <name|Qt> 5.12. The native <name|Mac> menu again seems to trigger a lot
    of segfaults, especially when opening documentation using the <menu|Help>
    menu. This problem disappears when using the non-native menubars
    (<menu|Preferences|Other>, SVN version of<nbsp><TeXmacs>). This problem
    also seems to be present in several older versions of MacOS.

    <item>Contrary to Qt4, documents with a vertical scrollbar get centered
    with respect to the rectangle that contains the scrollbar. This is
    annoying if the width of the document is close to the width of the
    canvas. In particular, when opening <menu|Tools|Macros|Edit macros>, this
    happens systematically for the documentation of tags like
    <markup|section> that does not fit inside the designated rectangle.

    <item><menu|Document|Colors|Background>: the colored entries do not work;
    they do work in the pulldown menus for colors <em|via> the toolbars.

    <item>(Legacy theme) open a pulldown menu on one of the toolbars. Then
    click elsewhere on the toolbars; the pulldown menu icon remains
    highlighted until you hover the mouse over<nbsp>it.

    <item>The way icons sizes are managed is problematic. For the moment, I
    fixed all major problems, but I set the icon size inside widgets to a
    fixed <verbatim|16px>. What about SVG icons?

    <item>The canvas and vertical scrollbar behaves strangely when the height
    of the document slightly exceeds the height of the canvas. For instance,
    in the font browser, select a 10pt \PTeX Gyre Cursor\Q font.
  </itemize>

  <subsection*|Windows>

  <\itemize>
    <item>Images in JPEG format make <TeXmacs> crash (whether in the form of
    included images, background images, patterns).

    <item><menu|Tools|Miscellaneous|Show key presses>: the default font does
    not have symbols fro special keys <key|return> (return), <key|right>
    (right), <key|backspace> (backspace), etc.

    <item>Japanese and Korean do not seem to be supported.
  </itemize>

  <subsection*|MacOS>

  <\itemize>
    <item>Under Qt4, I have ugly black corners around popup menus.

    <item>The background color in color popup menus is sometimes incorrect
    for the portions that contain colored buttons (native and legacy themes).
  </itemize>

  <subsection*|Side tools>

  The experimental side tools can be activated by enabling
  <menu|Tools|Developer tool> and then <menu|View|Side tools>. Several test
  tools can be found in <menu|Developer|Experimental side tools>.

  <\itemize>
    <item>When the height of the side tools becomes large, the height of the
    window is automatically increased, even beyond the size of the screen.

    <item>The width of the canvas is sometimes computed incorrectly as the
    size of the width of the main window (without subtraction of the width of
    the side tools). This is annoying when selecting <menu|Document|Page|Page
    rendering|Screen>.

    <item>The side tools appears on top of the document when in full-screen
    view.
  </itemize>

  <subsection*|Retina screens>

  The retina support remains complex. I guess that we have to keep a lot of
  bells and whistles for the moment for the retina support. That said, this
  is mainly a major implementation nuisance. With a bit of patience, we can
  at least avoid any major bugs.

  <subsection*|Color themes>

  One annoying general problem is that the default colors of various widget
  elements are incorrect. This problem is most important when using a \PDark
  mode\Q.

  It is fairly difficult to understand for me how these things work precisely
  in <name|Qt>. I currently wrote three Qt style sheets
  <verbatim|native-light.css>, <verbatim|standard-light.css>, and
  <verbatim|standard-dark.css> for a<nbsp>native look-and-feel, as well as
  light and dark modes.

  It would probably be best to abstract things a bit further and allow some
  of the colors to be set from environment variables. Things like the colors
  of the cursor, selections, surrounding rectangles, syntac highlighting,
  etc. should also be configurable using environment variables.

  <subsection*|Other things>

  <\itemize>
    <item>We should implement modal widgets for certain important actions
    (confirming whether a file should be overridden, whether we really want
    to quit, that <TeXmacs> needs to be restarted, etc.).

    <item>It would be nice to have a way (for each OS) to automatically
    determine whether the user is in a \Pdark\Q or \Plight\Q mode and select
    the default theme accordingly.

    <item>It would be nice to have a way (for each OS) to set the color of
    the title bar.
  </itemize>

  <subsection*|Check>

  <\itemize>
    <item>Minimal size file browser for Windows and Linux.

    <item><TeXmacs> icons under Windows is ugly.
  </itemize>
</body>

<\initial>
  <\collection>
    <associate|math-font|math-pagella>
    <associate|page-medium|papyrus>
  </collection>
</initial>
_______________________________________________
Texmacs-dev mailing list
Texmacs-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/texmacs-dev

Reply via email to