* Add CSS data in config.py and install it
* Strip out all hardcoded colors and use style class annotations
* Fix colors to be more theme appropriate to fix dark theme look
Signed-off-by: Cole Robinson <crobinso@redhat.com>
And drop the explicit forward device listing. Similar to what
we did with bridge/macvtap domain <interface>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Name and forward mode config are always visible. ipv4, ipv6, and
domain name are under their own expanders which are collapsed by
default.
This will fit better with the XML editor pattern and reduce the
urge to squeeze more UI elements into the now smaller wizard
Rather than a mix of radio buttons and other combo boxes.
This follows the pattern we more commonly use in other UI, and
makes it easier to hide UI elements that aren't relevant for
specific choices, like the possibly large SR-IOV selector
This wizard is sufficiently obscure that I don't think it's
really valuable to try to explain networking concepts with
UI labels. If users don't know what they are trying to create
by using this wizard, there's no way we are going to adequately
explain to them what they are looking at. The example values
should be self explanatory enough anyways
This only applies for inter VM traffic when ipv6 networking is
disabled, which IMO is pretty obscure. If users want ipv6
connectivity, just enabling ipv6 will handle it appropriately
Given that we bumped deps to fairly modern distros with the
python3 change, I think this is safe. gtk 3.22 is from sep 2016, it's
in debian9 and fedora 25+, which seems fine for our needs.
GtkTable was deprecated since Gtk version 3.4 and should not be used
in newly-written code. It should be replaced by GtkGrid.
https://developer.gnome.org/gtk3/stable/GtkTable.htmlhttps://developer.gnome.org/gtk3/stable/GtkGrid.html
GtkTable is mapped to GtkGrid following these rules:
----------------
- n_(row|columns) are removed because they are not required for
GtkGrid
----------------
- Missing "left_attach" and "top_attach" are added with value set to
0.
Example:
<property name="left_attach">0</property>
<property name="top_attach">0</property>
----------------
- (right_attach - left_attach) > 1 is stored in new "width" property
Example:
In case of: (GtkTable)
<property name="left_attach">1</property>
<property name="right_attach">4</property>
Equivalent to: (GtkGrid)
<property name="width">3</property>
----------------
- (bottom_attach - top_attach) > 1 is stored in new "height" property
Example:
In case of: (GtkTable)
<property name="top_attach">1</property>
<property name="bottom_attach">3</property>
Equivalent to: (GtkGrid)
<property name="height">2</property>
----------------
- Missing packing "(x|y)_options" property is represented as no
"(h|v)align" object property and "(h|v)expand" object property
set to "true"
Example:
In case of: (GtkTable)
# Missing y_options property
Equivalent to: (GtkGrid)
<property name="vexpand">True</property>
# No valign property
----------------
- Packing "(x|y)_options" property set to "GTK_FILL" is represented
as no "(h|v)expand" object property and no "(h|v)align" object
property
Example:
In case of: (GtkTable)
<property name="x_options">GTK_FILL</property>
Equivalent to: (GtkGrid)
# No hexpand property
# No halign property
----------------
- Packing "(x|y)_options" property set to "GTK_EXPAND" is
represented as "(h|v)expand" object property set to "true" and
"(h|v)align" object property set to "center"
Example:
In case of: (GtkTable)
<property name="x_options">GTK_EXPAND</property>
Equivalent to: (GtkGrid)
<property name="hexpand">True</property>
<property name="halign">center</property>
----------------
- Packing "(x|y)_options" property set to nothing is represented as
"(h|v)align" object property set to "center"
Example:
In case of: (GtkTable)
<property name="y_options" />
Equivalent to: (GtkGrid)
<property name="valign">center</property>
----------------
- All "(x|y)_options" rules apply but don't change existing
"(h|v)align" and "(h|v)expand" object properties
----------------
- Packing "x_padding" property is converted to "margin_(start|end)"
object property
Example:
In case of: (GtkTable)
<property name="x_padding">6</property>
Equivalent to: (GtkGrid)
<property name="margin_start">6</property>
<property name="margin_end">6</property>
----------------
- Packing "y_padding" property is converted to "margin_(top|bottom)"
object property
Example:
In case of: (GtkTable)
<property name="y_padding">6</property>
Equivalent to: (GtkGrid)
<property name="margin_top">6</property>
<property name="margin_bottom">6</property>
GtkHButtonBox was deprecated since Gtk version 3.2 and should not
be used in newly-written code. Use GtkButtonBox instead. The property
orientation is set by default to horizontal.
https://developer.gnome.org/gtk3/stable/GtkHButtonBox.html
libvirt added network forward mode 'open' by commit 25e8112d, No any
iptables rules are added to this virtual network.
This patch adds support to create such a virtual network.
Signed-off-by: Lin Ma <lma@suse.com>
Problem:
- GtkHBox and GtkVBox have been deprecated since version 3.2 and should not be used in newly-written code.
Solution: Replace GtkHBox and GtkVBox with GtkBox.
- I have used the find function in text-editor to find all occurances of "GtkVBox" and "GtkHBox" then replaced them with "GtkBox".
- Then append on a new line immediately after "<property name="orientation">...</property>" with value "horizontal" or "vertical" accordingly.
We need to bump the gtk dep to at least 3.10 for GtkRevealer usage,
and I want to bump the pygobject higher to drop some bug workarounds.
But since the oldest thing I have that meets those requirements is
RHEL/Centos 7.3 which is at 3.14 for both, set those as the minimum
versions since that's what I'll be testing against. They are still
1.5 years old and only a bit over a year newer than the previous
versions, so it's not a huge change.