Skip to content

Commit 8144ace

Browse files
committed
Merge remote-tracking branch 'origin/master' into central-info
2 parents b282993 + 68cf012 commit 8144ace

39 files changed

Lines changed: 479 additions & 326 deletions

.github/workflows/ci.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ jobs:
1212
- run: apk --no-cache add git g++ binutils pkgconf meson ninja musl-dev gtkmm4-dev vala gobject-introspection gobject-introspection-dev pulseaudio-dev pipewire-dev wireplumber-dev libdbusmenu-glib-dev alsa-lib-dev yyjson-dev linux-pam-dev util-linux-login openssl-dev
1313
- run: echo 'http://dl-cdn.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories
1414
- run: echo 'http://dl-cdn.alpinelinux.org/alpine/edge/main' >> /etc/apk/repositories
15+
- run: echo 'http://dl-cdn.alpinelinux.org/alpine/edge/community' >> /etc/apk/repositories
1516
- run: apk --no-cache add wayland-protocols wayfire-dev gtk4-layer-shell-dev gtk4-layer-shell
1617

1718
- name: wf-shell

data/css/default.css

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,14 @@ text-shadow: 1px 1px 0 var(--bcol),
278278
padding-bottom: 75px;
279279
}
280280

281+
.wf-locker .failure {
282+
animation-name: shake;
283+
animation-duration:0.5s;
284+
animation-timing-function: linear;
285+
animation-iteration-count: 1;
286+
animation-fill-mode: forwards;
287+
}
288+
281289
.wf-locker.sized-480 {
282290
font-size:6px;
283291
}
@@ -329,3 +337,25 @@ text-shadow: 1px 1px 0 var(--bcol),
329337
padding-right: 0rem;
330338
}
331339
}
340+
341+
@keyframes shake {
342+
0% {
343+
transform: translateX(0px);
344+
}
345+
20% {
346+
transform: translateX(20px);
347+
}
348+
40% {
349+
transform: translateX(-20px);
350+
}
351+
60% {
352+
transform: translateX(20px);
353+
}
354+
80% {
355+
transform: translateX(-20px);
356+
}
357+
100% {
358+
transform: translateX(0px);
359+
}
360+
}
361+
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
.wf-panel .wireplumber-popover .muted {
1+
.wf-panel .wp-mixer-popover .muted {
22
opacity: 0.5;
3-
}
3+
}

data/meson.build

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@ install_data(join_paths('icons', '256x256', 'wayfire.png'), install_dir: join_pa
1313
install_data(join_paths('icons', '512x512', 'wayfire.png'), install_dir: join_paths(get_option('prefix'), 'share', 'icons', 'hicolor', '512x512', 'apps'))
1414
install_data(join_paths('icons', 'scalable', 'wayfire.svg'), install_dir: join_paths(get_option('prefix'), 'share', 'icons', 'hicolor', 'scalable', 'apps'))
1515

16-
install_data('wf-locker-password', install_dir:'/etc/pam.d/')
16+
install_data('wf-locker', install_dir:'/etc/pam.d/')
1717

18-
subdir('css')
18+
subdir('css')

data/wf-locker

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
auth required pam_unix.so nodelay unlock_time=60
2+
account required pam_unix.so nodelay unlock_time=60

data/wf-locker-password

Lines changed: 0 additions & 1 deletion
This file was deleted.

meson.build

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,11 @@ add_project_arguments(
6565
language: 'cpp',
6666
)
6767

68-
resource_dir = join_paths(get_option('prefix'), 'share', 'wayfire')
69-
metadata_dir = join_paths(resource_dir, 'metadata', 'wf-shell')
68+
resource_dir = join_paths(get_option('prefix'), 'share', 'wf-shell')
69+
metadata_dir = join_paths(resource_dir, 'metadata')
7070
sysconf_dir = join_paths(get_option('prefix'), get_option('sysconfdir'))
7171

72-
icon_dir = join_paths(get_option('prefix'), 'share', 'wayfire', 'icons')
72+
icon_dir = join_paths(get_option('prefix'), 'share', 'wf-shell', 'icons')
7373
add_project_arguments('-DICONDIR="' + icon_dir + '"', language: 'cpp')
7474
add_project_arguments('-DRESOURCEDIR="' + resource_dir + '"', language: 'cpp')
7575
add_project_arguments('-DMETADATA_DIR="' + metadata_dir + '"', language: 'cpp')

metadata/panel.xml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,10 @@
189189
</group>
190190
<group>
191191
<_short>Menu</_short>
192+
<option name="menu_fullscreen" type="bool">
193+
<_short>Fullscreen Menu</_short>
194+
<default>false</default>
195+
</option>
192196
<option name="menu_fuzzy_search" type="bool">
193197
<_short>Use Fuzzy Search in Menu</_short>
194198
<default>true</default>
@@ -203,6 +207,11 @@
203207
<default>42</default>
204208
<min>0</min>
205209
</option>
210+
<option name="menu_force_show_popup" type="bool">
211+
<_short>Force showing the menu popup</_short>
212+
<_long>Show the menu popup over other windows, even if it and the panel would be hidden otherwise.</_long>
213+
<default>true</default>
214+
</option>
206215
<option name="menu_min_category_width" type="int">
207216
<_short>Menu Minimum Category Width</_short>
208217
<default>200</default>

src/background/background.cpp

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,9 @@ void WayfireBackgroundApp::create(int argc, char **argv)
7171
void WayfireBackgroundApp::on_activate()
7272
{
7373
WayfireShellApp::on_activate();
74-
7574
prep_cache();
75+
// Initial setup of timer etc.
76+
change_background();
7677
}
7778

7879
void WayfireBackgroundApp::prep_cache()
@@ -92,7 +93,10 @@ void WayfireBackgroundApp::handle_new_output(WayfireOutput *output)
9293
{
9394
backgrounds[output] = std::unique_ptr<WayfireBackground>(
9495
new WayfireBackground(output));
95-
change_background();
96+
if (!current_background.empty())
97+
{
98+
backgrounds[output]->gl_area->show_image(current_background);
99+
}
96100
}
97101

98102
void WayfireBackgroundApp::handle_output_removed(WayfireOutput *output)
@@ -108,7 +112,8 @@ std::string WayfireBackgroundApp::get_application_name()
108112
std::vector<std::string> WayfireBackgroundApp::get_background_list(std::string path)
109113
{
110114
wordexp_t exp;
111-
std::cout << "Looking in " << path << std::endl;
115+
LOGD("Looking for background images in ", path);
116+
112117
/* Expand path */
113118
if (wordexp(path.c_str(), &exp, 0))
114119
{
@@ -187,18 +192,20 @@ void WayfireBackgroundApp::change_background()
187192
std::string background_path = WfOption<std::string>{"background/image"};
188193
auto list = get_background_list(background_path);
189194
auto idx = find(list.begin(), list.end(), current_background) - list.begin();
190-
191-
std::cout << current_background << " " << idx << std::endl;
192195
idx = (idx + 1) % list.size();
193-
// gl_area->show_image(list[idx]);
194-
for (auto & it : backgrounds)
196+
197+
if (current_background != list[idx])
195198
{
196-
it.second->gl_area->show_image(list[idx]);
199+
for (auto & it : backgrounds)
200+
{
201+
it.second->gl_area->show_image(list[idx]);
202+
}
203+
204+
current_background = list[idx];
205+
write_cache(list[idx]);
197206
}
198207

199-
write_cache(list[idx]);
200208
reset_cycle_timeout();
201-
current_background = list[idx];
202209
}
203210

204211
gboolean WayfireBackgroundApp::sigusr1_handler(void *instance)

src/locker/plugin.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,7 @@ class WayfireLockerPlugin
2626
virtual void deinit() = 0; /* Called after lockscreen unlocked. */
2727
virtual void lockout_changed(bool lockout)
2828
{} /* Called when too many failed logins have occured */
29+
virtual void failure()
30+
{}
2931
virtual ~WayfireLockerPlugin() = default;
3032
};

0 commit comments

Comments
 (0)