Branch: refs/heads/master
Home:
https://github.com/wxWidgets/wxWidgets
Commit: f4c765cf63a42aebe2e5f151ee4f756965f5fc50
https://github.com/wxWidgets/wxWidgets/commit/f4c765cf63a42aebe2e5f151ee4f756965f5fc50
Author: Fabrice de Gans <
stee...@gmail.com>
Date: 2023-09-06 (Wed, 06 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
[EGL] Fail early if EGL version is less than 1.5
* Add an explicit error message indicating why the `wxGLCanvas` failed
to initialize on systems where the EGL runtime version is older than
1.5.
* Change `wxGLCanvasEGL::GetDisplay()` to use `eglGetDisplay()` rather
than `eglGetPlatformDisplay()`. This is necessary because this has to
be called before EGL is initialized, which is the point where we can
know the EGL runtime version. `eglGetPlatformDisplay()` is only
available on EGL 1.5 and greater.
Bug: #22325
TEST=Tested the OpenGL samples on Wayland with EGL 1.5. Hard-coded the
EGL version number to an older version to ensure the samples were
failing with the expected error message.
Commit: 2886dd3f7c9bbb27e68adb783a0f3f4bc76d019e
https://github.com/wxWidgets/wxWidgets/commit/2886dd3f7c9bbb27e68adb783a0f3f4bc76d019e
Author: Fabrice de Gans <
stee...@gmail.com>
Date: 2023-09-08 (Fri, 08 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
[EGL] Use eglGetPlatformDisplay() if available
* Restored the code using `eglGetPlatformDisplay()` rather than
`eglGetDisplay()`, if the former is available. This is done by
checking for available EGL extensions.
* Fixed a couple of code style issues.
* Fail with `wxLogError()` rather than `wxFAIL_MSG()` when the runtime
EGL version is too old. Note that `wxFAIL_MSG()` still ends up being
called down the line due to initialization failure.
Commit: 20846b6b67897438ea78aa88d086f563f6258cb5
https://github.com/wxWidgets/wxWidgets/commit/20846b6b67897438ea78aa88d086f563f6258cb5
Author: Fabrice de Gans <
stee...@gmail.com>
Date: 2023-09-10 (Sun, 10 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
[EGL] Use eglGetProcAddress() to get EGLDisplay
This modifies the EGLDisplay initialization to pick the appropriate
function at runtime, depending on what is available. The preferred
function is `eglGetPlatformDisplay()`, which is only available on EGL
1.5+. As a fallback, `eglGetPlatformDisplayEXT()` is used. This is
available on some platforms using EGL 1.4, but is no longer available on
EGL 1.5. If all else fails, use the older `eglGetDisplay()` API.
Commit: 2f66c4a0e8e8a9a615c7310ccd88fd953eb340fd
https://github.com/wxWidgets/wxWidgets/commit/2f66c4a0e8e8a9a615c7310ccd88fd953eb340fd
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Use premultiplied ARGB32 bitmap format instead of ARGB32 in wxQt
For images with alpha, using premultiplied ARGB32 image format for
image composition using alpha blending (a more common operation) is
known to be faster than using plain ARGB32
Commit: 74a1d6908407b17d0cfcbd2f6fe16089320c7f89
https://github.com/wxWidgets/wxWidgets/commit/74a1d6908407b17d0cfcbd2f6fe16089320c7f89
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M include/wx/qt/bitmap.h
M src/qt/bitmap.cpp
Log Message:
-----------
Fix wxMask creation when converting wxImage to wxBitmap in wxQt
Also GetSubBitmap() should return the sub-mask too if the bitmap has a mask
Notice that masked/unmasked areas are reversed to be in accordance with wx
Commit: a26d99860018cf535c80ec31d1c08a05d35ac147
https://github.com/wxWidgets/wxWidgets/commit/a26d99860018cf535c80ec31d1c08a05d35ac147
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Fix access to raw bitmap data after the switch to the premultiplied format
Commit: d7711eae29ec788fcd1e9cf3ce28237591680e34
https://github.com/wxWidgets/wxWidgets/commit/d7711eae29ec788fcd1e9cf3ce28237591680e34
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Try to load/save bitmap files using Qt first
Commit: c2ba3447de7337b223fdec440a75c5829e29425e
https://github.com/wxWidgets/wxWidgets/commit/c2ba3447de7337b223fdec440a75c5829e29425e
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Avoid dithering when loading/creating monochrome bitmaps
Commit: c1f91177dff2eca0e4507501acc1bf67eb7b01eb
https://github.com/wxWidgets/wxWidgets/commit/c1f91177dff2eca0e4507501acc1bf67eb7b01eb
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M include/wx/rawbmp.h
Log Message:
-----------
Enable raw bitmap data access for monochrome bitmaps in wxQt
Commit: 36679cf896f40407c8fdad80bf61277e653b9aa9
https://github.com/wxWidgets/wxWidgets/commit/36679cf896f40407c8fdad80bf61277e653b9aa9
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Fix wxBitmap conversion to wxImage with/without a mask
Note that QImage is in premultiplied format if it has alpha, so we
need to unpremultiply it when converting to wxImage
Commit: d9e3efcf204ae5ff6222553e8f8cf6601993d299
https://github.com/wxWidgets/wxWidgets/commit/d9e3efcf204ae5ff6222553e8f8cf6601993d299
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M tests/graphics/bitmap.cpp
Log Message:
-----------
Update bitmap tests for wxQt
Commit: 160d171077f93302d1890d30fbde2cbdef884330
https://github.com/wxWidgets/wxWidgets/commit/160d171077f93302d1890d30fbde2cbdef884330
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/generic/graphicc.cpp
M tests/graphics/graphbitmap.cpp
Log Message:
-----------
Fix wxGraphicsBitmap creation after recent changes to wxBitmap under wxQt
Commit: 9591150d37d9cd3e4f542f98e5770e87b1485e5e
https://github.com/wxWidgets/wxWidgets/commit/9591150d37d9cd3e4f542f98e5770e87b1485e5e
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-13 (Wed, 13 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Use pre-increment instead of post-increment in loops
No real changes just a micro-optimization and make some variables const,
also simplify ConvertImage() return statement.
Commit: 26faeb4f74876dceccbbedb20faf1555f781e904
https://github.com/wxWidgets/wxWidgets/commit/26faeb4f74876dceccbbedb20faf1555f781e904
Author: Fabrice de Gans <
stee...@gmail.com>
Date: 2023-09-14 (Thu, 14 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
[EGL] Query for extension to get display
This adds a query for the `EGL_EXT_platform_base` extension before
attempting to get either `eglGetPlatformDisplay` or
`eglGetPlatformDisplayEXT` function address. This seems to be the
recommended way of getting either function, per the EGL spec. See
https://registry.khronos.org/EGL/api/egl.xml for reference.
Commit: c1e3b1b96e8b8531ebdd77c1e804e96788299717
https://github.com/wxWidgets/wxWidgets/commit/c1e3b1b96e8b8531ebdd77c1e804e96788299717
Author: Fabrice de Gans <
stee...@gmail.com>
Date: 2023-09-14 (Thu, 14 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
[EGL] Move extension query to a separate variable
It is necessary to call `wxGLCanvasBase::IsExtensionInList()` outside of
the lambda to work around a compiler bug in GCC 4.8.
Commit: 83a1b65e8486321a240e9660427e8a147406d000
https://github.com/wxWidgets/wxWidgets/commit/83a1b65e8486321a240e9660427e8a147406d000
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-18 (Mon, 18 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Always return the original uninverted bitmap from wxMask::GetBitmap()
For correct results, because the convention under Qt is the reverse of what
wxWidgets documents (black for masked area) and (white for the unmasked area)
and the mask bitmap is always stored inverted internally to keep QPixmap::setMask()
behaviour the same as wxWidgets.
Commit: ff2b3ee1f279a968487f8a3d995df06bb795c74d
https://github.com/wxWidgets/wxWidgets/commit/ff2b3ee1f279a968487f8a3d995df06bb795c74d
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-19 (Tue, 19 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Fix wxBitmap::GetRawData() for monochrome bitmap under wxQt
Commit: d986aed5cd45fc06538a7c474666f3ab60b619cb
https://github.com/wxWidgets/wxWidgets/commit/d986aed5cd45fc06538a7c474666f3ab60b619cb
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-19 (Tue, 19 Sep 2023)
Changed paths:
M src/generic/graphicc.cpp
M tests/graphics/bitmap.cpp
Log Message:
-----------
Fixup! get rid of unnecessary hacks
The discrepancy with the other ports was fixed by the previous two commits.
Commit: cd4baa0de0a852b1a085c9d67c7e5dae0411d8df
https://github.com/wxWidgets/wxWidgets/commit/cd4baa0de0a852b1a085c9d67c7e5dae0411d8df
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-21 (Thu, 21 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Slightly simplify s_eglGetPlatformDisplay initialization
No real changes, just avoid using the IIFE which doesn't seem very
useful here.
Also explicitly list all enum elements in a switch so that we get a
compiler warning if a new one is ever added.
Commit: 1e43b375bc1ed58ecaea3239b49ed6381d4184c6
https://github.com/wxWidgets/wxWidgets/commit/1e43b375bc1ed58ecaea3239b49ed6381d4184c6
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-23 (Sat, 23 Sep 2023)
Changed paths:
M include/wx/qt/bitmap.h
M src/generic/imaglist.cpp
M src/qt/bitmap.cpp
Log Message:
-----------
Added QtBlendMaskWithAlpha() to wxBitmap under wxQt
Blend mask with alpha channel and remove the mask.
We need this function for performance reasons. e.g. the wxImageList (used by
wxTreeCtrl and wxListCtrl) calls this function to convert the mask (if any)
to alpha. Because the controls (under wxQt) using the image list ignore the
mask on the bitmaps and expect alpha instead.
This is similar to MSWBlendMaskWithAlpha() found in wxMSW port.
Commit: 3875b9d1174d29ea28e014b2038070594e2ffd84
https://github.com/wxWidgets/wxWidgets/commit/3875b9d1174d29ea28e014b2038070594e2ffd84
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-23 (Sat, 23 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Code refactoring only
No real changes, just extract the common code between SaveFile() and LoadFile()
that converts wxBitmapType to Qt type and reuse it to eliminate code duplication.
Commit: b12cdc6739f96d50165d41ecaefb7a86c46d96a6
https://github.com/wxWidgets/wxWidgets/commit/b12cdc6739f96d50165d41ecaefb7a86c46d96a6
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-24 (Sun, 24 Sep 2023)
Changed paths:
M include/wx/qt/bitmap.h
M src/qt/bitmap.cpp
Log Message:
-----------
Minor fixes to constructors
Make wxMask constructor taking QBitmap explicit
And wxBitmapRefData already has a constructor taking a QPixmap
Commit: 4bbd313ecfbd7ec9fbdcc7a7de311c882a4726af
https://github.com/wxWidgets/wxWidgets/commit/4bbd313ecfbd7ec9fbdcc7a7de311c882a4726af
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-24 (Sun, 24 Sep 2023)
Changed paths:
M src/qt/bitmap.cpp
Log Message:
-----------
Check the bitmap is valid before accessing its height/width/depth
Commit: be75c73880f1166f1bdd5001a3b7c40e7691daf8
https://github.com/wxWidgets/wxWidgets/commit/be75c73880f1166f1bdd5001a3b7c40e7691daf8
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-24 (Sun, 24 Sep 2023)
Changed paths:
M include/wx/qt/bitmap.h
M src/qt/bitmap.cpp
Log Message:
-----------
Add missing guard before using wxImage in wxBitmap code
Commit: 547fb15c51b43b9486c6c5422a60a27fbf53eb43
https://github.com/wxWidgets/wxWidgets/commit/547fb15c51b43b9486c6c5422a60a27fbf53eb43
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-24 (Sun, 24 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Show the window in wxGLCanvasEGL tracing messages
This is useful when there is more than one window using EGL.
Commit: 284edcd83c208e7780dfc6201829200854741ea0
https://github.com/wxWidgets/wxWidgets/commit/284edcd83c208e7780dfc6201829200854741ea0
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-24 (Sun, 24 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Disable blocking in eglSwapBuffers() when using X11 too
Unfortunately we can't let EGL under XWayland block neither, even if we
can't update the window efficiently in this case, as we could do when
using real Wayland in 194a7be33f (Improve wxGLCanvasEGL refresh logic
under Wayland, 2023-05-17), because otherwise occluding any window with
a wxGLCanvasEGL inside it slows down the entire program to a crawl as
all events are generated at a rate of 1 per second only.
Choose the lesser of two evils and update even completely hidden
windows, which is inefficient, but at least allows to also update the
other ones, unlike before.
Also note that we must call eglSwapInterval() in SwapBuffers() and that
calling it in CreateSurface() somehow has no effect when using Sway WM,
even though it would also solve the problem under GNOME/mutter.
Closes #23512.
Co-authored-by: Tristan Daniel <
tdan...@users.noreply.github.com>
Commit: d128afe1e8fff6fbd16c46ffbe30eaba706ff274
https://github.com/wxWidgets/wxWidgets/commit/d128afe1e8fff6fbd16c46ffbe30eaba706ff274
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-25 (Mon, 25 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Handle all cases in switch instead of using "default"
No real changes, just clean up the code a bit to make sure we get a
-Wswitch if any elements are added to wxDisplayType enum in the future.
Commit: 8654766fed0d86d9ebfc42e275ce624b8ef1f5e2
https://github.com/wxWidgets/wxWidgets/commit/8654766fed0d86d9ebfc42e275ce624b8ef1f5e2
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-25 (Mon, 25 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Check that Wayland subsurface creation succeeded
It seems that the check for m_surface added in 952de605f6 (Handle
map/unmap events on Wayland's wxGLCanvasEGL, 2023-08-25) was a
copy-paste error and we actually need to check m_wlSubsurface here.
Commit: cf44a87ec62f9cefb428b8d6c002c2ee342dc4ec
https://github.com/wxWidgets/wxWidgets/commit/cf44a87ec62f9cefb428b8d6c002c2ee342dc4ec
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-25 (Mon, 25 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Fix wxGLCanvasEGL::IsShownOnScreen() under Wayland
Don't use m_readyToDraw in it, as the canvas is still shown even when
it's not ready to draw yet, and use m_wlSubsurface instead as it is
destroyed when the window is unmapped.
Closes #23899.
Commit: c9bbc7e57040865db2d83f97276135b2bb0b9a57
https://github.com/wxWidgets/wxWidgets/commit/c9bbc7e57040865db2d83f97276135b2bb0b9a57
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-27 (Wed, 27 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Check if eglSwapInterval() failed and log a message in this case
This allows to see that currently it always fails with EGL_BAD_CONTEXT
error.
Commit: 6e8fc2370551d8830693aaad37b3ef89f84801a2
https://github.com/wxWidgets/wxWidgets/commit/6e8fc2370551d8830693aaad37b3ef89f84801a2
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-27 (Wed, 27 Sep 2023)
Changed paths:
M include/wx/unix/glegl.h
M src/unix/glegl.cpp
Log Message:
-----------
Make Wayland frame callback a wxGLCanvasEGL member function
This allows to make m_readyToDraw private.
No real changes otherwise.
Commit: 647564126b5e74654fdaad8c826d4f8c2d46ee0f
https://github.com/wxWidgets/wxWidgets/commit/647564126b5e74654fdaad8c826d4f8c2d46ee0f
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-27 (Wed, 27 Sep 2023)
Changed paths:
M include/wx/unix/glegl.h
M src/unix/glegl.cpp
Log Message:
-----------
Call eglSwapInterval() when it can succeed
Postpone calling this function until we get the (first) frame callback
as by this time the EGL context is fully valid and can be used inside it
and it doesn't fail any longer.
Commit: 4036a555bf9bf38a0321c952cc7c360e7fccca25
https://github.com/wxWidgets/wxWidgets/commit/4036a555bf9bf38a0321c952cc7c360e7fccca25
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-28 (Thu, 28 Sep 2023)
Changed paths:
M include/wx/qt/popupwin.h
M src/qt/popupwin.cpp
Log Message:
-----------
wxPopupWindow implementation under wxQt completed
Commit: 9ef8f26c541b387a013101a767102788a7fa517f
https://github.com/wxWidgets/wxWidgets/commit/9ef8f26c541b387a013101a767102788a7fa517f
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-28 (Thu, 28 Sep 2023)
Changed paths:
M src/generic/tipwin.cpp
Log Message:
-----------
Don't destroy the wxTipWindow window when it is closed
This leads to double deletion problem because it was already destroyed
in wxEVT_KILL_FOCUS handler when the popup window is hidden.
Commit: 9c0ab149b304d32c29473c7b597deb99f2a8411f
https://github.com/wxWidgets/wxWidgets/commit/9c0ab149b304d32c29473c7b597deb99f2a8411f
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-28 (Thu, 28 Sep 2023)
Changed paths:
M src/common/combocmn.cpp
Log Message:
-----------
Make wxComboCtrl and its derivatives work again under wxQt
see issue #23894
Commit: 36aa1184c7c79544397e92e4263121f3230f3ed8
https://github.com/wxWidgets/wxWidgets/commit/36aa1184c7c79544397e92e4263121f3230f3ed8
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-28 (Thu, 28 Sep 2023)
Changed paths:
M src/qt/window.cpp
Log Message:
-----------
Code refactoring only
No real changes. the code setting the Qt window's client size is
extracted to be reused in the next upcoming commit.
Commit: fbd9dcba5931f9fda47a1b40e3873f51eca73927
https://github.com/wxWidgets/wxWidgets/commit/fbd9dcba5931f9fda47a1b40e3873f51eca73927
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-28 (Thu, 28 Sep 2023)
Changed paths:
M src/qt/window.cpp
Log Message:
-----------
wxWindowQt::DoSetClientSize() fixup!
Since we are not using any Qt geometry management (QLayout) inside wxWidgets
that guarantees proper resizeing of Qt window when its client widget is resized,
we have to do manual resizing to ensure that.
Commit: 6caaf589f17accf2e29292b669f525b74ec3cef3
https://github.com/wxWidgets/wxWidgets/commit/6caaf589f17accf2e29292b669f525b74ec3cef3
Author: PB <
pbfo...@gmail.com>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M docs/doxygen/images/appear-treectrl-msw.png
M include/wx/treebase.h
Log Message:
-----------
Use more modern appearance for wxMSW wxTreeCtrl by default
Change wxTreeCtrl default style under wxMSW to make it look more
up-to-date by default: use twisting buttons and full-row highlight and
don't display connector lines.
Using wxTR_LINES_AT_ROOT together with wxTR_NO_LINES may look odd but it
is needed because without wxTR_LINES_AT_ROOT, the buttons would not be
displayed.
Also update wxTreeCtrl screenshot in the docs.
Closes #23844.
Commit: 19ed2580d39b0f0914ee89556cce340bfe09a1c0
https://github.com/wxWidgets/wxWidgets/commit/19ed2580d39b0f0914ee89556cce340bfe09a1c0
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Merge branch 'egl-initialize-check-runtime-version' of
https://github.com/Steelskin/wxWidgets
Improve error handling when EGL version is less than 1.5: fail earlier
and with more clear error message.
See #22325, #23855.
Commit: d57e175a7c535a5ee5980bfd0615af9c1fdd1b69
https://github.com/wxWidgets/wxWidgets/commit/d57e175a7c535a5ee5980bfd0615af9c1fdd1b69
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M include/wx/qt/bitmap.h
M include/wx/rawbmp.h
M src/generic/graphicc.cpp
M src/generic/imaglist.cpp
M src/qt/bitmap.cpp
M tests/graphics/bitmap.cpp
M tests/graphics/graphbitmap.cpp
Log Message:
-----------
Merge branch 'qt-bmp-premult' of
https://github.com/AliKet/wxWidgets
Use premultiplied ARGB32 format for wxBitmap under wxQt: this makes
bitmap-related unit tests pass with wxQt too.
See #23872.
Commit: df75c272333976f20c1d91420f8df3bcdd8cd803
https://github.com/wxWidgets/wxWidgets/commit/df75c272333976f20c1d91420f8df3bcdd8cd803
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/common/stream.cpp
Log Message:
-----------
Optimize wxInputStream::SeekI() from start or current position
It's not clear whether it's worth explicitly checking for no-op seeks at
all, but unnecessarily calling GetLength() when doing it is certainly a
pessimization rather than optimization, so don't do it.
And don't bother checking for no-op seeks when seeking from end at all,
as it's not obviously faster than just performing the seek and the
existing code didn't work correctly anyhow, as it compared the current
position with "size-pos" instead of the correct "size+pos", so removing
it certainly shouldn't make things worse.
Closes #23895, #23897.
Commit: 72ab8f2889da1740040d23dea095de7711365676
https://github.com/wxWidgets/wxWidgets/commit/72ab8f2889da1740040d23dea095de7711365676
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Merge branch 'egl-hidden-refresh'
Don't slow the entire program down to a crawl if a wxGLCanvasEGL is
entirely hidden when using XWayland.
See #23898.
Commit: 5c283055808d17e9bdce954c6958afef61ae8979
https://github.com/wxWidgets/wxWidgets/commit/5c283055808d17e9bdce954c6958afef61ae8979
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/unix/glegl.cpp
Log Message:
-----------
Merge branch 'egl-isshown-fix'
Fix wxGLCanvasEGL::IsShownOnScreen() under Wayland.
See #23900.
Commit: fe420caa3bc966b968be985fbba0c0ff5a897546
https://github.com/wxWidgets/wxWidgets/commit/fe420caa3bc966b968be985fbba0c0ff5a897546
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/common/datavcmn.cpp
M src/generic/datavgen.cpp
Log Message:
-----------
Fix background colour for empty cells in generic wxDataViewCtrl
There were two related problems: first, any attempts to set the
background colour for the cells without values were simply ignored
because we didn't call wxDataViewModel::GetAttr() at all from
PrepareForItem() in this case and, second, PrepareForItem() itself was
not called when repainting the control neither, resulting in the
existing attribute being reused for the items without values, meaning
that they used the last background colour that was set instead of at
least not using any background at all.
Fix both of the problems for the generic version. Unfortunately the GTK
one still doesn't allow setting the background for the empty cells, but
at least when not doing it the code now consistently leaves them without
any background.
The following code can be added to MyMusicTreeModel in the dataview
sample for testing this:
--------------------------------- >8 --------------------------------------
bool GetAttr( const wxDataViewItem& item, unsigned int col, wxDataViewItemAttr& attr) const override
{
if (col != 1)
return false;
if (IsContainer(item))
{
if (item != m_pop)
return false;
attr.SetBackgroundColour(*wxYELLOW);
}
else
{
attr.SetColour(*wxYELLOW);
attr.SetBackgroundColour(*wxLIGHT_GREY);
}
return true;
}
--------------------------------- >8 --------------------------------------
Closes #23708, #23902.
Commit: 4883e185bc0b55e0134de0edb20020783b345411
https://github.com/wxWidgets/wxWidgets/commit/4883e185bc0b55e0134de0edb20020783b345411
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M include/wx/qt/popupwin.h
M src/common/combocmn.cpp
M src/generic/tipwin.cpp
M src/qt/popupwin.cpp
Log Message:
-----------
Merge branch 'qt-popup' of
https://github.com/AliKet/wxWidgets
Fix wxPopupWindow implementation under wxQt.
See #23904.
Commit: aaabb840b59d24796f521a1174dc428999a2a5a3
https://github.com/wxWidgets/wxWidgets/commit/aaabb840b59d24796f521a1174dc428999a2a5a3
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M include/wx/unix/glegl.h
M src/unix/glegl.cpp
Log Message:
-----------
Merge branch 'egl-wl-swap-interval'
Fix setting EGL swap interval under native Wayland too.
See #23909, #23512.
Commit: 36f1b0f14c836c1709836d4f97086f4573a795b1
https://github.com/wxWidgets/wxWidgets/commit/36f1b0f14c836c1709836d4f97086f4573a795b1
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/qt/window.cpp
Log Message:
-----------
Merge branch 'qt-clientsize' of
https://github.com/AliKet/wxWidgets
Fix wxWindow::SetClientSize() under wxQt.
See #23912.
Commit: f25103313ed0512837b50774fb81bdb40ad45a41
https://github.com/wxWidgets/wxWidgets/commit/f25103313ed0512837b50774fb81bdb40ad45a41
Author: Václav Slavík <
vac...@slavik.io>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M src/osx/cocoa/
statline.mm
Log Message:
-----------
Fix invisible wxStaticLine on macOS >= 13
NSBox used as a separator must have its type set to NSBoxSeparator.
This apparently didn't matter before in practice, but starting with
macOS 13, separators - i.e. narrow NSBoxes - without the type correctly
set are invisible.
Closes #23913.
Commit: 7e9d06f58436300243fe3b8b076dc222b63dea2e
https://github.com/wxWidgets/wxWidgets/commit/7e9d06f58436300243fe3b8b076dc222b63dea2e
Author: Vadim Zeitlin <
va...@wxwidgets.org>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M include/wx/simplebook.h
Log Message:
-----------
Ensure that the currently shown wxSimplebook page has focus
When calling wxSimplebook::ChangeSelection(), the focus remained on the
previous, now hidden, page, unless it was explicitly set to one of the
controls on the new page.
This was completely unexpected as it could result in the user
(inadvertently) changing the values of the already "accepted" controls
on the last page, so don't let this happen and always set the focus to
the new page explicitly, even if this hasn't been done by
ShowWithEffect() which doesn't do it at least under wxMSW.
Closes #23914.
Commit: 3c6869605e407176d6a4dde64e1ccc272d9c65a2
https://github.com/wxWidgets/wxWidgets/commit/3c6869605e407176d6a4dde64e1ccc272d9c65a2
Author: ali kettab <
alike...@gmail.com>
Date: 2023-09-30 (Sat, 30 Sep 2023)
Changed paths:
M include/wx/qt/toplevel.h
M include/wx/qt/window.h
M src/qt/toplevel.cpp
M src/qt/window.cpp
Log Message:
-----------
Make wxTopLevelWindow::SetSizeHints() work in wxQt
Override Set{Min,Max}Size and DoSetSizeHints() to pass size information
to Qt: setting min/max widget size at the wxWidgets level is not enough
to take effect unless the information is also set at the Qt level.
Closes #23917.
Compare:
https://github.com/wxWidgets/wxWidgets/compare/df6366ff5737...3c6869605e40