summaryrefslogtreecommitdiffstats
path: root/pyanaconda/ui/gui/hubs
Commit message (Collapse)AuthorAgeFilesLines
* Don't try to update spokes that are indirect.Chris Lumens2013-02-201-2/+2
| | | | | | This was just minor confusion. It's not the spoke being processed that we need to be concerned about. It's all the ones that might get their incompleteness checked.
* Update all spokes on a Hub when spoke is exitedMartin Sivak2013-02-151-1/+2
|
* Wait for continueButton in KS mode if the user changed anythingMartin Sivak2013-02-151-15/+21
| | | | | | | | | This behaviour tries to minimize the "surprise factor" we have in the installer. When the user entered spoke, changed any data and then left the spoke, the installer gave him no chance for review or correcting the entered values. With this patch applied the Hub waits for a click on the continueButton if any user interaction happened before all the spokes were ready+completed.
* Use only one large grid for the hubs.Chris Lumens2013-01-241-9/+27
| | | | | This makes the spoke selectors on rows by theirselves much smaller. They no longer extend all the way to the right edge of the screen.
* Indicate nothing will happen until "Begin Installation" is clicked (#883195).Chris Lumens2013-01-241-1/+19
|
* Move communication module to pyanaconda/uiVratislav Podzimek2013-01-241-1/+1
| | | | | | It is not a GUI specific code, so it should live under pyanaconda/ui instead of pyanaconda/ui/gui. Moreover from pyanaconda/ui/gui it cannot be imported without X server running.
* Enable line wrapping in a couple more places (#901551).Chris Lumens2013-01-202-4/+5
|
* Mark the live progress hub message for translation (#892069).Chris Lumens2013-01-071-2/+2
|
* Update the API which controls where should spokes be displayedMartin Sivak2013-01-021-0/+4
| | | | | | | | | | | | | | | This patch adds two pieces to Spoke classes: should_run(environment_id, data) This method should return True if the spoke is to be displayed in the environment (currently only "anaconda" and "firstboot" are supported) @property configured() This property should return list of strings that will be stored to a config file, which will be passed to firstboot and GIE and will control whether spokes are to be displayed again or not.
* Sort categories in GUI alphabeticallyMartin Sivak2012-12-181-1/+1
|
* Move the path definitions to Interface and pass it to the Hubs from thereMartin Sivak2012-12-171-8/+4
|
* Make GUI more reusable and support multiple directories for spokes and ↵Martin Sivak2012-12-171-5/+27
| | | | categories
* Split completed and mandatory attributesMartin Sivak2012-12-171-2/+2
|
* Add a gradient background to spoke headers (mizmo, clumens).Chris Lumens2012-12-122-10/+18
| | | | | | | | | | | The idea here is that by adding a gradient up top, the "Done" button looks more like it belongs with the header than with the widgets down in the spoke. It also subtly makes the spoke look like a subpart of the hub. Adding this required adding an additional internal widget, which means also changing all existing glade files to include this internal widget. Make sure to build new glade support and install locally (or use the proper makefile targets) before editing.
* Make sure software selection is checked against filesystem space. (#853636)David Lehman2012-12-112-5/+36
|
* Fix a typo in the live cd completion text (#884373).Chris Lumens2012-12-071-1/+1
|
* Make sure product info and spoke titles are translated throughout.Chris Lumens2012-12-041-3/+2
| | | | | Except on the hub, which is special and is going to need special work done for it.
* Add set_info, set_error, set_warning functions to the BaseWindow object.Chris Lumens2012-11-291-5/+2
| | | | | This saves us from having to type the same GTK constants again and again in python land.
* On live installs, the progress hub should have a Quit button (#854904).Chris Lumens2012-11-201-0/+6
| | | | | Live environments have their own way of rebooting, and anaconda doesn't need to interfere with that.
* Buttons shouldn't scream at people (#868536, mizmo).Chris Lumens2012-11-092-3/+3
|
* Add logging around the messages that can be processed by the hub.Chris Lumens2012-11-091-0/+6
|
* Set SpokeSelector's tooltip to spoke's statusVratislav Podzimek2012-11-091-0/+3
| | | | | | We use PANGO_ELLIPSIZE_MIDDLE to show the status and one cannot get the whole status. Also screen readers could probably work with this.
* Mark properties in existing glade files as translatable.Chris Lumens2012-11-012-2/+2
|
* Fix a race condition with kickstarts (#868834)Jesse Keating2012-10-291-2/+2
| | | | | | | | | | | We were simluating the continue click before consuming all the messages in the queue, which would cause the next hub to be in use, but we were attempting to process messages for the previous hub. It would cause a crash of anaconda, but not a backtrace that could be caught with our autoreporter. The solution is to only continue when the queue is empty. This also makes use of a property to see if we are ready to continue instead of duplicating code.
* Make all Gtk calls from inside of it's main loop (and thread)threadingMartin Sivak2012-10-161-14/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Marks all methods containing mostly gtk calls as gtk_thread_wait or gtk_thread_nowait - Uses gtk_call_once instead of GLib.idle_add to make sure the method is called only once (returns False) - Removes some code from the threading locks, because it wasn´t touching Gtk at all This change was discussed in the mailinglist here: https://www.redhat.com/archives/anaconda-devel-list/2012-October/msg00030.html The main point was: According to the Gtk team, the gdk_threads_enter/leave pair should not be used at all (and they have apparently discouraged usage of it since early releases of Gtk2). Moreover in the current Gdk docs (http://developer.gnome.org/gdk3/stable/gdk3-Threads.html) those functions are now marked as deprecated. The preferred way (and now the only way) is to use g_idle_add (GLib.idle_add) with a callback method to schedule GUI changes. The callback method will then get called by the Gtk main loop so no locking is needed (and GLib.idle_add performs none). But that is also the reason why everything Gtk related must be done from the mainloop thread either directly or via idle_add.
* Add a progress message for quitting the installer.Chris Lumens2012-09-251-0/+3
| | | | | We need this to quit when handling errors, since doing a sys.exit() from a thread only kills the thread and not the main program.
* Don't explicitly start the progress spinner in python code.Chris Lumens2012-09-181-3/+0
| | | | | This is handled by glade, and the fact that the spinner doesn't spin right now is due to a GTK bug.
* Move the progress bar back down to the bottom of the progress hub.Chris Lumens2012-09-181-1/+0
| | | | | This provides room to display the personalization on the same screen as the progress bar, which is what the mockups call for.
* Make progress hub spokes possible and move the root password thereMartin Sivak2012-09-133-19/+130
| | | | | - Splits doInstall to doInstall and doConfiguration - Updates text and gui mode to use doConfiguration
* CONTINUE -> BEGIN INSTALLATION (#856614).Chris Lumens2012-09-121-1/+1
|
* Fix ransom notes cycling.Chris Lumens2012-09-122-26/+25
| | | | | | Instead of constantly creating new Images and shoving them into a spot in the notebook, I'm now just putting each rnote on its own page. Whether it's better or not is up for debate, but at least this way works.
* Use 250ms interval for installation progress updatingVratislav Podzimek2012-09-111-1/+1
| | | | | Using GLib.idle_add for action that repeats means 100% CPU usage. So let's use GLib.timeout_add with 250ms interval instead.
* Keep the current spoke on top of the hub.Chris Lumens2012-08-301-0/+2
| | | | | This means you can't alt-tab away from the spoke and do stuff on the hub and really confuse anaconda.
* Move expandLangs to localization moduleVratislav Podzimek2012-08-291-2/+2
|
* Merge master into newtuiMartin Sivak2012-08-066-6/+15
|\
| * reboot after kickstartBrian C. Lane2012-07-251-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Modify the continueButton to exit (allowing the anaconda exitHandler to take control) if it is the last action. The button is expected to be setup so that it is clear to the user what will happen (eg. REBOOT). This also fixes the display of the quitDialog when rebooting. Add a click of the final button when kickstarting with reboot or shutdown. halt also works, but requires a new version of pykickstart. Previously the halt command was not working, it would set action to KS_SHUTDOWN and there was no way for KS_WAIT to be set.
| * Move all .ui files to a .glade extension.Chris Lumens2012-07-255-3/+3
| | | | | | | | | | | | xgettext is dumb and only looks at file extensions. It has no way to let you tell it what extension maps to what language on the command line. Thus, out glade files must be .glade if they are to get translated.
| * Provide a way to run apply methods even if a spoke wants us to skip elsewhere.Chris Lumens2012-07-231-2/+4
| | | | | | | | | | | | | | | | | | | | | | This first fixes a bug where a spoke's apply and execute methods were being run even when skipTo was set. In this case, we don't usually want apply to be run because the user needs to do something else first. In particular, skipping from the dep solving error dialog (still in progress) to the software selection screen was resulting in problems. Having fixed that, some spokes do actually need to have apply run even when skipping. Storage is a prime example of that.
* | Create common abstract classes usable for all types of UIMartin Sivak2012-08-061-8/+6
|/
* Hide the spinner on the progress hub when we are done.Chris Lumens2012-07-171-0/+1
| | | | It looks a little silly to have it sitting there and stopped.
* Fix auto-continuing for kickstart installs.Chris Lumens2012-07-121-2/+8
| | | | | | | | | If you're on a spoke when all other spokes become ready and complete, the install will continue automatically when you hit back. If you're on the hub, the install will continue automatically when all spokes are ready and complete. It's a little jarring, but that's just how it's gotta be.
* Make hub continue button sensitivity more complicated.Chris Lumens2012-07-121-2/+19
| | | | | | | It can only be sensitive both if there's no incomplete spokes and no not ready spokes. By not tracking not ready spokes, it's possible to hit continue while things are still downloading. This can lead to very bad situations, and it's only by accident that we've not hit this yet.
* Run ksdata execute methods for real kickstart installs as well as from the UI.Chris Lumens2012-07-121-3/+18
| | | | | | | | | This first requires splitting out the chunk that calls execute methods into its own function, then adding an execute method to spokes, then making sure it gets called from everywhere. I have also added a way to make sure the execute methods do not get run when spokes are ready, since at least the storage check function will set the spoke not ready and then ready again which will lead to an infinite loop.
* Add a spinner next to the installation progress message.Chris Lumens2012-06-292-3/+30
| | | | | This is a hint that we're still doing something, even if an individual step takes a long time.
* Indirect spokes do not have a selector, so guard the focus grab.Chris Lumens2012-06-211-1/+3
|
* When a spoke selector is clicked, grab the focus.Chris Lumens2012-06-211-0/+1
| | | | | | This way, it looks highlighted when you come back to the hub just like if it was selected with the keyboard, and keyboard navigation will start on the spoke that was just visited.
* use timeout instead of idle for Queue pollingBrian C. Lane2012-06-131-1/+2
| | | | | | | | | | The Queue poll inside the GLib idle state was causing 100% CPU usage, it was being called multiple times per second. It would be more efficient to be able to use a select() or poll() with the Queue, but that isn't possible. So, run the Queue processing in a 1 second timeout. CPU usage drops to almost nothing. Also add a call to q.task_done() for unrecognized messages.
* Tweak progress bar updates a little bit.Chris Lumens2012-05-042-1/+1
| | | | | | Starting off with the "Preparing to install" message makes the pause up front seem a little less weird, and moving the package installation message around means there's less pause after the last filesystem is made.
* Fix up automatic moving behavior for kickstart installs.Chris Lumens2012-04-261-1/+24
| | | | | | | | | | | | | | | The basic idea is that we skip any standalone spokes that are already filled out by the input kickstart file, and that we only display the summary hub so that something's being displayed while background processes work. Any important spokes not filled out by the input kickstart file will get the caution icon and the user will have to complete them before continuing. The message at the bottom of the summary hub explains that. This behavior leaves open the possibility that the user will be able to visit a spoke while background processes work. In that case, we want to wait until the user leaves that spoke before automatically continuing. The alternative is to move as soon as anaconda is ready, which is really quite jarring.
* Don't crash when there are no rnotes.David Lehman2012-04-191-2/+7
|