icewm -- history of user-visible changes.  2021-11-24

Release icewm-2.9.0 released 2021-11-24
---------------------------------------

git shortlog -e -n -w80,6,8 2.8.0...2.9.0

Bert Gijsbers <gijsbers@science.uva.nl> (81):
      Document the -T switch to select the taskbar in icesh for issue
        ice-wm/icewm#18.
      Fix the format string for "restart" in Ukrainian to fix the build.
      Fix for FreeBSD build.
      Print default locale in testlocale.
      Detect locale text direction.
      Only let a frame retake focus on an ungrab event when the manager still
        believes that frame should have focus. This fixes the flashing of title
        bar buttons when the window list window is popped up.
      Set the default background of the window list window to prevent undrawn
        holes at the bottom of the window when running with a compositor and
        alpha blending.
      Support more Right-To-Left languages.
      Don't kill internal windows.
      Restore build if CONFIG_I18N is undefined.
      Add a font cache to prevent repeatedly loading the same fonts, which also
        makes icewm a little faster on startup.
      Document the tracing on font loading.
      Add support for edge switching during drag and drop operations.
      Document drag and drop.
      Be resilient to font preferences being set to the empty string.
      Improve the handling of font loading failures. Improve the handling of
        setting "PreferFreetypeFonts" to false. Use the font "10x20" as the last
        resort font to fallback to, instead of the "fixed" font.
      Move all FriBidi stuff into a dedicated class YBidi.
      Move FONT macros to header fontmacro.h.
      Add new class YRange.
      Add rightToLeft global.
      Move screen-window intersection into YWindow coverage.
      Use new FONT macros from fontmacro.h. Remove minimizedWindowFontName.
      Detect Right-To-Left locales.
      Flush stdout after printing preferences.
      Reuse discarded miniicon positions.
      Take into account Right-To-Left when sorting task buttons, tray icons and
        workspace buttons.
      Prefer drawString over drawChars.
      Take into account Right-To-Left when sorting object buttons.
      Prefer wchar_t over YUchar.
      Pass findRemove data parameter by value for 'this'.
      Remove old FONT macros.
      Take into account Right-To-Left when ordering task bar subwindows.
      Take into account Right-To-Left when sorting systray icons.
      Improve font tracing.
      Improve vertical font positioning for the address bar.
      Improve ascent/descent detection for font sets. Improve fallback font
        pattern generation for font sets. Much faster optimal text length
        detection for width-limited text fields. Improve the Xft last resort
        backup font.
      Fix the horizontal scrollbar for the window list window.
      Detect right-to-left text.
      Drop YString and YLocaleString.
      Modernize casts.
      Remove old commented out code.
      Support right-to-left text. Handle width-limited text.
      Merge id.po.
      Make DejaVu the default backup font family for corefonts.
      Print the codeset.
      Detect UTF-8 locale and support multibyte to wide character conversions.
      Support right-to-left languages for corefonts when i18n is enabled. When
        codesets are missing in a fontset, then only search for extra fonts in
        the same font family, and only when i18n is enabled.
      Add logout icons to Logout submenu and closes ice-wm/icewm#69.
      Update minimum required cmake version to 3.2.
      Remove bidi from textWidth and fix offset.
      Add cancel-logout icon.
      Set the background of the bottom right corner of a scrolled view for issue
        620.
      Document the "font" argument to the "--trace" option.
      Postpone the redrawing of the frame borders when there is another expose
        event in the pipeline.
      Ignore empty resize events prematurely to reduce flickering while resizing
        windows in the CoolSteel theme.
      Fix the last entry in the themes menu for the default theme.
      Don't repaint the taskbar when it is collapsed.  Clear the taskbar window
        once more after repainting to prevent background artefacts when
        collapsing and expanding the taskbar in the CoolSteel theme.
      Swap titlebar button positions for right-to-left languages.
      Fix to prevent the dancing taskbar collapse button, when repeatedly
        collapsing and expanding the taskbar.
      Prefer to keep the system menu within the frame when opening it from the
        menu button in the titlebar.
      Fix for preferring to open the system menu within the frame.
      Accept -C,--copying without complaining.
      Fix column alignment in menu's for right-to-left languages.
      Only free cursor attributes when valid.
      Fixes for drawing partitioned right-to-left text when using multiple Xft
        fonts.
      Only swap title button pixmaps for right-to-left locales when they have
        the same size.
      Guard against all fonts not providing some glyph.
      Add XEMBED_EMBEDDED_NOTIFY and XEMBED_WINDOW_ACTIVATE.
      Guard against the condition that the taskbar doesn't have a frame.
      Give icewmbg an error handler to protect against destroyed windows.
      Increase the right margin of task buttons from one to two for
        right-to-left titles.
      Fix typo.
      Don't maximize buttons on height, because of artefacts in CrystalBlue.
      Center the inputline to accommodate fonts larger than the addressbar.
      Left-align right-to-left text if it fits within the size limitation.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Add new headers.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Fix typo.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'

Taras Panchenko <top39@ukr.net> (9):
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Ukrainian)
      Translated using Weblate (Russian)
      Translated using Weblate (Ukrainian)

marcelo cripe <marcelocripe@gmail.com> (3):
      Translated (Portuguese (Brazil))
      Translated using Weblate (Portuguese (Brazil))
      Translated using Weblate (Portuguese (Brazil))

TarasPanchenko <90216151+TarasPanchenko@users.noreply.github.com> (2):
      Update icewm-session.desktop (#616)
      Update icewm.desktop (#617)

Kukuh Syafaat <syafaatkukuh@gmail.com> (1):
      Translated using Weblate (Indonesian)

wallon <franckjl@hotmail.com> (1):
      Translated using Weblate (French)


Release icewm-2.8.0 released 2021-10-04
---------------------------------------

git shortlog -e -n -w80,6,8 2.7.0...2.8.0

Bert Gijsbers <gijsbers@science.uva.nl> (28):
      Fix overflows in battery calculations for issue #607. Change defines to
        enums. Use longs for capacity numbers.
      Prevent a pedantic warning for netDevice.
      Fix typo in sizeby description.
      Update date and version number to 2.7.0.
      Fix potential trailing -I flag for issue ice-wm/icewm#57.
      Move SVG loader in a dedicated source file.  Only support SVG for icons,
        not for icewmbg backgrounds. Let icewmbg pixmaps free its associated
        Image to reduce memory usage.
      Include string.h in ysvg.cc to fix build for some.
      Improve filtering on WM_CLASS property in icesh.
      Update pot files.
      Include yimage.h for gdk-pixbuf.
      Add +group and +Class select options to icesh.
      In the window list window group similar application windows together.
      Improve performance and scalability of the window list menu.
      Update to pt_BR.po by marcelocripe and closes ice-wm/icewm#60.
      Add yimage2.h.
      Remove obsolete Makefile.os2.
      Remove obsolete preferences.xml.
      Guard against a color name being set to the empty string for issue #614.
      Explain how to spy on client messages.
      Update winoptions example on DockApps.
      Update potfiles.
      Clarify some preferences.
      Clarify MailBoxPath.
      When rearranging windows with tile placement, cascade placement, correct
        for the top side vertical offset, in those themes which have a masked
        top border.
      Improve the explanation on how to spy on client messages.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'
      Prepare 2.8.0 release

marcelo cripe <marcelocripe@gmail.com> (5):
      Translated using Weblate (Portuguese (Brazil))
      Translated using Weblate (Portuguese (Brazil))
      Translated using Weblate (Portuguese (Brazil))
      Translated using Weblate (Portuguese (Brazil))
      Translated using Weblate (Portuguese (Brazil))

Hugo Carvalho <hugokarvalho@hotmail.com> (3):
      Translated using Weblate (Portuguese)
      Translated using Weblate (Portuguese)
      Translated using Weblate (Portuguese)

Henrik Tunedal <tunedal@gmail.com> (2):
      Fix OSS/ALSA defaults in icesound man page (#608)
      Fix OSS/ALSA defaults in icesound help message (#609)

Aleš Kastner <alkas@volny.cz> (1):
      Translated using Weblate (Czech)

David Medina <medipas@gmail.com> (1):
      Translated using Weblate (Catalan)

Efstathios Iosifidis <eiosifidis@gmail.com> (1):
      Translated using Weblate (Greek)

Ferdinand Galko <galko.ferdinand@gmail.com> (1):
      Translated using Weblate (Slovak)

Freek de Kruijf <freek@opensuse.org> (1):
      Translated using Weblate (Dutch)

Kukuh Syafaat <syafaatkukuh@gmail.com> (1):
      Translated using Weblate (Indonesian)

Rodrigo Macedo <rmsolucoeseminformatic4@gmail.com> (1):
      Translated using Weblate (Portuguese (Brazil))

Yasuhiko Kamata <belphegor@belbel.or.jp> (1):
      Translated using Weblate (Japanese)


Release icewm-2.7.0 released 2021-08-06
---------------------------------------

git shortlog -e -n -w80,6,8 2.6.0...2.7.0

Bert Gijsbers <gijsbers@science.uva.nl> (41):
      Get rid of unneeded classes YCursor and YResourcePaths. This also reduces
        the number of stat(2) system calls on startup.
      When changing themeName, allocate it dynamically.
      Update icewmbg.
      Print active window.
      Make it compile.
      Refresh icewmbg manpage.
      Remove obsolete files ypaths.cc and ypaths.h.
      Cache the looked up value for the openssl path.
      Avoid one level of indirection to speedup debugging.
      Rewrite task successor and task predecessor to properly take into account
        the separation of TaskBarApp and TaskButton as well as task grouping.
        Resolves #602, resolves #604.
      Ensure that PATH_MAX is defined.
      Also test find on MStringArray.
      Delay the loading of cursors as much as possible, because some cursors are
        seldomly used.
      Eliminate most of the inefficiences when looking for icon directories.
      Update potfiles.
      Add src/fdospecgen.h to POTFILES.in.
      Add 3 tests to automake for a "make check".
      Add a test for for-each on a MStringArray to testarray.cc.
      Double the timeout for the dynamic menu generator to 1.4 seconds.
      Remove obsolete macros.
      Add more tests on YStringArray.
      Guard against array indexing with negative indices.
      Add min+max on three parameters.
      Decrease number of system calls for path lookups.
      Add for-each on directory entries. Support efficient file type detection.
      Prefer nextExt when scanning directory for cursors.
      Reduce memory size of icewmbg. Speedup directory scanning in icewmbg.
      Increase reliability of motion compression by also testing for subwindow
        equality.
      Restore strtest.
      Reduce memory consumption by icewmbg further.
      Improve the responsiveness of icewmbg, by reducing the number of image
        scaling and pixmap operations.
      Add a --with-background= option to configure to set the default background
        path.
      Increase the maximum value for TaskbarButtonWidthDivisor from 25 to 50.
      Add support for a default background to the CMake build.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Remove test sources from POTFILES.in.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Add test executables to CLEANFILES.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'
      Prepare 2.7.0 release

Mehmet Akif 9oglu <madanadam@gmail.com> (4):
      Translated using Weblate (Turkish)
      Translated using Weblate (Turkish)
      Translated using Weblate (Turkish)
      Translated using Weblate (Turkish)

Alexander Richardson <Alexander.Richardson@cl.cam.ac.uk> (2):
      Fix building on a case-insensitive file system (#601)
      Allow using cmake -GNinja (#603)

Aleš Kastner <alkas@volny.cz> (1):
      Translated using Weblate (Czech)

David Medina <medipas@gmail.com> (1):
      Translated using Weblate (Catalan)

Ferdinand Galko <galko.ferdinand@gmail.com> (1):
      Translated using Weblate (Slovak)

Freek de Kruijf <freek@opensuse.org> (1):
      Translated using Weblate (Dutch)

Hugo Carvalho <hugokarvalho@hotmail.com> (1):
      Translated using Weblate (Portuguese)

Mehmet Akif <madanadam@gmail.com> (1):
      Minor Changes and Additions (#600)

Rodrigo Macedo <rmsolucoeseminformatic4@gmail.com> (1):
      Translated using Weblate (Portuguese (Brazil))

Yasuhiko Kamata <belphegor@belbel.or.jp> (1):
      Translated using Weblate (Japanese)


Release icewm-2.6.0 released 2021-07-08
---------------------------------------

git shortlog -e -n -w80,6,8 2.5.0...2.6.0

Bert Gijsbers <gijsbers@science.uva.nl> (22):
      Release the passive button grab from a focused window when a button click
        wouldn't raise it, for improved menu handling.
      When a focused window can't raise, or there is no overlapping window, then
        there shouldn't be a passive button grab by icewm, in order to improve
        internal menu handling by the application.
      Guard against buffer overflow when copying the degrees centigrade symbol.
      Use the "override" keyword consistently to avoid warnings.
      Prevent a warning on nullptr dereference.
      Define string field widths when using sscanf.
      Initialize all object fields.
      Prevent a hypothetical memory leak.
      Fix a type to boolean.
      Fix a fscanf format string type mismatch.
      Only do a passive grab on buttons which are defined by the
        ButtonRaiseMask.
      Use absolute paths for the Exec definition.
      Eliminate memory leaks in icon handling.
      Fix for browse menu's for root and home in start menu.
      Free start menu and windowlist menu on exit.
      Fix a memory leak for dynamic menu's.
      Keep track of changes to modal flag. Optimize raising of modals.
      Add a second modal dialog to testing.
      Remove superfluous includes.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'
      Prepare 2.6.0 release

Lucie Charrier <c.chalu@free.fr> (1):
      Translated using Weblate (French)

openSUSE Weblate <weblate-noreply@opensuse.org> (1):
      Merge branch 'origin/icewm-1-4-BRANCH' into Weblate.


Release icewm-2.5.0 released 2021-06-26
---------------------------------------

git shortlog -e -n -w80,6,8 2.4.0...2.5.0

Bert Gijsbers <gijsbers@science.uva.nl> (23):
      CMake builds html pages for ice-wm/icewm#50.
      Replace paths with configured directories in generated manpages for CMake
        build and also fix spaces and double quotes.
      Surround variable expansion with double quotes.
      Revert "Enforce that focus remains with IceTopWin for issue #593." This
        reverts commit 8306aba186294074054c5a4067ccfe7ddfeda75b.
      Transition testnetwmhints.cc from _WIN_ to _NET_ properties.
      Give hints on setGeometry format.
      Add full support for application modal dialogs.  Support WM_TRANSIENT_FOR
        being set to the root window per the EWMH standard in section:
        "Implementing enhanced support for application transient windows".
        Change long to int in YFrameWindow structure.
      make update-po
      Add -unmapped and -viewable filters. Restore the window selection after an
        "end" clause. Include the selection flags inside the test for
        conditional evaluation.
      Fix icesh example in manpage.
      Use colored backgrounds when creating test windows in testnetwmhints.
      Collect windows to arrange from layers OnTop, Normal and Below.
      Add "eventName()" for event logging.
      Add option parsing and event name logging to testmap.cc.
      Remove 6 obsolete macros from base.h.
      Add test for WM_HINTS XUrgencyHint.
      Clear the UrgencyHint in the WM_HINTS structure to stop the flashing.
      Change YTextProperty memory allocation type to malloc/free.
      Guard against frames without a client when destructing frames with kill
        message boxes.
      Reread properties list for internal clients.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'
      Prepare 2.5.0 release

Kukuh Syafaat <syafaatkukuh@gmail.com> (2):
      Translated using Weblate (Indonesian)
      Translated using Weblate (Indonesian)

Aleš Kastner <alkas@volny.cz> (1):
      Translated using Weblate (Czech)

David Medina <medipas@gmail.com> (1):
      Translated using Weblate (Catalan)

Ferdinand Galko <galko.ferdinand@gmail.com> (1):
      Translated using Weblate (Slovak)

Freek de Kruijf <freek@opensuse.org> (1):
      Translated using Weblate (Dutch)

Luiz Fernando Ranghetti <elchevive68@gmail.com> (1):
      Translated using Weblate (Portuguese (Brazil))

Yasuhiko Kamata <belphegor@belbel.or.jp> (1):
      Translated using Weblate (Japanese)


Release icewm-2.4.0 released 2021-06-07
---------------------------------------

git shortlog -e -n -w80,6,8 2.3.4...2.4.0

Bert Gijsbers <gijsbers@science.uva.nl> (24):
      Prevent compiler warnings.
      Don't reverse the alpha value, only the RGB color components.
      Improve centrally placing transient windows over their leader window when
        CenterTransientsOnOwner is enabled. Fix for when CenterLarge is true.
      Support WM_TAKE_FOCUS by setting wsTakeFocus flag.
      Add constructor with integer dimensions to YRect.
      Support scrolling the pixmap of a GraphicsBuffer.
      Improve icehelp colors and search in icehelp document with Ctrl+F and F3.
      Cleanup manageClient and split it up in smaller functions.
      Improve recovery from restart failures.
      Add support for DockApps.
      Consider AllWorkspaces to be equal to the active workspace, when
        QuickSwitchGroupWorkspaces is enabled, for issue #589.
      Support Ctrl+Mouse buttons to control dockapps.
      Enforce that focus remains with IceTopWin for issue #593.
      Move Dockapps with Ctrl+Button1. Honor order winoption for Dockapps.
        Respect startClose winoption for Dockapps. Preserve Dockapps ordering
        over restarts. Be resilient against a newly manage client exiting
        immediately. Add support for Dockapps to icesh.
      Only let icewm notify icewm-session at start and when not catchsegv.
      Support forcedClose winoption on Dockapps.
      Be pessimistic about the chances to locate a file icon on AntiX.
      Prevent a compilerwarning.
      Fix indentation and expand tabs.
      Check parameter against null in createFromImage.
      Reduce the bugs section to the essential and closes issue #592.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'
      Prepare 2.4.0 release

Agah Emir <agahemir986@gmail.com> (2):
      Translated using Weblate (Turkish)
      Translated using Weblate (Turkish)

Gemineo <vistatec@gemineo.de> (2):
      Translated using Weblate (German)
      Translated using Weblate (German)

Hugo Carvalho <hugokarvalho@hotmail.com> (2):
      Translated using Weblate (Portuguese)
      Translated using Weblate (Portuguese)

Aleš Kastner <alkas@volny.cz> (1):
      Translated using Weblate (Czech)

David Medina <medipas@gmail.com> (1):
      Translated using Weblate (Catalan)

Davide Aiello <davide.aiello@novilingulists.com> (1):
      Translated using Weblate (Italian)

Ferdinand Galko <galko.ferdinand@gmail.com> (1):
      Translated using Weblate (Slovak)

Freek de Kruijf <freek@opensuse.org> (1):
      Translated using Weblate (Dutch)

Lucie Charrier <c.chalu@free.fr> (1):
      Translated using Weblate (French)

Luiz Fernando Ranghetti <elchevive68@gmail.com> (1):
      Translated using Weblate (Portuguese (Brazil))

Mindaugas Baranauskas <opensuse.lietuviu.kalba@gmail.com> (1):
      Translated using Weblate (Lithuanian)

Yasuhiko Kamata <belphegor@belbel.or.jp> (1):
      Translated using Weblate (Japanese)


Release icewm-2.3.4 released 2021-05-07
---------------------------------------

git shortlog -e -n -w80,6,8 2.3.3...2.3.4

Bert Gijsbers <gijsbers@science.uva.nl> (26):
      Only use RTTI when debugging for issue ice-wm/icewm#48.
      Fix icesh exit code for #585.
      Add equality operators for lazy pointers.
      Add flags to test WM_PROTOCOLS.
      Add PingTimeout for issue ice-wm/icewm#47. When ping timeouts then request
        user permission to terminate for issue ice-wm/icewm#47.
      Let icehelp handle scrollbar keys when mouse pointer is inside a
        scrollbar.
      Attempt to improve vertical alignment of text with different font faces in
        icehelp.
      Empty strings are equal to null strings and remove optimization when
        updating preferences file.
      Generate preferences in sorted order.
      Add a button for a menu in icehelp. Support anti-aliased fonts in icehelp.
      Fix for snapping frame borders for themes with mask shaped top sides.
      Fix for positioning new frames for themes with mask shaped top sides.
      Always rebuild manpages when Makefile changes.
      make update-po
      Add a --disable-rsvg option to configure for issue #587.
      Add setNetName.
      Add reverse color.
      Don't adjust workarea when snapping from outside the workarea.
      Improve accuracy of clicking on links in icehelp. Support reverse video in
        icehelp. Add more keyboard shortcuts to icehelp.
      Add PingTimeout.
      Check input lengths.
      make update-po
      Reduce freetype font size for icehelp. Improve reversed link color for
        icehelp.
      Merge remote-tracking branch 'upstream/icewm-1-4-BRANCH' into
        icewm-1-4-BRANCH
      Merge branch 'icewm-1-4-BRANCH'
      Prepare 2.3.4 release

David Medina <medipas@gmail.com> (1):
      Translated using Weblate (Catalan)

Ferdinand Galko <galko.ferdinand@gmail.com> (1):
      Translated using Weblate (Slovak)

Freek de Kruijf <freek@opensuse.org> (1):
      Translated using Weblate (Dutch)

Guillaume GARDET <guillaume.gardet@opensuse.org> (1):
      Translated using Weblate (French)

Hugo Carvalho <hugokarvalho@hotmail.com> (1):
      Translated using Weblate (Portuguese)

Luiz Fernando Ranghetti <elchevive68@gmail.com> (1):
      Translated using Weblate (Portuguese (Brazil))

Yasuhiko Kamata <belphegor@belbel.or.jp> (1):
      Translated using Weblate (Japanese)

