summaryrefslogtreecommitdiffstats
path: root/pyanaconda/ui
Commit message (Collapse)AuthorAgeFilesLines
...
* Update the name of the source spoke to be a little more correct.Chris Lumens2012-03-201-1/+1
|
* All UI objects need to take a Storage instead of a DeviceTree.Chris Lumens2012-03-209-36/+34
| | | | | | We're going to need to do this for the advanced partitioning stuff anyway, and now it looks like we'll need a Storage to do a reset on the base repo when it's changed in the source spoke. Might as well make the change now.
* Bring back the initialize callback argument.Chris Lumens2012-03-157-34/+50
| | | | | | | | | | | Turns out, I need this callback to handle updating the hub's completeness tracking. When spokes are first created, the hub checks to see if they are complete and what their status is for making the grid. Then for spokes that take a long time setting up, they fire off a thread and immediately return. When that thread finishes, the completeness and status may have changed but there's no way to update the hub. Thus, this argument has to return.
* Add a comment explaining why we don't deal with ksdata here.Chris Lumens2012-03-141-0/+3
|
* Set the language on the welcome screen based on ksdata.Chris Lumens2012-03-131-0/+9
|
* Set the correct protocol in the source drop down.Chris Lumens2012-03-131-4/+4
| | | | | When I added "Closest mirror", I bumped down everything in the drop down by one position. That needs to be reflected here.
* Add a method that can wrap yum.close.Chris Lumens2012-03-131-0/+1
| | | | | | | | | | sqlite doesn't get along very well with multithreaded programs. Oh sure it's got threading support, but you can't use a database handle created in one thread from within another thread. Thus, we need to close all the databases down before doing any accesses from elsewhere. It's conceivable other payload backends will have similar problems, so I've just added a generic method.
* Add another context manager for the Gdk threading code.Chris Lumens2012-03-095-113/+107
| | | | | | | | | | | Once again, we're doing something in a pattern: Gdk.threads_enter() do something Gdk.threads_leave() This is another perfect example of the sort of thing the context manager can really help clean up.
* Avoid a big delay when entering software selection by fetching group data early.Chris Lumens2012-03-081-0/+7
| | | | | | This doesn't actually do anything to change the total amount of time everything takes, but it does move the later delay to happen at the same time as you are already waiting for the spoke to become ready.
* Don't crash if there's no network device to refresh.Chris Lumens2012-03-081-0/+2
| | | | | | If I'm in too big of a hurry to skip through the networking screen with an alt-c, I can sometimes end up with a traceback where we've tried to refresh the UI with no selected device. So just bail out of the function.
* Fix displaying a CD/DVD selector when a CD/DVD has been detected.Chris Lumens2012-03-081-3/+14
| | | | | | Since yumpayload is going to set up the mount for the detected media already, we can't just try to mount it again. That'll never work. Instead just check what we've already detected and display the selector if appropriate.
* Add a URL drop down option for the mirror list, which is our default.Chris Lumens2012-03-082-13/+25
| | | | | It doesn't currently do anything (method isn't set, and the hub does not show anything useful) but all the UI elements are there.
* Block the software selection spoke until we have a base repo.Chris Lumens2012-03-081-0/+32
| | | | | | | | We don't want to allow visiting the software selection spoke until there's a repo set up to pull group names from. A repo could be set up in a variety of ways - cmdline or kickstart, autodetected CD/DVD, Fedora mirror if network is available, or filling out the source spoke. Just wait until the repo fetching thread is done.
* Populate the software selection spoke with data from the new packaging API.Chris Lumens2012-03-061-16/+33
| | | | | | | | | | | This isn't the final data we want displayed. Right now I'm just dumping desktop groups in the left list and everything else in the right list. Later we will want spin-like things in the left list and groups related to those spin-like things in the right list. However, this is good enough for now to show that the packaging code works. Also, the selections made on this spoke will now be propagated into the ksdata and show back up next time the spoke is visited.
* Make a lot of cosmetic changes to the software selection dialog.Chris Lumens2012-03-061-4/+22
| | | | | | * Add more spacing between the two lists. * Add a margin between the borders of the lists and their contents. * Fix word wrapping.
* Return the first qualifying device from opticalInstallMedia.David Lehman2012-03-061-1/+2
| | | | | | We claim to return a list, but since we never unmount after finding valid media, we can never return a list of more than a single device.
* If a CD/DVD drive is selected, the source spoke is complete.Chris Lumens2012-03-021-6/+15
|
* Don't quit anaconda when you close the memdia check dialog.Chris Lumens2012-03-021-2/+1
| | | | I had too many layers of Gtk.main_quit in there.
* Fix a stupid typo.Chris Lumens2012-03-021-1/+1
|
* Make the base UI classes take a payload instance, just like they do devicetree.Chris Lumens2012-02-288-19/+45
|
* Add support for running media check for both ISO images and CD/DVDs.Chris Lumens2012-02-282-16/+71
| | | | | | | | | | This requires some weird glib IO channel code to handle updating the progress bar while a process runs, but it's really not all that bad. Notifying the user whether their media is good or not is still rough, but at least there's something there while we figure out what really should be going on. I have temporarily removed the Cancel button as that makes things a lot more difficult and we can always work on it later if we really need it.
* Don't decorate the keyboard add layout dialog.Chris Lumens2012-02-281-0/+1
|
* Add a lightbox context manager for shorter, clearer code.Chris Lumens2012-02-286-40/+42
| | | | | | | | | | | All our lightbox code so far follows a similar pattern: make a lightbox do some stuff destroy a lightbox That pattern is exactly what context managers are for. So, I've added an enlightbox manager so you can use it in a with statement.
* Add a function to set a viewport's background, remove duplicate code.Chris Lumens2012-02-244-24/+38
|
* Fix a couple bugs packing selectors into the autodetected media box.Chris Lumens2012-02-241-2/+4
|
* Don't decorate the media check dialog, since it'll end up lightboxed.Chris Lumens2012-02-241-1/+2
|
* Set the background of the autodetected media viewport to background color.Chris Lumens2012-02-242-1/+12
|
* Don't mark the storage or source spokes as ready until they really are.Chris Lumens2012-02-242-7/+5
| | | | | | Basically, only call set_sensitive after doing all the _initialize stuff instead of right after the thread we were watching is gone. Doing the latter allows the user to enter the spoke before it's really set up.
* The "Choose an ISO" dialog should be lightboxed and undecorated.Chris Lumens2012-02-222-0/+7
|
* progressHandler -> progressChris Lumens2012-02-221-2/+2
|
* Add a progress bar reporting framework.Chris Lumens2012-02-221-1/+46
| | | | | | | It consists of a very basic ProgressReporter class and singleton that serves as a wrapper around the UI implementation so anaconda doesn't need to know what kind of interface is running, and then a couple methods in the existing GUI progress bar class to set things up.
* Support implementing portions of anaconda's post-install as %post scripts.Chris Lumens2012-02-221-1/+0
| | | | | | | | For now, all that's supported is copying screenshots. However this could be extended to other portions that really don't benefit from being in python (restorecon, etc.). Of course none of these scripts get run yet given that we don't have any way to run the kickstart file, but once we do we'll get this for free.
* Don't decorate the betanag dialog, mainly so there's no title.Chris Lumens2012-02-211-0/+1
|
* Make the product name upper case on spokes.Chris Lumens2012-02-211-3/+1
|
* Add a selector attribute to the related spoke.Chris Lumens2012-02-216-44/+60
| | | | | | | | | Passing in the readyCB means multiple callbacks end up referencing the same selector. I could probably do something very clever here, but just adding the reference is pretty clean. I'm not sure why I was so opposed to doing this in the first place. Note that this also changes the skipTo handling to match.
* skipTo should be an attribute, not a property.Chris Lumens2012-02-211-18/+16
| | | | | We treat it like an attribute later by trying to set it, which of course doesn't work on a regular property.
* Update the GUI TODO list.Chris Lumens2012-02-201-0/+7
|
* Add screenshot support back in.Chris Lumens2012-02-201-0/+28
| | | | | | | | | | This is just like it was in the old UI, except there's no dialogs telling you if it worked or not. Also, you can take a screenshot of anything that derives from UIObject. This includes most (but not all) dialogs. Note that the part that copies screenshots over to the finished system is still missing, but that fits in with a whole set of post-installation tasks that we don't have figured out yet.
* Add abstract and concrete versions of error dialogs.Chris Lumens2012-02-162-1/+70
|
* And then rename setup to refresh.Chris Lumens2012-02-1011-53/+48
| | | | | I think that's a better description of what the method actually does. Hopefully I'll be able to keep everything straight.
* Add some more documentation to the retranslate method.Chris Lumens2012-02-101-0/+7
| | | | | I've hopefully put enough comments around this process that we'll be able to find it when it causes problems in the future.
* Rename the populate method to initialize.Chris Lumens2012-02-1011-40/+39
| | | | | | I can't keep "populate" and "setup" straight in my head since they sound like they should do the exact same things. This is the first step in straightening out the mess.
* Pass ksdata and platform to Storage from run-spoke.py and run-hub.py.David Lehman2012-02-092-6/+8
|
* Grammar fix on the network spoke.Chris Lumens2012-02-061-1/+1
|
* Add a check method to NormalSpokes, and have it called from on_back_clicked.Chris Lumens2012-02-061-0/+26
| | | | | | | | | | | | | | | | | | Certain spokes (storage somewhat and software selection especially) require that some basic sanity checks be performed before continuing. In the case of software selection, this process could take a very long time. Also, it needs to be done before going to the second hub since the user may have to make changes and we don't allow going back. The solution, then, is a check method that's run out of yet another thread. It's started as soon as the Back button is clicked on a spoke. If the user goes back into the spoke, we request the thread exit. If the user clicks Continue on the hub before checking is done, the hub will need to wait. A couple things need to be done before this all works: First, Hubs need a way of noticing that check threads are still running and wait for them (with a notification dialog). Second, check threads need to be derived from a class that enforces them having a main loop and kill switch.
* Condense NormalSpoke on_back_clicked methods into the base class.Chris Lumens2012-02-066-24/+8
|
* Network spoke: Use another mnemonic for Configure buttonRadek Vykydal2012-02-031-1/+1
| | | | | Conflicted with Continue. I chose letter close to the first one, but perhaps consonant or g is better?
* Network spoke: fix unplugged info in device listRadek Vykydal2012-02-031-1/+2
| | | | Don't report unplugged for plugged unmanaged (NM) devices.
* Network spoke: Fix DBG messageRadek Vykydal2012-02-031-1/+1
|
* Replace the last layout instead of removing (KeyboardSpoke)Vratislav Podzimek2012-02-031-4/+21
|