[MOD][XPOSED] XHFW3 - floating windows - ver. 3.19 beta

Do you have bootloops with XHFW3?

  • Yes, I'm on Android Lollipop/Marshmallow

    Votes: 125 46.3%
  • Yes, I'm on Android KK or prior version

    Votes: 6 2.2%
  • No, I'm on Android Lollipop/Marshmallow

    Votes: 121 44.8%
  • No, I'm on Android KK or prior version

    Votes: 18 6.7%

  • Total voters
    270
Search This thread

a_sh_

Senior Member
Mar 22, 2007
181
336
[MOD][XPOSED] XHFW3 - floating windows - ver. 3.19 beta

What's this all about
There was a well known xposed module XHaloFloatingWindow by @zst123 (here) which brought multiwindow functionality to android devices with Xposed. Sadly the development stopped and the project was dropped. @zst123 allowed to use his code to continue and remake the project under the new name - so that we could distinguish between the classical XHaloFloatingWindow and the new XHFW3. Anyway I have different sign keys so using the new id's is a must in this case.
Remember that much of the credits go to @zst123. I just rewrote, optimized, fixed the code for the new Android versions and added some features.

Important
  • Different package names would allow you to keep both version installed, but be sure to keep only one floating window module active.
  • Bootloops were a very frequent issue earlier. Although a lot of things got fixed you might be stuck on logo screen after reboot. In this case you might try to:
    • Reboot again;
    • Wipe cache via recovery and reboot;
    • Wipe dalvik cache and reboot;
    • Remove via adb or recovery file manager /data/data/de.robv.android.xposed.installer/conf/modules.list and reboot;
    • Uninstall xposed with official uninstaller script and reboot;

Known bugs:
  • BOOTLOOPS might be expected.
  • Android Recent's panel doesn't close when movable window is restored - overlaps other apps.
  • Evernote layout resets when screen unlocks if the app isn't focused. Everything is back when it's focused again.
  • Incomplete support for Android < 5.0
  • You tell me!

What's new
3.19.1 beta
  • [fix] FloatDot crash on LP and below
3.19 beta
  • [feature] updated context menus on FloatDot Launcher icon and apps list, now you can add to favorites / remove via FloatDot
  • Updated apps restart logic
  • [fix] SharedPreferences do not open for most hooked apps
  • [fix] blacklist/whitelist bug
  • [fix] TitleBar overlapped Chrome on latest versions
  • Minor fixes
3.18 beta
  • [fix] WhatsApp bug
  • [fix] improved FloatDot Launcher behaviour, must be less buggy now
  • [feature] context menus on FloatDot Launcher items with option to close / restart as movable or fullscreen / add to favorites or remove from favorites
  • [feature] context menu on FloatDot icon - to restart top app as movable or fullscreen. To use this option the app would need permission to access apps usage stats. The settings window would open when you try to use this feature without proper permissions.
  • Updated system hooks
3.17 beta
Consider this a pre-beta release. It has been tested on Android 5.0 and 6.0 but you might get weird bugs.
  • [feature] Themable FloatDot Launcher with favorites
  • [feature] Inform if the module isn't loaded
  • Minor fixes
3.16
  • Major SystemHooks update: improved compatibility and stability
  • [fix] Actionbar dragging
  • [fix] lost overlays ("triangle bug")
  • [feature] added Remix OS theme

Plans for future:
  • Show top app name on FloatDot icon context menu, allow to add top app to favorites from context menu
  • List of apps that shouldn't be covered by FloatDot
  • Sticky windows
  • Launch as movable if started from notifications
  • Option to change behaviour on screen rotation.
  • Themes for FloatDot Launcher menus;
  • More themes for titlebar (+ colormask)
  • You tell me!

MultiWindowSidebar
@zst123 made another great app to launch apps as multiwindow, ie the MultiWindowSidebar (here). I had to modify it a bit as well to have new floating flags and 4way snaps. See apks attached. It uses the same package name as the original app with different sign keys so you'll have to uninstall the old version you install this one.

Finally
There're 2 types of package available. The one with "debug" postfix will fill your logs with messages. Please, use it to get logs for bug reports. For normal use there's a normal version.

XDA:DevDB Information
XHFW3, Xposed for all devices (see above for details)

Contributors
a_sh_, Credits for the initial code go to @zst123
Source Code: https://github.com/shooash/XHFW3

Xposed Package Name: com.zst.xposed.halo.floatingwindow3

Version Information
Status: Beta

Created 2016-05-02
Last Updated 2016-06-11
 

Attachments

  • XHFW3.10.apk
    452.4 KB · Views: 6,700
  • MultiWindowSidebar4way_1.5.apk
    457.7 KB · Views: 12,771
  • XHFW3.15-2.apk
    644.2 KB · Views: 920
  • XHFW3.16.apk
    648.9 KB · Views: 1,342
  • XHFW3.16_debug.apk
    649.2 KB · Views: 1,020
  • XHFW3.18.apk
    639.7 KB · Views: 1,652
  • XHFW3.19.1.apk
    676.5 KB · Views: 16,730
Last edited:

a_sh_

Senior Member
Mar 22, 2007
181
336
How to and why:
Start an app in floating/movable window mode
  • Be sure the app wasn't started before as non-movable or swipe it away from android recents (so the system starts it again and doesn't load it from background).
  • Use third-party launchers (e.g. MultiWindowSidebar) to start an app as halo / floating / movable. Be sure to have the launcher and the mode use the same FLOATING_FLAG (check up second q/a).
  • Enjoy!
Set proper FLOATING_FLAG to have windows movable:
  • At the beginning the XHaloFloatingWindow module and Paranoid Android Halo feature used a different flag to mark apps as floating. Later Android took the same flag for its needs to mark apps that have several open document. So using the old flag for floating windows caused bugs and we had to change it (from 0x2000 to 0x2001).
  • The issue was not resolved for a long time, xhfw project died and many (most) launchers didn't update the flag. If your launcher still uses legacy FLOATING_FLAG, go to XHFW3 settings and choose a proper option for "Floating flag system id" (legacy for most use cases).
  • If you change the flag to legacy and report bugs, please, mention your FLOATING_FLAG choice.
Start a movable app as non-movable:
  • To keep things consistent the module has to respect the android activity history. That's the feature that keeps unactive apps "saved" in the background so they can resume from their last state.
  • If the app was started as movable - the system would remember that until you tell Android to release the app from memory.
  • So to be able to launch the same app again as non-movable you need to remove it from Android recents (swipe it away).
If an app is added in Maximized list, is it automatically being treated as Whitelisted?
If you add an app to maximized list it means that it will be started maximized whenever you launch it as floating. So you can whitelist to have it always resizable or you can be happy to have maximized resizable window only when you need it.
 
Last edited:

a_sh_

Senior Member
Mar 22, 2007
181
336
Changelog:
3.15
  • [fix] bootloops should be gone for most users (please, report!)
  • [fix] movable apps from android recents stack reopen on black background.
  • [fix] quadrant default settings reverted to disabled.
  • [fix] MarshMallow support for taskRemove hook.
  • [feature] initial layout gravity should now work.
3.13
  • [fix] stability issues and possible bootloop causes
3.12
  • [feature] App pausing settings.
  • [feature] Start maximized apps list
  • [feature] colored focus frames for snapped windows.
  • [fix] module crash on Z3 Compact android 5.1, might help for other 5.1 devices.
  • [fix] exceptions not caught by system hooks (stability / bootloop issue).
  • [fix] unwanted unsnap / unmaximize when ActionBar touched.
3.12
  • [feature] App pausing settings.
  • [feature] Start maximized apps list
  • [feature] colored focus frames for snapped windows.
  • [fix] module crash on Z3 Compact android 5.1, might help for other 5.1 devices.
  • [fix] exceptions not caught by system hooks (stability / bootloop issue).
  • [fix] unwanted unsnap / unmaximize when ActionBar touched.
3.11:
  • [fixed] lost keyboard settings;
  • [fixed] resume movable/nonmovable app resume algorithm.
3.10:
  • Code mostly rewritten and optimized;
  • Added support for Lollipop and Marshmallow.
  • Only halo mode gone.
  • Taskbar launcher dropped.
  • Settings renewed.
  • [fixed] orientation for some movable windows (Play Movies bug).
  • [fixed] inconsistent layout for some windows (partly - Evernote bug).
  • [fixed] windows not focusable.
  • [fixed] Chrome dim bug.
  • [fixed] Chrome always floating bug (see halo flag feature).
  • [fixed] floating dialogs oversized.
  • [fixed] overlays undersized on hi-res devices.
  • [feature] new floating intent flag that doesn't conflict with the new Android intent flags + ability to switch between flags.
  • [feature] super switch to stop hooks from running on apps' start without reboot.
  • [feature] readded tinted titlebars, borders and corners.
  • [feature] 4way windows' snap;
  • [feature] AutoSnap: snap windows side by side on start.
  • [feature] change minimal moving distance to unsnap/unminimize windows when dragged by Actionbar.
 
Last edited:

xyourxhighnessx

Senior Member
Apr 28, 2015
52
29
Is there support for the lg g stylo by chance?

I installed the previous beta version awhile ago but generally my phone would either bootup once or twice or occasionally bootloop but pulling the battery and trying again would work usually.

I use to love this on kk back in the day

Is there good support for something like a nexus device? I have some of those as well
 

palmuse

Senior Member
Dec 4, 2012
82
26
OnePlus 6T
Like the update so far. A few preference bugs but the floating windows are smooooooth! Nice.

Some preference setting are not sticking. Going to try a cache clear. Already tried a data clear.

Keep up the good work!

Sent from my SM-N900T using XDA-Developers mobile app
 

Daedulus Minion

Senior Member
Jul 15, 2013
769
230
Mumbai
@a_sh_ The keyboard mode setting doesn't react to clicks. I mean nothing happens (no options open) when I click it. Everything else works perfectly.
Oneplus One running CM13
 

youling257

Senior Member
Nov 16, 2013
158
44
On tablets, windowed chrome, tabs can not be displayed
 

Attachments

  • Screenshot_20160503-114041.jpg
    Screenshot_20160503-114041.jpg
    90.6 KB · Views: 6,374

folusmile

Senior Member
Nov 4, 2010
828
232
New version not working going back to beta 3.06
And keyboard mode won't open when u press

Lollipop
Note 4
 
Last edited:
  • Like
Reactions: yfriday14

Kutikov

Senior Member
Dec 21, 2013
129
41
All is brilliant, except size of triangle. It can't be changed!

Отправлено с моего falcon через Tapatalk
 

a_sh_

Senior Member
Mar 22, 2007
181
336
I'd like to know too! There is a option to always start whitelisted apps in window mode, but I wonder if there is a way to put an app into window mode after opening it in normal mode

Hi! If you launched the app in normal mode - you should close it (swipe away) via andoid recents, so it's not kept cached as background activity. It can be started as movable window afterwards via movable window sidebar or other apps. Later I'll post an update with bug fixes mentioned here. Cheers!
 

Kutikov

Senior Member
Dec 21, 2013
129
41
O! And change pointer please, it's awful grey round with red dot!

And please add feature to start app maximised

Отправлено с моего falcon через Tapatalk
 
Last edited:
G

GuestK0036

Guest
@a_sh_ I've a few requests for enhance MultiWindowSidebar app, could you please:
  • add automatically an app downloaded in the sidebard (for avoid adding it manually at each time),
  • remove automatically an app deleted from the sidebard (for avoid the oddly "unknown app" behavior, see screenshot below),
  • remove settings related to the Halo mode like you have done for XHFW with this update (v3.10)?
Thanks!
 
Last edited:

rkd2003

Senior Member
Apr 12, 2015
66
12
Could you make 'floating app by shortcut' function? This app is so good but some tricky to use...
 
  • Like
Reactions: J20dd20

mikeygeer

Senior Member
Oct 20, 2010
58
39
www.HalluxAndroidDesign.com
I can confirm this: Bubble Launcher - WORKS - V. buggy but got it to work a few times. Is a P.A.-halo-like app-launcher replacement what you had in mind? http://xdaforums.com/showthread.php?t=2334221

UPDATE: Make sure you follow directions of the app. Its not very user friendly. Worked like a charm with XHFW3 with the 'legacy flag setting'.

UPDATE AGAIN: Bubble launcher has an additional NOTIFICATION FUNCTION. download the NHLShelper apk on the link above with the main app. Permit it access in settings and it will float your notifications too.

OMG IT's SO GREAT WITH PIE NAVIGATION - JUS' LIKE PARANOID ANDROID DAYS!!
 
Last edited:
  • Like
Reactions: mihirmodi

giovanniro98

Senior Member
Mar 17, 2014
92
50
I installed, xhfw3 beta, bubble launcher and nhls helper. But i can't open app in floating window. What should I do? What do you mean for legacy flag setting? Android 6.0.1 stock xposed nexus 5
 
Last edited:
  • Like
Reactions: g4_e

Top Liked Posts

  • There are no posts matching your filters.
  • 67
    [MOD][XPOSED] XHFW3 - floating windows - ver. 3.19 beta

    What's this all about
    There was a well known xposed module XHaloFloatingWindow by @zst123 (here) which brought multiwindow functionality to android devices with Xposed. Sadly the development stopped and the project was dropped. @zst123 allowed to use his code to continue and remake the project under the new name - so that we could distinguish between the classical XHaloFloatingWindow and the new XHFW3. Anyway I have different sign keys so using the new id's is a must in this case.
    Remember that much of the credits go to @zst123. I just rewrote, optimized, fixed the code for the new Android versions and added some features.

    Important
    • Different package names would allow you to keep both version installed, but be sure to keep only one floating window module active.
    • Bootloops were a very frequent issue earlier. Although a lot of things got fixed you might be stuck on logo screen after reboot. In this case you might try to:
      • Reboot again;
      • Wipe cache via recovery and reboot;
      • Wipe dalvik cache and reboot;
      • Remove via adb or recovery file manager /data/data/de.robv.android.xposed.installer/conf/modules.list and reboot;
      • Uninstall xposed with official uninstaller script and reboot;

    Known bugs:
    • BOOTLOOPS might be expected.
    • Android Recent's panel doesn't close when movable window is restored - overlaps other apps.
    • Evernote layout resets when screen unlocks if the app isn't focused. Everything is back when it's focused again.
    • Incomplete support for Android < 5.0
    • You tell me!

    What's new
    3.19.1 beta
    • [fix] FloatDot crash on LP and below
    3.19 beta
    • [feature] updated context menus on FloatDot Launcher icon and apps list, now you can add to favorites / remove via FloatDot
    • Updated apps restart logic
    • [fix] SharedPreferences do not open for most hooked apps
    • [fix] blacklist/whitelist bug
    • [fix] TitleBar overlapped Chrome on latest versions
    • Minor fixes
    3.18 beta
    • [fix] WhatsApp bug
    • [fix] improved FloatDot Launcher behaviour, must be less buggy now
    • [feature] context menus on FloatDot Launcher items with option to close / restart as movable or fullscreen / add to favorites or remove from favorites
    • [feature] context menu on FloatDot icon - to restart top app as movable or fullscreen. To use this option the app would need permission to access apps usage stats. The settings window would open when you try to use this feature without proper permissions.
    • Updated system hooks
    3.17 beta
    Consider this a pre-beta release. It has been tested on Android 5.0 and 6.0 but you might get weird bugs.
    • [feature] Themable FloatDot Launcher with favorites
    • [feature] Inform if the module isn't loaded
    • Minor fixes
    3.16
    • Major SystemHooks update: improved compatibility and stability
    • [fix] Actionbar dragging
    • [fix] lost overlays ("triangle bug")
    • [feature] added Remix OS theme

    Plans for future:
    • Show top app name on FloatDot icon context menu, allow to add top app to favorites from context menu
    • List of apps that shouldn't be covered by FloatDot
    • Sticky windows
    • Launch as movable if started from notifications
    • Option to change behaviour on screen rotation.
    • Themes for FloatDot Launcher menus;
    • More themes for titlebar (+ colormask)
    • You tell me!

    MultiWindowSidebar
    @zst123 made another great app to launch apps as multiwindow, ie the MultiWindowSidebar (here). I had to modify it a bit as well to have new floating flags and 4way snaps. See apks attached. It uses the same package name as the original app with different sign keys so you'll have to uninstall the old version you install this one.

    Finally
    There're 2 types of package available. The one with "debug" postfix will fill your logs with messages. Please, use it to get logs for bug reports. For normal use there's a normal version.

    XDA:DevDB Information
    XHFW3, Xposed for all devices (see above for details)

    Contributors
    a_sh_, Credits for the initial code go to @zst123
    Source Code: https://github.com/shooash/XHFW3

    Xposed Package Name: com.zst.xposed.halo.floatingwindow3

    Version Information
    Status: Beta

    Created 2016-05-02
    Last Updated 2016-06-11
    9
    How to and why:
    Start an app in floating/movable window mode
    • Be sure the app wasn't started before as non-movable or swipe it away from android recents (so the system starts it again and doesn't load it from background).
    • Use third-party launchers (e.g. MultiWindowSidebar) to start an app as halo / floating / movable. Be sure to have the launcher and the mode use the same FLOATING_FLAG (check up second q/a).
    • Enjoy!
    Set proper FLOATING_FLAG to have windows movable:
    • At the beginning the XHaloFloatingWindow module and Paranoid Android Halo feature used a different flag to mark apps as floating. Later Android took the same flag for its needs to mark apps that have several open document. So using the old flag for floating windows caused bugs and we had to change it (from 0x2000 to 0x2001).
    • The issue was not resolved for a long time, xhfw project died and many (most) launchers didn't update the flag. If your launcher still uses legacy FLOATING_FLAG, go to XHFW3 settings and choose a proper option for "Floating flag system id" (legacy for most use cases).
    • If you change the flag to legacy and report bugs, please, mention your FLOATING_FLAG choice.
    Start a movable app as non-movable:
    • To keep things consistent the module has to respect the android activity history. That's the feature that keeps unactive apps "saved" in the background so they can resume from their last state.
    • If the app was started as movable - the system would remember that until you tell Android to release the app from memory.
    • So to be able to launch the same app again as non-movable you need to remove it from Android recents (swipe it away).
    If an app is added in Maximized list, is it automatically being treated as Whitelisted?
    If you add an app to maximized list it means that it will be started maximized whenever you launch it as floating. So you can whitelist to have it always resizable or you can be happy to have maximized resizable window only when you need it.
    8
    Changelog:
    3.15
    • [fix] bootloops should be gone for most users (please, report!)
    • [fix] movable apps from android recents stack reopen on black background.
    • [fix] quadrant default settings reverted to disabled.
    • [fix] MarshMallow support for taskRemove hook.
    • [feature] initial layout gravity should now work.
    3.13
    • [fix] stability issues and possible bootloop causes
    3.12
    • [feature] App pausing settings.
    • [feature] Start maximized apps list
    • [feature] colored focus frames for snapped windows.
    • [fix] module crash on Z3 Compact android 5.1, might help for other 5.1 devices.
    • [fix] exceptions not caught by system hooks (stability / bootloop issue).
    • [fix] unwanted unsnap / unmaximize when ActionBar touched.
    3.12
    • [feature] App pausing settings.
    • [feature] Start maximized apps list
    • [feature] colored focus frames for snapped windows.
    • [fix] module crash on Z3 Compact android 5.1, might help for other 5.1 devices.
    • [fix] exceptions not caught by system hooks (stability / bootloop issue).
    • [fix] unwanted unsnap / unmaximize when ActionBar touched.
    3.11:
    • [fixed] lost keyboard settings;
    • [fixed] resume movable/nonmovable app resume algorithm.
    3.10:
    • Code mostly rewritten and optimized;
    • Added support for Lollipop and Marshmallow.
    • Only halo mode gone.
    • Taskbar launcher dropped.
    • Settings renewed.
    • [fixed] orientation for some movable windows (Play Movies bug).
    • [fixed] inconsistent layout for some windows (partly - Evernote bug).
    • [fixed] windows not focusable.
    • [fixed] Chrome dim bug.
    • [fixed] Chrome always floating bug (see halo flag feature).
    • [fixed] floating dialogs oversized.
    • [fixed] overlays undersized on hi-res devices.
    • [feature] new floating intent flag that doesn't conflict with the new Android intent flags + ability to switch between flags.
    • [feature] super switch to stop hooks from running on apps' start without reboot.
    • [feature] readded tinted titlebars, borders and corners.
    • [feature] 4way windows' snap;
    • [feature] AutoSnap: snap windows side by side on start.
    • [feature] change minimal moving distance to unsnap/unminimize windows when dragged by Actionbar.
    7
    Please, check the new version 3.15.
    Before the xposed bug gets fixed I changed the behavior that was considered by xposed dev as the main cause for bootloops - multiple preferences files used. Now all package lists are stored in one prefs base, seems to be much more stable now.
    As usual, please report bugs and - especially - bootloops.
    Made some changes under-the-hood, please, check if you still have problems with triangles.
    Btw, initial layout positioning ("gravity") is back.
    6
    Good news! There was a bug found in Xposed that provoked bootloops with XHFW and it should be fixed in xposed v85. https://github.com/rovo89/Xposed/issues/152