feat: base app now working better
This commit is contained in:
@@ -7,12 +7,75 @@ defmodule BDS.UI.MenuBar do
|
||||
dev_mode? = Keyword.get(opts, :dev_mode?, false)
|
||||
|
||||
[
|
||||
%{id: :app, items: [%{id: :about}, %{id: :settings}]},
|
||||
%{id: :file, items: [%{id: :new_post}, %{id: :new_page}, %{id: :close_tab}]},
|
||||
%{id: :edit, items: [%{id: :undo}, %{id: :redo}]},
|
||||
%{
|
||||
id: :file,
|
||||
items: [
|
||||
%{id: :new_post},
|
||||
%{id: :import_media},
|
||||
%{separator: true},
|
||||
%{id: :save},
|
||||
%{separator: true},
|
||||
%{id: :open_in_browser},
|
||||
%{separator: true},
|
||||
%{id: :open_data_folder},
|
||||
%{separator: true},
|
||||
%{id: :close_tab},
|
||||
%{id: :quit}
|
||||
]
|
||||
},
|
||||
%{
|
||||
id: :edit,
|
||||
items: [
|
||||
%{id: :undo},
|
||||
%{id: :redo},
|
||||
%{separator: true},
|
||||
%{id: :cut},
|
||||
%{id: :copy},
|
||||
%{id: :paste},
|
||||
%{id: :delete},
|
||||
%{separator: true},
|
||||
%{id: :select_all},
|
||||
%{separator: true},
|
||||
%{id: :find},
|
||||
%{id: :replace},
|
||||
%{id: :edit_preferences}
|
||||
]
|
||||
},
|
||||
%{id: :view, items: view_items(dev_mode?)},
|
||||
%{id: :window, items: [%{id: :minimize}, %{id: :zoom}]},
|
||||
%{id: :help, items: [%{id: :documentation}, %{id: :api_documentation}]}
|
||||
%{
|
||||
id: :blog,
|
||||
items: [
|
||||
%{id: :publish_selected},
|
||||
%{separator: true},
|
||||
%{id: :preview_post},
|
||||
%{id: :edit_menu},
|
||||
%{separator: true},
|
||||
%{id: :rebuild_database},
|
||||
%{id: :reindex_text},
|
||||
%{id: :rebuild_embedding_index},
|
||||
%{separator: true},
|
||||
%{id: :metadata_diff},
|
||||
%{id: :regenerate_calendar},
|
||||
%{id: :validate_translations},
|
||||
%{id: :fill_missing_translations},
|
||||
%{id: :find_duplicates},
|
||||
%{separator: true},
|
||||
%{id: :generate_sitemap},
|
||||
%{id: :validate_site},
|
||||
%{id: :upload_site}
|
||||
]
|
||||
},
|
||||
%{
|
||||
id: :help,
|
||||
items: [
|
||||
%{id: :about},
|
||||
%{id: :documentation},
|
||||
%{id: :api_documentation},
|
||||
%{separator: true},
|
||||
%{id: :view_on_github},
|
||||
%{id: :report_issue}
|
||||
]
|
||||
}
|
||||
]
|
||||
end
|
||||
|
||||
@@ -30,12 +93,28 @@ defmodule BDS.UI.MenuBar do
|
||||
def execute(state, _command_id), do: state
|
||||
|
||||
defp view_items(dev_mode?) do
|
||||
base = [
|
||||
items = [
|
||||
%{id: :view_posts},
|
||||
%{id: :view_media},
|
||||
%{id: :toggle_sidebar},
|
||||
%{id: :toggle_panel},
|
||||
%{id: :toggle_assistant_sidebar}
|
||||
]
|
||||
|
||||
if dev_mode?, do: base ++ [%{id: :toggle_dev_tools}], else: base
|
||||
items =
|
||||
if dev_mode?, do: items ++ [%{id: :toggle_dev_tools}], else: items
|
||||
|
||||
items ++
|
||||
[
|
||||
%{separator: true},
|
||||
%{id: :reload},
|
||||
%{id: :force_reload},
|
||||
%{separator: true},
|
||||
%{id: :reset_zoom},
|
||||
%{id: :zoom_in},
|
||||
%{id: :zoom_out},
|
||||
%{separator: true},
|
||||
%{id: :toggle_full_screen}
|
||||
]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -104,7 +104,9 @@ defmodule BDS.UI.ShellPage do
|
||||
id: Atom.to_string(group.id),
|
||||
label: humanize(group.id),
|
||||
items:
|
||||
Enum.map(group.items, fn item ->
|
||||
group.items
|
||||
|> Enum.reject(&Map.get(&1, :separator, false))
|
||||
|> Enum.map(fn item ->
|
||||
%{id: Atom.to_string(item.id), label: humanize(item.id)}
|
||||
end)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user