Spice may include a list of directives that are wrapped with
.control and .endc. Such directives do not have a dot prefix, so
they need to be handled in a special way.
Fixes: lp:1787902
* https://bugs.launchpad.net/kicad/+bug/1787902
(cherry-picked from commit 36f2eb11)
Normally working at a zoom level when a footprint is not fully displayed
indicates that the user modifies other components. Selection Tool used
to discard footprints that had area larger than the viewport area, but
it may make sense to select them if there are no other candidates.
Fixes: lp:1789578
* https://bugs.launchpad.net/kicad/+bug/1789578
(cherry-picked from commit 5993b330)
Certain distribution does not handle GLVND well, as the result the
accelerated canvas is not enabled. For the time being it is better to
keep using the legacy preference.
Thanks to Aurelio Lucchesi for investigating the cause.
Fixes: lp:1781581
* https://bugs.launchpad.net/kicad/+bug/1781581
(cherry-picked from commit 01925fd6)
Previously, when creating a new instance of a sheet, the full set of references
was cleared.
Moreover, if this sheet has sub-sheets, the annotation was incorrectly handled
Now only (and all) new sheet path(s) created have a reference cleared, as expected.
(new sheet paths can be more than one, if the new instance of the sheet has sub-sheets)
Fixes: lp:1789048
https://bugs.launchpad.net/kicad/+bug/1789048
Unplated holes in Ealge can either be free floating or part of a larger
footprint. We handle both in the same packageHole routine by either
offsetting the hole in a centered footprint or offsetting the footprint
in a centered hole.
Fixes: lp:1791287
* https://bugs.launchpad.net/kicad/+bug/1791287
Modal yes/no questions should not be allowed to fall behind other
windows. They need to be answered before the program continues and
clicking outside of the dialog should not hide dialog itself.
Fixes: lp:1790640
* https://bugs.launchpad.net/kicad/+bug/1790640
The previous clearance values were equivalent to the default copper
clearance, which could cause issues for users who didn't adjust the
values and had alignment errors at the board house. New values default
to typical dry film minimums.
The addition of very small segments in OCE triggers sliver
removal/cleanup in the BREP generation that can get stuck in a very long
loop during STEP export of boards. These were introduced to ensure
closure of boards with small gaps that were too big for OCE to consider
joined.
Removing the small segments allows STEP export to proceed in a
reasonable time. This also decreases the default minimum gap size that
kicad2step uses to determine curve matching. This prevents mis-matching
small curves
Fixes: lp:1784626
* https://bugs.launchpad.net/kicad/+bug/1784626
Bitmaps in eeschema are mainly used for referencing and data. Having
them between functional items obscures the elements. This places the
images in the background for eeschema as a partial fix for lp:1787404
This commit should not be picked into 5.1 as the canvas changes.
When expanding the drag item to allow corners, we accidentally picked up
other items in the list. This limits the items that can be dragged to
only those that are explicitly in the draggable list.
A side effect of this commit is that when converting from move to drag
(with tab), items not in the draggable list will be left in place.
Fixes: lp:1787966
* https://bugs.launchpad.net/kicad/+bug/1787966
Invalid graphical items that cannot be created in pcbnew may still be
created by external tools. This synchronizes the pcbnew view display
with the gerber output and 3d viewer line widths for these types of
lines. Only filled polygons are permitted 0-width lines.
Fixes: lp:1790534
* https://bugs.launchpad.net/kicad/+bug/1790534
This allows full copper connections even when THT changes a trace layer.
It avoides selecting the actual pad to prevent actions on the copper
connections from affecting the footprints as well.
Fixes: lp:1789807
* https://bugs.launchpad.net/kicad/+bug/1789807
Items removed from the connectivity list will not have valid parents, so
we cannot update the BBox, thus we will only use the cached value.
Fixes: lp:1785605
* https://bugs.launchpad.net/kicad/+bug/1785605
Setting up the footprint viewer will attempt to load the current
footprint. If the library does not exist, the loader will throw an
IO_ERROR that needs to be caught.
Fixes: lp:1789626
* https://bugs.launchpad.net/kicad/+bug/1789626
We have a dialog shim that raises the ERC dialog in front of the
schematic frame, which is useful for keeping the ERC dialog visible
during debugging. But mouse move events do not pass through to the
schematic, resulting in a captured mouse pointer but no drawing updates.
As a work-around we close the ERC dialog while placing new components.
Previous ERC data still exist when the window is launched again.
Fixes: lp:1779851
* https://bugs.launchpad.net/kicad/+bug/1779851
Missing types were handled by the superclass (in the case of zones)
PCB_CONNECTED_ITEM, which incorrectly returned "true" when testing lines
against zones.
Fixes: lp:1789195
* https://bugs.launchpad.net/kicad/+bug/1789195
Before closing the window in the footprint editor, we clear the existing
pcb, undo/redo stack and associated memory to prevent callbacks
double-freeing on destruction.
Fixes: lp:1784504
* https://bugs.launchpad.net/kicad/+bug/1784504
The default board soldermask clearance should not be used in the
footprint viewer. Setting the board's solder mask margin to 0 will
leave the footprint displayed with only the soldermask defined by
the pads or the footprint.
Thanks to Fabian Inostroza for pointing out the missing line.
Fixes: lp:1779979
* https://bugs.launchpad.net/kicad/+bug/1779979
The Boost folks kindly decided to move the sha1.hpp header file location
so check the Boost version to include the proper header path.
Clean up debug trace code.
Perspective is overzealous: it stores everything, so we need to be sure these panes are not hidden,
regardless what the perspective has stored.
Fixes: lp:1789254
https://bugs.launchpad.net/kicad/+bug/1789254
It was only a overzealous (in this case) assert, with no issue.
The fix avoid calling DeleteAll() when there is nothing to delete.
Fixes: lp:1787810
https://bugs.launchpad.net/kicad/+bug/1787810