Ray Strode [Wed, 16 Sep 2009 19:03:57 +0000 (15:03 -0400)]
[entry] Fix up max bullet calculation
Before we were counting space that could only fit a partial bullet as room
for a whole bullet. Now we look and see if there is enough extra space for
at least half a bullet (since the code will draw half a bullet in the case
of more bullets than can fit)
Charlie Brej [Thu, 10 Sep 2009 19:22:11 +0000 (20:22 +0100)]
[progress] Stop progress at 25% if progress file is not loaded
In cases where, before the file system is mounted, there is a very long pause,
the progress would continue all the way to 100% assuming a 60 second boot time.
It now stops at 25% to signal that something is wrong and moves to crawl mode
(nudging forward very very slowly).
Charlie Brej [Wed, 9 Sep 2009 16:28:40 +0000 (17:28 +0100)]
[script] Make "this" (the current object) a part of the status
This is now also looked up when evaluating vars. Vars are looked for in the
local context, then within this (current object) and finally within the
global context;
Ray Strode [Wed, 9 Sep 2009 15:26:46 +0000 (11:26 -0400)]
[populate-initrd] Try to find inst more aggressively
We've been using the inst function provided by mkinitrd
to install plymouth and its dependencies into the initrd
root, but mkinitrd may not be installed in a dracut world,
and dracut has its own inst function.
This commit tries getting access to either of them, before
bailing. At some point we may want to bundle our own inst
function or get a new flag added to /usr/bin/install to do
what inst does.
Charlie Brej [Thu, 3 Sep 2009 20:10:56 +0000 (21:10 +0100)]
[script] Clean up as_numer and as_bool functions
As_bool now returns false for 0.0 and NAN. It uses the fpclassify which should
be a clean way of testing for zero. The as_number function simplifies a switch
to an if.
Charlie Brej [Thu, 3 Sep 2009 12:45:41 +0000 (13:45 +0100)]
[progress] Make the progress percentage settable
The progress percentage is now settable. By "settable" this doesn't mean the
value will change to the new value, the set value is only a hint as to where
the progress should be at this point in time. So it it overshot or under-run,
the hint is used to determine how much time is left, and how fast to move the
bar.
Charlie Brej [Wed, 2 Sep 2009 20:21:05 +0000 (21:21 +0100)]
[script] Set "this" in functions called through an object
When functins are called as an element of an object (e.g. obj.func(par) ), the
object is passed into the function execution as "this" in the local context.
Charlie Brej [Tue, 1 Sep 2009 20:19:51 +0000 (21:19 +0100)]
[script] Use access functions when accessing variables
Rather than directly accessing hash tables when accessing variables, use the
abstraction functions. Adds a peek function which does not create a new object
is one has not been defined already.
Ray Strode [Tue, 25 Aug 2009 18:53:31 +0000 (14:53 -0400)]
[populate-initrd] Get plugin path from plymouth
Previously, we'd try to guess the plugin path based
on the arch of the running process. That's sort of
fragile, so better to just install plugins where
plymouth says it's going to look for them.
Ray Strode [Tue, 25 Aug 2009 11:43:09 +0000 (07:43 -0400)]
[utils] Force modules to stay resident after close
Some modules (the label plugin in particular) use
libraries with static data that don't do well with
being unmapped and remapped later.
This commit changes the module loading call so that
plugins aren't unmapped at close time (the close
is effectively ignored). This simplifies things
for now.
At some point we may want to make it decidable on
a per plugin basis.
Ray Strode [Tue, 25 Aug 2009 01:25:52 +0000 (21:25 -0400)]
[script] Force graphics mode before each frame
It's what all the other boot splash plugins do. This
is important because things occasionally muck with the
terminal during boot up (knocking it out of raw mode, etc),
and resetting the window graphics mode resets the terminal
settings as well.
Future, potentially better alternatives to this could be:
1) TIOCSLCKTRMIOS to lock the terminal settings
2) Using /dev/input instead of the tty for keyboard input
Charlie Brej [Tue, 18 Aug 2009 15:39:50 +0000 (16:39 +0100)]
[image] Scale images not using data beyond the edge of the last pixel
When using 1 pixel wide images and stretching them, the result is a fade
between the pixel data and the transparent pixels beyond the end of the image.
Ray Strode [Fri, 14 Aug 2009 12:44:47 +0000 (08:44 -0400)]
[window] Reopen tty if disconnected
Some init implementations forcefully take over the tty after rc.sysinit
with the TIOCSCTTY ioctl, forcing plymouth's connection to the tty
to get dropped. This comment just reopens the tty if it gets taken
over.
It may make sense at some point to use /dev/input for catching input
events instead of the tty, to side step these kinds of problems.
Ray Strode [Mon, 10 Aug 2009 18:22:18 +0000 (14:22 -0400)]
[main] Log debug messages more aggressively
Previously, we'd only log messages to a file if plymouth
crashed and it was started with --debug. Now we log
messages to a file if it's started with --debug, or run with
plymouth:debug or plymouth:debug=file:/var/log/plymouth/foo.log
Ray Strode [Mon, 10 Aug 2009 17:47:41 +0000 (13:47 -0400)]
[window] Handle disconnected tty fd better
Right now if we ever get a hangup from the mainloop
on the tty fd then the window's fd watch on the tty
becomes invalid and we will ultimately crash when
trying to disconnect the watch later.
This commit sets the watch to NULL if a hang up happens,
and adds some debug spew.