Add dark_mode and option eaf-browser-dark-mode.

master
Andy Stewart 6 years ago
parent b5e72b21b3
commit d3daa6c87d
  1. 9
      app/browser/buffer.py
  2. 7
      core/browser.py
  3. 2813
      core/js/dark_mode.js
  4. 1
      eaf.el

@ -64,6 +64,15 @@ class AppBuffer(BrowserBuffer):
except Exception:
pass
self.buffer_widget.loadFinished.connect(self.adjust_dark_mode)
def adjust_dark_mode(self):
try:
if self.emacs_var_dict["eaf-browser-dark-mode"] == "true":
self.dark_mode()
except Exception:
pass
def clear_history(self):
if os.path.exists(self.history_log_file_path):
os.remove(self.history_log_file_path)

@ -65,6 +65,7 @@ class BrowserView(QWebEngineView):
self.set_focus_text_raw = self.read_js_content("set_focus_text.js")
self.clear_focus_js = self.read_js_content("clear_focus.js")
self.select_input_text_js = self.read_js_content("select_input_text.js")
self.dark_mode_js = self.read_js_content("dark_mode.js")
def read_js_content(self, js_file):
return open(os.path.join(os.path.dirname(__file__), "js", js_file), "r").read()
@ -311,6 +312,9 @@ class BrowserView(QWebEngineView):
def clear_focus(self):
self.execute_js(self.clear_focus_js)
def dark_mode(self):
self.execute_js(self.dark_mode_js)
class BrowserPage(QWebEnginePage):
def __init__(self):
QWebEnginePage.__init__(self)
@ -676,3 +680,6 @@ class BrowserBuffer(Buffer):
def eval_js_file(self):
self.send_input_message("Eval JS: ", "eval_js_file", "file")
def dark_mode(self):
self.buffer_widget.dark_mode()

File diff suppressed because it is too large Load Diff

@ -220,6 +220,7 @@ It must defined at `eaf-browser-search-engines'."
(eaf-browser-remember-history . "true")
(eaf-browser-default-zoom . "1.0")
(eaf-browser-blank-page-url . "https://www.google.com")
(eaf-browser-dark-mode . "false")
)
"The alist storing user-defined variables that's shared with EAF Python side.

Loading…
Cancel
Save