Michael Hudson-Doyle
ad8d6c9086
skeleton of new view
2018-07-06 13:36:53 +12:00
Michael Hudson-Doyle
7aac188a4b
grey out the background widget when an overlay is showing
2018-07-04 15:53:47 +12:00
Michael Hudson-Doyle
e0eeeadd28
enable/disable a Toggleable via a property not methods
2018-07-04 11:47:44 +12:00
Michael Hudson-Doyle
38eccb8382
use the new variable table padding on filesystem views
2018-06-29 14:00:22 +12:00
Michael Hudson-Doyle
5e621a4780
allow for variable spacing between table columns
2018-06-29 13:40:58 +12:00
Michael Hudson-Doyle
dbe07faa5c
fix infinite loop in table width calculations
2018-06-29 09:24:12 +12:00
Michael Hudson-Doyle
91247c82c5
Merge pull request #373 from mwhudson/raid-the-fourth
...
Raid the fourth
2018-06-27 11:06:43 +12:00
Michael Hudson-Doyle
237290bbb3
fix rendering of long labels on guided disk selection screen
2018-06-26 14:20:41 +12:00
Michael Hudson-Doyle
9e4a66b628
add the raid view
2018-06-26 12:22:09 +12:00
Michael Hudson-Doyle
edd6769a60
add ReadOnlyField (to be used for the size of a raid)
2018-06-26 12:19:47 +12:00
Michael Hudson-Doyle
1895d98ac4
tweak TableRow.selectable
2018-06-26 11:40:02 +12:00
Michael Hudson-Doyle
48666547f1
convert focusable things on filesystem view to "[ {stuff} ▸ ]" layout
2018-06-26 11:14:37 +12:00
Michael Hudson-Doyle
237611fda6
change " menu >" to "[ menu ▸ ]"
2018-06-26 10:19:57 +12:00
Michael Hudson-Doyle
1ae09926ca
change button_pile to use widget_width
2018-06-26 10:12:09 +12:00
Michael Hudson-Doyle
8854e7aaaa
move CursorOverride somewhere generic
2018-06-26 10:05:37 +12:00
Michael Hudson-Doyle
22ae45e99b
move widget_width() to its own module
...
also allow our widget subclasses to specify their width
2018-06-26 09:59:48 +12:00
Michael Hudson-Doyle
5f3ce077ac
Merge pull request #372 from mwhudson/selector-tweaks
...
Selector tweaks
2018-06-26 09:10:46 +12:00
Michael Hudson-Doyle
8bb5621947
Merge pull request #371 from mwhudson/action-menu-tweaks
...
do not show > in the context menu for actions that do not open a dialog
2018-06-25 23:50:24 +12:00
Michael Hudson-Doyle
4501aee357
rework look of open selector to match
2018-06-25 23:45:21 +12:00
Michael Hudson-Doyle
391b70cdf5
rework the look of the selector widget
2018-06-25 23:45:21 +12:00
Michael Hudson-Doyle
7ab699716d
make Selector.options a public interface
2018-06-25 23:45:21 +12:00
Michael Hudson-Doyle
80bec75871
stop assigning to Selector.value emitting the "select" signal
...
for the avoidance of infinite recursion
2018-06-25 23:45:21 +12:00
Michael Hudson-Doyle
f08b6a42e5
make selector a WidgetWrap rather than a decoration
2018-06-25 23:10:39 +12:00
Michael Hudson-Doyle
a6f54be22a
fix stupid failure of arithmetic in stretchy
2018-06-25 22:57:57 +12:00
Michael Hudson-Doyle
8b9331e5be
do not show > in the context menu for actions that do not open a dialog
2018-06-25 22:52:34 +12:00
Michael Hudson-Doyle
90d580a57e
remove DummyView
2018-06-22 09:39:33 +12:00
Michael Hudson-Doyle
9cbaac4542
use our custom WidgetWrap everywhere
2018-06-22 09:38:18 +12:00
Michael Hudson-Doyle
ea8f97491f
delete old ErrorView
2018-06-22 09:34:02 +12:00
Michael Hudson-Doyle
0e2d376ed0
build a form out of tables
2018-06-21 21:07:02 +12:00
Michael Hudson-Doyle
7093006711
fix binding more than two tables
2018-06-21 20:48:08 +12:00
Michael Hudson-Doyle
88e23fce54
fix distribution of space when widening columns to accommodate a colspan>1 column
2018-06-21 16:07:00 +12:00
Michael Hudson-Doyle
f09696862a
add a column option to allow a column to take available space
2018-06-21 16:07:00 +12:00
Michael Hudson-Doyle
8eb21bce72
split Table into TablePile and TableListBox
...
and get rid of that confusing container_maker thing
2018-06-21 16:07:00 +12:00
Michael Hudson-Doyle
119f40b72d
Merge pull request #369 from mwhudson/form-simplify
...
simplify the way forms are turned into widgets
2018-06-21 16:06:47 +12:00
Michael Hudson-Doyle
f037ebd586
add lost_focus/gained_focus to our WidgetWrap
2018-06-21 15:39:14 +12:00
Michael Hudson-Doyle
99dd12f870
simplify how forms are built
2018-06-21 15:38:02 +12:00
Michael Hudson-Doyle
ed86028dd2
provide a way for a field to opt out of default styling
2018-06-21 15:37:19 +12:00
Michael Hudson-Doyle
19d43c19c7
make field an ABC
2018-06-21 15:37:19 +12:00
Michael Hudson-Doyle
ba809a9e97
simplify how form widgets get styled
2018-06-21 15:37:19 +12:00
Michael Hudson-Doyle
59da0e717b
make Toggleable simpler and more robust
2018-06-21 15:37:15 +12:00
Michael Hudson-Doyle
eee758d382
update STYLE_NAMES to match the styles that are currently defined
2018-06-21 12:09:40 +12:00
Michael Hudson-Doyle
76835c40ab
sort STYLE_NAMES constructor
2018-06-21 12:09:40 +12:00
Michael Hudson-Doyle
8680786da3
make inputs on keyboard and welcome page of consistent width
2018-06-20 09:17:49 +12:00
Michael Hudson-Doyle
9e33874a86
Merge pull request #366 from mwhudson/mwhudson/scrollbar-tweaks
...
make scrollbar less intrusive
2018-06-20 08:47:56 +12:00
Michael Hudson-Doyle
68c49e5135
add some super basic filesystem tests, fix partition tests
2018-06-19 11:43:59 +12:00
Michael Hudson-Doyle
de80a06f47
add actionmenu widget
2018-06-18 21:36:35 +12:00
Michael Hudson-Doyle
c0d66f5540
make scrollbar less intrusive
...
also pretty up its implementation a bit while I am here
2018-06-18 21:24:23 +12:00
Michael Hudson-Doyle
14ad092b9d
implement _select_first/last_selectable on our Columns
2018-06-15 12:26:02 +12:00
Michael Hudson-Doyle
3a59925265
work around a strange behaviour of Pile when contents is changed
2018-06-15 11:51:40 +12:00
Michael Hudson-Doyle
66578aff79
account for colspan>1 cells in width computations
...
I ran into that gotcha pretty quickly.
2018-06-15 11:48:19 +12:00
Michael Hudson-Doyle
b34ca65aba
a slightly over-engineered table widget
...
that takes column widths from the contens of the cells, unlike
most things in urwid
2018-06-15 11:48:19 +12:00
Michael Hudson-Doyle
2f184ce9a6
fix display of install progress in footer
2018-06-13 14:02:40 +12:00
Michael Hudson-Doyle
1ab495c0a8
fix refreshing network view on network changes
2018-06-13 13:38:03 +12:00
Michael Hudson-Doyle
d315751d60
add our own version of WidgetWrap
...
urwid doesn't know about the _select_first/last_selectable methods our
containers use to make tab-cycling work so its WidgetWrap doesn't
forward them along. So add a WidgetWrap that does, and use it in the one
place that it matters so far (more coming soon!).
2018-06-11 14:13:44 +12:00
Scott Moser
3e69673501
Fix writing of netplan configs
...
When user configures network with subiquity, it's rendered
netplan should be wholly definitive. So, we remove the other files
that may have config. This fixes a bug where running in an instance
when running on a system where cloud-init had rendered a 'match' with
'macaddress'.
When writing netplan we keep 'macaddress' match in place but drop
others. The others may just wildcard from the installer environment,
but macaddress are likely by cloud-init or otherwise intentionally
written.
Also add an atomic write in subiquitycore/file_util and move the
netplan code into subiquitycore/netplan.py, and add some unit test
helpers from cloud-init.
2018-06-07 11:46:34 -04:00
Michael Hudson-Doyle
270ba0992a
fix selectability in non-scrolling stretchy
2018-06-07 12:50:50 +12:00
Scott Moser
51a7169904
tox: Support running tests and flake8 in tox.
...
This puts into place a tox.ini for running unit tests without
a large amount of deps installed into the system. For example,
we did not want to need libnl-route-3-dev or build-essential installed
in the system in order to run unit tests.
In order avoid import errors in the modules due to these missing
dependencies, we have added a 'fake_deps/' directory that provides
mock'd objects of the dependencies that were used.
The only installed packages necessary for this to run should be
tox itself and its dependencies (pip and friends). From a clean new
container we can then do:
apt-get install tox
git clone ...
tox
Also along the way:
* adjust setup.py to only need the DistUtilsExtra during 'build'.
This means tox usage doesn't require python3-distutils-extra.
* drop use of lsb_release in favor of built-in parsing.
This python module wasn't doing much. We can parse /etc/lsb-release
ourselves with less footprint. Also part of the motivation for this
is that lsb_release was not on pypi.
* replace use of StorageInfo in test_partition.py with a FakeStorageInfo
* .gitignore: ignore only the top level 'probert' directory so that
we can track fake_deps/probert.
* fix a couple escape chars, by using raw strings (r'').
* adjust gettext to return un-modified strings rather than '_(string)',
but support old style if FAKE_TRANSLATE=mangle.
2018-06-05 17:59:46 -04:00
Michael Hudson-Doyle
eab0f668ff
use general machinery a little more
2018-05-31 10:28:29 +12:00
Michael Hudson-Doyle
ed5e1d86b5
fix lint
2018-05-25 10:43:55 +12:00
Ryan Harper
053a1c249d
pyflakes3 fixes for subiquitycore/__init__.py
2018-05-24 16:59:31 -05:00
Ryan Harper
d7c8b1111b
pep8 fixes for subiquitycore/core.py
2018-05-24 16:59:31 -05:00
Ryan Harper
d293c52152
pep8 fixes for subiquitycore/tasksequence.py
2018-05-24 16:59:31 -05:00
Ryan Harper
4c1b6e6fc9
pep8 fixes for subiquitycore/ui/buttons.py
2018-05-24 16:59:31 -05:00
Ryan Harper
080ac4c245
pep8 fixes for subiquitycore/ui/form.py
2018-05-24 16:59:31 -05:00
Ryan Harper
5b666294e5
pep8 fixes for subiquitycore/ui/utils.py
2018-05-24 16:59:31 -05:00
Ryan Harper
7dba257b3c
Drop mis-merged code from rebase
2018-05-24 16:59:31 -05:00
Ryan Harper
09d7398ec6
pep8 fixes for subiquitycore/__init__.py
2018-05-24 16:54:02 -05:00
Ryan Harper
5f233be9b1
pep8 fixes for subiquitycore/ui/views/network.py
2018-05-24 16:54:02 -05:00
Ryan Harper
c908115ee0
pep8 fixes for subiquitycore/ui/views/network_configure_manual_interface.py
2018-05-24 16:54:02 -05:00
Ryan Harper
c4c614860a
pep8 fix drop commented code in subiquitycore/controllers/network.py
2018-05-24 16:54:02 -05:00
Ryan Harper
5660d72cf1
pep8 fixes for subiquitycore/controller.py
2018-05-24 16:51:51 -05:00
Ryan Harper
9159cd0003
pep8 fixes for subiquitycore/core.py
2018-05-24 16:51:51 -05:00
Ryan Harper
dcc0cbc240
pep8 fixes for subiquitycore/i18n.py
2018-05-24 16:51:51 -05:00
Ryan Harper
02cbd2948c
pep8 fixes for subiquitycore/prober.py
2018-05-24 16:51:51 -05:00
Ryan Harper
bad0e9761f
pep8 fixes for subiquitycore/tasksequence.py
2018-05-24 16:51:51 -05:00
Ryan Harper
b328c3deed
pep8 fixes for subiquitycore/utils.py
2018-05-24 16:51:51 -05:00
Ryan Harper
cfc2c9d227
pep8 fixes for subiquitycore/view.py
2018-05-24 16:51:51 -05:00
Ryan Harper
69331754d9
pep8 fixes for subiquitycore/ui/anchors.py
2018-05-24 16:51:51 -05:00
Ryan Harper
df5ff9d48e
pep8 fixes for subiquitycore/ui/buttons.py
2018-05-24 16:51:51 -05:00
Ryan Harper
860edbc7b5
pep8 fixes for subiquitycore/ui/container.py
2018-05-24 16:51:51 -05:00
Ryan Harper
2d6cca8281
pep8 fixes for subiquitycore/ui/frame.py
2018-05-24 16:51:51 -05:00
Ryan Harper
7cbf8c2b69
pep8 fixes for subiquitycore/ui/form.py
2018-05-24 16:51:51 -05:00
Ryan Harper
4890d306fc
pep8 fixes subiquitycore/ui/selector.py
2018-05-24 16:51:51 -05:00
Ryan Harper
762f5f3008
pep8 fixes for subiquitycore/ui/stretchy.py
2018-05-24 16:51:51 -05:00
Ryan Harper
18406b70ef
pep8 fixes for subiquitycore/ui/utils.py
2018-05-24 16:51:51 -05:00
Ryan Harper
c99941f3c5
pep8 fixes for subiquitycore/ui/views/login.py
2018-05-24 16:51:51 -05:00
Ryan Harper
62ea440b3d
pep8 fixes for subiquitycore/ui/views/network.py
2018-05-24 16:51:51 -05:00
Ryan Harper
0fa5dcab28
pep8 fixes
2018-05-24 16:51:51 -05:00
Ryan Harper
c8d4c51ddd
pep8 fixes
2018-05-24 16:51:51 -05:00
Ryan Harper
ae9412159d
Don't use __name__ in getLogger
2018-05-24 16:51:51 -05:00
Ryan Harper
13ca352291
pep8 fixes for subiquitycore/ui/views/network_configure_wlan_interface.py
2018-05-24 16:51:51 -05:00
Ryan Harper
591be4ecbc
pep8 fixes for subiquitycore.ui.views.network_default_route
2018-05-24 16:51:51 -05:00
Ryan Harper
45fabd78f2
pep8 fixes for subiquitycore.ui.views.tests.test_network_configure_manual_interface
2018-05-24 16:51:51 -05:00
Ryan Harper
f2715a4735
pep8 fixes for subiquitycore.controllers.network
2018-05-24 16:51:51 -05:00
Ryan Harper
b7e60f7b91
pep8 fixes for subiquitycore.testing.view_hewlpers
2018-05-24 16:51:51 -05:00
Ryan Harper
40caacaca3
pep8 fixes for subiquitycore.models.network
2018-05-24 16:51:51 -05:00
Ryan Harper
a0bf68f3c4
pyflakes3 fixes
...
Add and enable pyflakes3 on console_conf, subiquity, subiquitycore and tests.
Replace NOQA markers with __all__ declarations for module imports.
Replace some obvious deadcode that voilates flake8, separate pass for removing
dead code rather than commenting will be handled later.
2018-05-24 16:51:51 -05:00
Michael Hudson-Doyle
bd48ed9b1d
remove SimpleList
...
and the Body widget, both utterly trivial
2018-05-25 09:35:25 +12:00
Ryan Harper
3c9b2e28c7
Drop commented out / dead code
2018-05-23 18:53:12 -05:00
Michael Hudson-Doyle
0fe1f5145c
sprinkle in some more ".base_widget"s
2018-05-23 13:40:14 +12:00
Michael Hudson-Doyle
7441cb6df6
convert ScrollBarListBox to decoration rather than subclass
...
for all the usual reasons why composition is better than inheritance,
but in particular because I want to have a listbox that has a scrollbar
but not our custom tab behaviour in another branch. decoration in urwid
is not as transparent as it sometimes seems it should be but luckily
there's only one view that does much with its listbox and it was due
for some cleanup anyway.
2018-05-23 13:14:00 +12:00
Michael Hudson-Doyle
626488e988
Merge pull request #334 from CanonicalLtd/mwhudson/move-excerpt-title-to-view
...
move excerpt, title and footer from controller to view
2018-05-22 22:38:39 +12:00
Ryan Harper
a84dd2b272
Encoding input when running commands
2018-05-21 13:35:26 -05:00
Ryan Harper
74ae9b9fde
Drop use of encoding kwarg to subprocess for python3.5 compat
2018-05-21 11:54:34 -05:00
Michael Hudson-Doyle
79208bc00b
trap a TaskSequence gotcha
2018-05-21 13:09:56 +12:00
Michael Hudson-Doyle
70ec850aad
Merge pull request #336 from CanonicalLtd/mwhudson/hack-ThreadPoolExecutor
...
hack to stop ThreadPoolExecutor blocking exit
2018-05-21 11:59:12 +12:00
Michael Hudson-Doyle
384dadc5ed
hack to stop ThreadPoolExecutor blocking exit
2018-05-21 11:58:10 +12:00
Michael Hudson-Doyle
f6f214125f
move TaskSequence somewhere more generic
...
I want to reuse it in my containerizing branch.
Improve API and docs a bit while I am looking at it.
2018-05-21 11:52:06 +12:00
Michael Hudson-Doyle
cbd5afe2c0
move imports of i18n higher so _ is always installed before tests are imported
2018-05-21 10:14:34 +12:00
Michael Hudson-Doyle
ac875751fb
fix installprogress
2018-05-18 16:27:05 +12:00
Michael Hudson-Doyle
11708703c9
move titles, footers, excerpts from controller to view
...
read title and footer from the view instance, make views respsonsible for rendering
the excerpt
adapts infrastructure, welcome, keyboard, network views
2018-05-18 15:55:49 +12:00
Michael Hudson-Doyle
80fffc723c
some self review
2018-05-18 13:53:51 +12:00
Michael Hudson-Doyle
7df7a4c1fa
fetch ssh keys in the identity screen, all a bit happy path though
2018-05-18 13:53:51 +12:00
Michael Hudson-Doyle
bdf3861e5c
some simplifications
2018-05-18 13:53:51 +12:00
Michael Hudson-Doyle
3d5efcaf9c
actually pass new defaults to run, oops
2018-05-18 13:53:25 +12:00
Michael Hudson-Doyle
1e4992a5e7
stop testing on xenial, we depend on python 3.6 now
2018-05-18 13:38:13 +12:00
Michael Hudson-Doyle
cb61144144
small tweaks
2018-05-18 13:21:38 +12:00
Michael Hudson-Doyle
488802fc8b
update users of run_command (i thought there was more than this)
2018-05-18 13:11:15 +12:00
Michael Hudson-Doyle
c6468982ae
Thin the wrappers around subprocess functions
...
Some of this stuff is not needed with modern Python.
Breaks everything of course, updates to follow.
2018-05-18 13:00:43 +12:00
Michael Hudson-Doyle
35c08f1d6f
up thread pool limit
...
otherwise we can only do one thing at once! many of the things
we do in the background do not really require an OS thread but oh well
2018-05-18 12:33:25 +12:00
Michael Hudson-Doyle
ad9f10a9ac
try to ensure that functions run in the background have "_bg_" in their name
2018-05-18 12:29:42 +12:00
Michael Hudson-Doyle
1efa265fc5
remove calls to set_alarm_in that were only there so that exceptions raised would be propagated
2018-05-18 12:25:47 +12:00
Michael Hudson-Doyle
03392a208d
stop swallowing exceptions raised by the callback passed to run_in_bg
...
it is just more confusing that it is worth, especially when doing
development
2018-05-18 12:17:18 +12:00
Michael Hudson-Doyle
13d7f13c42
fixes for stretchy where stretchy widget is selectable
2018-05-14 10:28:33 +12:00
Michael Hudson-Doyle
960f51ca91
remove view argument to Form.as_rows and friends
2018-05-07 10:57:35 +12:00
Michael Hudson-Doyle
0a0af0842b
fix stupid crash
2018-05-04 10:31:36 +12:00
Michael Hudson-Doyle
fa8f8d32f5
down all network links that have changed config before applying it
...
this means that if you enter a broken config, it breaks as it should
2018-05-03 12:14:06 +12:00
Michael Hudson-Doyle
92457e5724
Merge pull request #324 from CanonicalLtd/mwhudson/click-helper
...
add --click, --script arguments to subiquity-tui
2018-05-03 11:35:35 +12:00
Michael Hudson-Doyle
1ed27f1848
Merge pull request #322 from CanonicalLtd/mwhudson/no-create-user
...
stop creating the user in the live session
2018-05-01 13:01:08 +12:00
Michael Hudson-Doyle
5a6d0ac90f
a docstring
2018-05-01 13:00:27 +12:00
Michael Hudson-Doyle
acdd3bdec7
refactor a bit
2018-05-01 12:57:03 +12:00
Michael Hudson-Doyle
58d64eb419
over engineered way to delay command-line supplied script invocation
...
use this to allow click helper to wait for a button to appear
2018-05-01 12:49:39 +12:00
Michael Hudson-Doyle
db4d8a537e
add a way to specify actions to take in the UI on the command line
...
--script takes a little python snippet to run in a helpful namespace
--click is a wrapper around --script to click a button
2018-05-01 12:29:29 +12:00
Michael Hudson-Doyle
07438a1049
add support for Frames to find_with_pred in view_helpers
2018-05-01 12:17:53 +12:00
Michael Hudson-Doyle
fe671d8d9b
fix rendering of nic info if dhcp failed but has addresses of other family
...
This bug has been here forever! Oh well.
2018-04-27 14:56:30 +12:00
Michael Hudson-Doyle
dc17fcae4f
stop creating the user in the live session
...
there is no real reason to do this, and it lets me delete some code.
i also cleaned some other stuff up in the area
2018-04-27 14:16:37 +12:00
Michael Hudson-Doyle
7d704f83f0
mark even more strings as translatable
2018-04-19 13:09:00 +12:00
Michael Hudson-Doyle
78e6fea854
work around strange behaviour of _("")
2018-04-19 10:29:08 +12:00
Michael Hudson-Doyle
688a270c17
a round of marking strings as translatable and ensuring translations are actually displayed in the UI
2018-04-19 10:29:08 +12:00
Michael Hudson-Doyle
fdd3fae45a
fix crash on escape key
2018-04-19 09:57:11 +12:00
Michael Hudson-Doyle
2d3d500e34
a couple of tweaks to make more translated strings appear
2018-04-18 20:18:15 +12:00
Michael Hudson-Doyle
6396025964
Merge pull request #315 from CanonicalLtd/mwhudson/scollbar-focus
...
change scrollbar color if focused
2018-04-17 12:57:22 +12:00
Michael Hudson-Doyle
ba041718dc
Merge pull request #316 from CanonicalLtd/mwhudson/stretchy-overlay
...
add an overlay that has nicer resizing behaviour
2018-04-17 12:57:15 +12:00
Michael Hudson-Doyle
7eafa420fb
add show_stretch_overlay, simplify show_overlay
2018-04-17 12:23:11 +12:00
Michael Hudson-Doyle
6a76f8ad02
add a version of Overlay that copes with small and large screens better
...
See the docstring for the long version.
2018-04-17 12:22:00 +12:00
Michael Hudson-Doyle
e041260e2a
change scrollbar color if focused
2018-04-16 23:31:10 +12:00
Michael Hudson-Doyle
5a6ad92239
add some validation to URLEditor
2018-04-12 09:43:02 +12:00
Michael Hudson-Doyle
13eaa5c9dc
add a bare-bones proxy model/view/controller
2018-04-09 15:05:46 +12:00
Michael Hudson-Doyle
028914da97
another small helper
2018-04-09 14:37:26 +12:00
Michael Hudson-Doyle
a723d25a4c
create a helper to create a common screen layout
2018-04-09 14:30:59 +12:00