Age | Commit message (Collapse) | Author | Files | Lines |
|
This change modifies the twin sources to expect twin libraries in the
libtwin/ directory. Consequently, we need to move the headers (and
sources to keep things clean) into the libtwin/ directory in the source
tree.
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
This makes the fbdev backend refresh damaged areas directly from
the screen->damaged callback instead of delayed to a "work". The
work is still there to handle console switches. In order to avoid
flicker and artifacts, we also disable refresh around cursor
updates and window content.
The demos flicker a lot in this mode, so they'll have to be fixed
to disable / enable refresh around some operations too (probably in
the widget code), but the overall performances are better for my
application as mouse cursor no longer triggers giant updates when
moving while something else is updating
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
First, don't destroy the previous cursor when relacing it as it's
common for applications to store a bunch of cursor images and flipping
them in, they don't want to have to re-create them each time.
Then, there was a NULL-deref when setting the cursor to NULL to
remove it
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
can be used to handle global application events, like console
switch related events (once I take the primitive keyboard stuff
out of twin_fbdev)
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
The current "target" is the one under the mouse and also
receives mouse movements and button down events. However,
once the button has been pressed in a window, all subsequent
mouse events will be sent to that window (and no mouse leave
will be generated) until the button has been released.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
This adds support for a cursor pixmap that is always on top and
follows mouse movements.
It also provides a function for importing a cursor image from an
X.org ARGB cursor file.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
|
|
|
Fix numbers to have the same width.
Add new relative-origin clip setting function
Change enumerated constants to include Twin prefix
Add new widget-based demo
Start widget based demo
|
|
stuff
Split demos into separate files
Make drawing origin match clip rectangle.
twin_fedit Add glyph editor to CVS to preserve it
Add scalable icons
Separate 'closing' a subpath from 'finishing' a subpath; the former adds a
point back to the start while the latter just leaves the path unclosed
and prepares for a new subpath.
Eliminate locking, add clipping.
Clean up title drawing, use clipping
Eliminate locking, use dispatch stuff
|
|
Add screen backgrounds
Eliminate spurious border bits
Add text display applet
|
|
including titles. Default event dispatcher does restacking and motion.
|
|
Rework snapping to correctly snap vertical and horizontal text on pixel
boundaries.
Change clock watermark
|
|
Add twin_int_to_fixed. Inline twin_fixed_mul and twin_fixed_div using
int64_t. Add twin_text_metrics_utf8. Hard-code the max number of
vertices in a glyph. Set various ICCCM properties to make X wms happy.
Use better approximation of ellipse major axis radius when drawing circles.
Compiler warning.
Delete duplicate twin_over definition
Allow for multiple clocks, and add watermark. Note that text metrics are
quite broken currently.
|
|
Add helper functions
Lock pixmaps during drawing
Disable screen updates while applications are busy
Add threads to manage events and redisplay
Paint a clock
|
|
Move shared geometric functions to new file
Add twin_path_circle to generate pens. Fix path edge generator to handle
last subpath right.
Skip vertices which don't span a sample row
test convolutions
Add .cvsignore file
Mention path primitives
Add paths
Eliminate some unused variables.
Simple path construction
Anti-aliased polygon fill code
Change twin_bool to twin_bool_t
Append cubic Bézier splines to paths
Test paths
|
|
|