added webkit integration widget; made main method
This commit is contained in:
@@ -9,9 +9,12 @@ from gi.repository import Gtk
|
||||
# Application imports
|
||||
from ..mixins.signals_mixins import SignalsMixins
|
||||
from ..mixins.dummy_mixin import DummyMixin
|
||||
from .base_controller_data import BaseControllerData
|
||||
|
||||
from ..containers.base_container import BaseContainer
|
||||
|
||||
from .base_controller_data import BaseControllerData
|
||||
from .bridge_controller import BridgeController
|
||||
|
||||
|
||||
|
||||
class BaseController(DummyMixin, SignalsMixins, BaseControllerData):
|
||||
@@ -21,6 +24,7 @@ class BaseController(DummyMixin, SignalsMixins, BaseControllerData):
|
||||
self._setup_styling()
|
||||
self._setup_signals()
|
||||
self._subscribe_to_events()
|
||||
self._load_controllers()
|
||||
|
||||
self.print_hello_world() # A mixin method from the DummyMixin file
|
||||
|
||||
@@ -53,6 +57,9 @@ class BaseController(DummyMixin, SignalsMixins, BaseControllerData):
|
||||
event_system.subscribe("handle_dir_from_ipc", self.handle_dir_from_ipc)
|
||||
event_system.subscribe("tggl_top_main_menubar", self._tggl_top_main_menubar)
|
||||
|
||||
def _load_controllers(self):
|
||||
BridgeController()
|
||||
|
||||
def _tggl_top_main_menubar(self):
|
||||
logger.debug("_tggl_top_main_menubar > stub...")
|
||||
|
||||
|
43
src/core/controllers/bridge_controller.py
Normal file
43
src/core/controllers/bridge_controller.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# Python imports
|
||||
import base64
|
||||
|
||||
# Lib imports
|
||||
|
||||
# Application imports
|
||||
|
||||
|
||||
|
||||
class BridgeController:
|
||||
def __init__(self):
|
||||
|
||||
self.opened_files = {}
|
||||
|
||||
self._setup_signals()
|
||||
self._subscribe_to_events()
|
||||
|
||||
|
||||
def _setup_signals(self):
|
||||
...
|
||||
|
||||
def _subscribe_to_events(self):
|
||||
event_system.subscribe("handle_bridge_event", self.handle_bridge_event)
|
||||
|
||||
|
||||
def handle_bridge_event(self, event):
|
||||
match event.topic:
|
||||
case "save":
|
||||
event_system.emit(f"handle_file_event_{event.originator}", (event,))
|
||||
case "close":
|
||||
event_system.emit(f"handle_file_event_{event.originator}", (event,))
|
||||
case "load_buffer":
|
||||
event_system.emit(f"handle_file_event_{event.originator}", (event,))
|
||||
case "load_file":
|
||||
event_system.emit(f"handle_file_event_{event.originator}", (event,))
|
||||
case "alert":
|
||||
content = base64.b64decode( event.content.encode() ).decode("utf-8")
|
||||
logger.info(f"\nMessage Topic: {event.topic}\nMessage Content: {content}")
|
||||
case "error":
|
||||
content = base64.b64decode( event.content.encode() ).decode("utf-8")
|
||||
logger.info(content)
|
||||
case _:
|
||||
...
|
Reference in New Issue
Block a user