Application utility
This commit is contained in:
parent
df37f9d032
commit
a0937c6a2e
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
||||
*~
|
||||
locale/*
|
||||
__pycache__/
|
||||
.idea
|
11
.idea/manjaro-hello.iml
generated
Normal file
11
.idea/manjaro-hello.iml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="PYTHON_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
<component name="TestRunnerService">
|
||||
<option name="PROJECT_TEST_RUNNER" value="Unittests" />
|
||||
</component>
|
||||
</module>
|
7
.idea/misc.xml
generated
Normal file
7
.idea/misc.xml
generated
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="JavaScriptSettings">
|
||||
<option name="languageLevel" value="ES6" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7" project-jdk-type="Python SDK" />
|
||||
</project>
|
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/manjaro-hello.iml" filepath="$PROJECT_DIR$/.idea/manjaro-hello.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
724
.idea/workspace.xml
generated
Normal file
724
.idea/workspace.xml
generated
Normal file
@ -0,0 +1,724 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="1878e107-6f19-4cdd-96ac-cf56d1731299" name="Default Changelist" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="FUSProjectUsageTrigger">
|
||||
<session id="1179412992">
|
||||
<usages-collector id="statistics.lifecycle.project">
|
||||
<counts>
|
||||
<entry key="project.closed" value="11" />
|
||||
<entry key="project.open.time.0" value="5" />
|
||||
<entry key="project.open.time.4" value="2" />
|
||||
<entry key="project.open.time.5" value="3" />
|
||||
<entry key="project.open.time.6" value="1" />
|
||||
<entry key="project.open.time.7" value="1" />
|
||||
<entry key="project.opened" value="13" />
|
||||
</counts>
|
||||
</usages-collector>
|
||||
<usages-collector id="statistics.file.extensions.open">
|
||||
<counts>
|
||||
<entry key="app-utility" value="2" />
|
||||
<entry key="gitignore" value="1" />
|
||||
<entry key="glade" value="3" />
|
||||
<entry key="json" value="11" />
|
||||
<entry key="py" value="75" />
|
||||
</counts>
|
||||
</usages-collector>
|
||||
<usages-collector id="statistics.file.types.open">
|
||||
<counts>
|
||||
<entry key="JSON" value="11" />
|
||||
<entry key="PLAIN_TEXT" value="4" />
|
||||
<entry key="Python" value="77" />
|
||||
</counts>
|
||||
</usages-collector>
|
||||
<usages-collector id="statistics.file.extensions.edit">
|
||||
<counts>
|
||||
<entry key="Python Console" value="31" />
|
||||
<entry key="app-utility" value="29" />
|
||||
<entry key="dummy" value="388" />
|
||||
<entry key="gitignore" value="6" />
|
||||
<entry key="glade" value="21" />
|
||||
<entry key="json" value="143" />
|
||||
<entry key="py" value="4802" />
|
||||
<entry key="txt" value="1398" />
|
||||
</counts>
|
||||
</usages-collector>
|
||||
<usages-collector id="statistics.file.types.edit">
|
||||
<counts>
|
||||
<entry key="JSON" value="143" />
|
||||
<entry key="PLAIN_TEXT" value="1813" />
|
||||
<entry key="Python" value="4862" />
|
||||
</counts>
|
||||
</usages-collector>
|
||||
<usages-collector id="statistics.js.language.service.starts" />
|
||||
</session>
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/manjaro_hello.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1590">
|
||||
<caret line="106" column="27" selection-start-line="106" selection-start-column="27" selection-end-line="106" selection-end-column="27" />
|
||||
<folding>
|
||||
<element signature="e#24#38#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Python Script" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>share_dir</find>
|
||||
<find>application</find>
|
||||
<find>applications</find>
|
||||
<find>appBrowser</find>
|
||||
<find>application_browser</find>
|
||||
<find>on_btn</find>
|
||||
</findStrings>
|
||||
<replaceStrings>
|
||||
<replace>data_path</replace>
|
||||
<replace>appBrowser</replace>
|
||||
</replaceStrings>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/src/app-utility" />
|
||||
<option value="$PROJECT_DIR$/.gitignore" />
|
||||
<option value="$PROJECT_DIR$/src/applications/applications.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/applications_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/testConfigClass.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/base_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/install-alone.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/alpm.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/app_base_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/exceptions.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/configs.py" />
|
||||
<option value="$PROJECT_DIR$/applications/browser.py" />
|
||||
<option value="$PROJECT_DIR$/applications/browser_config.py" />
|
||||
<option value="$PROJECT_DIR$/applications/hello_config.py" />
|
||||
<option value="$PROJECT_DIR$/applications/iso_config.py" />
|
||||
<option value="$PROJECT_DIR$/applications/stand_alone_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/stand_alone_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/iso_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/__init__.py" />
|
||||
<option value="$PROJECT_DIR$/data/browser-conf.json" />
|
||||
<option value="$PROJECT_DIR$/src/plugins/applications/browser.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/hello_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/browser_base_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/app_data.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/app_browser.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/browser_config.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/data.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/applicationbrowser.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/browser.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/application_browser.py" />
|
||||
<option value="$PROJECT_DIR$/src/applications/__init__.py" />
|
||||
<option value="$PROJECT_DIR$/src/application_utility/application_browser.py" />
|
||||
<option value="$PROJECT_DIR$/src/application_utility/__init__.py" />
|
||||
<option value="$PROJECT_DIR$/data/preferences.json" />
|
||||
<option value="$PROJECT_DIR$/ui/manjaro-hello.glade" />
|
||||
<option value="$PROJECT_DIR$/src/manjaro_hello.py" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsGulpfileManager">
|
||||
<detection-done>true</detection-done>
|
||||
<sorting>DEFINITION_ORDER</sorting>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds">
|
||||
<option name="x" value="1991" />
|
||||
<option name="y" value="21" />
|
||||
<option name="width" value="1398" />
|
||||
<option name="height" value="965" />
|
||||
</component>
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
||||
<component name="ProjectView">
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="manjaro-hello" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="manjaro-hello" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="manjaro-hello" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="manjaro-hello" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="data" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="manjaro-hello" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="manjaro-hello" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="manjaro-hello" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="manjaro-hello" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="ui" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="Scope" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
|
||||
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
||||
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/data" />
|
||||
<recent name="$PROJECT_DIR$/src" />
|
||||
</key>
|
||||
<key name="MoveFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$/src" />
|
||||
<recent name="$PROJECT_DIR$/src/plugins" />
|
||||
<recent name="$PROJECT_DIR$" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="1878e107-6f19-4cdd-96ac-cf56d1731299" name="Default Changelist" comment="" />
|
||||
<created>1534949710604</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1534949710604</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00003" summary="split preferences">
|
||||
<created>1536411499431</created>
|
||||
<option name="number" value="00003" />
|
||||
<option name="presentableId" value="LOCAL-00003" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536411499431</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00004" summary="added plugin manager">
|
||||
<created>1536411521103</created>
|
||||
<option name="number" value="00004" />
|
||||
<option name="presentableId" value="LOCAL-00004" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536411521103</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00005" summary="plugin applications">
|
||||
<created>1536411558753</created>
|
||||
<option name="number" value="00005" />
|
||||
<option name="presentableId" value="LOCAL-00005" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536411558753</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00006" summary="back to one pref file">
|
||||
<created>1536414428607</created>
|
||||
<option name="number" value="00006" />
|
||||
<option name="presentableId" value="LOCAL-00006" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536414428607</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00007" summary="move remove plugin manager">
|
||||
<created>1536415933849</created>
|
||||
<option name="number" value="00007" />
|
||||
<option name="presentableId" value="LOCAL-00007" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536415933849</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00008" summary="rearrange">
|
||||
<created>1536416490489</created>
|
||||
<option name="number" value="00008" />
|
||||
<option name="presentableId" value="LOCAL-00008" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536416490489</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00009" summary="cosmetic">
|
||||
<created>1536418940294</created>
|
||||
<option name="number" value="00009" />
|
||||
<option name="presentableId" value="LOCAL-00009" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536418940294</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00010" summary="added comments">
|
||||
<created>1536419834210</created>
|
||||
<option name="number" value="00010" />
|
||||
<option name="presentableId" value="LOCAL-00010" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536419834210</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00011" summary="split classes">
|
||||
<created>1536420193376</created>
|
||||
<option name="number" value="00011" />
|
||||
<option name="presentableId" value="LOCAL-00011" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536420193376</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00012" summary="pack experiment">
|
||||
<created>1536421211422</created>
|
||||
<option name="number" value="00012" />
|
||||
<option name="presentableId" value="LOCAL-00012" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536421211422</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00013" summary="commented screen shot url">
|
||||
<created>1536421394042</created>
|
||||
<option name="number" value="00013" />
|
||||
<option name="presentableId" value="LOCAL-00013" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536421394042</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00014" summary="minor formatting">
|
||||
<created>1536422379462</created>
|
||||
<option name="number" value="00014" />
|
||||
<option name="presentableId" value="LOCAL-00014" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536422379462</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00015" summary="redefine reload to reset">
|
||||
<created>1536422647180</created>
|
||||
<option name="number" value="00015" />
|
||||
<option name="presentableId" value="LOCAL-00015" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536422647180</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00016" summary="refactor">
|
||||
<created>1536425218221</created>
|
||||
<option name="number" value="00016" />
|
||||
<option name="presentableId" value="LOCAL-00016" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536425218221</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00017" summary="enhance logging">
|
||||
<created>1536425669114</created>
|
||||
<option name="number" value="00017" />
|
||||
<option name="presentableId" value="LOCAL-00017" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536425669114</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00018" summary="experiments">
|
||||
<created>1536426261137</created>
|
||||
<option name="number" value="00018" />
|
||||
<option name="presentableId" value="LOCAL-00018" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536426261137</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00019" summary="split classes">
|
||||
<created>1536426713520</created>
|
||||
<option name="number" value="00019" />
|
||||
<option name="presentableId" value="LOCAL-00019" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536426713520</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00020" summary="commit">
|
||||
<created>1536426798365</created>
|
||||
<option name="number" value="00020" />
|
||||
<option name="presentableId" value="LOCAL-00020" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536426798365</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00021" summary="expand/collapse group on double click">
|
||||
<created>1536428318542</created>
|
||||
<option name="number" value="00021" />
|
||||
<option name="presentableId" value="LOCAL-00021" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536428318542</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00022" summary="the mess">
|
||||
<created>1536429127582</created>
|
||||
<option name="number" value="00022" />
|
||||
<option name="presentableId" value="LOCAL-00022" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536429127582</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00023" summary="charm renames the imports to py - renamed">
|
||||
<created>1536733349233</created>
|
||||
<option name="number" value="00023" />
|
||||
<option name="presentableId" value="LOCAL-00023" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536733349233</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00024" summary="renamed to application_browser">
|
||||
<created>1536734042101</created>
|
||||
<option name="number" value="00024" />
|
||||
<option name="presentableId" value="LOCAL-00024" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536734042101</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00025" summary="renamed to application_browser">
|
||||
<created>1536734080399</created>
|
||||
<option name="number" value="00025" />
|
||||
<option name="presentableId" value="LOCAL-00025" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536734080399</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00026" summary="refactor to import modules from application_browser">
|
||||
<created>1536734107278</created>
|
||||
<option name="number" value="00026" />
|
||||
<option name="presentableId" value="LOCAL-00026" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536734107278</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00027" summary="refactor naming">
|
||||
<created>1536740355223</created>
|
||||
<option name="number" value="00027" />
|
||||
<option name="presentableId" value="LOCAL-00027" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536740355223</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00028" summary="refactor naming">
|
||||
<created>1536740428541</created>
|
||||
<option name="number" value="00028" />
|
||||
<option name="presentableId" value="LOCAL-00028" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536740428541</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00029" summary="removed application utility now import from package `application_utility`">
|
||||
<created>1536755165290</created>
|
||||
<option name="number" value="00029" />
|
||||
<option name="presentableId" value="LOCAL-00029" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536755165290</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00030" summary="the mess">
|
||||
<created>1536755180580</created>
|
||||
<option name="number" value="00030" />
|
||||
<option name="presentableId" value="LOCAL-00030" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536755180580</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00031" summary="removed application settings from preferences">
|
||||
<created>1536755298128</created>
|
||||
<option name="number" value="00031" />
|
||||
<option name="presentableId" value="LOCAL-00031" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536755298128</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00032" summary="fix manjaro_hello.py">
|
||||
<created>1536759081083</created>
|
||||
<option name="number" value="00032" />
|
||||
<option name="presentableId" value="LOCAL-00032" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536759081083</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00033" summary="conflict?">
|
||||
<created>1536759713291</created>
|
||||
<option name="number" value="00033" />
|
||||
<option name="presentableId" value="LOCAL-00033" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536759713291</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00034" summary="why is this only sometimes">
|
||||
<created>1536762438800</created>
|
||||
<option name="number" value="00034" />
|
||||
<option name="presentableId" value="LOCAL-00034" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536762438800</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00035" summary="refactor on_applications_clicked">
|
||||
<created>1536762559794</created>
|
||||
<option name="number" value="00035" />
|
||||
<option name="presentableId" value="LOCAL-00035" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536762559794</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00036" summary="refactor initialize">
|
||||
<created>1536762794077</created>
|
||||
<option name="number" value="00036" />
|
||||
<option name="presentableId" value="LOCAL-00036" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536762794077</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00037" summary="fix signal error">
|
||||
<created>1536764417230</created>
|
||||
<option name="number" value="00037" />
|
||||
<option name="presentableId" value="LOCAL-00037" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536764417230</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00038" summary="debugging on getObject error">
|
||||
<created>1536764914803</created>
|
||||
<option name="number" value="00038" />
|
||||
<option name="presentableId" value="LOCAL-00038" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536764914803</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00039" summary="debugging getObj error">
|
||||
<created>1536765243062</created>
|
||||
<option name="number" value="00039" />
|
||||
<option name="presentableId" value="LOCAL-00039" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536765243062</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00040" summary="debugging getObj error">
|
||||
<created>1536765504956</created>
|
||||
<option name="number" value="00040" />
|
||||
<option name="presentableId" value="LOCAL-00040" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536765504956</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00041" summary="refactor fil to file">
|
||||
<created>1536765540320</created>
|
||||
<option name="number" value="00041" />
|
||||
<option name="presentableId" value="LOCAL-00041" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536765540320</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00042" summary="refactor to eliminate shadow">
|
||||
<created>1536765638966</created>
|
||||
<option name="number" value="00042" />
|
||||
<option name="presentableId" value="LOCAL-00042" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536765638966</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00043" summary="debugging AttributeError on get_object which exist">
|
||||
<created>1536765831882</created>
|
||||
<option name="number" value="00043" />
|
||||
<option name="presentableId" value="LOCAL-00043" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536765831882</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00044" summary="debugging get_object error">
|
||||
<created>1536767498224</created>
|
||||
<option name="number" value="00044" />
|
||||
<option name="presentableId" value="LOCAL-00044" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536767498224</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00045" summary="debugging get_object error">
|
||||
<created>1536767653840</created>
|
||||
<option name="number" value="00045" />
|
||||
<option name="presentableId" value="LOCAL-00045" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536767653840</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00046" summary="debugging get_object returning None on valid object">
|
||||
<created>1536767721691</created>
|
||||
<option name="number" value="00046" />
|
||||
<option name="presentableId" value="LOCAL-00046" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536767721691</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00047" summary="debugging get_object returning None on valid object">
|
||||
<created>1536770497272</created>
|
||||
<option name="number" value="00047" />
|
||||
<option name="presentableId" value="LOCAL-00047" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536770497272</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00048" summary="debugging get_object returning None on valid object">
|
||||
<created>1536770929972</created>
|
||||
<option name="number" value="00048" />
|
||||
<option name="presentableId" value="LOCAL-00048" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536770929972</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00049" summary="doh! default manjaro-hello does not contain the appBrowser button">
|
||||
<created>1536820041782</created>
|
||||
<option name="number" value="00049" />
|
||||
<option name="presentableId" value="LOCAL-00049" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536820041782</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00050" summary="doh! default manjaro-hello does not contain the appBrowser button">
|
||||
<created>1536820124591</created>
|
||||
<option name="number" value="00050" />
|
||||
<option name="presentableId" value="LOCAL-00050" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536820124594</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00051" summary="reorder lines">
|
||||
<created>1536841615043</created>
|
||||
<option name="number" value="00051" />
|
||||
<option name="presentableId" value="LOCAL-00051" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1536841615043</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="52" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="1991" y="21" width="1398" height="965" extended-state="0" />
|
||||
<layout>
|
||||
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.2581361" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Find" order="1" weight="0.32893157" />
|
||||
<window_info anchor="bottom" id="Run" order="2" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
|
||||
<window_info anchor="bottom" id="Version Control" order="8" />
|
||||
<window_info anchor="bottom" id="Database Changes" order="9" show_stripe_button="false" />
|
||||
<window_info anchor="bottom" id="Terminal" order="10" visible="true" weight="0.32893157" />
|
||||
<window_info anchor="bottom" id="Python Console" order="11" weight="0.32893157" />
|
||||
<window_info anchor="bottom" id="Event Log" order="12" side_tool="true" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="right" id="SciView" order="3" />
|
||||
<window_info anchor="right" id="Database" order="4" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="VcsContentAnnotationSettings">
|
||||
<option name="myLimit" value="2678400000" />
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="split classes" />
|
||||
<MESSAGE value="commit" />
|
||||
<MESSAGE value="expand/collapse group on double click" />
|
||||
<MESSAGE value="charm renames the imports to py - renamed" />
|
||||
<MESSAGE value="renamed to application_browser" />
|
||||
<MESSAGE value="refactor to import modules from application_browser" />
|
||||
<MESSAGE value="refactor naming" />
|
||||
<MESSAGE value="removed application utility now import from package `application_utility`" />
|
||||
<MESSAGE value="the mess" />
|
||||
<MESSAGE value="removed application settings from preferences" />
|
||||
<MESSAGE value="fix manjaro_hello.py" />
|
||||
<MESSAGE value="conflict?" />
|
||||
<MESSAGE value="why is this only sometimes" />
|
||||
<MESSAGE value="refactor on_applications_clicked" />
|
||||
<MESSAGE value="refactor initialize" />
|
||||
<MESSAGE value="fix signal error" />
|
||||
<MESSAGE value="debugging on getObject error" />
|
||||
<MESSAGE value="debugging getObj error" />
|
||||
<MESSAGE value="refactor fil to file" />
|
||||
<MESSAGE value="refactor to eliminate shadow" />
|
||||
<MESSAGE value="debugging AttributeError on get_object which exist" />
|
||||
<MESSAGE value="debugging get_object error" />
|
||||
<MESSAGE value="debugging get_object returning None on valid object" />
|
||||
<MESSAGE value="doh! default manjaro-hello does not contain the appBrowser button" />
|
||||
<MESSAGE value="reorder lines" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="reorder lines" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" suspend="THREAD" type="python-line">
|
||||
<url>file://$PROJECT_DIR$/src/app-utility</url>
|
||||
<line>59</line>
|
||||
<option name="timeStamp" value="1" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
</breakpoint-manager>
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/src/app-utility" />
|
||||
<entry file="file://$PROJECT_DIR$/.gitignore">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="45">
|
||||
<caret line="3" column="5" selection-start-line="3" selection-start-column="5" selection-end-line="3" selection-end-column="5" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/data/default.json" />
|
||||
<entry file="file://$PROJECT_DIR$/src/install-alone.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/testConfigClass.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/__init__.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state>
|
||||
<caret column="27" lean-forward="true" selection-start-column="27" selection-end-column="27" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/exceptions.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/plugins/__init__.py" />
|
||||
<entry file="file://$PROJECT_DIR$/data/browser-prefs.json" />
|
||||
<entry file="file://$PROJECT_DIR$/data/advanced.json" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/browser_base_config.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/browser_config.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/alpm.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/hello_config.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/iso_config.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/stand_alone_config.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/data.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/__init__.py" />
|
||||
<entry file="file://$PROJECT_DIR$/src/browser/browser.py" />
|
||||
<entry file="file://$PROJECT_DIR$/data/preferences.json">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="330">
|
||||
<caret line="22" column="3" selection-start-line="22" selection-start-column="3" selection-end-line="22" selection-end-column="3" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/lib/python3.7/site-packages/application_utility/browser/hello_config.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="330">
|
||||
<caret line="27" selection-start-line="27" selection-end-line="27" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/lib/python3.7/site-packages/application_utility/browser/config.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="169">
|
||||
<caret line="16" selection-start-line="16" selection-end-line="16" />
|
||||
<folding>
|
||||
<element signature="e#0#14#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/ui/manjaro-hello.glade">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="457">
|
||||
<caret line="545" column="19" lean-forward="true" selection-start-line="545" selection-start-column="19" selection-end-line="545" selection-end-column="19" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/manjaro_hello.py">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1590">
|
||||
<caret line="106" column="27" selection-start-line="106" selection-start-column="27" selection-end-line="106" selection-end-column="27" />
|
||||
<folding>
|
||||
<element signature="e#24#38#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
</project>
|
@ -1,24 +1,24 @@
|
||||
{
|
||||
"default_locale": "en",
|
||||
"autostart_path": "~/.config/autostart/manjaro-hello.desktop",
|
||||
"data_path": "/usr/share/manjaro-hello/data/",
|
||||
"desktop_path": "/usr/share/applications/manjaro-hello.desktop",
|
||||
"installer_path": "/usr/bin/calamares",
|
||||
"live_path": "/run/miso/bootmnt/manjaro",
|
||||
"locale_path": "/usr/share/locale/",
|
||||
"logo_path": "/usr/share/icons/hicolor/64x64/apps/manjaro.png",
|
||||
"save_path": "~/.config/manjaro-hello.json",
|
||||
"ui_path": "/usr/share/manjaro-hello/ui/manjaro-hello.glade",
|
||||
"urls": {
|
||||
"development": "https://gitlab.manjaro.org",
|
||||
"chat": "https://kiwiirc.com/client/irc.freenode.net/?nick=manjaro-web|?#manjaro",
|
||||
"donate": "https://manjaro.org/donate",
|
||||
"facebook": "https://www.facebook.com/ManjaroLinux",
|
||||
"forum": "https://forum.manjaro.org",
|
||||
"google+": "https://plus.google.com/118244873957924966264",
|
||||
"mailling": "https://lists.manjaro.org/cgi-bin/mailman/listinfo",
|
||||
"reddit": "https://www.reddit.com/r/ManjaroLinux",
|
||||
"twitter": "https://twitter.com/ManjaroLinux",
|
||||
"wiki": "https://wiki.manjaro.org"
|
||||
}
|
||||
"default_locale": "en",
|
||||
"autostart_path": "~/.config/autostart/manjaro-hello.desktop",
|
||||
"data_path": "/usr/share/manjaro-hello/data/",
|
||||
"desktop_path": "/usr/share/applications/manjaro-hello.desktop",
|
||||
"installer_path": "/usr/bin/calamares",
|
||||
"live_path": "/run/miso/bootmnt/manjaro",
|
||||
"locale_path": "/usr/share/locale/",
|
||||
"logo_path": "/usr/share/icons/hicolor/64x64/apps/manjaro.png",
|
||||
"save_path": "~/.config/manjaro-hello.json",
|
||||
"ui_path": "/usr/share/manjaro-hello/ui/manjaro-hello.glade",
|
||||
"urls": {
|
||||
"development": "https://gitlab.manjaro.org",
|
||||
"chat": "https://kiwiirc.com/client/irc.freenode.net/?nick=manjaro-web|?#manjaro",
|
||||
"donate": "https://manjaro.org/donate",
|
||||
"facebook": "https://www.facebook.com/ManjaroLinux",
|
||||
"forum": "https://forum.manjaro.org",
|
||||
"google+": "https://plus.google.com/118244873957924966264",
|
||||
"mailling": "https://lists.manjaro.org/cgi-bin/mailman/listinfo",
|
||||
"reddit": "https://www.reddit.com/r/ManjaroLinux",
|
||||
"twitter": "https://twitter.com/ManjaroLinux",
|
||||
"wiki": "https://wiki.manjaro.org"
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1 @@
|
||||
__all__ = ["manjaro_hello"]
|
@ -1,21 +1,34 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import gettext
|
||||
import gi
|
||||
import json
|
||||
import locale
|
||||
import logging
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
import webbrowser
|
||||
import gi
|
||||
|
||||
try:
|
||||
from application_utility.browser.application_browser import ApplicationBrowser
|
||||
from application_utility.browser.exceptions import NoAppInIsoError
|
||||
from application_utility.browser.hello_config import HelloConfig
|
||||
APPS_PLUGIN = True
|
||||
|
||||
except ModuleNotFoundError as e:
|
||||
APPS_PLUGIN = False
|
||||
print(f"Warning: Application Browser plugin not found : {e}")
|
||||
|
||||
gi.require_version("Gtk", "3.0")
|
||||
from gi.repository import Gtk, GdkPixbuf
|
||||
|
||||
|
||||
class Hello():
|
||||
class Hello(Gtk.Window):
|
||||
"""Hello"""
|
||||
|
||||
def __init__(self):
|
||||
Gtk.Window.__init__(self, title="Manjaro Hello", border_width=6)
|
||||
self.app = "manjaro-hello"
|
||||
self.dev = "--dev" in sys.argv # Dev mode activated ?
|
||||
|
||||
@ -23,12 +36,11 @@ class Hello():
|
||||
if self.dev:
|
||||
self.preferences = read_json("data/preferences.json")
|
||||
self.preferences["data_path"] = "data/"
|
||||
self.preferences["desktop_path"] = os.getcwd() + "/{}.desktop".format(self.app)
|
||||
self.preferences["desktop_path"] = os.getcwd() + f"/{self.app}.desktop"
|
||||
self.preferences["locale_path"] = "locale/"
|
||||
self.preferences["ui_path"] = "ui/{}.glade".format(self.app)
|
||||
self.preferences["ui_path"] = f"ui/{self.app}.glade"
|
||||
else:
|
||||
self.preferences = read_json("/usr/share/{}/data/preferences.json".format(self.app))
|
||||
|
||||
self.preferences = read_json(f"/usr/share/{self.app}/data/preferences.json")
|
||||
# Get saved infos
|
||||
self.save = read_json(self.preferences["save_path"])
|
||||
if not self.save:
|
||||
@ -55,7 +67,7 @@ class Hello():
|
||||
|
||||
for widget in self.builder.get_object("homepage").get_children():
|
||||
if isinstance(widget, Gtk.Button) and \
|
||||
widget.get_image_position() is Gtk.PositionType.RIGHT:
|
||||
widget.get_image_position() is Gtk.PositionType.RIGHT:
|
||||
img = Gtk.Image.new_from_file(
|
||||
self.preferences["data_path"] + "img/external-link.png")
|
||||
img.set_margin_left(2)
|
||||
@ -84,10 +96,17 @@ class Hello():
|
||||
self.builder.get_object("autostart").set_active(self.autostart)
|
||||
|
||||
# Live systems
|
||||
if os.path.exists(self.preferences["live_path"]) and \
|
||||
os.path.isfile(self.preferences["installer_path"]):
|
||||
if os.path.exists(self.preferences["live_path"]) and os.path.isfile(self.preferences["installer_path"]):
|
||||
self.builder.get_object("installlabel").set_visible(True)
|
||||
self.builder.get_object("install").set_visible(True)
|
||||
# Installed systems
|
||||
else:
|
||||
if APPS_PLUGIN:
|
||||
conf = HelloConfig(application="manjaro-hello")
|
||||
app_browser = ApplicationBrowser(conf, self)
|
||||
# create page install Applications
|
||||
self.builder.get_object("stack").add_named(app_browser, "appBrowserpage")
|
||||
self.builder.get_object("appBrowser").set_visible(True)
|
||||
|
||||
self.window.show()
|
||||
|
||||
@ -115,24 +134,24 @@ class Hello():
|
||||
else:
|
||||
return self.preferences["default_locale"]
|
||||
|
||||
def set_locale(self, locale):
|
||||
def set_locale(self, use_locale):
|
||||
"""Set locale of ui and pages.
|
||||
:param locale: locale to use
|
||||
:type locale: str
|
||||
:param use_locale: locale to use
|
||||
:type use_locale: str
|
||||
"""
|
||||
try:
|
||||
translation = gettext.translation(self.app, self.preferences[
|
||||
"locale_path"], [locale], fallback=True)
|
||||
"locale_path"], [use_locale], fallback=True)
|
||||
translation.install()
|
||||
except OSError:
|
||||
return
|
||||
|
||||
self.save["locale"] = locale
|
||||
self.save["locale"] = use_locale
|
||||
|
||||
# Real-time locale changing
|
||||
|
||||
elts = {
|
||||
"comments": { "aboutdialog"},
|
||||
"comments": {"aboutdialog"},
|
||||
"label": {
|
||||
"autostartlabel",
|
||||
"development",
|
||||
@ -193,14 +212,14 @@ class Hello():
|
||||
i3_config = fix_path("~/.i3/config")
|
||||
if os.path.isfile(i3_config):
|
||||
i3_autostart = "exec --no-startup-id " + self.app
|
||||
with open(i3_config, "r+") as fil:
|
||||
content = fil.read()
|
||||
fil.seek(0)
|
||||
with open(i3_config, "r+") as file:
|
||||
content = file.read()
|
||||
file.seek(0)
|
||||
if autostart:
|
||||
fil.write(content.replace("#" + i3_autostart, i3_autostart))
|
||||
file.write(content.replace("#" + i3_autostart, i3_autostart))
|
||||
else:
|
||||
fil.write(content.replace(i3_autostart, "#" + i3_autostart))
|
||||
fil.truncate()
|
||||
file.write(content.replace(i3_autostart, "#" + i3_autostart))
|
||||
file.truncate()
|
||||
self.autostart = autostart
|
||||
except OSError as error:
|
||||
print(error)
|
||||
@ -215,7 +234,7 @@ class Hello():
|
||||
filename = self.preferences["data_path"] + "pages/{}/{}".format(self.save["locale"], name)
|
||||
if not os.path.isfile(filename):
|
||||
filename = self.preferences["data_path"] + \
|
||||
"pages/{}/{}".format(self.preferences["default_locale"], name)
|
||||
"pages/{}/{}".format(self.preferences["default_locale"], name)
|
||||
try:
|
||||
with open(filename, "r") as fil:
|
||||
return fil.read()
|
||||
@ -238,9 +257,13 @@ class Hello():
|
||||
dialog = self.builder.get_object("aboutdialog")
|
||||
dialog.run()
|
||||
dialog.hide()
|
||||
elif name == "appBrowser":
|
||||
# or use only "on_btn_clicked" ?
|
||||
self.builder.get_object("home").set_sensitive(not name == "home")
|
||||
self.builder.get_object("stack").set_visible_child_name(name + "page")
|
||||
|
||||
def on_btn_clicked(self, btn):
|
||||
"""Event for clicked button."""
|
||||
"""Event for applications button."""
|
||||
name = btn.get_name()
|
||||
self.builder.get_object("home").set_sensitive(not name == "home")
|
||||
self.builder.get_object("stack").set_visible_child_name(name + "page")
|
||||
@ -296,14 +319,15 @@ def write_json(path, content):
|
||||
except OSError as error:
|
||||
print(error)
|
||||
|
||||
|
||||
def get_lsb_infos():
|
||||
"""Read informations from the lsb-release file.
|
||||
:return: args from lsb-release file
|
||||
:rtype: dict"""
|
||||
lsb = {}
|
||||
try:
|
||||
with open("/etc/lsb-release") as fil:
|
||||
for line in fil:
|
||||
with open("/etc/lsb-release") as lsb_release:
|
||||
for line in lsb_release:
|
||||
if "=" in line:
|
||||
var, arg = line.rstrip().split("=")
|
||||
if var.startswith("DISTRIB_"):
|
||||
@ -312,11 +336,14 @@ def get_lsb_infos():
|
||||
arg = arg[1:-1]
|
||||
if arg:
|
||||
lsb[var] = arg
|
||||
except OSError as error:
|
||||
except (OSError, KeyError) as error:
|
||||
print(error)
|
||||
return 'not Manjaro', '0.0'
|
||||
return lsb["CODENAME"], lsb["RELEASE"]
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
Hello()
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
hello = Hello()
|
||||
hello.connect("destroy", Gtk.main_quit)
|
||||
Gtk.main()
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.20.1 -->
|
||||
<!-- Generated with glade 3.22.1 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.20"/>
|
||||
<object class="GtkImage" id="homeicon">
|
||||
@ -19,6 +19,99 @@
|
||||
<property name="default_height">500</property>
|
||||
<property name="has_resize_grip">True</property>
|
||||
<signal name="delete-event" handler="on_delete_window" swapped="no"/>
|
||||
<child type="titlebar">
|
||||
<object class="GtkHeaderBar" id="headerbar">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="title">Manjaro Hello</property>
|
||||
<property name="show_close_button">True</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="home">
|
||||
<property name="name">home</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_text" translatable="yes">Home</property>
|
||||
<property name="image">homeicon</property>
|
||||
<signal name="clicked" handler="on_btn_clicked" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkComboBoxText" id="languages">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<items>
|
||||
<item id="sq">Albanian</item>
|
||||
<item id="ar">Arabic</item>
|
||||
<item id="ast-ES">Asturian (Spain)</item>
|
||||
<item id="be">Belarusian</item>
|
||||
<item id="bg">Bulgarian</item>
|
||||
<item id="ca">Catalan</item>
|
||||
<item id="zh-CN">Chinese (China)</item>
|
||||
<item id="zh-TW">Chinese (Taiwan)</item>
|
||||
<item id="hr">Croatian</item>
|
||||
<item id="cs">Czech</item>
|
||||
<item id="da">Danish</item>
|
||||
<item id="nl">Dutch</item>
|
||||
<item id="en">English</item>
|
||||
<item id="fi">Finnish</item>
|
||||
<item id="fr">French</item>
|
||||
<item id="de">German</item>
|
||||
<item id="ka">Georgian</item>
|
||||
<item id="el-GR">Greek (Greece)</item>
|
||||
<item id="he">Hebrew</item>
|
||||
<item id="hi-IN">Hindi (India)</item>
|
||||
<item id="hu">Hungarian</item>
|
||||
<item id="is">Icelandic</item>
|
||||
<item id="id-ID">Indonesian (Indonesia)</item>
|
||||
<item id="it">Italian</item>
|
||||
<item id="ja">Japanese</item>
|
||||
<item id="ko-KR">Korean (Korea)</item>
|
||||
<item id="lt">Lithuanian</item>
|
||||
<item id="nb">Norwegian Bokmål</item>
|
||||
<item id="fa-IR">Persian (Iran)</item>
|
||||
<item id="pl">Polish</item>
|
||||
<item id="pt-BR">Portuguese (Brazil)</item>
|
||||
<item id="pt-PT">Portuguese (Portugal)</item>
|
||||
<item id="ro-RO">Romanian (Romania)</item>
|
||||
<item id="ru">Russian</item>
|
||||
<item id="sk">Slovak</item>
|
||||
<item id="sl-SI">Slovenian (Slovenia)</item>
|
||||
<item id="sl">Slovenian</item>
|
||||
<item id="es">Spanish</item>
|
||||
<item id="sr-RS">Serbian (Serbia)</item>
|
||||
<item id="sr">Serbian</item>
|
||||
<item id="sv">Swedish</item>
|
||||
<item id="th">Thai</item>
|
||||
<item id="tr-TR">Turkish (Turkey)</item>
|
||||
<item id="tr">Turkish</item>
|
||||
<item id="uk">Ukrainian</item>
|
||||
<item id="vi-VN">Vietnamese (Viet Nam)</item>
|
||||
</items>
|
||||
<signal name="changed" handler="on_languages_changed" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="about">
|
||||
<property name="name">about</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_text" translatable="yes">About</property>
|
||||
<property name="image">iconabout</property>
|
||||
<signal name="clicked" handler="on_action_clicked" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="pack_type">end</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkStack" id="stack">
|
||||
<property name="visible">True</property>
|
||||
@ -427,6 +520,20 @@ We, the Manjaro Developers, hope that you will enjoy using Manjaro as much as we
|
||||
<property name="top_attach">8</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="appBrowser">
|
||||
<property name="label" translatable="yes">Applications</property>
|
||||
<property name="name">appBrowser</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_text" translatable="yes">Common application selection</property>
|
||||
<signal name="clicked" handler="on_btn_clicked" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">8</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
@ -446,99 +553,6 @@ We, the Manjaro Developers, hope that you will enjoy using Manjaro as much as we
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="titlebar">
|
||||
<object class="GtkHeaderBar" id="headerbar">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="title">Manjaro Hello</property>
|
||||
<property name="show_close_button">True</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="home">
|
||||
<property name="name">home</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_text" translatable="yes">Home</property>
|
||||
<property name="image">homeicon</property>
|
||||
<signal name="clicked" handler="on_btn_clicked" swapped="no"/>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkComboBoxText" id="languages">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<items>
|
||||
<item id="sq">Albanian</item>
|
||||
<item id="ar">Arabic</item>
|
||||
<item id="ast-ES">Asturian (Spain)</item>
|
||||
<item id="be">Belarusian</item>
|
||||
<item id="bg">Bulgarian</item>
|
||||
<item id="ca">Catalan</item>
|
||||
<item id="zh-CN">Chinese (China)</item>
|
||||
<item id="zh-TW">Chinese (Taiwan)</item>
|
||||
<item id="hr">Croatian</item>
|
||||
<item id="cs">Czech</item>
|
||||
<item id="da">Danish</item>
|
||||
<item id="nl">Dutch</item>
|
||||
<item id="en">English</item>
|
||||
<item id="fi">Finnish</item>
|
||||
<item id="fr">French</item>
|
||||
<item id="de">German</item>
|
||||
<item id="ka">Georgian</item>
|
||||
<item id="el-GR">Greek (Greece)</item>
|
||||
<item id="he">Hebrew</item>
|
||||
<item id="hi-IN">Hindi (India)</item>
|
||||
<item id="hu">Hungarian</item>
|
||||
<item id="is">Icelandic</item>
|
||||
<item id="id-ID">Indonesian (Indonesia)</item>
|
||||
<item id="it">Italian</item>
|
||||
<item id="ja">Japanese</item>
|
||||
<item id="ko-KR">Korean (Korea)</item>
|
||||
<item id="lt">Lithuanian</item>
|
||||
<item id="nb">Norwegian Bokmål</item>
|
||||
<item id="fa-IR">Persian (Iran)</item>
|
||||
<item id="pl">Polish</item>
|
||||
<item id="pt-BR">Portuguese (Brazil)</item>
|
||||
<item id="pt-PT">Portuguese (Portugal)</item>
|
||||
<item id="ro-RO">Romanian (Romania)</item>
|
||||
<item id="ru">Russian</item>
|
||||
<item id="sk">Slovak</item>
|
||||
<item id="sl-SI">Slovenian (Slovenia)</item>
|
||||
<item id="sl">Slovenian</item>
|
||||
<item id="es">Spanish</item>
|
||||
<item id="sr-RS">Serbian (Serbia)</item>
|
||||
<item id="sr">Serbian</item>
|
||||
<item id="sv">Swedish</item>
|
||||
<item id="th">Thai</item>
|
||||
<item id="tr-TR">Turkish (Turkey)</item>
|
||||
<item id="tr">Turkish</item>
|
||||
<item id="uk">Ukrainian</item>
|
||||
<item id="vi-VN">Vietnamese (Viet Nam)</item>
|
||||
</items>
|
||||
<signal name="changed" handler="on_languages_changed" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="about">
|
||||
<property name="name">about</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="tooltip_text" translatable="yes">About</property>
|
||||
<property name="image">iconabout</property>
|
||||
<signal name="clicked" handler="on_action_clicked" swapped="no"/>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="pack_type">end</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkAboutDialog" id="aboutdialog">
|
||||
<property name="can_focus">False</property>
|
||||
@ -586,6 +600,9 @@ Stéphane
|
||||
Андрей Раугас</property>
|
||||
<property name="logo_icon_name"/>
|
||||
<property name="license_type">gpl-3-0</property>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
<child internal-child="vbox">
|
||||
<object class="GtkBox">
|
||||
<property name="can_focus">True</property>
|
||||
@ -608,8 +625,5 @@ Stéphane
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<placeholder/>
|
||||
</child>
|
||||
</object>
|
||||
</interface>
|
||||
|
Loading…
Reference in New Issue
Block a user