]> git.ipfire.org Git - thirdparty/plymouth.git/log
thirdparty/plymouth.git
15 years ago[client] Add new deactivate subcommand no-fbcon
Ray Strode [Sat, 28 Nov 2009 04:34:05 +0000 (23:34 -0500)] 
[client] Add new deactivate subcommand

This tells the daemon we're about to start X with -nr and
to get ready for the transition.

15 years ago[daemon] deactivate daemon for X transition
Ray Strode [Sat, 28 Nov 2009 04:29:30 +0000 (23:29 -0500)] 
[daemon] deactivate daemon for X transition

In order for plymouth to be able to stay around until
after X is started, we need to put the daemon into a
"deactivated" state where it makes the splash becomes idle
and relinquishes control of the scan out hardware and keyboard
for X to seize.

This commit listens for deactivation requests in the daemon and
performs the deactivation.

A future commit will implement the client bits needed.

15 years ago[x11] implement new activate/deactivate methods
Ray Strode [Sat, 28 Nov 2009 04:19:01 +0000 (23:19 -0500)] 
[x11] implement new activate/deactivate methods

We disable flushing when inactive.

15 years ago[frame-buffer] implement new activate/deactivate methods
Ray Strode [Sat, 28 Nov 2009 04:19:01 +0000 (23:19 -0500)] 
[frame-buffer] implement new activate/deactivate methods

We basically just do what we were doing before
implicitly on VT switch, explicitly on activate
and deactivate.

15 years ago[drm] implement new activate/deactivate methods
Ray Strode [Sat, 28 Nov 2009 04:19:01 +0000 (23:19 -0500)] 
[drm] implement new activate/deactivate methods

We basically just do what we were doing before on
implicitly on VT switch, explicitly on activate
and deactivate.

We also don't scan out the splash to the fbcon
on unmap if the renderer is inactive.

15 years ago[renderer] Add new activate and deactivate methods
Ray Strode [Sat, 28 Nov 2009 04:14:16 +0000 (23:14 -0500)] 
[renderer] Add new activate and deactivate methods

The point of these methods are to put the renderer in
and out of a state where it is no longer going to
be on screen.

This should cause flush calls to be no-ops and device
specific locks should be dropped.

These methods will be necessary to keep plymouth running
while X is getting started up.

15 years ago[main] only set keyboard on splash if available
Ray Strode [Sat, 28 Nov 2009 05:24:21 +0000 (00:24 -0500)] 
[main] only set keyboard on splash if available

There may be cases where there is no keyboard set.

15 years ago[main] make keyboard removal idempotent
Ray Strode [Sat, 28 Nov 2009 05:16:22 +0000 (00:16 -0500)] 
[main] make keyboard removal idempotent

15 years ago[main] drop stray debugging remnant
Ray Strode [Sat, 28 Nov 2009 04:40:44 +0000 (23:40 -0500)] 
[main] drop stray debugging remnant

15 years ago[script] Remove some debug code
Charlie Brej [Tue, 24 Nov 2009 23:03:19 +0000 (23:03 +0000)] 
[script] Remove some debug code

Testing with it replying random strings to make sure the error cases were
caught. Code accidentally left in.

15 years ago[script] Add string library and the first function "CharAt"
Charlie Brej [Tue, 24 Nov 2009 22:46:27 +0000 (22:46 +0000)] 
[script] Add string library and the first function "CharAt"

Currently the strings must be manually told to adopt from the library functions
by using String("string").function(). This is temporary and later it should be
possible to apply functions directly to strings.

CharAt gives the a single character string at the index specified. The first
character is at index zero. Characters beyon the end are empty strings, and
errors return NULL. This can be used thusly:

str = "something";
letter = String(str).CharAt(7); # letter = "n"
letter = String(str).CharAt(12); # letter = ""
letter = String(str).CharAt("foo"); # letter = NULL

15 years ago[script] Use a region to collate all updated areas
Charlie Brej [Mon, 23 Nov 2009 00:41:02 +0000 (00:41 +0000)] 
[script] Use a region to collate all updated areas

Previously, refresh, each sprite would refresh its old area, then its new area.
This, combined with situations where there are many sprites caused the area to
be redrawn many times, each time redrawing each overlapping sprite data.

Now we add all areas which need to be refreshed to a region and this makes a
smaller set of rectangles to refresh, and these are not overlapping.

Also uses the freeze display updates, which should work better now.

15 years ago[rectangle] Add exact overlap detection
Charlie Brej [Mon, 23 Nov 2009 00:23:22 +0000 (00:23 +0000)] 
[rectangle] Add exact overlap detection

If the width and X position of the two rectangles is the same, we can merge
them together. The new set of exact overlaps detects this and determines the
direction the rectangle should be extended.

The region code now uses this. WARNING, when expanding rectangles, these have
to be merged with the other rectangles down the list as there may be overlap.

15 years ago[rectangle] Rewrite rectangle_find_overlap function
Charlie Brej [Sun, 22 Nov 2009 23:53:48 +0000 (23:53 +0000)] 
[rectangle] Rewrite rectangle_find_overlap function

The previous version had a flaw where it would find the rectangles overlapping
if they spanned a range in one axis. Despite them having no overlap in the
other axis.

Because this version has strange (although correct) behaviour when dealing with
empty rectangles, region only calls the overlap function when both rectangles
are not-empty.

The issue is if an empty rectangle sits on the edge of a full rectangle, the
function reports (possibly correctly) that the edge is overlapped by the empty
rectangle. The region code then nudges the rectangle down one space and
subtracts one from the empty rectangle height. This creates a rectangle with
negative height (bad thing).

If the other version can be fixed I will put it back, but this one is also
useful for the combining two rectangles of equal width.

15 years ago[region] Remove element only after processing
Charlie Brej [Sun, 22 Nov 2009 22:53:12 +0000 (22:53 +0000)] 
[region] Remove element only after processing

Now that we cannot rely on the next_node element. We must finish processing the
entry before removing it. Easiest way is to recurse and remove after return.

15 years ago[region] Break circular dependency using an extra variable
Charlie Brej [Sun, 22 Nov 2009 22:47:40 +0000 (22:47 +0000)] 
[region] Break circular dependency using an extra variable

new_area->width depends on new_area->x and vice versa. Break the dependency by
adding a temp variable.

15 years ago[region] Couple more minor bugs in rectangle merge
Charlie Brej [Sun, 22 Nov 2009 22:42:13 +0000 (22:42 +0000)] 
[region] Couple more minor bugs in rectangle merge

Also one redundant line. I think this code was never used in anger. There is a
major bug in the rectangle collision code which makes this detection ad-hoc.

15 years ago[region] Overlap top right edge lower rectangle starts right of the old
Charlie Brej [Sun, 22 Nov 2009 22:30:58 +0000 (22:30 +0000)] 
[region] Overlap top right edge lower rectangle starts right of the old

Probably a typo in the original version.

15 years ago[region] Free rectangle if empty
Charlie Brej [Sun, 22 Nov 2009 22:27:40 +0000 (22:27 +0000)] 
[region] Free rectangle if empty

Previously we just returned and did not free.

15 years ago[region] Do not prefetch next rectangle node while processing list
Charlie Brej [Sun, 22 Nov 2009 22:21:49 +0000 (22:21 +0000)] 
[region] Do not prefetch next rectangle node while processing list

If we fetch the next node while working on the current node, recursing down the
list may remove the next node. Just to be double sure, we recurse direct to
next node so the current is not damaged.

15 years ago[region] Clarify the testing code
Charlie Brej [Sun, 22 Nov 2009 22:12:58 +0000 (22:12 +0000)] 
[region] Clarify the testing code

The grids show which parts were not covered, or over covered.

15 years ago[region] Added test program
Charlie Brej [Sun, 22 Nov 2009 21:42:12 +0000 (21:42 +0000)] 
[region] Added test program

This examines the behaviour for correct behavious and performance.

15 years ago[script] Fix typo in SetBackgroundBottomColor function name
Charlie Brej [Sun, 22 Nov 2009 21:19:52 +0000 (21:19 +0000)] 
[script] Fix typo in SetBackgroundBottomColor function name

This is in the compatibility wrappers so it didn't effect anything..

15 years ago[x11] Force refresh area to start at 0,0
Charlie Brej [Sat, 21 Nov 2009 22:35:55 +0000 (22:35 +0000)] 
[x11] Force refresh area to start at 0,0

The x and y values, in area element, were used to determine the position of the
window on the screen. With the x and y not at 0, the full redraw not working
correctly on the second head.

15 years ago[script] Add text to image capability
Charlie Brej [Sat, 21 Nov 2009 17:45:41 +0000 (17:45 +0000)] 
[script] Add text to image capability

Enables scripts to display test by converting it into an image. This can then
be shown using a sprite. Function takes a string and the value of the three
colors (red green blue).

new_image = Image.Text("text we want", 1.0, 0.0, 0.0); // gives red text image

15 years ago[script] Migrate from image to pixel buffer
Charlie Brej [Sat, 21 Nov 2009 16:30:34 +0000 (16:30 +0000)] 
[script] Migrate from image to pixel buffer

The script image is now a pixel buffer. This allows some clever possibilities:
We can now implement text to image.
We can compose images by drawing on them, and record the areas which changed to
avoid refreshing the whole thing.

15 years ago[pixel-buffer] Move resize and rotate function from image to pixel buffer
Charlie Brej [Sat, 21 Nov 2009 15:51:17 +0000 (15:51 +0000)] 
[pixel-buffer] Move resize and rotate function from image to pixel buffer

There are comparability versions in image, but these are now deprecated.

15 years ago[image] Allow converting an image to a pixel buffer
Charlie Brej [Sat, 21 Nov 2009 14:10:23 +0000 (14:10 +0000)] 
[image] Allow converting an image to a pixel buffer

A pixel buffer is a much more useful object to manipulate. The image should
only be used when loading from files and never manipulating.

15 years ago[fade-throbber] Initialise views before animating
Charlie Brej [Sat, 21 Nov 2009 12:52:48 +0000 (12:52 +0000)] 
[fade-throbber] Initialise views before animating

Only run the call to animation after all views are initialised. No visible
changes but this is more correct.

15 years ago[fade-throbber] Move some operations from view to plugin start animation
Charlie Brej [Sat, 21 Nov 2009 12:45:45 +0000 (12:45 +0000)] 
[fade-throbber] Move some operations from view to plugin start animation

There were timeouts called once for each view and the first view would cause
is_animating to be set which would stop other views from initialising.

15 years ago[fade-throbber] Move logo opacity value to individual views
Charlie Brej [Sat, 21 Nov 2009 12:35:09 +0000 (12:35 +0000)] 
[fade-throbber] Move logo opacity value to individual views

When the logo opacity was plugin wide, one view would change its logo, and the
others would not bother. This prevented the logo form showing up on the second
screen.

15 years ago[image] Use a pixel buffer to hold the image size and data
Charlie Brej [Thu, 19 Nov 2009 23:55:22 +0000 (23:55 +0000)] 
[image] Use a pixel buffer to hold the image size and data

The image structure now contains a pixel buffer which holds the data. Some
functions are still within image for compatibility during the migration.

15 years ago[image] Remove fd from the image structure
Charlie Brej [Thu, 19 Nov 2009 23:21:22 +0000 (23:21 +0000)] 
[image] Remove fd from the image structure

The fd element was only used within the load function so did not need to be in
the structure. Also removes the open and close file functions. Their contents
is inlined.
This is the last cleanup before merging with pixel-buffer.

15 years ago[image] Remove image layout structure
Charlie Brej [Thu, 19 Nov 2009 22:47:54 +0000 (22:47 +0000)] 
[image] Remove image layout structure

Simplifies the image structure to make it more similar to the pixel-buffer

15 years ago[image] Remove size from the image structure
Charlie Brej [Wed, 18 Nov 2009 23:13:39 +0000 (23:13 +0000)] 
[image] Remove size from the image structure

Size was never used. Also removes the ply_image_get_size function.
Clean-up in preparation for merging with pixel-buffer.

15 years agoRevert "[script] free views before nullifying event loop"
Ray Strode [Wed, 18 Nov 2009 21:51:20 +0000 (16:51 -0500)] 
Revert "[script] free views before nullifying event loop"

This reverts commit a93b6525b3eeab0467bd795fb23fd3d795a90df7.

It has unpleasant side-effects, and the real problem was fixed
in the last view commits.

Analysis from Charlie.

15 years ago[event-loop] Restart front of pending timeout list after dispatch
Ray Strode [Wed, 18 Nov 2009 21:32:09 +0000 (16:32 -0500)] 
[event-loop] Restart front of pending timeout list after dispatch

This is in case a timeout handler invalidates the list while being
dispatched.

15 years ago[event-loop] Remove pending timeout before dispatching
Ray Strode [Wed, 18 Nov 2009 21:26:03 +0000 (16:26 -0500)] 
[event-loop] Remove pending timeout before dispatching

This way if the timeout handler removes itself, we don't
double-free and crash.  This is a better fix for

commit 79baa323e61b4c8a0e7bf75c773e78094ebf27fa

15 years agoRevert "[event-loop] Don't crash by running removed timeouts"
Ray Strode [Wed, 18 Nov 2009 21:24:23 +0000 (16:24 -0500)] 
Revert "[event-loop] Don't crash by running removed timeouts"

This reverts commit 79baa323e61b4c8a0e7bf75c773e78094ebf27fa.

It wasn't really the right way to fix the original problem.

Now we end up in a case where timeouts can still run after
stop_watching_for_timeout is called on them.  This can cause
crashes.

We need to instead fix the problem in a different way.

15 years ago[script] free views before nullifying event loop
Ray Strode [Wed, 18 Nov 2009 00:06:09 +0000 (19:06 -0500)] 
[script] free views before nullifying event loop

If we don't do this then a timeout will get scheduled
by view_stop_animation.

15 years ago[event-loop] add some time out debugging statements
Ray Strode [Tue, 17 Nov 2009 23:38:27 +0000 (18:38 -0500)] 
[event-loop] add some time out debugging statements

Now we report if code tries to remove a non-existing timeout,
or if there are multiple existing timeouts for the same
handler removed.

15 years ago[label] Operate with display set to NULL
Charlie Brej [Tue, 17 Nov 2009 22:46:32 +0000 (22:46 +0000)] 
[label] Operate with display set to NULL

Performing a ply_label_show with the display set to NULL allows the label to be
drawn any pixel buffer and not perform any redraw events.

15 years ago[label] Clean up dirty area on change of text or position
Charlie Brej [Tue, 17 Nov 2009 22:03:41 +0000 (22:03 +0000)] 
[label] Clean up dirty area on change of text or position

When the text or the position is changed, label will call draw events on areas
which were previously drawn on.

The two-step plugin is updated with the new method.

15 years ago[two-step] Add support for showing message text
Charlie Brej [Mon, 16 Nov 2009 23:34:45 +0000 (23:34 +0000)] 
[two-step] Add support for showing message text

Display the message text passed using the message plymouth command. This is
separate from the password prompt text.

15 years ago[animation] Make sure we do not access frames beyond the end of the animation
Charlie Brej [Mon, 16 Nov 2009 23:24:20 +0000 (23:24 +0000)] 
[animation] Make sure we do not access frames beyond the end of the animation

Small bug which would try to access the animation frame beyond the end of the
array. Only occurs when doing a redraw after the animation has completed
(e.g. password dialog).

15 years ago[region] Add missing break statement
Ray Strode [Sun, 15 Nov 2009 04:15:51 +0000 (23:15 -0500)] 
[region] Add missing break statement

This meant that in some cases the region was getting trimmed to
aggresively.

15 years ago[image] Optimise interpolate and rotate routines.
Charlie Brej [Sat, 14 Nov 2009 21:38:11 +0000 (21:38 +0000)] 
[image] Optimise interpolate and rotate routines.

These are small optimisation to: terminate interpolation early when operating
on fully transparent regions and do rotations by pre-computing the step size
rather than calling cos/sin/atan. These use around 30% fewer instructions on
general images.

15 years agoRevert "fasdf"
Ray Strode [Sat, 14 Nov 2009 03:21:40 +0000 (22:21 -0500)] 
Revert "fasdf"

This reverts commit 92dd3083d03608c7dc757b79d532b5f763b006d0.
I have no idea why I commited that or pushed it.

15 years ago[drm] Don't remove drm fb's that we don't know
Ray Strode [Thu, 12 Nov 2009 17:48:54 +0000 (12:48 -0500)] 
[drm] Don't remove drm fb's that we don't know

When we access to the kernel console's fb, we don't own
it and shouldn't remove it.

Spotted by Scott James Remnant.

15 years ago[console] Fix ioctl call
Ray Strode [Thu, 12 Nov 2009 14:15:57 +0000 (09:15 -0500)] 
[console] Fix ioctl call

it was doing if (!ioctl ... < 0).  Spotted by
Scott James Remnant

15 years ago[console] remove stray semicolon
Ray Strode [Thu, 12 Nov 2009 14:10:12 +0000 (09:10 -0500)] 
[console] remove stray semicolon

15 years agofasdf
Ray Strode [Tue, 10 Nov 2009 22:42:05 +0000 (17:42 -0500)] 
fasdf

15 years agoForce terminal into raw mode on every write call
Ray Strode [Tue, 10 Nov 2009 20:05:59 +0000 (15:05 -0500)] 
Force terminal into raw mode on every write call

This is a76c5bc4b74b4f552641ed2fa847f4387163b25a but for
text plugins.

15 years ago[set-default-theme] Drop nash dependency
Ray Strode [Wed, 4 Nov 2009 04:31:51 +0000 (23:31 -0500)] 
[set-default-theme] Drop nash dependency

Now we require one of

1) /bin/plymouth being installed
2) PLYMOUTH_PLUGIN_PATH being set
3) LIB being set (for compatibility)

15 years ago[main] Don't add duplicate text display
Ray Strode [Thu, 29 Oct 2009 21:12:28 +0000 (17:12 -0400)] 
[main] Don't add duplicate text display

Before we were adding the same text display once at start up
and once on show splash.

15 years ago[console] Function in degraded mode when closed
Ray Strode [Thu, 29 Oct 2009 21:11:00 +0000 (17:11 -0400)] 
[console] Function in degraded mode when closed

Not all machines will have /dev/tty0.  Those that
don't should still work.

15 years ago[main] Don't unlink /dev/null
Ray Strode [Thu, 29 Oct 2009 14:04:34 +0000 (10:04 -0400)] 
[main] Don't unlink /dev/null

In shutdown mode we were unlinking a file that was set to /dev/null.
Removing /dev/null is a bad idea.

15 years ago[script] Convert example script functions to use objects
Charles Brej [Thu, 29 Oct 2009 13:36:27 +0000 (13:36 +0000)] 
[script] Convert example script functions to use objects

The example script had some old style function names. These still work due to
the compatibility translations, but are not recommended in new code.

15 years ago[script] Add an "on quit" callback to scripted themes
Charlie Brej [Wed, 28 Oct 2009 20:11:47 +0000 (20:11 +0000)] 
[script] Add an "on quit" callback to scripted themes

The callback is called before the final sprite refresh and quit. This allows
the theme to tidy up the screen before handing over to the X fade and the
destop manager.

15 years ago[text] Don't redraw views after password request
Ray Strode [Wed, 14 Oct 2009 15:29:55 +0000 (11:29 -0400)] 
[text] Don't redraw views after password request

The text plugin doesn't have proper draw handlers at
the moment.  Drawing happens outside of the draw handlers,
and the draw handlers only clear screen.  Don't force
draw_area calls because that clears any drawing.

15 years ago[script] Sprite and Image objects inherit from an empty scalar
Charlie Brej [Tue, 13 Oct 2009 21:41:42 +0000 (22:41 +0100)] 
[script] Sprite and Image objects inherit from an empty scalar

Sprite and Image objects now inherit from an empty scalar which can be used to
keep any random data assoceated with that object. Previously there was a
dangerous tendency to pass any scalar operations to the top inherrited scalar
which was the class prototype.

15 years ago[script] Change order of spriterefresh operations to remove an incorrect redraw
Charlie Brej [Tue, 13 Oct 2009 21:23:36 +0000 (22:23 +0100)] 
[script] Change order of spriterefresh operations to remove an incorrect redraw

If a full refresh takes place, the system redraws the whole window but forgets
to remove sprites and update their old positions. The full window refresh is
now done last. Also old_width, and old_height are initialised at sprite
construction.

15 years ago[main] Truncate output debug file
Charlie Brej [Tue, 13 Oct 2009 21:20:11 +0000 (22:20 +0100)] 
[main] Truncate output debug file

Truncates the debug file to clear any previous data. Previously, if a run had a
shorter debug data, some data from a previous run would still be present at the
end of the file.

15 years ago[ daemon ] handle plymouth:force-splash on kernel cmdline
Frederic Crozat [Tue, 13 Oct 2009 16:01:24 +0000 (18:01 +0200)] 
[ daemon ] handle plymouth:force-splash on kernel cmdline

When booting with init=..., plymouthd disables itself. It is problematic
when using bootchartd (bug #22180). plymouth:force-splash allows to
force plymouthd splash.

Ensure init= value is not used when starting plymouthd for shutdown.

15 years ago[x11] initialize head on query not map
Ray Strode [Fri, 9 Oct 2009 21:38:17 +0000 (17:38 -0400)] 
[x11] initialize head on query not map

Do it for the same reason we did it in the frame-buffer
plugin in the previous commit.  It's the "right" thing
to do and now that we map lazily, doing it the old way
is broken.

15 years ago[frame-buffer] initialize head on query not map
Ray Strode [Fri, 9 Oct 2009 21:38:17 +0000 (17:38 -0400)] 
[frame-buffer] initialize head on query not map

That's the "right" thing to do and now that we
map lazily, doing it the old way is broken.

15 years ago[renderer] map buffer lazily
Ray Strode [Thu, 8 Oct 2009 20:01:56 +0000 (16:01 -0400)] 
[renderer] map buffer lazily

This is to prevent screen clears on plugins that don't
use the renderers (text plugins)

15 years ago[renderer] make map and unmap idempotent
Ray Strode [Thu, 8 Oct 2009 19:59:15 +0000 (15:59 -0400)] 
[renderer] make map and unmap idempotent

15 years ago[keyboard] make stop_watching_for_terminal_input idempotent
Ray Strode [Thu, 8 Oct 2009 19:42:27 +0000 (15:42 -0400)] 
[keyboard] make stop_watching_for_terminal_input idempotent

15 years ago[renderer] make input_source_close idempotent
Ray Strode [Thu, 8 Oct 2009 19:41:06 +0000 (15:41 -0400)] 
[renderer] make input_source_close idempotent

15 years ago[main] remove displays before closing renderer
Ray Strode [Thu, 8 Oct 2009 19:40:16 +0000 (15:40 -0400)] 
[main] remove displays before closing renderer

15 years ago[terminal] Only close terminal on free when open
Ray Strode [Thu, 8 Oct 2009 19:33:40 +0000 (15:33 -0400)] 
[terminal] Only close terminal on free when open

We were closing the terminal twice, causing assertions
to blow.

15 years ago[main] Disconnect from tty when hiding splash
Ray Strode [Thu, 8 Oct 2009 19:22:27 +0000 (15:22 -0400)] 
[main] Disconnect from tty when hiding splash

We were still processing keystrokes when the splash screen was
hidden. This caused problems because the tty is used by other
programs at that time.

15 years ago[drm] Destroy console buffer object on error path
Ray Strode [Wed, 7 Oct 2009 21:26:16 +0000 (17:26 -0400)] 
[drm] Destroy console buffer object on error path

We were leaking the object if it couldn't be mapped.

15 years ago[drm] Destroy console buffer object when done with it
Ray Strode [Tue, 6 Oct 2009 23:07:41 +0000 (19:07 -0400)] 
[drm] Destroy console buffer object when done with it

15 years ago[main] clean up terminal when done with it
Ray Strode [Tue, 6 Oct 2009 20:47:41 +0000 (16:47 -0400)] 
[main] clean up terminal when done with it

Before we were relying on the renderer to clean
up the terminal, which was wrong.

15 years ago[renderer] close device on failures
Ray Strode [Tue, 6 Oct 2009 19:31:53 +0000 (15:31 -0400)] 
[renderer] close device on failures

Before we were just unloading the module without
closing it.

15 years ago[drm] don't close terminal
Ray Strode [Tue, 6 Oct 2009 19:30:33 +0000 (15:30 -0400)] 
[drm] don't close terminal

It belongs to the core daemon, not the plugin.

15 years ago[drm] Drop master on VT switches
Ray Strode [Tue, 6 Oct 2009 14:50:42 +0000 (10:50 -0400)] 
[drm] Drop master on VT switches

This improves plymouth's interaction with X.

15 years ago[text] Don't crash after password prompt
Ray Strode [Mon, 5 Oct 2009 21:37:48 +0000 (17:37 -0400)] 
[text] Don't crash after password prompt

We were treating the passed in view to the
draw handler as if it was the plugin itself.

15 years ago[main] Properly reinitialize environment on show splash
Ray Strode [Mon, 5 Oct 2009 20:51:40 +0000 (16:51 -0400)] 
[main] Properly reinitialize environment on show splash

Before we were tearing down the displays and keyboard on hide
splash but not bringing them back on subsequent show splashes.

This fixes that.  We can probably throw less stuff away on
hide splash, but this is a more conservative fix for now.

15 years ago[script] Give sensible unique-ish strings for all objects.
Charlie Brej [Sun, 4 Oct 2009 17:03:23 +0000 (18:03 +0100)] 
[script] Give sensible unique-ish strings for all objects.

All objects can now be transformed into strings which allows them to be used as
hash indexes. Some rules do still apply. If an object is lost (freed....)
another object may take on the name of the lost one. The object address is used
to create a string in the form "#(0x123abc45)". NULL has the string "#NULL".
So arr[NULL] is the same as arr["#NULL"], and similar for the objects.

15 years ago[script] Do not segfault if accessing array with no key
Charlie Brej [Sun, 4 Oct 2009 16:56:38 +0000 (17:56 +0100)] 
[script] Do not segfault if accessing array with no key

Things like "array[] = 7" would cause a crash.
This is now caught and warned about during the parse.

15 years ago[script] Allow inline array definitions
Charlie Brej [Sun, 4 Oct 2009 16:46:59 +0000 (17:46 +0100)] 
[script] Allow inline array definitions

This can be used to initialise an array:
arr = [12, 43];    // arr[0] = 12; arr[1] = 43;

Or create an empty object:
obj = [];

15 years ago[script] Add do-while loops
Charlie Brej [Sun, 4 Oct 2009 16:36:22 +0000 (17:36 +0100)] 
[script] Add do-while loops

Format is:
    do {operations} while (condition);
or
    do operation; while (condition);

Like in C, the semicolon at the end is necessary.

15 years ago[branch-merge] Add x11 renderer plugin
Ray Strode [Sun, 4 Oct 2009 14:47:36 +0000 (10:47 -0400)] 
[branch-merge] Add x11 renderer plugin

This merges the "x11-renderer" branch to master.

In order to make debugging splash plugins easier,
and in order to make debugging multi-head renderering
possible on single head displays, Charlie wrote an
X11 rendering plugin.

This plugin displays plymouth in a running X session,
instead of on the console.

It currently only supports graphical plugins.  At some
point it may grow support for text plugins, too, using
vte.  That will take some reworking of the plymouth
daemon core.

This could some day serve as a basis for providing a
graphical theme chooser application (like
gnome-screensaver-preferences), although it's not clear
yet that's a good idea.

Right now, it's a great debugging and development tool,
though.

15 years ago[x11] Throttle plymouth to X server x11-renderer
Ray Strode [Sun, 4 Oct 2009 01:44:26 +0000 (21:44 -0400)] 
[x11] Throttle plymouth to X server

Some drivers completely choke with the amount of data plymouth is
sending over the wire.  This makes sure that plymouth doesn't
keep assaulting the X server when it's already overworked by asking
the server to return back a pixel before continuing.

15 years ago[x11] Tile windows initially
Ray Strode [Sat, 3 Oct 2009 06:09:29 +0000 (02:09 -0400)] 
[x11] Tile windows initially

15 years ago[x11] Move windows when dragged
Ray Strode [Sat, 3 Oct 2009 06:03:32 +0000 (02:03 -0400)] 
[x11] Move windows when dragged

Since they don't have title bars now, we need to
provide and easy way for them to be moved around.

15 years ago[x11] Hide title bar
Ray Strode [Sat, 3 Oct 2009 05:45:05 +0000 (01:45 -0400)] 
[x11] Hide title bar

It's not useful.

15 years ago[x11] Ignore ply_console_set_mode calls
Ray Strode [Sat, 3 Oct 2009 05:37:46 +0000 (01:37 -0400)] 
[x11] Ignore ply_console_set_mode calls

Since X is rendering to the console, we don't need
(or want) to move the console between KD_GRAPHICS
and KD_TEXT mode.

15 years ago[console] Generalize mode override api
Ray Strode [Sat, 3 Oct 2009 05:28:13 +0000 (01:28 -0400)] 
[console] Generalize mode override api

Previously it was force_text_mode ().

Now, we do ignore_mode_changes ().  The
force_text_mode() behavior can be emulated by
setting the console mode to text mode and then
calling the new API.

This will be useful because we can make
ply_console_set_mode a NOOP for renderers that
don't render directly to the console.

15 years ago[x11] Don't allow windows to be resized
Ray Strode [Sat, 3 Oct 2009 04:28:52 +0000 (00:28 -0400)] 
[x11] Don't allow windows to be resized

We don't handle the display resizing, so disallow it.

15 years ago[x11] Draw to back pixmap instead of on exposes
Ray Strode [Sat, 3 Oct 2009 04:26:14 +0000 (00:26 -0400)] 
[x11] Draw to back pixmap instead of on exposes

It's a little more efficient.

15 years ago[x11] Process events only as they come in
Ray Strode [Sat, 3 Oct 2009 04:24:43 +0000 (00:24 -0400)] 
[x11] Process events only as they come in

Previously, we were waking up an processing events
in a loop.  Now we only do it when there are events.

15 years ago[renderer] Add start of X11 plugin
Charlie Brej [Sat, 3 Oct 2009 01:06:06 +0000 (21:06 -0400)] 
[renderer] Add start of X11 plugin

This renderer is useful for testing plymouth splash
plugins without leaving X. It simulates a multi-head
display by creating two X windows each representing
one monitor.

15 years ago[renderer] Move VT switching to renderer plugins
Ray Strode [Sat, 3 Oct 2009 03:37:02 +0000 (23:37 -0400)] 
[renderer] Move VT switching to renderer plugins

Since not all renderer plugins should switch VTs we
do it from the individual plugins now.

15 years ago[event-loop] ignore EAGAIN
Ray Strode [Sat, 3 Oct 2009 03:25:30 +0000 (23:25 -0400)] 
[event-loop] ignore EAGAIN

Sometimes when debugging under gdb, epoll_wait spuriously
returns EAGAIN.

We treat it like EINTR now.

15 years ago[text-progress-bar] Don't segfault if no os string
Ray Strode [Thu, 1 Oct 2009 14:22:28 +0000 (10:22 -0400)] 
[text-progress-bar] Don't segfault if no os string

Some distributions won't have a release file that
we know about.  In those cases, we shouldn't crash.

15 years ago[drm] Force raw mode on each draw cycle
Ray Strode [Tue, 29 Sep 2009 17:07:11 +0000 (13:07 -0400)] 
[drm] Force raw mode on each draw cycle

This is just

602d9972002cb5fd7fd946f1af930c4b00017f30

all over again.