Announcement

Collapse
No announcement yet.

Ubuntu's Unity Desktop Comes To Fedora 17

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Ubuntu "If you think gnome-shell is bad, just wait until you see this" Unity.
    Maybe it would be a better idea just to use gnome-shell extensions to make a usable desktop?

    Here's my list:

    Remove Accessibility
    Quit Button
    NetSpeed
    Remove Panel App Menu
    Frippery Shut Down Menu
    LookingGlass Button
    SettingsCenter
    Frippery Panel Favorites
    Frippery Bottom Panel + patch below
    Frippery Applications Menu
    CPU Temperature Indicator

    extension.js.patch
    Code:
    214,215c214,215
    < function WindowList() {
    <     this._init();
    ---
    > function WindowList(mon) {
    >     this._init(mon);
    219c219,221
    <     _init: function() {
    ---
    >     _monitor : 0,
    > 
    >     _init: function(mon) {
    223a226
    > 	this._monitor = mon;
    243a247,248
    > 	global.screen.connect('window-entered-monitor', Lang.bind(this, this._windowEnteredMonitor));
    > 
    244a250,271
    > 
    >     },
    > 
    >     _windowEnteredMonitor: function(metaScreen, monitorIndex, metaWindow) {
    > 	// if window entered THIS monitor and isn't already present, add it. Otherwise
    > 	// if present, remove it.
    > 	if (monitorIndex==this._monitor){
    > 		let present=false;
    > 		for ( let i = 0; i < this._windows.length; ++i ) {
    > 	            if (this._windows[i].metaWindow == metaWindow) present=true;
    >        		}
    > 		if (!present) this._addListItem(metaWindow);
    > 	} else {
    > 		for ( let i = 0; i < this._windows.length; ++i ) {
    > 	            if (this._windows[i].metaWindow == metaWindow){
    > 			this.actor.remove_actor(this._windows[i].actor);
    > 			this._windows[i].actor.destroy();
    > 			this._windows.splice(i, 1);
    > 		    }
    >         	}
    > 	}
    > 	this._onFocus();
    257c284
    <             if ( app ) {
    ---
    >             if ( app && metaWindow.get_monitor() == this._monitor && metaWindow.title!='gkrellm'){ // metaWindow should be on THIS monitor
    259c286
    <                 this._windows.push(item);
    ---
    > 		this._windows.push(item);
    261,264c288
    <                 item.actor.connect('notify::hover',
    <                         Lang.bind(this, function() {
    <                             this._onHover(item);
    <                         }));
    ---
    >                 item.actor.connect('notify::hover', Lang.bind(this, function() { this._onHover(item); }));
    433c457
    <                 bottomPanel.workspaceSwitcher._createButtons();
    ---
    >                 bottomPanel[0].workspaceSwitcher._createButtons();
    756,757c780,781
    < function BottomPanel() {
    <     this._init();
    ---
    > function BottomPanel(mon) {
    >     this._init(mon);
    761c785,787
    <     _init : function() {
    ---
    >     _monitor : 0,
    > 
    >     _init : function(mon) {
    765a792
    > 	this._monitor=mon;
    767c794
    <         let windowList = new WindowList();
    ---
    >         let windowList = new WindowList(this._monitor);
    770,774c797,804
    <         this.workspaceSwitcher = new WorkspaceSwitcher();
    <         this.actor.add(this.workspaceSwitcher.actor);
    < 
    <         this.messageButton = new MessageButton();
    <         this.actor.add(this.messageButton.actor);
    ---
    > 	// only add workspace switcher and message button to primary monitor.
    > 	if (Main.layoutManager.monitors[this._monitor] == Main.layoutManager.primaryMonitor){
    > 	        this.workspaceSwitcher = new WorkspaceSwitcher();
    >         	this.actor.add(this.workspaceSwitcher.actor);
    > 
    > 	        this.messageButton = new MessageButton();
    >         	this.actor.add(this.messageButton.actor);
    > 	}
    779,780c809,810
    <         global.screen.connect('monitors-changed', Lang.bind(this,
    <                                                      this.relayout));
    ---
    >         //global.screen.connect('monitors-changed', Lang.bind(this, this.relayout));
    > 	this.relayout();
    784c814
    <         let primary = Main.layoutManager.primaryMonitor;
    ---
    >         let monitor = Main.layoutManager.monitors[this._monitor];
    786,788c816,818
    <         let h = this.actor.get_theme_node().get_height();
    <         this.actor.set_position(primary.x, primary.y+primary.height-h);
    <         this.actor.set_size(primary.width, -1);
    ---
    >        	let h = this.actor.get_theme_node().get_height();
    >         this.actor.set_position(monitor.x, monitor.y+monitor.height-h);
    >         this.actor.set_size(monitor.width, -1);
    812c842
    <         availHeight -= bottomPanel.actor.height;
    ---
    >         availHeight -= bottomPanel[0].actor.height;
    934c964
    <         let h = bottomPanel.actor.get_theme_node().get_height();
    ---
    >         let h = bottomPanel[0].actor.get_theme_node().get_height();
    1072c1102
    < let bottomPanel = null;
    ---
    > let bottomPanel = new Array();
    1092,1093c1122,1148
    <     bottomPanel = new BottomPanel();
    <     bottomPanel.relayout();
    ---
    >     global.screen.connect('monitors-changed', Lang.bind(this, this.relayout));
    > 
    >     for (let i=0; i<Main.layoutManager.monitors.length; i++)
    >         bottomPanel[i] = new BottomPanel(i);
    > }
    > 
    > // if a monitor is removed or added, remove all bottomPanels and create new for
    > // current list of monitors.
    > function relayout() {
    >     for (let i=0; i<bottomPanel.length; i++){
    >         if ( bottomPanel[i] ) {
    >             if ( bottomPanel[i].messageButton.actorAddedId ) {
    >                 Main.messageTray._summary.disconnect(
    >                     bottomPanel[i].messageButton.actorAddedId);
    >             }
    >             if ( bottomPanel[i].messageButton.actorRemovedId ) {
    >                 Main.messageTray._summary.disconnect(
    >                     bottomPanel[i].messageButton.actorRemovedId);
    >             }
    >             Main.layoutManager.removeChrome(bottomPanel[i].actor);
    >             bottomPanel[i] = null;
    >         }
    >     }
    >     bottomPanel = new Array();
    >     for (let i=0; i<Main.layoutManager.monitors.length; i++)
    >         bottomPanel[i] = new BottomPanel(i);
    > 
    1116,1123c1171,1182
    <     if ( bottomPanel ) {
    <         if ( bottomPanel.messageButton.actorAddedId ) {
    <             Main.messageTray._summary.disconnect(
    <                 bottomPanel.messageButton.actorAddedId);
    <         }
    <         if ( bottomPanel.messageButton.actorRemovedId ) {
    <             Main.messageTray._summary.disconnect(
    <                 bottomPanel.messageButton.actorRemovedId);
    ---
    >     for (let i=0; i<bottomPanel.length; i++){
    >         if ( bottomPanel[i] ) {
    >             if ( bottomPanel[i].messageButton.actorAddedId ) {
    >                 Main.messageTray._summary.disconnect(
    >                     bottomPanel[i].messageButton.actorAddedId);
    >             }
    >             if ( bottomPanel[i].messageButton.actorRemovedId ) {
    >                 Main.messageTray._summary.disconnect(
    >                     bottomPanel[i].messageButton.actorRemovedId);
    >             }
    >             Main.layoutManager.removeChrome(bottomPanel[i].actor);
    >             bottomPanel[i] = null;
    1125,1126d1183
    <         Main.layoutManager.removeChrome(bottomPanel.actor);
    <         bottomPanel = null;
    This patch I wrote makes bottom panel work on multiple-monitor desktops.

    Comment


    • #22
      Originally posted by sacridex View Post
      ctrl + alt + t
      Hehe, thanks. At one point I got so used to the shortcuts in Awesome, that I keep using them in any WM.
      That would be Mod+Enter for me in Gnome3

      Comment


      • #23
        Originally posted by droidhacker View Post
        Ubuntu "If you think gnome-shell is bad, just wait until you see this" Unity.
        Maybe it would be a better idea just to use gnome-shell extensions to make a usable desktop?

        Here's my list:

        Remove Accessibility
        Quit Button
        NetSpeed
        Remove Panel App Menu
        Frippery Shut Down Menu
        LookingGlass Button
        SettingsCenter
        Frippery Panel Favorites
        Frippery Bottom Panel + patch below
        Frippery Applications Menu
        CPU Temperature Indicator

        extension.js.patch
        Code:
        214,215c214,215
        < function WindowList() {
        <     this._init();
        ---
        > function WindowList(mon) {
        >     this._init(mon);
        219c219,221
        <     _init: function() {
        ---
        >     _monitor : 0,
        > 
        >     _init: function(mon) {
        223a226
        > 	this._monitor = mon;
        243a247,248
        > 	global.screen.connect('window-entered-monitor', Lang.bind(this, this._windowEnteredMonitor));
        > 
        244a250,271
        > 
        >     },
        > 
        >     _windowEnteredMonitor: function(metaScreen, monitorIndex, metaWindow) {
        > 	// if window entered THIS monitor and isn't already present, add it. Otherwise
        > 	// if present, remove it.
        > 	if (monitorIndex==this._monitor){
        > 		let present=false;
        > 		for ( let i = 0; i < this._windows.length; ++i ) {
        > 	            if (this._windows[i].metaWindow == metaWindow) present=true;
        >        		}
        > 		if (!present) this._addListItem(metaWindow);
        > 	} else {
        > 		for ( let i = 0; i < this._windows.length; ++i ) {
        > 	            if (this._windows[i].metaWindow == metaWindow){
        > 			this.actor.remove_actor(this._windows[i].actor);
        > 			this._windows[i].actor.destroy();
        > 			this._windows.splice(i, 1);
        > 		    }
        >         	}
        > 	}
        > 	this._onFocus();
        257c284
        <             if ( app ) {
        ---
        >             if ( app && metaWindow.get_monitor() == this._monitor && metaWindow.title!='gkrellm'){ // metaWindow should be on THIS monitor
        259c286
        <                 this._windows.push(item);
        ---
        > 		this._windows.push(item);
        261,264c288
        <                 item.actor.connect('notify::hover',
        <                         Lang.bind(this, function() {
        <                             this._onHover(item);
        <                         }));
        ---
        >                 item.actor.connect('notify::hover', Lang.bind(this, function() { this._onHover(item); }));
        433c457
        <                 bottomPanel.workspaceSwitcher._createButtons();
        ---
        >                 bottomPanel[0].workspaceSwitcher._createButtons();
        756,757c780,781
        < function BottomPanel() {
        <     this._init();
        ---
        > function BottomPanel(mon) {
        >     this._init(mon);
        761c785,787
        <     _init : function() {
        ---
        >     _monitor : 0,
        > 
        >     _init : function(mon) {
        765a792
        > 	this._monitor=mon;
        767c794
        <         let windowList = new WindowList();
        ---
        >         let windowList = new WindowList(this._monitor);
        770,774c797,804
        <         this.workspaceSwitcher = new WorkspaceSwitcher();
        <         this.actor.add(this.workspaceSwitcher.actor);
        < 
        <         this.messageButton = new MessageButton();
        <         this.actor.add(this.messageButton.actor);
        ---
        > 	// only add workspace switcher and message button to primary monitor.
        > 	if (Main.layoutManager.monitors[this._monitor] == Main.layoutManager.primaryMonitor){
        > 	        this.workspaceSwitcher = new WorkspaceSwitcher();
        >         	this.actor.add(this.workspaceSwitcher.actor);
        > 
        > 	        this.messageButton = new MessageButton();
        >         	this.actor.add(this.messageButton.actor);
        > 	}
        779,780c809,810
        <         global.screen.connect('monitors-changed', Lang.bind(this,
        <                                                      this.relayout));
        ---
        >         //global.screen.connect('monitors-changed', Lang.bind(this, this.relayout));
        > 	this.relayout();
        784c814
        <         let primary = Main.layoutManager.primaryMonitor;
        ---
        >         let monitor = Main.layoutManager.monitors[this._monitor];
        786,788c816,818
        <         let h = this.actor.get_theme_node().get_height();
        <         this.actor.set_position(primary.x, primary.y+primary.height-h);
        <         this.actor.set_size(primary.width, -1);
        ---
        >        	let h = this.actor.get_theme_node().get_height();
        >         this.actor.set_position(monitor.x, monitor.y+monitor.height-h);
        >         this.actor.set_size(monitor.width, -1);
        812c842
        <         availHeight -= bottomPanel.actor.height;
        ---
        >         availHeight -= bottomPanel[0].actor.height;
        934c964
        <         let h = bottomPanel.actor.get_theme_node().get_height();
        ---
        >         let h = bottomPanel[0].actor.get_theme_node().get_height();
        1072c1102
        < let bottomPanel = null;
        ---
        > let bottomPanel = new Array();
        1092,1093c1122,1148
        <     bottomPanel = new BottomPanel();
        <     bottomPanel.relayout();
        ---
        >     global.screen.connect('monitors-changed', Lang.bind(this, this.relayout));
        > 
        >     for (let i=0; i<Main.layoutManager.monitors.length; i++)
        >         bottomPanel[i] = new BottomPanel(i);
        > }
        > 
        > // if a monitor is removed or added, remove all bottomPanels and create new for
        > // current list of monitors.
        > function relayout() {
        >     for (let i=0; i<bottomPanel.length; i++){
        >         if ( bottomPanel[i] ) {
        >             if ( bottomPanel[i].messageButton.actorAddedId ) {
        >                 Main.messageTray._summary.disconnect(
        >                     bottomPanel[i].messageButton.actorAddedId);
        >             }
        >             if ( bottomPanel[i].messageButton.actorRemovedId ) {
        >                 Main.messageTray._summary.disconnect(
        >                     bottomPanel[i].messageButton.actorRemovedId);
        >             }
        >             Main.layoutManager.removeChrome(bottomPanel[i].actor);
        >             bottomPanel[i] = null;
        >         }
        >     }
        >     bottomPanel = new Array();
        >     for (let i=0; i<Main.layoutManager.monitors.length; i++)
        >         bottomPanel[i] = new BottomPanel(i);
        > 
        1116,1123c1171,1182
        <     if ( bottomPanel ) {
        <         if ( bottomPanel.messageButton.actorAddedId ) {
        <             Main.messageTray._summary.disconnect(
        <                 bottomPanel.messageButton.actorAddedId);
        <         }
        <         if ( bottomPanel.messageButton.actorRemovedId ) {
        <             Main.messageTray._summary.disconnect(
        <                 bottomPanel.messageButton.actorRemovedId);
        ---
        >     for (let i=0; i<bottomPanel.length; i++){
        >         if ( bottomPanel[i] ) {
        >             if ( bottomPanel[i].messageButton.actorAddedId ) {
        >                 Main.messageTray._summary.disconnect(
        >                     bottomPanel[i].messageButton.actorAddedId);
        >             }
        >             if ( bottomPanel[i].messageButton.actorRemovedId ) {
        >                 Main.messageTray._summary.disconnect(
        >                     bottomPanel[i].messageButton.actorRemovedId);
        >             }
        >             Main.layoutManager.removeChrome(bottomPanel[i].actor);
        >             bottomPanel[i] = null;
        1125,1126d1183
        <         Main.layoutManager.removeChrome(bottomPanel.actor);
        <         bottomPanel = null;
        I find unity to be a perfectly usable desktop already

        Comment


        • #24
          Originally posted by bwat47 View Post
          I find unity to be a perfectly usable desktop already
          Some people find balmerOS to be a perfectly usable desktop...

          Comment


          • #25
            Canonical really does want to replace Microsoft.

            Comment


            • #26
              Hey, I like unity. I think it's good that even more people get to use unity.
              I also like unity more than I like gnome3.

              Comment


              • #27
                I like Gnome 3 more than I like Unity or KDE. XFCE is pretty cool though and is my 2nd favorite.

                Woo-hoo, personal tastes! Because we forget linux is about choices.

                Comment


                • #28
                  I tried installing unity with 'yum install unity' this didn't work. I can't select it in gdm. Anyone knows how to install it?

                  Comment


                  • #29
                    Originally posted by Wilfred View Post
                    Hey, I like unity. I think it's good that even more people get to use unity.
                    I also like unity more than I like gnome3.
                    ORLY? What do you not like about gnome3 that unity does better?

                    Comment


                    • #30
                      Originally posted by Kasumi_Ninja View Post
                      I tried installing unity with 'yum install unity' this didn't work. I can't select it in gdm. Anyone knows how to install it?
                      You will need to run "yum update". Note: This will replace some system packages. That should pull in gnome-session-ubuntu, which contains the Ubuntu session.

                      Comment

                      Working...
                      X