Giter Club home page Giter Club logo

Comments (11)

nuckle avatar nuckle commented on June 8, 2024 1

I kinda fixed it. Still not perfect but for me it's enough. I also checked if the issue happens in Firefox Developer (from Nix) and it seems to be way better than regular version of Firefox.

    {
        rule = {
            class = "Firefox",
            role = "Popup"
        },
        properties = {
            border_width = 0,
            focus = false,
            focusable = false,
            valid = false,
            has_titlebar = false, -- custom property to disable titlebar
            placement = awful.placement.restore,
            ontop = true,
            size_hints_honor = true
        },
        callback = function(c)
            c.focus:raise()
            c.y = c.y - 25
        end
    },
    {
        rule = {
            class = "firefox-aurora",
            role = "Popup"
        },
        properties = {
            border_width = 0,
            placement = awful.placement.restore,
            has_titlebar = false  -- custom property to disable titlebar
        }
    }
screencast-240304-1502-38.mp4
screencast-240304-1500-57.mp4

from awesome.

actionless avatar actionless commented on June 8, 2024

i think in your rule you need to also set border_width to 0

from awesome.

nuckle avatar nuckle commented on June 8, 2024

i think in your rule you need to also set border_width to 0

I did, but the popup feels weird.

Sometimes it appears on the wrong side

image

Or it'll be empty (border to show that there is actually a window)

image

from awesome.

actionless avatar actionless commented on June 8, 2024

in that case mb rule is not actually matching that popup:

rule = {
class = "Firefox",
role = "Popup",
},

from awesome.

nuckle avatar nuckle commented on June 8, 2024

in that case mb rule is not actually matching that popup:

rule = {
class = "Firefox",
role = "Popup",
},

It actually changes when I change the values inside the rules, so the rule is matching. I checked the windows properties and it's definitely matching. But the windows itself is messed up. Sometimes position is wrong, window is empty, or it flickers. On DE (cinnamon) it works fine. Tried different profiles in Firefox, versions, result is the same

from awesome.

actionless avatar actionless commented on June 8, 2024

in that case the good solution would be to unmanage those windows at all, by adding callback to a rule, which would call https://awesomewm.org/doc/api/classes/client.html#client:unmanage on the client

from awesome.

nuckle avatar nuckle commented on June 8, 2024

Am I doing this right? Because I get an error /usr/loca/sare/aweosme/lib/awful/client/focus.lua:118 invalid object when I spawn the popup

rule = { 
    class = "Firefox",
    role = "Popup",
},
properties = {
    fullscreen = false,
    maximized = false,
    titlebars_enabled = false,
    skip_taskbar = true,
    border_width = 0,
},
callback = function (c) 
 c:unmanage()
end

I tried to play around with callback, but no matter what I do, I still have something like this

screencast-240219-2131-12.mp4

from awesome.

actionless avatar actionless commented on June 8, 2024

Am I doing this right? Because I get an error /usr/loca/sare/aweosme/lib/awful/client/focus.lua:118 invalid object

please provide full trace, not just error message

I tried to play around with callback, but no matter what I do, I still have something like this

2024-02-19--1708373628_1403x1023_scrot

from awesome.

nuckle avatar nuckle commented on June 8, 2024
Full trace
2024-02-20 13:31:58 W: awesome: luaA_dofunction:78: error while running function!
stack traceback:
	[C]: in metamethod '__index'
	/usr/local/share/awesome/lib/awful/client/focus.lua:118: in function 'awful.client.focus.filter'
	/usr/local/share/awesome/lib/ruled/client.lua:769: in method '_execute'
	/usr/local/share/awesome/lib/gears/matcher.lua:649: in method 'apply'
	/usr/local/share/awesome/lib/ruled/client.lua:303: in function 'ruled.client.apply'
error: /usr/local/share/awesome/lib/awful/client/focus.lua:118: invalid object
2024-02-20 13:31:58 W: Trying to emit signal 'manage' on invalid object
stack traceback:
2024-02-20 13:31:58 E: awesome: Error during a protected call: /usr/local/share/awesome/lib/gears/object/properties.lua:278: invalid object
stack traceback:
	[C]: in metamethod '__index'
	/usr/local/share/awesome/lib/gears/object/properties.lua:278: in function </usr/local/share/awesome/lib/gears/object/properties.lua:277>
	[C]: in function 'xpcall'
	/usr/local/share/awesome/lib/gears/protected_call.lua:41: in function </usr/local/share/awesome/lib/gears/protected_call.lua:40>
	(...tail calls...)
	/usr/local/share/awesome/lib/gears/timer.lua:280: in function 'gears.timer.run_delayed_calls_now'
2024-02-20 13:31:58 E: awesome: Error during a protected call: /usr/local/share/awesome/lib/gears/object/properties.lua:278: invalid object
stack traceback:
	[C]: in metamethod '__index'
	/usr/local/share/awesome/lib/gears/object/properties.lua:278: in function </usr/local/share/awesome/lib/gears/object/properties.lua:277>
	[C]: in function 'xpcall'
	/usr/local/share/awesome/lib/gears/protected_call.lua:41: in function </usr/local/share/awesome/lib/gears/protected_call.lua:40>
	(...tail calls...)
	/usr/local/share/awesome/lib/gears/timer.lua:280: in function 'gears.timer.run_delayed_calls_now'

from awesome.

actionless avatar actionless commented on June 8, 2024

yeah, your real error is 2024-02-20 13:31:58 W: Trying to emit signal 'manage' on invalid object

try some guard like, if c then or first do a delayed call (and next if c guard inside delayed call): https://awesomewm.org/doc/api/classes/gears.timer.html#gears.timer.delayed_call

from awesome.

actionless avatar actionless commented on June 8, 2024

also, AFAIK JetBrains and few other java-based IDEs have similar problems with their popups, mb some advices from those topics would also help: https://github.com/awesomeWM/awesome/issues?q=label%3AJava+

from awesome.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.