Brakuje Wam miejsca na belce systemowej? Mi tak. Z jaką więc radością przyjąłbym u siebie pomysł Maćka Skrzypczaka (znacie go z porad na stronie iMagazine) odnośnie nowej aplikacji siedzącej w belce systemowej i gromadzącej ikonki w jednym miejscu. Chcę i proszę. Jeśli kodujesz pod OS X weź się do pracy, bo pomysł zacny i warty realizacji.
Więcej o Bar Box 0.1a – klik
Hmmm. Windows ma to od dawna 🙂
Pozwolę sobie wykorzystać swój komentarz z innej strony na powyższy temat 😉
Zauważyłem ostatnio tendencję na pojawianie się wielu aplikacji w menu barze. I może na 27″ calowym iMaku, a nawet 21″ i pewnie 17″ monitorze nie sprawi to większych problemów, jednak już przy mniejszych rozmiarach wyświetlacza może to uprzykrzyć trochę życia. Weźmy na przykład aplikację Photoshop z wieloma pozycjami w menu, który potrafi przesłonić sporo ikon aplikacji rezydujących w menu barze. I żeby się do nich dostać musimy przełączyć się na inną aplikację. A przecież nie chodzi tu chyba o to.
Dlatego zrodził się u mnie pomysł na appkę, która mogłaby przechowywać wybrane aplikacje, które nie wymagają jakiejś specjalnej uwagi. Weźmy np. Flux, do którego nie zaglądamy co chwilę, jak w przypadku takiego Twittera. Po co więc nim „zaśmiecać” menu bar?
Poszukuję więc osoby, która byłaby zdolna stworzyć dzieło mojej wyobraźni 🙂
Dziękuję Ci Przemku za specjalny wpis poświęcony mojemu pomysłowi, a jeśli pozostali chcieliby pomóc, po prostu retweetnijcie któryś z tych tweetów:
[PL] https://twitter.com/mcskrzypczak/status/179918275042480129
[EN] https://twitter.com/mcskrzypczak/status/179918275042480129
Im więcej retweetów tym większa szansa, że szybciej znajdzie się ktoś odpowiedni 😉
O! i po problemie 😉
Kiedyś się tym interesowałem – sensie: szukałem takiego narzędzia. I dogrzebałem się do takiego wyjaśnienia:
„For every third-party status menu item (those implemented using the public NSStatusItem class) that is present in the menu bar, there is an application (possibly a background application) that must be running which is responsible for putting it there.
As such, there’s no way to have Application B directly hide the status menu item of Application A, except to simply terminate Application A.”
Na nasze, o ile dobrze rozumiem: API OS X nie pozwala na takie manewry. Koniec, kropka.
Gdyby to było możliwe, taka aplikacja pewnie by już istniała. Spory zarobek na App Store pewny.
Pomysł faktycznie ciekawy, ale niestety nie da się. Są dwa dostępy do API menubar’a – jeden to prywatna metoda z której korzysta Apple a drugi dla reszty. Różnica jest taka, że przy użyciu prywatnej metody ikonka ląduje w procesie samego menu i jak się program wywali to zegar i systemowe ikony dostają BBoD i przeważnie bez resetu systemu się nie obejdzie (dlatego Apple nie daje do niej dostępu). Metoda dla pospólstwa korzysta z procesu samej aplikacji – jak się wywali program to zasoby w menu są automatycznie zwalniane. Obie mają jednak jeden wspólny mianownik: lokację ikony kontroluje proces menubara i nie da się tego przeskoczyć. Jedyny sposób w jaki można by to było zrealizować, to nakłonić developerów, żeby używali nowej, trzeciej metody, czyli API kontrolowanego przez aplikację Bar Box a gdy jej nie ma to systemowej. Że się tak wyrażę z angielskiego: good luck with that.
Jakieś hacki w postaci SYMBL umożliwią przekierowanie hook’a na inną metodę, ale to bardzo brzydkie rozwiązanie ingerujące w działanie bibliotek systemu i często gęsto zmniejsza stabilność całego OSa. Nie mówiąc już, że każdy update systemu trzeba wtedy robić z duszą na ramieniu.
Coś co można zrobić to wysyłać feedbacki do Apple, że taki problem zaczyna użytkownikom doskwierać (u mnie do tego stopnia, że jesli jakaś nie-krytyczna z punktu widzenia mojego użytkowania komptera appka umieszcza tam ikonkę i nie mogę tego wyłączyć to na dzień dobry ląduje w koszu) i może coś z tym kiedyś zrobią. Autor konceptu mógłby to rozreklamować np. robiąc ładną stronkę wyjaśniającą problem, rozpropagować na zachodnich forach Apple i nakreślić ludziom co powinni wpisywać na http://www.apple.com/feedback/macosx.html
@grzegor Jeśli to co napisałeś jest faktycznie prawdą, to zmartwiłeś mnie trochę 🙁
Chociaż z drugiej strony, myśląc na trzeźwo, gdyby istniała możliwość stworzenia takiej aplikacji, to zapewne już by powstała. Patrząc na reakcję osób na mój koncept, nie jest to wcale aż tak nowy problem z zawaleniem menu bara ikonkami.
Być może uda się coś wykombinować ze stronką ukazującą problem i wyjaśniającą sposób do pomocy, dziękuję Ci bardzo 🙂
Pozdrawiam,
Maciej Skrzypczak
W razie czego możesz brać mnie pod uwagę przy ściepie na domenę i hosting dla takiego projektu – chętnie wspomogę paroma groszami bo sam problem coraz bardziej irytujący i chętnie przytuliłbym rozwiązanie.
Po napisaniu ostatniego posta przyjrzałem się trochę SIMBL’owi i zapewne dało by się z jego pomocą napisać metodę zastępującą systemową ale nie wiem czy ktoś kto to potrafi (a łatwe to nie będzie) podjął by się tematu z prostego względu – nigdy to do App Store nie trafi i przewidywany userbase byłby bardzo mały.
Jeszcze mała ciekawostka – ikonki używające prywatnej metody można przemieszczać przez CMD + drag’n drop w obrębie menubara.
Tu jest coś, co działa w drugą stronę: „zwija” menu aplikacji.
http://www.ortisoft.de/en/accessmenubarapps/
Coś innego, ale na temat:
http://www.zibity.com/broomstick