Change configdata from function to attribute
This commit is contained in:
parent
bc4a01faf3
commit
57baafbf30
@ -99,7 +99,7 @@ class Config(QObject):
|
||||
|
||||
def __init__(self, configdir, fname, parent=None):
|
||||
super().__init__(parent)
|
||||
self.config = configdata.configdata()
|
||||
self.config = configdata.data
|
||||
self._configparser = ReadConfigParser(configdir, fname)
|
||||
self._configfile = os.path.join(configdir, fname)
|
||||
self._wrapper_args = {
|
||||
|
@ -95,9 +95,7 @@ SECTION_DESC = {
|
||||
}
|
||||
|
||||
|
||||
def configdata():
|
||||
"""Get the config structure as an OrderedDict."""
|
||||
return OrderedDict([
|
||||
data = OrderedDict([
|
||||
('general', sect.KeyValue(
|
||||
('show_completion',
|
||||
SettingValue(types.Bool, "true"),
|
||||
@ -118,8 +116,7 @@ def configdata():
|
||||
|
||||
('startpage',
|
||||
SettingValue(types.List, "http://www.duckduckgo.com"),
|
||||
"The default page(s) to open at the start, separated with "
|
||||
"commas."),
|
||||
"The default page(s) to open at the start, separated with commas."),
|
||||
|
||||
('auto_search',
|
||||
SettingValue(types.AutoSearch, "naive"),
|
||||
@ -127,9 +124,8 @@ def configdata():
|
||||
"entered."),
|
||||
|
||||
('zoomlevels',
|
||||
SettingValue(types.PercList, "25%,33%,50%,67%,75%,90%,100%,110%,"
|
||||
"125%,150%,175%,200%,250%,300%,400%,"
|
||||
"500%"),
|
||||
SettingValue(types.PercList, "25%,33%,50%,67%,75%,90%,100%,110%,125%,"
|
||||
"150%,175%,200%,250%,300%,400%,500%"),
|
||||
"The available zoom levels, separated by commas."),
|
||||
|
||||
('defaultzoom',
|
||||
@ -157,8 +153,7 @@ def configdata():
|
||||
|
||||
('scrollbuttons',
|
||||
SettingValue(types.Bool, "true"),
|
||||
"Whether there should be scroll buttons if there are too many "
|
||||
"tabs."),
|
||||
"Whether there should be scroll buttons if there are too many tabs."),
|
||||
|
||||
('position',
|
||||
SettingValue(types.Position, "north"),
|
||||
@ -176,8 +171,7 @@ def configdata():
|
||||
('webkit', sect.KeyValue(
|
||||
('auto_load_images',
|
||||
SettingValue(types.Bool, "true"),
|
||||
"Specifies whether images are automatically loaded in web "
|
||||
"pages."),
|
||||
"Specifies whether images are automatically loaded in web pages."),
|
||||
|
||||
('dns_prefetch_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
@ -199,8 +193,8 @@ def configdata():
|
||||
|
||||
('private_browsing_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Private browsing prevents WebKit from recording visited pages "
|
||||
"in the history and storing web page icons."),
|
||||
"Private browsing prevents WebKit from recording visited pages in "
|
||||
"the history and storing web page icons."),
|
||||
|
||||
('javascript_can_open_windows',
|
||||
SettingValue(types.Bool, "false"),
|
||||
@ -221,10 +215,10 @@ def configdata():
|
||||
|
||||
('spatial_navigation_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Enables or disables the Spatial Navigation feature, which "
|
||||
"consists in the ability to navigate between focusable elements "
|
||||
"in a Web page, such as hyperlinks and form controls, by using "
|
||||
"Left, Right, Up and Down arrow keys."),
|
||||
"Enables or disables the Spatial Navigation feature, which consists "
|
||||
"in the ability to navigate between focusable elements in a Web "
|
||||
"page, such as hyperlinks and form controls, by using Left, Right, "
|
||||
"Up and Down arrow keys."),
|
||||
|
||||
('links_included_in_focus_chain',
|
||||
SettingValue(types.Bool, "true"),
|
||||
@ -233,18 +227,18 @@ def configdata():
|
||||
|
||||
('zoom_text_only',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Specifies whether the zoom factor on a frame applies only to "
|
||||
"the text or to all content."),
|
||||
"Specifies whether the zoom factor on a frame applies only to the "
|
||||
"text or to all content."),
|
||||
|
||||
('print_element_backgrounds',
|
||||
SettingValue(types.Bool, "true"),
|
||||
"Specifies whether the background color and images are also "
|
||||
"drawn when the page is printed. "),
|
||||
"Specifies whether the background color and images are also drawn "
|
||||
"when the page is printed. "),
|
||||
|
||||
('offline_storage_database_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Specifies whether support for the HTML 5 offline storage "
|
||||
"feature is enabled or not. "),
|
||||
"Specifies whether support for the HTML 5 offline storage feature is "
|
||||
"enabled or not. "),
|
||||
|
||||
('offline_web_application_storage_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
@ -253,48 +247,47 @@ def configdata():
|
||||
|
||||
('local_storage_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Specifies whether support for the HTML 5 local storage feature "
|
||||
"is enabled or not."),
|
||||
"Specifies whether support for the HTML 5 local storage feature is "
|
||||
"enabled or not."),
|
||||
|
||||
('local_content_can_access_remote_urls',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Specifies whether locally loaded documents are allowed to "
|
||||
"access remote urls."),
|
||||
"Specifies whether locally loaded documents are allowed to access "
|
||||
"remote urls."),
|
||||
|
||||
('local_content_can_access_file_urls',
|
||||
SettingValue(types.Bool, "true"),
|
||||
"Specifies whether locally loaded documents are allowed to "
|
||||
"access other local urls."),
|
||||
"Specifies whether locally loaded documents are allowed to access "
|
||||
"other local urls."),
|
||||
|
||||
('xss_auditing_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"Specifies whether load requests should be monitored for "
|
||||
"cross-site scripting attempts. Suspicious scripts will be "
|
||||
"blocked and reported in the inspector's JavaScript console. "
|
||||
"Enabling this feature might have an impact on performance."),
|
||||
"Specifies whether load requests should be monitored for cross-site "
|
||||
"scripting attempts. Suspicious scripts will be blocked and reported "
|
||||
"in the inspector's JavaScript console. Enabling this feature might "
|
||||
"have an impact on performance."),
|
||||
|
||||
#('accelerated_compositing_enabled',
|
||||
# SettingValue(types.Bool, "true"),
|
||||
# "This feature, when used in conjunction with QGraphicsWebView, "
|
||||
# "accelerates animations of web content. CSS animations of the "
|
||||
# "transform and opacity properties will be rendered by composing "
|
||||
# "the cached content of the animated elements. "),
|
||||
# "transform and opacity properties will be rendered by composing the "
|
||||
# "cached content of the animated elements. "),
|
||||
|
||||
#('tiled_backing_store_enabled',
|
||||
# SettingValue(types.Bool, "false"),
|
||||
# "This setting enables the tiled backing store feature for a "
|
||||
# "QGraphicsWebView. With the tiled backing store enabled, the "
|
||||
# "web page contents in and around the current visible area is "
|
||||
# "speculatively cached to bitmap tiles. The tiles are "
|
||||
# "automatically kept in sync with the web page as it changes. "
|
||||
# "Enabling tiling can significantly speed up painting heavy "
|
||||
# "operations like scrolling. Enabling the feature increases "
|
||||
# "memory consumption. "),
|
||||
# "QGraphicsWebView. With the tiled backing store enabled, the web "
|
||||
# "page contents in and around the current visible area is "
|
||||
# "speculatively cached to bitmap tiles. The tiles are automatically "
|
||||
# "kept in sync with the web page as it changes. Enabling tiling can "
|
||||
# "significantly speed up painting heavy operations like scrolling. "
|
||||
# "Enabling the feature increases memory consuption."),
|
||||
|
||||
('frame_flattening_enabled',
|
||||
SettingValue(types.Bool, "false"),
|
||||
"With this setting each subframe is expanded to its contents. "
|
||||
"This will flatten all the frames to become one scrollable "
|
||||
"With this setting each subframe is expanded to its contents. This "
|
||||
"will flatten all the frames to become one scrollable "
|
||||
"page."),
|
||||
|
||||
('site_specific_quirks_enabled',
|
||||
@ -369,10 +362,8 @@ def configdata():
|
||||
"Background color of completion widget items."),
|
||||
|
||||
('completion.category.bg',
|
||||
SettingValue(
|
||||
types.Color,
|
||||
"qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #e4e4e4, "
|
||||
"stop:1 #dbdbdb)"),
|
||||
SettingValue(types.Color, "qlineargradient(x1:0, y1:0, x2:0, y2:1, "
|
||||
"stop:0 #e4e4e4, stop:1 #dbdbdb)"),
|
||||
"Background color of the completion widget category headers."),
|
||||
|
||||
('completion.category.border.top',
|
||||
@ -465,10 +456,10 @@ def configdata():
|
||||
|
||||
('fonts', sect.KeyValue(
|
||||
('_monospace',
|
||||
SettingValue(types.Font, 'Monospace, "DejaVu Sans Mono", '
|
||||
'Consolas, Monaco, "Bitstream Vera Sans Mono", '
|
||||
'"Andale Mono", "Liberation Mono", "Courier New", '
|
||||
'Courier, monospace, Fixed, Terminal'),
|
||||
SettingValue(types.Font, 'Monospace, "DejaVu Sans Mono", Consolas, '
|
||||
'Monaco, "Bitstream Vera Sans Mono", "Andale Mono", '
|
||||
'"Liberation Mono", "Courier New", Courier, monospace, '
|
||||
'Fixed, Terminal'),
|
||||
"Default monospace fonts."),
|
||||
|
||||
('completion',
|
||||
|
@ -18,7 +18,7 @@
|
||||
"""CompletionModels for settings/sections."""
|
||||
|
||||
from qutebrowser.models.completion import CompletionModel, NoCompletionsError
|
||||
from qutebrowser.config.configdata import configdata
|
||||
import qutebrowser.config.configdata as configdata
|
||||
|
||||
|
||||
class SettingSectionCompletionModel(CompletionModel):
|
||||
@ -30,7 +30,7 @@ class SettingSectionCompletionModel(CompletionModel):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
cat = self.new_category("Config sections")
|
||||
for name in configdata().keys():
|
||||
for name in configdata.data.keys():
|
||||
self.new_item(cat, name)
|
||||
|
||||
|
||||
@ -43,7 +43,7 @@ class SettingOptionCompletionModel(CompletionModel):
|
||||
def __init__(self, section, parent=None):
|
||||
super().__init__(parent)
|
||||
cat = self.new_category("Config options for {}".format(section))
|
||||
sectdata = configdata()[section]
|
||||
sectdata = configdata.data[section]
|
||||
for name, _ in sectdata.items():
|
||||
try:
|
||||
desc = sectdata.descriptions[name]
|
||||
@ -61,7 +61,7 @@ class SettingValueCompletionModel(CompletionModel):
|
||||
def __init__(self, section, option, parent=None):
|
||||
super().__init__(parent)
|
||||
cat = self.new_category("Setting values for {}".format(option))
|
||||
vals = configdata()[section][option].typ.valid_values
|
||||
vals = configdata.data[section][option].typ.valid_values
|
||||
if vals is None:
|
||||
raise NoCompletionsError
|
||||
for val in vals:
|
||||
|
@ -33,7 +33,7 @@ from PyQt5.QtGui import (QIcon, QPalette, QTextDocument, QTextOption,
|
||||
|
||||
import qutebrowser.config.config as config
|
||||
import qutebrowser.commands.utils as cmdutils
|
||||
from qutebrowser.config.configdata import configdata
|
||||
import qutebrowser.config.configdata as configdata
|
||||
from qutebrowser.models.completion import ROLE_MARKS, NoCompletionsError
|
||||
from qutebrowser.config.style import set_register_stylesheet, get_stylesheet
|
||||
from qutebrowser.commands.parsers import split_cmdline
|
||||
@ -110,10 +110,10 @@ class CompletionView(QTreeView):
|
||||
'section': CompletionFilterModel(SettingSectionCompletionModel(
|
||||
self)),
|
||||
}
|
||||
for sect in configdata().keys():
|
||||
for sect in configdata.data.keys():
|
||||
self._completion_models['option_' + sect] = CompletionFilterModel(
|
||||
SettingOptionCompletionModel(sect, self))
|
||||
for opt in configdata()[sect].keys():
|
||||
for opt in configdata.data[sect].keys():
|
||||
try:
|
||||
modelname = 'value_{}_{}'.format(sect, opt)
|
||||
self._completion_models[modelname] = (
|
||||
|
Loading…
Reference in New Issue
Block a user