Alex Shvartzkop
3c742c71a0
GTK: Add workarounds for broadway and allow wayland GDK backend.
...
For testing. X11 backend is still used unless GDK_BACKEND=wayland
is set explicitly.
2023-06-13 09:42:20 +03:00
jean-pierre charras
92018f0066
Fix minor compil warnings
2023-06-04 16:24:28 +02:00
Jeff Young
1282e00775
Fix (presumed) stale name in macOS KIPLATFORM::IO.
2023-05-25 11:26:09 +01:00
jean-pierre charras
ff072feeb4
Fix an annoying compil warning on msys2
2023-05-25 11:09:58 +02:00
Seth Hillbrand
39ab2ea41f
Fix typo in MSW io.cpp
2023-05-24 19:23:32 -07:00
Seth Hillbrand
48ecd742eb
Maintain file permissions when renaming
...
Temporary and autosave files do not neccessarily have the correct
permissions set to replace existing project files. This updates the
permissions to match the existing values where possible
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13574
2023-05-24 17:09:38 -07:00
Marek Roszko
3cd89eeffb
Use a placeholder commit hash if we can't get a git hash
...
Makes CLI test happy on...build systems circa 1990s that don't just shallow copy the git repo
2023-05-17 21:24:26 -04:00
jean-pierre charras
a2ec8bf0a4
Fix last changes in io.cpp for msys2.
...
- use the same code for msys2 and msvc
- add an option to use a fallback for msys2 if the common code does not compile
2023-05-11 12:51:53 +02:00
Marek Roszko
dd8dc4e513
Add a sequential read flagged fopen helper
...
Trying to squeeze out some kind of gain by informing the OS we will read a file sequentially.
In particular our FILE_LINE_READER just uses fgetc until the end
2023-05-10 20:24:27 -04:00
Marek Roszko
6e93a0cbad
Fix ImmControl implementation
2023-05-09 21:27:14 -04:00
Marek Roszko
5d93487607
Disable IME input on the gal canvas
...
Fixes #9719
2023-05-09 20:30:15 -04:00
Marek Roszko
18dd623122
Add env var to force logging on msw
2023-05-04 20:58:33 -04:00
Ian McInerney
a77e94d16f
Add hack to speed up font choice box widget creation
...
There are problems internal to GTK that mean creating choice boxes with
a lot of items is a very slow process. This hack works around one of
those issues to make it faster to create and display the menu in the
choice box.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14277
2023-04-12 15:23:34 +01:00
Jon Evans
43d3a18b86
Improve HiDPI handling of appearance/layer controls
2023-02-22 09:20:36 -05:00
Alex
04c82a42eb
Add KICAD_ALLOC_CONSOLE environment variable to show console in GUI apps on Windows.
...
For debugging purposes, currently.
2023-02-02 01:12:34 +03:00
Jon Evans
563143951f
macOS: Always show file type selector
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13716
2023-01-31 12:47:37 -05:00
Marek Roszko
dd519f1b38
Remove WerSetFlags that was a pre-sentry test
2023-01-28 00:08:37 -05:00
Alex
6e0d940b98
kiplatform: Add quotes to restart registration command line.
2022-10-05 20:30:46 +03:00
jean-pierre charras
ca5d87e46d
disable CONIN$ and CONOUT$ redirection on mingw. it creates issues
...
(nothing printed on the console)
It is probably not needed on mingw/msys.
2022-10-04 19:51:52 +02:00
Mark Roszko
fb8a4c10f7
Shove kicad2step into pcbnew itself with a new cli
2022-10-04 01:53:37 +00:00
Marek Roszko
2b42163379
Bind stdout and stderr for windows so that the console can get output
2022-09-29 18:51:01 -04:00
Seth Hillbrand
a8c6488358
Remove warning
2022-06-24 13:55:05 -07:00
Seth Hillbrand
a118f20464
Hide cursor while warping on Wayland
...
Based on https://gitlab.freedesktop.org/xorg/xserver/-/issues/734 we
hide the window cursor prior to warping, which allows XWayland to
reposition the cursor. This is only performed when Wayland is detected;
all other configurations call the standard warp routine
Fixes https://gitlab.com/kicad/code/kicad/issues/9785
2022-06-24 09:56:43 -07:00
Jeff Young
728777da7c
While icons aren't often used in Mac menus, they *are* supported.
2022-04-24 14:39:00 +01:00
Marek Roszko
c64ea07d0b
Check HKCU before HKLM for registry policies
2022-04-12 21:42:20 -04:00
Marek Roszko
392ed5fecd
Add policy to enable/disable pcm
2022-04-12 10:08:34 -04:00
Marek Roszko
b3c5054d6c
Add initial system policy checking for turning off data collection
2022-04-09 14:05:28 -04:00
Marek Roszko
1890a1aa06
Don't use the ANSI version of SetDllDirectory
2022-03-12 21:40:47 -05:00
Marek Roszko
d6c1f52b55
Plant the ability to verify code signing signatures when trying to load kifaces
...
Off by default and intended for use in released builds only
2022-03-12 21:40:47 -05:00
Marek Roszko
5ef6e97a9e
Two very minor win32 calls to lock down dll/exe search paths from cwd
2022-03-12 12:57:15 -05:00
Marek Roszko
d3ca857af7
Set SetErrorMode on Debug build
2022-03-11 20:51:01 -05:00
jean-pierre charras
263faf2870
Fix compil issue (not defined items) on msys2
2022-03-11 09:35:38 +01:00
Marek Roszko
afaff022d7
Set some error flags for win32
2022-03-10 20:17:01 -05:00
Wayne Stambaugh
e93b7b05ec
Wide characterize libs and bitmap2component source.
...
(cherry picked from commit 54f91a0221
)
2022-02-09 11:49:58 -05:00
Seth Hillbrand
d0d472f39d
Hide icon option when platforms disable
...
Mac and some Linux configs disable menu icons. We shouldn't offer the
option when the system does not support this as it leads to confusion
Fixes https://gitlab.com/kicad/code/kicad/issues/10425
2022-02-07 10:28:07 -08:00
Seth Hillbrand
88a58803ca
Revert "Mark unbundled mac apps as unsupported"
...
This reverts commit 68a0b99835
.
Reverted as unbundled Mac apps patch breaks kicad-mac-builder
2022-01-31 15:57:14 -08:00
Alex
4c4089e836
Allow overlay scrolling on GTK, except for GAL canvases.
...
This prevents glitches when both scrollbars
are visible and scrolling to the end.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10559
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9988
2022-01-31 18:45:47 +03:00
Seth Hillbrand
68a0b99835
Mark unbundled mac apps as unsupported
...
We do no track all the various possible issues arising from using
unbundled Mac apps. Users may choose to use KiCad this way but issues
must be recreated on a supported configuration
2022-01-28 15:49:53 -08:00
Alex
c4a4862e8f
Try with KIPLATFORM
2021-12-25 15:26:43 +00:00
Marek Roszko
f5fc9fa11f
Another auto proxy tweak
2021-11-13 21:23:32 -05:00
Marek Roszko
73f40b11ee
Some more cleanup
2021-11-11 23:58:34 -05:00
Marek Roszko
009bb7f033
Add missing WinHttpOpen to resolve pac proxies
2021-11-11 22:56:45 -05:00
Marek Roszko
b20317ca84
Some minor cleanup of the proxy detect
2021-11-11 22:47:21 -05:00
Marek Roszko
e2926f69a5
Add support to fetch windows proxy config for use with curl
...
Fix https://gitlab.com/kicad/code/kicad/-/issues/9594
2021-11-11 09:30:10 -05:00
Jeff Young
7a993c0211
Add support mode for dark mode to SCINTILLA_TRICKS.
...
Also removes the return value from the BITMAP_STORE's themeChanged
method as it will provide the wrong answer for the second frame it's
called on.
Also hooked up ACTION_TOOLBAR, the app launcher, and the project tree
to the wx event for system color changes so they change on the fly.
Fixes https://gitlab.com/kicad/code/kicad/issues/6026
2021-09-14 00:18:50 +01:00
Marek Roszko
3b7f5a3db7
Remove the native cursor for moving on Windows to avoid visual conflicts
...
Fix #8801
2021-09-04 18:27:02 -04:00
Wayne Stambaugh
bf80b9c04c
Last of the NULL expunging.
2021-07-20 10:32:22 -04:00
Wayne Stambaugh
4c457b5ed3
More NULL expunging.
2021-07-18 14:31:55 -04:00
jean-pierre charras
0ff1f6f69c
Try to fix a include order (Windows only, to fix aCI/CD error)
2021-06-16 20:04:32 +02:00
jean-pierre charras
aeb479b46f
Fix an issue with pythons scripts running outside Kicad (Windows specific).
...
When running a python script is run from a console, outside Kicad, a wxWidgets
alert was always show (even in release mode)
This is due to calling wxStandardPaths::Get() with no wxApp open( i.e. wxTheApp == O)
The fix uses a dummy wxApp in this case.
2021-06-16 10:18:39 +02:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
david-beinder
053bd66650
Fix localization of OS unsupported message, disallow bug reports from W7
2021-06-09 19:01:54 +00:00
Marek Roszko
69d7a23e1c
Start cleaning out wx/wx.h in cpp files
2021-06-07 18:20:47 -04:00
Michal Schulz
f923649801
If NSError contains recovery suggestion string, append it to error message as it was until now. However, if recovery string is NIL, do not append it at all.
...
This MR fixes the "error message\n\n(null)".
2021-06-06 14:24:08 +00:00
Ian McInerney
30c92fc5d1
Disable OSX automatic window tabbing
2021-05-09 12:59:57 +01:00
Tomasz Wlostowski
dc70df6036
kiplatform: check for null window handle in IsWindowActive().
2021-04-27 14:13:16 +02:00
Jon Evans
3c1a8f8c88
Fix MSW build, take 2
2021-04-02 20:16:25 -04:00
Jon Evans
80eee2decb
Fix MSW build
2021-04-02 20:13:10 -04:00
Ian McInerney
8ea18c0639
Don't steal focus from other windows on GTK
...
Before, it was possible for the canvas to steal the
focus if the cursor was only moved over it and not
clicked. Now, the canvas will only take the focus if
the frame is active.
Fixes https://gitlab.com/kicad/code/kicad/issues/7233
2021-04-03 00:17:28 +01:00
Ian McInerney
41f88dbabc
Refactor platform-specific init into two phases
...
The first phase is for the environment before the OS
apps are created, and the second phase is for after
the OS app is created but before all of our processing.
Fixes https://gitlab.com/kicad/code/kicad/issues/7992
2021-03-23 19:11:08 +00:00
Jon Evans
cdb352bb24
Allow finding kicad_3dsg when running from build dir
...
This might also come in handy later when we use more dynamic libs
2021-03-21 09:16:47 -04:00
Marek Roszko
917e368db3
Add missing header that broke msvc builds
2021-03-20 10:28:35 -04:00
Jon Evans
61c9645220
Fix Windows build
2021-03-19 18:36:16 -04:00
Ian McInerney
008f0d55c3
Add an interceptor for GTK error messages to hide them
...
wxWidgets seems to cause GTK to spam messages to the terminal,
and we have no control over that. So lets hide the messages
so no one complains about them. If people really want to see
them, they can add the KICAD_SHOW_GTK_MESSAGES build flag to CMake
and they can watch them scroll past.
2021-03-19 22:05:00 +00:00
Ian McInerney
3036683a2c
Move platform-specific init tasks into KIPLATFORM
2021-03-19 21:26:07 +00:00
Seth Hillbrand
48bd564639
Add Dark mode detection to MacOS
2021-03-16 21:58:42 +00:00
Jon Evans
a9f86c6f3d
Enable icon themes for Windows
...
Windows 10 "dark mode" is not supported and likely won't be,
but high-contrast mode and manual color theme editing is still
possible.
2021-03-14 15:39:47 -04:00
Seth Hillbrand
507ca9bc73
Add DPI scaling to KIPLATFORM
...
GTK needs to check current scaling but wx doesn't provide this
functionality in 3.0, so we can bypass by going straight to the source.
2021-02-22 17:38:27 -08:00
Jon Evans
079203c345
Change Linux documents path to XDG_DATA_HOME
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7543
2021-02-17 20:25:50 -05:00
Jon Evans
1ba7bebce6
Handle lack of a Documents directory
2021-02-09 20:15:30 -05:00
Jon Evans
9728ceab0d
Fall back to explicit documents path if XDG special dirs are missing
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7452
2021-02-08 20:21:39 -05:00
Marek Roszko
06a515339c
Correct pointless and bad buffer sizing in RegisterApplicationRestart
2021-02-01 15:36:07 -05:00
Marek Roszko
a47e8af0d0
Fix up naming of the kiplatform helpers
2021-01-27 19:12:20 -05:00
Marek Roszko
299830350c
Fix macos build error
2021-01-27 19:12:19 -05:00
Marek Roszko
34bcf1883d
Blindly implement the macos fetch of cache dir
2021-01-27 19:12:19 -05:00
Marek Roszko
daf9c4f319
Centralize the 3d cache path
2021-01-27 19:12:19 -05:00
Marek Roszko
8622565480
Add GetUserConfigDir
2021-01-27 19:12:18 -05:00
Marek Roszko
2bbc25a630
Use g_get_user_special_dir for documents dir on gtk
2021-01-27 19:12:18 -05:00
Marek Roszko
28c6967dbc
Start trying to shuffle around path management
2021-01-27 19:12:18 -05:00
Marek Roszko
33dbc8ccd1
Add IsNetworkPath to kiplatform
2020-12-15 19:28:58 -05:00
Jeff Young
a3a409b438
Fix crash bug when deleting files with spaces in names.
2020-11-14 14:15:02 +00:00
Ian McInerney
06f01d0d8a
Add platform-specific code to allow wxChoice to ellipsize
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5377
2020-10-17 23:20:13 +01:00
Marek Roszko
88102bca46
Kick the refresh timer for GAL on Win32 with a terrible hack
2020-10-11 21:44:46 -04:00
Jon Evans
14c2937fc3
Implement IsDarkTheme for GTK
2020-10-10 14:55:32 -04:00
Jon Evans
cc563d254f
Add MSW implementation for IsDarkTheme (for future)
...
As noted, we can't enable this yet as wxWidgets does
not automatically apply a dark theme to the system
colors.
2020-10-10 14:15:30 -04:00
Mark Roszko
d9485129c8
Implement more context specific cursors using both stock and custom cursors.
2020-10-08 00:50:28 +00:00
Ian McInerney
c5feccca53
Add stub functions in KIPLATFORM to detect dark mode
...
These haven't been written yet, but current code can
be adapted to use these now.
2020-09-20 01:43:27 +01:00
Mark Roszko
9f128f942c
Move shutdown blocker to kiplatform
2020-09-01 10:14:51 +00:00
Ian McInerney
a0d84e94fd
Use move to trash to the project manager instead of immediate delete
...
CHANGED: Delete in the project manager now moves files to the trash can
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2499
2020-08-28 23:00:43 +00:00
Marek Roszko
9278660b10
Add support for the windows application restart api
2020-07-28 14:32:39 -04:00
Jeff Young
904687affb
Fix typos.
2020-06-04 22:44:03 +01:00
Jeff Young
0ddf53397f
Make sure CvPcb gets its Cancel button fixed up.
...
It's no longer a DIALOG_SHIM so it can't depend on its fixup.
Fixes https://gitlab.com/kicad/code/kicad/issues/4611
2020-06-04 22:35:01 +01:00
Ian McInerney
a843c74529
Add new kiplatform library for platform-specific code
...
* Implement ReparentQuasiModal for OSX natively
* Implement ForceFocus of OSX natively
This change means we no longer rely on the kicad-specific functions in our osx wx fork.
2020-06-03 14:58:54 +00:00