|
|
Home » Community » U++ community news and announcements » 2022.3rc5
|
Re: 2022.3rc4 [message #59411 is a reply to message #59410] |
Fri, 23 December 2022 11:51   |
Tom1
Messages: 1301 Registered: March 2007
|
Ultimate Contributor |
|
|
Hi,
I looked into the menu item text color issue on Windows 11, and discovered that it is related to the fix #97 in ChWin32.cpp by Klugier on September 2022. While it fixed the light theme menu item text colors visibility, it makes dark theme look bad, i.e. it now uses black menu item text on dark selection bar. The text should obviously remain white here. Could you please look at this?
Best regards,
Tom
|
|
|
Re: 2022.3rc4 [message #59412 is a reply to message #59411] |
Fri, 23 December 2022 13:45   |
 |
Klugier
Messages: 1099 Registered: September 2012 Location: Poland, Kraków
|
Senior Contributor |
|
|
Hello Tom,
Could you share a screenshot with the issue? For me everything looks fine on the latest Windows11 version 22H2.

Also, please compare to what Windows displays in other applications such as file explore. I can say that it is exactly the same for black and light themes. Please noticed that 22H2 version of Windows11 changed the style of menu bars and made the more similar to what we have in Windows10. If the issue is reproducible on older version of Windows11 and it is fine for WIndows10 I would ignore it. 21H2 supports ends on 10th of October 2023.
Klugier
U++ - one framework to rule them all.
[Updated on: Fri, 23 December 2022 13:53] Report message to a moderator
|
|
|
Re: 2022.3rc4 [message #59414 is a reply to message #59412] |
Fri, 23 December 2022 14:37   |
Tom1
Messages: 1301 Registered: March 2007
|
Ultimate Contributor |
|
|
Hi Klugier,
You're right. I have W11 22H1 in the office and that shows the problem. However, W11 22H2 (here at home) works correctly, so it's all good. I do not think we need to fix previous W11 since it will eventually be updated everywhere anyway.
Thanks and best regards,
Tom
|
|
|
Re: 2022.3rc4 [message #59423 is a reply to message #59410] |
Sat, 24 December 2022 11:02   |
lindquist
Messages: 33 Registered: March 2006 Location: Denmark
|
Member |
|
|
Hi,
Found a problem in the release. When creating a "clip" for DoDragAndDrop, when using AppendFiles to build the clip, then program receiving the dropped file will see a list of single char paths.
The problem seems to be in the String -> WString conversion. Changing AppendFiles to use just String (and unicode=false), it works just fine.
eg.
// somethings broken here
String dropFile = ConfigFile("foobar");
VectorMap<String, ClipData> clip;
AppendFiles(clip, { dropFile } );
if (DoDragAndDrop(clip, img, DND_COPY) == DND_COPY) {
// receiver sees {"f","o","o","b","a","r" } not "foobar"
}
I hope this report is sufficient.
|
|
|
Re: 2022.3rc4 [message #59424 is a reply to message #59410] |
Sat, 24 December 2022 11:08   |
lindquist
Messages: 33 Registered: March 2006 Location: Denmark
|
Member |
|
|
Bug with drag and drop and TabBar.
The following program, lets you drag an icon from the main window.
When doing so, as the dragging passes over hte TabBar, the program crashes:
#include <CtrlLib/CtrlLib.h>
#include <TabBar/TabBar.h>
using namespace Upp;
struct DragTabBug : TopWindow {
TabBar tabs;
DragTabBug() {
AddFrame(tabs);
}
void LeftDrag(Point p, dword keyflags) override {
Image i = CtrlImg::new_doc();
VectorMap<String, ClipData> clip;
Append(clip, i);
DoDragAndDrop(clip, i);
}
};
GUI_APP_MAIN
{
DragTabBug win;
win.Run();
}
ie. Click and drag the background, while dragging, move the cursor across the tabbar.
[Updated on: Sat, 24 December 2022 11:09] Report message to a moderator
|
|
|
|
Re: 2022.3rc4 [message #59426 is a reply to message #59424] |
Sat, 24 December 2022 13:13   |
 |
Klugier
Messages: 1099 Registered: September 2012 Location: Poland, Kraków
|
Senior Contributor |
|
|
Hello Lindquist and Mirek,
Thank you for raising this issue! I confirm that this issue is critical in the context of release. It is with us since 2022.1 when we introduced wchar that is 4 bytes length. The problem is that winapi requires 2 bytes instead of 4 bytes. The problem is with AppendFiles:
void AppendFiles(VectorMap<String, ClipData>& clip, const Vector<String>& files)
{
WString wfiles;
for(int i = 0; i < files.GetCount(); i++)
wfiles << files[i].ToWString() << (wchar)0;
sDROPFILES h;
h.unicode = true;
h.offset = sizeof(h);
GetCursorPos(&h.pt);
h.nc = TRUE;
String data;
data.Cat((byte *)&h, sizeof(h));
data.Cat((byte *)~wfiles, 2 * (wfiles.GetCount() + 1)); // Windows wants 2 bytes unicode string instead of 4 bytes we are providing
clip.GetAdd("files") = ClipData(data);
}
Mirek, you should be able to propose the best solution here since you know the WString 4 bytes internals very well. I would opt for something like using ToSystemCharset on files to make sure that we have proper encoding.
The bug can be reproduce with reference/DropFiles example. In this case you can not drop files from the window.
The issue is only reproduce on Windows.
Klugier
U++ - one framework to rule them all.
[Updated on: Sat, 24 December 2022 13:14] Report message to a moderator
|
|
|
|
|
|
Re: 2022.3rc5 [message #59433 is a reply to message #59431] |
Mon, 26 December 2022 22:44   |
 |
Klugier
Messages: 1099 Registered: September 2012 Location: Poland, Kraków
|
Senior Contributor |
|
|
Hello Mirek,
You added crash handling once TheIDE crashed. Recently, I had a crash on Linux and obtained this prompt on startup:
TheIDE has crashed the last time it was run. As the possible cause is libclang incompatibility, we are disabling Assist features for now.
You can have them reenabled in Setup / Settings..
I think it should be yes/no option. Most of the time I do not want to disable libclang and there is no 100% that the crash was caused by libclang. Going into setting and switch assist back is from my point of view too much in the additional work I need to do. Please consider changing this behavior before release...
The sad news is that the crash is still there, however the rerpoduction scenario is not so easy. I switched main package several time.
Klugier
U++ - one framework to rule them all.
[Updated on: Mon, 26 December 2022 22:46] Report message to a moderator
|
|
|
|
Re: 2022.3rc5 [message #59435 is a reply to message #59434] |
Tue, 27 December 2022 09:49   |
 |
mirek
Messages: 14255 Registered: November 2005
|
Ultimate Member |
|
|
Oblivion wrote on Mon, 26 December 2022 23:49Hi,
For some reason, I can't get clangd/TheIDE work on Linux (archlinux, up-to-date, clang 14.0.6);
No assist,no autocomplete, and the navigator is empty. Log says:
01:20:55:490 INFO LoadLibClang0(): libclang path: "/usr/lib/libclang.so"
And I always get the below error message, which is not very helpful...
libclang additional compiler options do not seem do be correct. Assist might not work.
I have no idea what those additional compiler options should be.
Any suggestions?
Best regards,
Oblivion
These are in settings/assist. The original reason is to allow activating c++20. The semantics is basically the same as compiler options in build method, however as Assist is not really connected to build method (well, it fetches include paths for the most likely clang build method, but that might not be one with c++20), it needs separate set.
Mirek
|
|
|
|
|
|
Re: 2022.3rc5 [message #59565 is a reply to message #59437] |
Sun, 05 February 2023 16:36   |
Oblivion
Messages: 1202 Registered: August 2007
|
Senior Contributor |
|
|
Hello Mirek,
Quote:
Anyway, that error means clang_parseTranslationUnit, which usually is caused by invalid commandline. If you have time, please try to investigate in Clang::Parse ide/clang/clang.cpp:77
I am still baffled by the problem. Couldn't make the new assist run on my Linux (ArchLinux) machines.
It works fine on Windows and is very cool.
It appears that clang.cpp:138, clang_parseTranslationUnit() function fails all the time, as I constantly see "failed commandline" message in the console. Logs don't show any error though...
So, I've dumped the values of main variables of the the Clang::Parse method (txt file is attached).
Where should I look at or what do you see wrong in these dumps?
Best regards,
Oblivion
-
Attachment: dump.txt
(Size: 7.91KB, Downloaded 100 times)
Github page: https://github.com/ismail-yilmaz
upp-components: https://github.com/ismail-yilmaz/upp-components
Bobcat the terminal emulator: https://github.com/ismail-yilmaz/Bobcat
[Updated on: Sun, 05 February 2023 16:37] Report message to a moderator
|
|
|
|
|
Goto Forum:
Current Time: Fri Apr 25 20:40:08 CEST 2025
Total time taken to generate the page: 0.00840 seconds
|
|
|