Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/mypaint/mypaint

MyPaint is a simple drawing and painting program that works well with Wacom-style graphics tablets.
https://github.com/mypaint/mypaint

About window: fix double escaping

Some strings in the About dialog were escaped in the input
as well as in the gtk implementation,...

0eca420f2a7c3f19c8a4d91f09561e966d0605bc authored over 5 years ago by Jesper Lloyd <[email protected]>
setup.py: add new build flag for mypaintlib rpath

When building mypaintlib, the setup script uses pkg-config
to find the build information about t...

21129f4f16e7678c3c3bf3d0e29292369ae5c1e9 authored over 5 years ago by Jesper Lloyd <[email protected]>
Translated using Weblate (Norwegian Bokmål)

Currently translated at 72.7% (785 of 1080 strings)

f8fa0fa0f6dfeb5bd616bef9ef54fc30a233d635 authored over 5 years ago by Allan Nordhøy <[email protected]>
Merge branch 'origin/master' into Weblate.

1a022fbd3f66fe887d3902e69159eebf30f738e2 authored over 5 years ago by Hosted Weblate <[email protected]>
Merge pull request #1011 from jplloyd/floodfill_fixes

Floodfill fixes

9ab1487140fbfd197a6d89e600a11c284021aea6 authored over 5 years ago by Brien Dieterle <[email protected]>
Floodfill: fix masking comp ops behaviour

Clear out layer tiles not touched by the fill
when using DestinationIn and DestinationAtop.

Tre...

847971a7f77b70e26bff1fc7151307366922c9ff authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: enable colorize blend modifier

Enable colorize mode for fills, using the CombineColor
blend mode and alpha locking. Add cursor ...

a4207fb02a44b550d9d204a53c90de3061865516 authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: add UI controls for opacity/blend modes

Add new slider for fill opacity and combo box for
fill blend modes. Add new prefs and default va...

52b7f776b87434249c732e2c722cf7f2ea59c60e authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: add support for non-opaque fills

Add opacity parameter to FloodFillArguments and
handle it in the fill compositing step.
Since ti...

7349af1ba935fc4180fcb3c0fba0ba3a2bc6bef4 authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: fix two gc-fill bugs

Remove an incorrect instance of full-tile replacement.

N x N pixels filled does not mean N x N ...

4feb7d1d0d9f20e1749dd4f01ce17024d4626af5 authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: consolidate parameters into new class

The number of parameters in the flood_fill call chain
was getting absurd. This replaces the ones...

e9947a3dcb6794469c3e228e26ada17a8626b962 authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: fix compositing for arbitrary modes

Fix erasing/alpha locking compositing skips that assumed
only CombineNormal, DestinationOut and ...

6c033451bd05b18c22f310ad9eb83b14e9816cea authored over 5 years ago by Jesper Lloyd <[email protected]>
Merge branch 'origin/master' into Weblate.

11f6fffe39bb45cea563b6a5e09d6097929c4288 authored over 5 years ago by Hosted Weblate <[email protected]>
Merge pull request #1006 from jplloyd/layer_blink_toggle

Add option for disabling layer blinking upon layer creation/selection

02f5bf331c60dda1f423fe43b9c7b0de3575bcf9 authored over 5 years ago by Brien Dieterle <[email protected]>
Merge branch 'origin/master' into Weblate.

7d3f15bb0b54f4c37162fbbc0a79577178a271ed authored over 5 years ago by Hosted Weblate <[email protected]>
Merge pull request #1010 from jplloyd/numpy_compat_fix

Floodfill: replace call dependent on numpy 1.10

869de4eba881929365644681f97eedfe2960cd2c authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: replace call dependent on numpy 1.10

Replace the numpy.full array creation call with a function
that should be compatible with any nu...

fae3ad63a66f7cc13dca4cbf56dc6de0514d1b61 authored over 5 years ago by Jesper Lloyd <[email protected]>
Merge branch 'origin/master' into Weblate.

1317de683ea16c26a6936a2c524ff2856e898b55 authored over 5 years ago by Hosted Weblate <[email protected]>
Merge pull request #1008 from jplloyd/floodfill_additions

Floodfill additions

55678ec24daf43178aca00058b48348cb33f3bee authored over 5 years ago by Brien Dieterle <[email protected]>
Translated using Weblate (Bulgarian)

Currently translated at 2.3% (25 of 1080 strings)

bf7c09bfbdbbf4bdcbc9ad25bfa82e2de1f8fa9f authored over 5 years ago by sahwar <[email protected]>
Fix floodfill cancellation

Schedule indirect Gtk api calls with GLib.idle_add.
Skip needless status dialog updates for stag...

17efe9119016348cb91d3b806fea3c01598513f0 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add cancellation and status info for fill

Add the ability to cancel a fill running for longer than
a certain time period. The fill runs in...

a5eeab3ec53079114461e180925896bbd0f863fb authored over 5 years ago by Jesper Lloyd <[email protected]>
Py3 compat fix: replace iterator w. list comp.

map-objects produce iterators which are consumed -
replace with list comprehensions for simplici...

4bf1455df09618b6d7c0f46d06ba0cc73132ec45 authored over 5 years ago by Jesper Lloyd <[email protected]>
Fix some style errors

Fix minor style glitches and replace ##-comments in gui/fill.py

571d9def21c1b26516b09e95f37c756bf17082c0 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add option for creation/selection layer blinking

Layer blinking shows a layer in isolation for a short
time period when it is created or selected...

c035489bafd4e321f03cc7ba1d62c1c546220734 authored over 5 years ago by Jesper Lloyd <[email protected]>
Disable unseeping (gc-fill) for any non-max seed.

6f36603c07c365c38919c0e0b93a59d23da8b2db authored over 5 years ago by Jesper Lloyd <[email protected]>
Move all fill-related C++ code to separate dir

To avoid swamping the lib directory with all the new headers
and source files that provide fill-...

263519590509c6bc12f51909b834ccf0193c60b1 authored over 5 years ago by Jesper Lloyd <[email protected]>
Remove single-use function, move helper function

Remove the is_full() function, only used in one place.

Move the orthogonal (coordinates) helper...

4361310a635dceb953791321a823c549d26406b5 authored over 5 years ago by Jesper Lloyd <[email protected]>
Improve fill code quality

Better variable names, capitalization of constants,
outdated docstring parameter, minor redundancy.

bd57eb7268bf043165925e89d18798cc659f9ff4 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add drag-fill functionality to the fill tool

Add the ability to drag-select a range of starting
seeds that the fill is run on, instead of a s...

43e1a4f391b542b09674f86c3dd39ff243d6a406 authored over 5 years ago by Jesper Lloyd <[email protected]>
Move gapclosing C++ code to its own source file

f06a7f408d105b171ea46c3f3e27159da67b23d5 authored over 5 years ago by Jesper Lloyd <[email protected]>
Remove tiles when erasing w. fully filled tile

Instead of clearing the tiles, just remove them from
the tile dictionary. This makes erasing fil...

402918914a93973ced420140bfab4f9790ca8da9 authored over 5 years ago by Jesper Lloyd <[email protected]>
Optimize largely empty gap closing fills

Enable full-tile skipping when possible; use edge values
in a tuple to represent a full edge of ...

8302938cea99887a8d8a93db555a3c15d1568dc2 authored over 5 years ago by Jesper Lloyd <[email protected]>
flood fill: factor out queueing of seed ranges

Move the conversion of ranges to coordinates and the queueing
of said coordinates, to a separate...

4e2d3989bc10e78cf70a20f863e9b3e8c2218eaf authored over 5 years ago by Jesper Lloyd <[email protected]>
Improve fill code quality: renaming/refactoring

Only non-functional changes, variable renaming
replacing potentially ambiguous names with their
...

4da158cca45b6afa8c1ba7d4bcfae023bee3743e authored over 5 years ago by Jesper Lloyd <[email protected]>
Skip needless allocations in _TileRenderWrapper

When performing the compositing tile fetch, first check
if the tile with the given coordinate ex...

9d7c0194daf609f4ef838965d9ad078eb3bee7b3 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add comments on constant tiles and gap closing

28fbfd03df830f31295af365dd4d2ed9366c405a authored over 5 years ago by Jesper Lloyd <[email protected]>
Fill tests: Add sample-merged emulating layer

Add another test group + layer to fill_outlines.ora used
to emulate a heavy, threshold-calculati...

56f5bc01e8b89cb9d4f64788c4b70123e99588aa authored over 5 years ago by Jesper Lloyd <[email protected]>
Write blur output to tile immediately

1130b097f149aea418242a5f34044f1b4f334dc3 authored over 5 years ago by Jesper Lloyd <[email protected]>
Morph/Blur: factor out creation of alpha tiles

a82bef581477be454a894303dc8560075966a07b authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill: create tile bbox helper class

Move all tile-bbox related functions to a new
class in TileBoundingBox in lib.fill_common for
cl...

bf9efa9724596f7897519011701988ac6e001b75 authored over 5 years ago by Jesper Lloyd <[email protected]>
floodfill: Remove redundant usage of EMPTY_TILE

No longer add empty tiles to output sets, and
since these will not appear in output from either
...

c3d575250ead83e0a332ff0ad1c0f9d83a2f2968 authored over 5 years ago by Jesper Lloyd <[email protected]>
Gap closing: conditionally disable seep retraction

Turn seep retraction off when starting from a position
where there is a detected distance, as th...

676a8a039c6fa9ee0b041877b7a2527b8f9ff114 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add missing special cases in prep_alphas

No need to waste time on the flood call for
completely unfillable or otherwise uniform tiles.

24d917e6674e3c09e76befd011917156ec395e15 authored over 5 years ago by Jesper Lloyd <[email protected]>
Replace explicit PyDict and DECREF usage

Extend the PyDict wrapper to manage ownership of its pointer
and add flag to optionally transfer...

ba7e5a2e96bb5e1063ec1e4ea877c88f9dec58c8 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add atomic wrapper class for python dicts

56d6298f9dd64149a7e6dc4eab49ca16e37001f7 authored over 5 years ago by Jesper Lloyd <[email protected]>
Fill: Add/Improve comments, fix includes

Mostly additional comments for the gap closing fill
process and related functions.

Remove unuse...

aea5e4c97fbee9214e423fef036e760a1213f6a3 authored over 5 years ago by Jesper Lloyd <[email protected]>
Refactor and clean up floodfill code

No functional changes, with the exception of
removed SWIG directives.

New separate header for t...

edbb551bfa6be1e2e4662ed8cb853d4f80796eb7 authored over 5 years ago by Jesper Lloyd <[email protected]>
Rename fill_rgba and move to floodfill.hpp

Rename fill_rgba to rgba_tile_from_alpha_tile to make
it more clear that the function is separat...

de3f867f9970b09c6fa86e2b738d326e7e4a0054 authored over 5 years ago by Jesper Lloyd <[email protected]>
Morph: Factor out strand and tile fetching

A new GIL-threadsafe queue is now used by workers
to fetch strands, and tiles from strands.

Not...

b6876dcfc0aab80ee819ec2ea4b80ae70aea43cd authored over 5 years ago by Jesper Lloyd <[email protected]>
Factor out thread creation for morph/blur

Remove the largest chunks of duplicated code
and omit special cases for single threads
(now alwa...

4dd814838eea7a19fb15bc5969970c8d4af23c0d authored over 5 years ago by Jesper Lloyd <[email protected]>
Morph: track LUT and input updates separately

The additional pre-morph input check permits updating
the input array, even when the LUT has to ...

e250cb6ed38403cc137d949ad3a390c486cfeb25 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add full-input checks for morph operation.

Factor out/add input array full/empty checks for
both BlurBucket and MorphBucket

Unless the sim...

b891b46e1bbc832ce461c485195614684aec4f60 authored over 5 years ago by Jesper Lloyd <[email protected]>
Morph skip: Sqrt to constant, improve indentation

No functional changes.

Most modern compilers probably fold sqrt(2) anyway,
but there is no harm...

ba4e068366eacc6313a22d5cba0be7992ae3fa17 authored over 5 years ago by Jesper Lloyd <[email protected]>
Fix memory leak for morph/blur operations

Now properly DECREFs the newly allocated empty
tiles after adding them to the results, making
su...

dbfd3a59ef0c027c4c4792ca80f48c3bcf27050e authored over 5 years ago by Jesper Lloyd <[email protected]>
Return copies for readonly PixelRef ops

d7602dac1982634c42fc7223a2d792c9ffc77408 authored over 5 years ago by Jesper Lloyd <[email protected]>
Make new C++ code style-consistent

There is no set convention or styleguide (as of writing)
for the C/C++ code in neither mypaint n...

648db26b76d83784af7c7bf787b4beab41a6bc9f authored over 5 years ago by Jesper Lloyd <[email protected]>
Remove redundant SWIG generation

Remove swig generation of coord, GridVector and BlurBucket

Make BlurBucket util methods private.

104d4760c3ee805fc44611baad94cf8badfe7a7f authored over 5 years ago by Jesper Lloyd <[email protected]>
Add limit-to-view option for floodfill

a5fef3706d385b371e7e107d38d2e95fb4f1564d authored over 5 years ago by Jesper Lloyd <[email protected]>
Replace gap-closing-fill distance data skip

Instead of a separate check with potential false negative result,
now keeps track of whether dis...

ea0629a2cb7e346dcad1399ab94d13ada8291339 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add test suite for floodfill operations

Add correctness and performance tests for
the floodfill algorithms and the related
morphological...

96c1dba3622e6266623952a19f051c7d7f7b125c authored over 5 years ago by Jesper Lloyd <[email protected]>
Refactor: multiple aspects of morph/fill code

Change input order for tile 9-grids from
center, orthogonal, diagonal (clockwise, starting n/ne)...

f5751c7a7a0abea49c1237e461364c5ae8196015 authored over 5 years ago by Jesper Lloyd <[email protected]>
Use C_ macro with contexts for new fill option strings

Rename "gap closing" to "gap detection"
Rename "Retract seeps" to "Prevent seeping"
Replace regu...

ed7205bcf5b968d405443543196fb8e22841a98e authored over 5 years ago by Jesper Lloyd <[email protected]>
Enable flood filling with reference to vector layers.

Copy LayerStack's flood_fill behaviour to VectorLayer

Previously, vector layers could only be u...

b59de459a7474522cf89dad80c595f663029c1f2 authored over 5 years ago by Jesper Lloyd <[email protected]>
Replace multi-pass box blur with gaussian blur

The feather feature on floodfill now uses proper
gaussian blur instead of repeated box blur.
It ...

2148434929580a0be094bc38f0235ba3f08c5c09 authored over 5 years ago by Jesper Lloyd <[email protected]>
Move most blur code to C++ and add multithreading

Copy-paste morph worker code and repurpose for
blurring. Add input checking to skip blurs entire...

3f7fafad1d69f01c85e4ee24e608d1008780f367 authored over 5 years ago by Jesper Lloyd <[email protected]>
Refactor basic morph tile skipping

Rename contig_vertical to strand_partition
and add checking for fully opaque tiles
and fully opa...

de74ddafa8e79c05a440a53ca3a297b10dadafae authored over 5 years ago by Jesper Lloyd <[email protected]>
Add blur performance test

c0ffcd634529a0076f2e62f7e160c33615dacfd5 authored over 5 years ago by Jesper Lloyd <[email protected]>
Move most of the morph code to mypaintlib (C++)

Implement the morph tile management functions in threaded
(python threadsafe) C++ to improve per...

bb6ada76ba95f0944293bdbab45a9d1fa9094a55 authored over 5 years ago by Jesper Lloyd <[email protected]>
Move full and empty alpha tile constants to mypaintlib

Both full_opaque and full_transparent tiles
are now defined in mypaintlib to avoid having
to pas...

e366936d74edcbb0311a510a80bd65a8fff294f1 authored over 5 years ago by Jesper Lloyd <[email protected]>
Prevent unnecessary tile creation when fill erasing

When erasing, there is no point in creating new tiles in the
destination surface (erasing an emp...

60ca4989860a5621576acdb3c1362fa19a3fc12e authored over 5 years ago by Jesper Lloyd <[email protected]>
Remove full_opaque coordinate set from fill

Replace the actual _uses_ of the coordinate set
in worker threads with identity comparison again...

ff40756cc8fa12f544e527907c9a04186d63411d authored over 5 years ago by Jesper Lloyd <[email protected]>
Add morph-only performance tests

79dcc0fab1e102ec06f6c84d51a76e23c0ce1053 authored over 5 years ago by Jesper Lloyd <[email protected]>
Remove time logging from fill and morph functions.

Since there are now performance tests and better
granularity for testing individual operations,
...

a421b22977d6b6f12a4224b101c42426d30944e8 authored over 5 years ago by Jesper Lloyd <[email protected]>
Refactor floodfill code, add new perf tests

Break out fill initiation code into separate functions
for readability and to make it easier to ...

88205b71ea09ba717b825fc6d97ddca20b9c7b7e authored over 5 years ago by Jesper Lloyd <[email protected]>
Add ability to set a static fill reference layer

Add GtkListStore with a flattened layer tree
Add combobox for fill ref layer selection with
a de...

ff07c208987f81d0f38bfec506e453351be85f0f authored over 5 years ago by Jesper Lloyd <[email protected]>
Split fill and morph code into separate modules

Put common constants and helper functions into a
separate module. Makes it easier to get an over...

3a882bb780012005bcc6b152237c7f95db04a0dc authored over 5 years ago by Jesper Lloyd <[email protected]>
Add blend modes to flood fill

Add a singleton BlendModes instance
to the fill mode, allowing it to maintain
its own blend mode...

2c4f8918070bb9b634aeae7c0df5d83a9cdaf8a6 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add new cursors and icons for new fill modes

Add new overlay cursors for erase and alpha lock fill modes.
Add new mode icon for gap closing f...

5bc5ed6e50d486fb5a5505191785cecce1526eaf authored over 5 years ago by Jesper Lloyd <[email protected]>
Readd HEAVY_DEBUG asserts to fill code, clean up constructors

Remove the PyArrayObject* constructor from PixelBuffer and
update all code points.

Rename const...

28eeec3aa86bc75f8bfb32258881be6114e8518e authored over 5 years ago by Jesper Lloyd <[email protected]>
Change BrushModifier to use new blend mode delegation

Remove mode history and mutual exclusion handling from
BrushModifier class, replacing callbacks ...

cfec910071369d575233a03516d6d1e4afaefc49 authored over 5 years ago by Jesper Lloyd <[email protected]>
Break out blur pass to its own function

Move empty src check outside of dst tile fetch clause.

e9b34c4bae546135fc86514bcb77e7c0fcace166 authored over 5 years ago by Jesper Lloyd <[email protected]>
Use global constant for empty tile check, improve docs

Set and use a shared module constant _EMPTY_RGBA
instead of passing references to transparent_ti...

986c8314eaff5694cc6a26a179e719bac30fdc13 authored over 5 years ago by Jesper Lloyd <[email protected]>
Revert from specialized composite function to regular blending

Move the final tile composition to its own function.

Replace comp_fill and full_rgba functions ...

7f5e344b02b4fee46c04a837318495b61a4a438b authored over 5 years ago by Jesper Lloyd <[email protected]>
Clean up floodfill code

9b508130a6b261b9a1ba92117280bf74194ce4ee authored over 5 years ago by Jesper Lloyd <[email protected]>
Floodfill refactoring, split module, new C++ impl

Split out the python part of the floodfill algorithm to its own module.
Replace the C++ parts of...

361493d3f71b0347ee994cc51be5d47f4167dc04 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add gap closing feature to floodfill

Gap search and separate fill algorithm implemented in C++.
New class for parameters to the gap c...

2b832e74a8463ab53be07511695ea86cec382eb0 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add feathering to floodfill

Implement fake gaussian blur using iterated box blurring.
Blur radius restricted to one tile wid...

520c869b939efafb7f2b760d4905708f887db153 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add dilation/erosion feature to flood fill

Add Urbach-Wilkinson morphological operations implemented in C++.
Add local search to enable ski...

caf68e7fa29c6077fb5f7adcef393373f5a0e1b9 authored over 5 years ago by Jesper Lloyd <[email protected]>
Factor out tile skipping for loop readability

Fix a couple of flake8 complaints

26ffde4d17e0e54024ae4209d685c3bde86fc7e4 authored over 5 years ago by Jesper Lloyd <[email protected]>
Add systems for per-tool blend mode state management

Add BlendModes class to encapsulate mutual exclusion
and history stack behaviour.

Add BlendMode...

a08fd5f7ca56865da33c1425e97b04e61d5ac54c authored over 5 years ago by Jesper Lloyd <[email protected]>
Translated using Weblate (Ukrainian)

Currently translated at 25.6% (276 of 1080 strings)

6dd59c9c715c98f0135706424d7f58c1c56db447 authored over 5 years ago by prolinux ukraine <[email protected]>
Translated using Weblate (Ukrainian)

Currently translated at 25.6% (276 of 1080 strings)

067e93d03521b6cbd6615c2613c85b2852a48d77 authored over 5 years ago by Tolstovka <[email protected]>
Translated using Weblate (German)

Currently translated at 99.6% (1076 of 1080 strings)

6cedb9594e255c6a140eaf58524173d696610aa2 authored over 5 years ago by ssantos <[email protected]>
Translated using Weblate (Russian)

Currently translated at 100.0% (1080 of 1080 strings)

051a5899ef212caf3abf6a58ec962912786832fb authored over 5 years ago by Tolstovka <[email protected]>
Translated using Weblate (Norwegian Bokmål)

Currently translated at 72.4% (782 of 1080 strings)

fee3392f19e0f9587f05561928b56260974e65c0 authored over 5 years ago by Allan Nordhøy <[email protected]>
Translated using Weblate (Turkish)

Currently translated at 99.9% (1079 of 1080 strings)

393d1b3c72e018400b75125e237d7a1ee0b5b9dd authored over 5 years ago by Sabri Ünal <[email protected]>
Translated using Weblate (Spanish)

Currently translated at 100.0% (1080 of 1080 strings)

4296aca6afab591636580788cf1d7fd5ea0a6039 authored over 5 years ago by Rui Mendes <[email protected]>
Translated using Weblate (Portuguese (Brazil))

Currently translated at 73.5% (794 of 1080 strings)

42e54d9a315ca5c963726506651fc02f20ae8275 authored over 5 years ago by Rui Mendes <[email protected]>
Translated using Weblate (Portuguese)

Currently translated at 100.0% (1080 of 1080 strings)

032a0277d32285c83bfbdcda07ea36752393a233 authored over 5 years ago by Rui Mendes <[email protected]>